[Libreoffice-commits] core.git: Branch 'distro/collabora/co-2021' - 14 commits - chart2/qa icon-themes/colibre icon-themes/colibre_svg icon-themes/sukapura icon-themes/sukapura_svg oox/source sc/qa sc/source sd/xml sfx2/source sw/inc sw/source vcl/qt5 vcl/source
Tor Lillqvist (via logerrit)
logerrit at kemper.freedesktop.org
Wed Apr 14 08:56:05 UTC 2021
chart2/qa/extras/chart2import.cxx | 35 +++++++
chart2/qa/extras/data/xlsx/tdf140489.xlsx |binary
icon-themes/colibre/cmd/32/ar/defaultbullet.png |binary
icon-themes/colibre/cmd/32/ar/outlinebullet.png |binary
icon-themes/colibre/cmd/32/ar/removebullets.png |binary
icon-themes/colibre/cmd/32/ar/setoutline.png |binary
icon-themes/colibre/cmd/32/defaultbullet.png |binary
icon-themes/colibre/cmd/32/outlinebullet.png |binary
icon-themes/colibre/cmd/32/removebullets.png |binary
icon-themes/colibre/cmd/32/setoutline.png |binary
icon-themes/colibre/cmd/ar/lc_removebullets.png |binary
icon-themes/colibre/cmd/ar/sc_bulletsandnumberingdialog.png |binary
icon-themes/colibre/cmd/ar/sc_chapternumberingdialog.png |binary
icon-themes/colibre/cmd/ar/sc_defaultnumbering.png |binary
icon-themes/colibre/cmd/ar/sc_linenumberingdialog.png |binary
icon-themes/colibre/cmd/ar/sc_removebullets.png |binary
icon-themes/colibre/cmd/ar/sc_setoutline.png |binary
icon-themes/colibre/cmd/lc_removebullets.png |binary
icon-themes/colibre/cmd/sc_bulletsandnumberingdialog.png |binary
icon-themes/colibre/cmd/sc_chapternumberingdialog.png |binary
icon-themes/colibre/cmd/sc_defaultnumbering.png |binary
icon-themes/colibre/cmd/sc_linenumberingdialog.png |binary
icon-themes/colibre/cmd/sc_removebullets.png |binary
icon-themes/colibre/cmd/sc_setoutline.png |binary
icon-themes/colibre/svx/res/marker-anchor.png |binary
icon-themes/colibre/svx/res/markers.png |binary
icon-themes/colibre_svg/cmd/32/ar/defaultbullet.svg | 2
icon-themes/colibre_svg/cmd/32/ar/outlinebullet.svg | 2
icon-themes/colibre_svg/cmd/32/ar/removebullets.svg | 2
icon-themes/colibre_svg/cmd/32/ar/setoutline.svg | 2
icon-themes/colibre_svg/cmd/32/defaultbullet.svg | 2
icon-themes/colibre_svg/cmd/32/outlinebullet.svg | 2
icon-themes/colibre_svg/cmd/32/removebullets.svg | 2
icon-themes/colibre_svg/cmd/32/setoutline.svg | 2
icon-themes/colibre_svg/cmd/ar/lc_removebullets.svg | 2
icon-themes/colibre_svg/cmd/ar/sc_bulletsandnumberingdialog.svg | 2
icon-themes/colibre_svg/cmd/ar/sc_chapternumberingdialog.svg | 2
icon-themes/colibre_svg/cmd/ar/sc_defaultnumbering.svg | 2
icon-themes/colibre_svg/cmd/ar/sc_linenumberingdialog.svg | 2
icon-themes/colibre_svg/cmd/ar/sc_removebullets.svg | 2
icon-themes/colibre_svg/cmd/ar/sc_setoutline.svg | 2
icon-themes/colibre_svg/cmd/lc_removebullets.svg | 2
icon-themes/colibre_svg/cmd/sc_bulletsandnumberingdialog.svg | 2
icon-themes/colibre_svg/cmd/sc_chapternumberingdialog.svg | 2
icon-themes/colibre_svg/cmd/sc_defaultnumbering.svg | 2
icon-themes/colibre_svg/cmd/sc_linenumberingdialog.svg | 2
icon-themes/colibre_svg/cmd/sc_removebullets.svg | 2
icon-themes/colibre_svg/cmd/sc_setoutline.svg | 2
icon-themes/colibre_svg/svx/res/marker-anchor.svg | 2
icon-themes/colibre_svg/svx/res/markers.svg | 2
icon-themes/sukapura/svx/res/markers.png |binary
icon-themes/sukapura_svg/svx/res/markers.svg | 2
oox/source/drawingml/chart/plotareaconverter.cxx | 8 +
sc/qa/extras/macros-test.cxx | 48 ++++++++++
sc/qa/extras/testdocuments/tdf138646.ods |binary
sc/source/core/tool/rangeutl.cxx | 4
sc/source/ui/app/inputwin.cxx | 4
sd/xml/effects.xml | 16 +--
sfx2/source/control/unoctitm.cxx | 6 +
sw/inc/dcontact.hxx | 4
sw/source/core/draw/dcontact.cxx | 42 +++++++-
sw/source/core/layout/frmtool.cxx | 2
vcl/qt5/Qt5Clipboard.cxx | 9 +
vcl/qt5/Qt5Frame.cxx | 8 -
vcl/source/bitmap/BitmapSepiaFilter.cxx | 2
vcl/source/bitmap/BitmapSmoothenFilter.cxx | 2
vcl/source/bitmap/BitmapSolarizeFilter.cxx | 2
vcl/source/gdi/print2.cxx | 12 ++
68 files changed, 199 insertions(+), 55 deletions(-)
New commits:
commit 02269dc9cdb8b24108d4309ac221c62cac53a5c3
Author: Tor Lillqvist <tml at collabora.com>
AuthorDate: Tue Apr 13 17:14:57 2021 +0300
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Apr 14 10:52:53 2021 +0200
Early return from ScInputWindow::setPosSizePixel() if no-op
This seems to fix https://github.com/CollaboraOnline/online/issues/1988
Change-Id: I5fd826647ce85b7ad2d93085fb0c2fa9db69e745
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114056
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
Reviewed-by: Michael Meeks <michael.meeks at collabora.com>
diff --git a/sc/source/ui/app/inputwin.cxx b/sc/source/ui/app/inputwin.cxx
index 60a759a1b1d7..b581b41e259f 100644
--- a/sc/source/ui/app/inputwin.cxx
+++ b/sc/source/ui/app/inputwin.cxx
@@ -476,6 +476,10 @@ void ScInputWindow::SetSizePixel( const Size& rNewSize )
void ScInputWindow::setPosSizePixel(long nX, long nY, long nWidth, long nHeight, PosSizeFlags nFlags)
{
+ if ((!(nFlags & PosSizeFlags::Size) || GetSizePixel() == Size(nWidth, nHeight)) &&
+ (!(nFlags & PosSizeFlags::Pos) || GetPosPixel() == Point(nX, nY)))
+ return;
+
ToolBox::setPosSizePixel(nX, nY, nWidth, nHeight, nFlags);
if (const vcl::ILibreOfficeKitNotifier* pNotifier = GetLOKNotifier())
{
commit 2b9b9468375f4656fd229245a42565987fec4de3
Author: Gabriel Masei <gabriel.masei at 1and1.ro>
AuthorDate: Wed Apr 7 12:46:27 2021 +0300
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Apr 14 10:52:00 2021 +0200
lok: intercept indentation and decimals state change events
This solves some toolbar buttons enabling issues in online
when dynamically changing UI mode to classic.
Change-Id: I3301b92c35effce905f1283ae645d8ad2b168ece
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113723
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos at collabora.com>
(cherry picked from commit 8859e62d7dfaa71c35f80b5eff99b0788b49c9fa)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113766
Reviewed-by: Gabriel Masei <gabriel.masei at 1and1.ro>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
diff --git a/sfx2/source/control/unoctitm.cxx b/sfx2/source/control/unoctitm.cxx
index ddccd885ab15..e9019fab2326 100644
--- a/sfx2/source/control/unoctitm.cxx
+++ b/sfx2/source/control/unoctitm.cxx
@@ -1170,7 +1170,11 @@ static void InterceptLOKStateChangeEvent(sal_uInt16 nSID, SfxViewFrame* pViewFra
aEvent.FeatureURL.Path == "Substract" ||
aEvent.FeatureURL.Path == "DistributeSelection" ||
aEvent.FeatureURL.Path == "Intersect" ||
- aEvent.FeatureURL.Path == "ResetAttributes")
+ aEvent.FeatureURL.Path == "ResetAttributes" ||
+ aEvent.FeatureURL.Path == "IncrementIndent" ||
+ aEvent.FeatureURL.Path == "DecrementIndent" ||
+ aEvent.FeatureURL.Path == "NumberFormatDecDecimals" ||
+ aEvent.FeatureURL.Path == "NumberFormatIncDecimals")
{
aBuffer.append(aEvent.IsEnabled ? std::u16string_view(u"enabled") : std::u16string_view(u"disabled"));
}
commit f9044bab59f1491a392c2b72905690df9280148e
Author: Katarina Behrens <bubli at bubli.org>
AuthorDate: Mon Apr 12 14:56:12 2021 +0200
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Apr 14 10:50:59 2021 +0200
tdf#131171: make Diagonal Squares animations behave as described
All of these animations map to Waterfall transition
left-to-bottom: horizontal left rotated 90° clockwise
right-to-top: reverse of left-to-bottom
right-to-bottom: horizontal right rotated 90° counterclockwise
left-to-top: reverse of right-to-bottom
This holds for entrance animations. For exit it is the same but
reversed
see also: https://www.w3.org/TR/SMIL2/smil-transitions.html#Table%205:%20SMPTE%20Matrix%20Wipes
Change-Id: I9d1b05485727bb6f0e93ba78f10094055bfbaa70
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113985
Tested-by: Jenkins
Reviewed-by: Katarina Behrens <bubli at bubli.org>
(cherry picked from commit 46fe595379a898ee7e537cbffd5d215d4a58aca5)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113997
Reviewed-by: Adolfo Jayme Barrientos <fitojb at ubuntu.com>
diff --git a/sd/xml/effects.xml b/sd/xml/effects.xml
index 2846caaa9450..08a874d6a8c9 100644
--- a/sd/xml/effects.xml
+++ b/sd/xml/effects.xml
@@ -349,7 +349,7 @@
<anim:par smil:begin="0" smil:fill="hold">
<anim:par pres:preset-property="Direction" smil:begin="0" smil:fill="hold" pres:node-type="on-click" pres:preset-class="entrance" pres:preset-id="ooo-entrance-diagonal-squares" pres:preset-sub-type="left-to-bottom">
<anim:set smil:begin="0" smil:dur="0.001" smil:fill="hold" smil:attributeName="visibility" smil:to="visible"/>
- <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalRight"/>
+ <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalLeft"/>
</anim:par>
</anim:par>
</anim:par>
@@ -357,7 +357,7 @@
<anim:par smil:begin="0" smil:fill="hold">
<anim:par pres:preset-property="Direction" smil:begin="0" smil:fill="hold" pres:node-type="on-click" pres:preset-class="entrance" pres:preset-id="ooo-entrance-diagonal-squares" pres:preset-sub-type="left-to-top">
<anim:set smil:begin="0" smil:dur="0.001" smil:fill="hold" smil:attributeName="visibility" smil:to="visible"/>
- <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalLeft" smil:direction="reverse"/>
+ <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalRight" smil:direction="reverse"/>
</anim:par>
</anim:par>
</anim:par>
@@ -365,7 +365,7 @@
<anim:par smil:begin="0" smil:fill="hold">
<anim:par pres:preset-property="Direction" smil:begin="0" smil:fill="hold" pres:node-type="on-click" pres:preset-class="entrance" pres:preset-id="ooo-entrance-diagonal-squares" pres:preset-sub-type="right-to-bottom">
<anim:set smil:begin="0" smil:dur="0.001" smil:fill="hold" smil:attributeName="visibility" smil:to="visible"/>
- <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalLeft"/>
+ <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalRight"/>
</anim:par>
</anim:par>
</anim:par>
@@ -373,7 +373,7 @@
<anim:par smil:begin="0" smil:fill="hold">
<anim:par pres:preset-property="Direction" smil:begin="0" smil:fill="hold" pres:node-type="on-click" pres:preset-class="entrance" pres:preset-id="ooo-entrance-diagonal-squares" pres:preset-sub-type="right-to-top">
<anim:set smil:begin="0" smil:dur="0.001" smil:fill="hold" smil:attributeName="visibility" smil:to="visible"/>
- <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalRight" smil:direction="reverse"/>
+ <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalLeft" smil:direction="reverse"/>
</anim:par>
</anim:par>
</anim:par>
@@ -1655,7 +1655,7 @@
<anim:par smil:begin="indefinite" smil:fill="hold">
<anim:par smil:begin="0" smil:fill="hold">
<anim:par pres:preset-property="Direction" smil:begin="0" smil:fill="hold" pres:node-type="on-click" pres:preset-class="exit" pres:preset-id="ooo-exit-diagonal-squares" pres:preset-sub-type="left-to-bottom">
- <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalRight" smil:mode="out"/>
+ <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalLeft" smil:mode="out" smil:direction="reverse"/>
<anim:set smil:begin="0.499" smil:dur="0.001" smil:fill="hold" smil:attributeName="visibility" smil:to="hidden"/>
</anim:par>
</anim:par>
@@ -1663,7 +1663,7 @@
<anim:par smil:begin="indefinite" smil:fill="hold">
<anim:par smil:begin="0" smil:fill="hold">
<anim:par pres:preset-property="Direction" smil:begin="0" smil:fill="hold" pres:node-type="on-click" pres:preset-class="exit" pres:preset-id="ooo-exit-diagonal-squares" pres:preset-sub-type="left-to-top">
- <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalRight" smil:mode="out" smil:direction="reverse"/>
+ <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalRight" smil:mode="out"/>
<anim:set smil:begin="0.499" smil:dur="0.001" smil:fill="hold" smil:attributeName="visibility" smil:to="hidden"/>
</anim:par>
</anim:par>
@@ -1671,7 +1671,7 @@
<anim:par smil:begin="indefinite" smil:fill="hold">
<anim:par smil:begin="0" smil:fill="hold">
<anim:par pres:preset-property="Direction" smil:begin="0" smil:fill="hold" pres:node-type="on-click" pres:preset-class="exit" pres:preset-id="ooo-exit-diagonal-squares" pres:preset-sub-type="right-to-bottom">
- <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalLeft" smil:mode="out"/>
+ <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalRight" smil:mode="out" smil:direction="reverse"/>
<anim:set smil:begin="0.499" smil:dur="0.001" smil:fill="hold" smil:attributeName="visibility" smil:to="hidden"/>
</anim:par>
</anim:par>
@@ -1679,7 +1679,7 @@
<anim:par smil:begin="indefinite" smil:fill="hold">
<anim:par smil:begin="0" smil:fill="hold">
<anim:par pres:preset-property="Direction" smil:begin="0" smil:fill="hold" pres:node-type="on-click" pres:preset-class="exit" pres:preset-id="ooo-exit-diagonal-squares" pres:preset-sub-type="right-to-top">
- <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalLeft" smil:mode="out" smil:direction="reverse"/>
+ <anim:transitionFilter smil:dur="0.5" smil:type="waterfallWipe" smil:subtype="horizontalLeft" smil:mode="out"/>
<anim:set smil:begin="0.499" smil:dur="0.001" smil:fill="hold" smil:attributeName="visibility" smil:to="hidden"/>
</anim:par>
</anim:par>
commit bd97bfe5f6790d1ba0ae92a08d4e98d7c815a59d
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Mon Apr 12 12:11:42 2021 +0100
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Apr 14 10:50:59 2021 +0200
tdf#134736 move nLastBgAction to also include any trailing pops
RemoveTransparenciesFromMetaFile is a very fragile thing
Change-Id: I8feeb436426d16087ab5fbaddf6b39ac32574e5c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113992
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos at collabora.com>
diff --git a/vcl/source/gdi/print2.cxx b/vcl/source/gdi/print2.cxx
index 6094417d940d..4479ea39383d 100644
--- a/vcl/source/gdi/print2.cxx
+++ b/vcl/source/gdi/print2.cxx
@@ -790,6 +790,18 @@ bool OutputDevice::RemoveTransparenciesFromMetaFile( const GDIMetaFile& rInMtf,
++nActionNum;
}
+ if (nLastBgAction != -1)
+ {
+ size_t nActionSize = rInMtf.GetActionSize();
+ // tdf#134736 move nLastBgAction to also include any trailing pops
+ for (size_t nPostLastBgAction = nLastBgAction + 1; nPostLastBgAction < nActionSize; ++nPostLastBgAction)
+ {
+ if (rInMtf.GetAction(nPostLastBgAction)->GetType() != MetaActionType::POP)
+ break;
+ nLastBgAction = nPostLastBgAction;
+ }
+ }
+
aMapModeVDev->ClearStack(); // clean up aMapModeVDev
// fast-forward until one after the last background action
commit c5a24ae3058b6d07a89b570fe46170d53a2fea70
Author: Michael Stahl <michael.stahl at allotropia.de>
AuthorDate: Fri Apr 9 12:08:24 2021 +0200
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Apr 14 10:50:59 2021 +0200
tdf#141549 sw: fix ordering of virtual SdrObjects for textboxes
In header/footer it turns out that not only can the text box be inserted
after the shape, it can also be inserted before the shape.
This is because SwDrawFrameFormat::MakeFrames() ends up first destroying
all the SwDrawVirtObj and then creating them from scratch again, while
the SwVirtFlyDrawObj survives.
4 SwDrawContact::DisconnectFromLayout(bool) (this=0x6ed0200, _bMoveMasterToInvisibleLayer=false) at sw/source/core/draw/dcontact.cxx:1664
5 SwDrawContact::ConnectToLayout(SwFormatAnchor const*) (this=0x6ed0200, pAnch=0x0) at sw/source/core/draw/dcontact.cxx:1791
6 SwDrawContact::SwClientNotify(SwModify const&, SfxHint const&) (this=0x6ed0200, rMod=..., rHint=...) at sw/source/core/draw/dcontact.cxx:1521
7 SwModify::CallSwClientNotify(SfxHint const&) const (this=0x6ecfd80, rHint=...) at sw/source/core/attr/calbck.cxx:321
8 sw::BroadcastingModify::CallSwClientNotify(SfxHint const&) const (this=0x6ecfd80, rHint=...) at sw/source/core/attr/calbck.cxx:326
9 SwDrawFrameFormat::MakeFrames() (this=0x6ecfd80) at sw/source/core/layout/atrfrm.cxx:3394
10 AppendAllObjs(SwFrameFormats const*, SwFrame const*) (pTable=0x69c1920, pSib=0x38c6100) at sw/source/core/layout/frmtool.cxx:1349
11 InsertCnt_(SwLayoutFrame*, SwDoc*, unsigned long, bool, unsigned long, SwFrame*, sw::FrameMode) (pLay=0x6be4320, pDoc=0x69af7c0, nIndex=157, bPages=true, nEndIndex=0, pPrv=0x6baedc0, eMode=sw::FrameMode::New) at sw/source/core/layout/frmtool.cxx:1927
Fix this by searching for the existing SwVirtFlyDrawObj in
SwDrawVirtObj::AddToDrawingPage().
(regression from 3bc8f90e9693f710f12632f69b9348c1c833c906)
Change-Id: Ic00878685ab16018c9331190f1e80f874c1a9a4e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113844
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl at allotropia.de>
(cherry picked from commit c2eae4998b3ae79210ef0b5c064e9833218c22de)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113853
Reviewed-by: Miklos Vajna <vmiklos at collabora.com>
diff --git a/sw/inc/dcontact.hxx b/sw/inc/dcontact.hxx
index 082c0fe8d77f..042ab4a4a8f5 100644
--- a/sw/inc/dcontact.hxx
+++ b/sw/inc/dcontact.hxx
@@ -248,7 +248,7 @@ class SwDrawVirtObj final : public SdrVirtObj
void RemoveFromWriterLayout();
/// connection to drawing layer
- void AddToDrawingPage();
+ void AddToDrawingPage(SwFrame const& rAnchorFrame);
void RemoveFromDrawingPage();
/** is 'virtual' drawing object connected to writer layout and
@@ -398,7 +398,7 @@ class SAL_DLLPUBLIC_RTTI SwDrawContact final : public SwContact
/// Moves all SW-connections to new Master)
void ChangeMasterObject( SdrObject *pNewMaster );
- SwDrawVirtObj* AddVirtObj();
+ SwDrawVirtObj* AddVirtObj(SwFrame const& rAnchorFrame);
void NotifyBackgrdOfAllVirtObjs( const tools::Rectangle* pOldBoundRect );
diff --git a/sw/source/core/draw/dcontact.cxx b/sw/source/core/draw/dcontact.cxx
index 2c4ab5e5b288..82934ce74aa7 100644
--- a/sw/source/core/draw/dcontact.cxx
+++ b/sw/source/core/draw/dcontact.cxx
@@ -829,7 +829,7 @@ SwFrame* SwDrawContact::GetAnchorFrame(SdrObject const *const pDrawObj)
/** add a 'virtual' drawing object to drawing page.
*/
-SwDrawVirtObj* SwDrawContact::AddVirtObj()
+SwDrawVirtObj* SwDrawContact::AddVirtObj(SwFrame const& rAnchorFrame)
{
maDrawVirtObjs.push_back(
SwDrawVirtObjPtr(
@@ -837,7 +837,7 @@ SwDrawVirtObj* SwDrawContact::AddVirtObj()
GetMaster()->getSdrModelFromSdrObject(),
*GetMaster(),
*this)));
- maDrawVirtObjs.back()->AddToDrawingPage();
+ maDrawVirtObjs.back()->AddToDrawingPage(rAnchorFrame);
return maDrawVirtObjs.back().get();
}
@@ -1928,7 +1928,7 @@ void SwDrawContact::ConnectToLayout( const SwFormatAnchor* pAnch )
else
{
// append 'virtual' drawing object
- SwDrawVirtObj* pDrawVirtObj = AddVirtObj();
+ SwDrawVirtObj* pDrawVirtObj = AddVirtObj(*pFrame);
if ( pAnch->GetAnchorId() == RndStdIds::FLY_AS_CHAR )
{
ClrContourCache( pDrawVirtObj );
@@ -2275,30 +2275,56 @@ void SwDrawVirtObj::RemoveFromWriterLayout()
}
}
-void SwDrawVirtObj::AddToDrawingPage()
+void SwDrawVirtObj::AddToDrawingPage(SwFrame const& rAnchorFrame)
{
// determine 'master'
SdrObject* pOrgMasterSdrObj = mrDrawContact.GetMaster();
// insert 'virtual' drawing object into page, set layer and user call.
SdrPage* pDrawPg = pOrgMasterSdrObj->getSdrPageFromSdrObject();
+ // default: insert before master object
+ auto NOTM_nOrdNum(GetReferencedObj().GetOrdNum());
+
+ // maintain invariant that a shape's textbox immediately follows the shape
+ // also for the multiple SdrDrawVirtObj created for shapes in header/footer
+ if (SwFrameFormat const*const pFlyFormat =
+ SwTextBoxHelper::getOtherTextBoxFormat(mrDrawContact.GetFormat(), RES_DRAWFRMFMT))
+ {
+ // this is for the case when the flyframe SdrVirtObj is created before the draw one
+ if (SwSortedObjs const*const pObjs = rAnchorFrame.GetDrawObjs())
+ {
+ for (SwAnchoredObject const*const pAnchoredObj : *pObjs)
+ {
+ if (&pAnchoredObj->GetFrameFormat() == pFlyFormat)
+ {
+ assert(dynamic_cast<SwFlyFrame const*>(pAnchoredObj));
+ NOTM_nOrdNum = pAnchoredObj->GetDrawObj()->GetOrdNum();
+ // the master SdrObj should have the highest index
+ assert(NOTM_nOrdNum < GetReferencedObj().GetOrdNum());
+ break;
+ }
+ }
+ }
+ // this happens on initial insertion, the draw object is created first
+ SAL_INFO_IF(GetReferencedObj().GetOrdNum() == NOTM_nOrdNum, "sw", "AddToDrawingPage: cannot find SdrObject for text box's shape");
+ }
+
// #i27030# - apply order number of referenced object
if ( nullptr != pDrawPg )
{
// #i27030# - apply order number of referenced object
- pDrawPg->InsertObject( this, GetReferencedObj().GetOrdNum() );
+ pDrawPg->InsertObject(this, NOTM_nOrdNum);
}
else
{
pDrawPg = getSdrPageFromSdrObject();
if ( pDrawPg )
{
- pDrawPg->SetObjectOrdNum( GetOrdNumDirect(),
- GetReferencedObj().GetOrdNum() );
+ pDrawPg->SetObjectOrdNum(GetOrdNumDirect(), NOTM_nOrdNum);
}
else
{
- SetOrdNum( GetReferencedObj().GetOrdNum() );
+ SetOrdNum(NOTM_nOrdNum);
}
}
SetUserCall( &mrDrawContact );
diff --git a/sw/source/core/layout/frmtool.cxx b/sw/source/core/layout/frmtool.cxx
index c5e5a1896233..6b69e88fe982 100644
--- a/sw/source/core/layout/frmtool.cxx
+++ b/sw/source/core/layout/frmtool.cxx
@@ -1025,7 +1025,7 @@ void AppendObj(SwFrame *const pFrame, SwPageFrame *const pPage, SwFrameFormat *c
pNew->GetAnchorFrame() != pFrame &&
!pNew->GetDrawObjectByAnchorFrame( *pFrame ) )
{
- SwDrawVirtObj* pDrawVirtObj = pNew->AddVirtObj();
+ SwDrawVirtObj* pDrawVirtObj = pNew->AddVirtObj(*pFrame);
pFrame->AppendDrawObj( *(pNew->GetAnchoredObj( pDrawVirtObj )) );
pDrawVirtObj->ActionChanged();
commit 1f4561092bd67ede30c303e365bb455109258c76
Author: Szymon Kłos <szymon.klos at collabora.com>
AuthorDate: Thu Apr 8 15:08:38 2021 +0200
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Apr 14 10:50:58 2021 +0200
tdf#140489 fix chart display in xlsx
Commit 1147383:
tdf#114181 XLSX combined chart: fix swapped primary and secondary axes etc.
introduced regression by applying axis swaping not only
for combined charts.
Change-Id: I764399579ff922ddd495540fdd2a39675f2a8da5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113836
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos at collabora.com>
(cherry picked from commit be82f6313f298c13a2f040b218c6f2a33705ff8c)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113871
Reviewed-by: Xisco Fauli <xiscofauli at libreoffice.org>
diff --git a/chart2/qa/extras/chart2import.cxx b/chart2/qa/extras/chart2import.cxx
index 8e38308ff56f..fe9ebb5bc502 100644
--- a/chart2/qa/extras/chart2import.cxx
+++ b/chart2/qa/extras/chart2import.cxx
@@ -120,6 +120,7 @@ public:
void testAxisTitleRotationXLSX();
void testAxisTitlePositionDOCX();
void testCombinedChartAttachedAxisXLSX();
+ void testTdf140489MultiSeriesChartAxisXLSX();
void testTdf90510(); // Pie chart label placement settings(XLS)
void testTdf109858(); // Pie chart label placement settings(XLSX)
@@ -242,6 +243,7 @@ public:
CPPUNIT_TEST(testAxisTitleRotationXLSX);
CPPUNIT_TEST(testAxisTitlePositionDOCX);
CPPUNIT_TEST(testCombinedChartAttachedAxisXLSX);
+ CPPUNIT_TEST(testTdf140489MultiSeriesChartAxisXLSX);
CPPUNIT_TEST(testTdf90510);
CPPUNIT_TEST(testTdf109858);
CPPUNIT_TEST(testTdf130105);
@@ -1732,6 +1734,39 @@ void Chart2ImportTest::testCombinedChartAttachedAxisXLSX()
CPPUNIT_ASSERT_EQUAL(sal_Int32(0), nAxisIndex);
}
+void Chart2ImportTest::testTdf140489MultiSeriesChartAxisXLSX()
+{
+ load(u"/chart2/qa/extras/data/xlsx/", "tdf140489.xlsx");
+ Reference< chart2::XChartDocument> xChartDoc = getChartDocFromSheet(0, mxComponent);
+ // First series
+ Reference<chart2::XDataSeries> xSeries = getDataSeriesFromDoc(xChartDoc, 0);
+ CPPUNIT_ASSERT(xSeries.is());
+
+ Reference<beans::XPropertySet> xPropSet(xSeries, uno::UNO_QUERY_THROW);
+ sal_Int32 nAxisIndex = -1;
+ uno::Any aAny = xPropSet->getPropertyValue("AttachedAxisIndex");
+ CPPUNIT_ASSERT(aAny >>= nAxisIndex);
+ CPPUNIT_ASSERT_EQUAL(sal_Int32(0), nAxisIndex);
+
+ // Second series
+ xSeries = getDataSeriesFromDoc(xChartDoc, 0, 1);
+ CPPUNIT_ASSERT(xSeries.is());
+
+ xPropSet.set(xSeries, uno::UNO_QUERY_THROW);
+ aAny = xPropSet->getPropertyValue("AttachedAxisIndex");
+ CPPUNIT_ASSERT(aAny >>= nAxisIndex);
+ CPPUNIT_ASSERT_EQUAL(sal_Int32(0), nAxisIndex);
+
+ // Third series
+ xSeries = getDataSeriesFromDoc(xChartDoc, 0, 2);
+ CPPUNIT_ASSERT(xSeries.is());
+
+ xPropSet.set(xSeries, uno::UNO_QUERY_THROW);
+ aAny = xPropSet->getPropertyValue("AttachedAxisIndex");
+ CPPUNIT_ASSERT(aAny >>= nAxisIndex);
+ CPPUNIT_ASSERT_EQUAL(sal_Int32(1), nAxisIndex);
+}
+
void Chart2ImportTest::testInternalDataProvider() {
uno::Reference< chart2::XChartDocument > xChartDoc(getChartDocFromImpress("/chart2/qa/extras/data/odp/", "chart.odp"), uno::UNO_QUERY_THROW);
const uno::Reference< chart2::data::XDataProvider >& rxDataProvider = xChartDoc->getDataProvider();
diff --git a/chart2/qa/extras/data/xlsx/tdf140489.xlsx b/chart2/qa/extras/data/xlsx/tdf140489.xlsx
new file mode 100644
index 000000000000..bd24f40be7b5
Binary files /dev/null and b/chart2/qa/extras/data/xlsx/tdf140489.xlsx differ
diff --git a/oox/source/drawingml/chart/plotareaconverter.cxx b/oox/source/drawingml/chart/plotareaconverter.cxx
index 80ea37c57d30..9a0f9d337c8a 100644
--- a/oox/source/drawingml/chart/plotareaconverter.cxx
+++ b/oox/source/drawingml/chart/plotareaconverter.cxx
@@ -420,9 +420,13 @@ void PlotAreaConverter::convertFromModel( View3DModel& rView3DModel )
// varying point colors only for single series in single chart type
bool bSupportsVaryColorsByPoint = mrModel.maTypeGroups.size() == 1;
+ bool bIsCombinedChart = mrModel.maTypeGroups.size() == 2 &&
+ mrModel.maTypeGroups[0]->mnTypeId != mrModel.maTypeGroups[1]->mnTypeId;
+
// convert all axes sets, and check which axis is attached to the first maTypeGroups
- sal_Int32 nStartAxesSetIdx = (rValAxisIds.size() > 1 && aAxesSets.size() > 0 && aAxesSets[0]->maAxes.count( API_Y_AXIS )
- && aAxesSets[0]->maAxes[ API_Y_AXIS ]->mnAxisId != rValAxisIds[0] ) ? 1 : 0;
+ sal_Int32 nStartAxesSetIdx = bIsCombinedChart ? ((rValAxisIds.size() > 1 && aAxesSets.size() > 0 && aAxesSets[0]->maAxes.count( API_Y_AXIS )
+ && aAxesSets[0]->maAxes[ API_Y_AXIS ]->mnAxisId != rValAxisIds[0] ) ? 1 : 0)
+ : 0;
sal_Int32 nAxesSetIdx = nStartAxesSetIdx;
bool bUseFixedInnerSize = false;
commit dbbfb0dd81de70fd3e10258cdbd5f6452160209b
Author: Andreas Heinisch <andreas.heinisch at yahoo.de>
AuthorDate: Wed Mar 17 10:33:05 2021 +0100
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Apr 14 10:50:58 2021 +0200
tdf#138646 - consider the document's address convention
When accessing a named range using getCellRangeByName, consider the
document's address convention. Otherwise, an exception is raised, when
the formula syntax is EXCEL R1C1 or EXCEL A1.
Change-Id: I5df2546f1c3fd00ff30cb057dcf47f6bb01d501d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112602
Tested-by: Jenkins
Reviewed-by: Eike Rathke <erack at redhat.com>
Signed-off-by: Xisco Fauli <xiscofauli at libreoffice.org>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113984
diff --git a/sc/qa/extras/macros-test.cxx b/sc/qa/extras/macros-test.cxx
index 2970a587ecc5..fce7684e53a4 100644
--- a/sc/qa/extras/macros-test.cxx
+++ b/sc/qa/extras/macros-test.cxx
@@ -52,6 +52,7 @@ public:
void testTdf128218();
void testTdf71271();
void testTdf43003();
+ void testTdf138646();
CPPUNIT_TEST_SUITE(ScMacrosTest);
CPPUNIT_TEST(testStarBasic);
@@ -70,6 +71,7 @@ public:
CPPUNIT_TEST(testTdf128218);
CPPUNIT_TEST(testTdf71271);
CPPUNIT_TEST(testTdf43003);
+ CPPUNIT_TEST(testTdf138646);
CPPUNIT_TEST_SUITE_END();
};
@@ -864,6 +866,52 @@ void ScMacrosTest::testTdf43003()
xCloseable->close(true);
}
+void ScMacrosTest::testTdf138646()
+{
+ OUString aFileName;
+ createFileURL(u"tdf138646.ods", aFileName);
+ auto xComponent = loadFromDesktop(aFileName, "com.sun.star.sheet.SpreadsheetDocument");
+ CPPUNIT_ASSERT_MESSAGE("Failed to load the doc", xComponent.is());
+
+ SfxObjectShell* pFoundShell = SfxObjectShell::GetShellFromComponent(xComponent);
+ CPPUNIT_ASSERT_MESSAGE("Failed to access document shell", pFoundShell);
+
+ ScDocShell* pDocSh = dynamic_cast<ScDocShell*>(pFoundShell);
+ CPPUNIT_ASSERT(pDocSh);
+
+ // Without the fix in place, changing the grammar from GRAM_NATIVE to either GRAM_NATIVE_XL_A1
+ // or GRAM_NATIVE_XL_R1C1 would cause a Basic exception/error in the following script.
+ pDocSh->GetDocument().SetGrammar(formula::FormulaGrammar::Grammar::GRAM_NATIVE_XL_R1C1);
+
+ const std::vector<std::pair<OUString, OUString>> aTests({
+ { "GlobalNamedCell", "GlobalNamedCell" },
+ { "GlobalNamedCellSheet", "GlobalNamedCell" },
+ { "LocalNamedCell", "LocalNamedCell" },
+ { "LocalNamedCellAccessError", "Exception" }
+ });
+
+ {
+ Any aRet;
+ Sequence<sal_Int16> aOutParamIndex;
+ Sequence<Any> aOutParam;
+ Sequence<uno::Any> aParams;
+
+ for (auto& [sTestName, sExpected] : aTests)
+ {
+ SfxObjectShell::CallXScript(xComponent,
+ "vnd.sun.Star.script:Standard.Module1." + sTestName
+ + "?language=Basic&location=document",
+ aParams, aRet, aOutParamIndex, aOutParam);
+
+ OUString aReturnValue;
+ aRet >>= aReturnValue;
+ CPPUNIT_ASSERT_EQUAL_MESSAGE(sTestName.toUtf8().getStr(), sExpected, aReturnValue);
+ }
+ }
+
+ pDocSh->DoClose();
+}
+
ScMacrosTest::ScMacrosTest()
: UnoApiTest("/sc/qa/extras/testdocuments")
{
diff --git a/sc/qa/extras/testdocuments/tdf138646.ods b/sc/qa/extras/testdocuments/tdf138646.ods
new file mode 100644
index 000000000000..9faa95a54334
Binary files /dev/null and b/sc/qa/extras/testdocuments/tdf138646.ods differ
diff --git a/sc/source/core/tool/rangeutl.cxx b/sc/source/core/tool/rangeutl.cxx
index dfcdb30875ee..c8c8978ff348 100644
--- a/sc/source/core/tool/rangeutl.cxx
+++ b/sc/source/core/tool/rangeutl.cxx
@@ -276,7 +276,9 @@ bool ScRangeUtil::MakeRangeFromName (
ScRefAddress aStartPos;
ScRefAddress aEndPos;
- pData->GetSymbol( aStrArea );
+ // tdf#138646 - consider the current grammar and address convention of the document
+ pData->GetSymbol(aStrArea,
+ FormulaGrammar::mergeToGrammar(rDoc.GetGrammar(), rDetails.eConv));
if ( IsAbsArea( aStrArea, rDoc, nTable,
nullptr, &aStartPos, &aEndPos, rDetails ) )
commit 62d02c8728edca696165e913c533b336f2f54ac1
Author: Jan-Marek Glogowski <glogow at fbihome.de>
AuthorDate: Sun Apr 11 17:21:57 2021 +0200
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Apr 14 10:50:58 2021 +0200
tdf#141623 Qt5+cairo init surface with widget size
The QFont based rendering path directly uses the widgets size to
initialize the QImage buffer image, so do the same for the Cairo
surface, instead of the arbitrarily size of 640x480.
Change-Id: I91326dab67cbbb5e75b78b02c34eaca61ad26482
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113955
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow at fbihome.de>
(cherry picked from commit 91c883e75436210ca8af95df1ca597caeeda8703)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113869
Reviewed-by: Michael Weghorn <m.weghorn at posteo.de>
diff --git a/vcl/qt5/Qt5Frame.cxx b/vcl/qt5/Qt5Frame.cxx
index cbe31b8b5409..b398e9a5cf3b 100644
--- a/vcl/qt5/Qt5Frame.cxx
+++ b/vcl/qt5/Qt5Frame.cxx
@@ -290,11 +290,11 @@ void Qt5Frame::Damage(sal_Int32 nExtentsX, sal_Int32 nExtentsY, sal_Int32 nExten
void Qt5Frame::InitQt5SvpGraphics(Qt5SvpGraphics* pQt5SvpGraphics)
{
- int width = 640;
- int height = 480;
+ QSize aSize = m_pQWidget->size() * devicePixelRatioF();
m_pSvpGraphics = pQt5SvpGraphics;
- m_pSurface.reset(cairo_image_surface_create(CAIRO_FORMAT_ARGB32, width, height));
- m_pSvpGraphics->setSurface(m_pSurface.get(), basegfx::B2IVector(width, height));
+ m_pSurface.reset(
+ cairo_image_surface_create(CAIRO_FORMAT_ARGB32, aSize.width(), aSize.height()));
+ m_pSvpGraphics->setSurface(m_pSurface.get(), basegfx::B2IVector(aSize.width(), aSize.height()));
cairo_surface_set_user_data(m_pSurface.get(), Qt5SvpGraphics::getDamageKey(), &m_aDamageHandler,
nullptr);
}
commit 5ba5357caf9276e7bd439468aff07326545229b7
Author: Jan-Marek Glogowski <glogow at fbihome.de>
AuthorDate: Tue Apr 6 01:41:08 2021 +0200
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Apr 14 10:50:57 2021 +0200
tdf#140404 Qt ignore "unchanged" clipboard events
LO gets a Qt signal on all clipboard changes. For X11 you get one
signal when you set the clipboard. Anything else normally signals
lost of clipboard ownership.
But on Wayland LO somehow gets a second notification without any
actual change. AFAIK it's not triggered by any LO actions and
isOwner still indicates, that LO has the ownership. This breaks
the single notification assumption, the code was relying on.
Initially I found it quite tricky to find a rule to identify the
ignorable change signals.
Change-Id: I744cdd3c4254533b01d909309ecc3967d789361e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113617
Reviewed-by: Michael Weghorn <m.weghorn at posteo.de>
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas at libreoffice.org>
Reviewed-by: Jan-Marek Glogowski <glogow at fbihome.de>
Tested-by: Jenkins
(cherry picked from commit 71471a36b125f6bdc915d5dbcae92ebcaa7ff5a4)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113641
diff --git a/vcl/qt5/Qt5Clipboard.cxx b/vcl/qt5/Qt5Clipboard.cxx
index 8720cfe44310..41881f0be4b6 100644
--- a/vcl/qt5/Qt5Clipboard.cxx
+++ b/vcl/qt5/Qt5Clipboard.cxx
@@ -150,6 +150,15 @@ void Qt5Clipboard::handleChanged(QClipboard::Mode aMode)
osl::ClearableMutexGuard aGuard(m_aMutex);
+ // QtWayland will send a second change notification (seemingly without any
+ // trigger). And any C'n'P operation in the Qt file picker emits a signal,
+ // with LO still holding the clipboard ownership, but internally having lost
+ // it. So ignore any signal, which still delivers the internal Qt5MimeData
+ // as the clipboard content and is no "advertised" change.
+ if (!m_bOwnClipboardChange && isOwner(aMode)
+ && dynamic_cast<const Qt5MimeData*>(QApplication::clipboard()->mimeData(aMode)))
+ return;
+
css::uno::Reference<css::datatransfer::clipboard::XClipboardOwner> xOldOwner(m_aOwner);
css::uno::Reference<css::datatransfer::XTransferable> xOldContents(m_aContents);
// ownership change from LO POV is handled in setContents
commit 91db7039b8846288c648c47c3cf3f75b9f16755d
Author: Rizal Muttaqin <riz_17_oke at yahoo.co.id>
AuthorDate: Sun Apr 11 12:37:15 2021 +0700
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Apr 14 10:50:57 2021 +0200
Sukapura: tdf#141618 fix blured vertical line of Sukapura's anchor marker
Change-Id: I11b3fca85ec00049dfe84df6cfb548a320e255cc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113937
Tested-by: Jenkins
Reviewed-by: Rizal Muttaqin <rizmut at libreoffice.org>
(cherry picked from commit d9f10d8f0f6bae31dd5ebd9fa00f989d17fc21da)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113865
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/icon-themes/sukapura/svx/res/markers.png b/icon-themes/sukapura/svx/res/markers.png
index 38c2f92c6047..0ce89a9f3275 100644
Binary files a/icon-themes/sukapura/svx/res/markers.png and b/icon-themes/sukapura/svx/res/markers.png differ
diff --git a/icon-themes/sukapura_svg/svx/res/markers.svg b/icon-themes/sukapura_svg/svx/res/markers.svg
index d6bedcbca334..ba34c35ad91d 100644
--- a/icon-themes/sukapura_svg/svx/res/markers.svg
+++ b/icon-themes/sukapura_svg/svx/res/markers.svg
@@ -1 +1 @@
-<svg viewBox="0 0 117 92" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><linearGradient id="a"><stop offset="0" stop-color="#848489"/><stop offset="1" stop-color="#98989d" stop-opacity=".949612"/></linearGradient><linearGradient id="b" gradientUnits="userSpaceOnUse" x1="99" x2="99" xlink:href="#a" y1="78" y2="67"/><linearGradient id="c" gradientUnits="userSpaceOnUse" x1="27" x2="27" xlink:href="#a" y1="87" y2="71"/><linearGradient id="d" gradientUnits="userSpaceOnUse" x1="0" x2="0" xlink:href="#a" y1="62" y2="55"/><linearGradient id="e" gradientUnits="userSpaceOnUse" x1="8" x2="8" xlink:href="#a" y1="63" y2="56"/><linearGradient id="f" gradientUnits="userSpaceOnUse" x1="17" x2="17" xlink:href="#a" y1="65" y2="56"/><linearGradient id="g" gradientUnits="userSpaceOnUse" x1="30" x2="30" xlink:href="#a" y1="62" y2="55"/><linearGradient id="h" gradientUnits="userSpaceOnUse" x1="38" x2="38" xlink:href="#a" y1="63" y2="56"/><linearGradient id="i" gradientUnit
s="userSpaceOnUse" x1="49" x2="48.5" xlink:href="#a" y1="65" y2="56.000019"/><linearGradient id="j" gradientUnits="userSpaceOnUse" x1="57" x2="57" xlink:href="#a" y1="65" y2="55"/><linearGradient id="k" gradientUnits="userSpaceOnUse" x1="65" x2="65" xlink:href="#a" y1="65" y2="56"/><linearGradient id="l" gradientUnits="userSpaceOnUse" x1="74" x2="74" xlink:href="#a" y1="62" y2="55"/><linearGradient id="m" gradientUnits="userSpaceOnUse" x1="84" x2="84" xlink:href="#a" y1="63" y2="56"/><linearGradient id="n" gradientUnits="userSpaceOnUse" x1="90" x2="90" xlink:href="#a" y1="62" y2="55"/><linearGradient id="o" gradientUnits="userSpaceOnUse" x1="97" x2="97" xlink:href="#a" y1="64" y2="55"/><linearGradient id="p" gradientUnits="userSpaceOnUse" x1="106" x2="106" xlink:href="#a" y1="66" y2="55"/><linearGradient id="q" gradientUnits="userSpaceOnUse" x1="49" x2="49" xlink:href="#a" y1="90" y2="68"/><linearGradient id="r"><stop offset="0" stop-color="#f58b00"/><stop offset="1" stop-color="#ff
9f0a" stop-opacity=".74031"/></linearGradient><linearGradient id="s"><stop offset="0" stop-color="#f5c200"/><stop offset="1" stop-color="#ffd60a"/></linearGradient><linearGradient id="t"><stop offset="0" stop-color="#2a9240"/><stop offset="1" stop-color="#32d74b" stop-opacity=".755814"/></linearGradient><linearGradient id="u"><stop offset="0" stop-color="#d70015"/><stop offset="1" stop-color="#ff453a" stop-opacity=".976744"/></linearGradient><linearGradient id="v"><stop offset="0" stop-color="#0040dd"/><stop offset="1" stop-color="#0a84ff"/></linearGradient><linearGradient id="w" gradientUnits="userSpaceOnUse" x1="3" x2="3" xlink:href="#v" y1="7" y2="0"/><linearGradient id="x" gradientUnits="userSpaceOnUse" x1="102" x2="102" xlink:href="#v" y1="9" y2="0"/><linearGradient id="y" gradientUnits="userSpaceOnUse" x1="112" x2="112" xlink:href="#v" y1="11" y2="0"/><linearGradient id="z" gradientUnits="userSpaceOnUse" x1="94" x2="94" xlink:href="#v" y1="7" y2="0"/><linearGradient id="A" gra
dientUnits="userSpaceOnUse" x1="12" x2="12" xlink:href="#v" y1="8" y2="2"/><linearGradient id="B" gradientUnits="userSpaceOnUse" x1="22" x2="22" xlink:href="#v" y1="10" y2="2"/><linearGradient id="C" gradientUnits="userSpaceOnUse" x1="30" x2="30.5" xlink:href="#v" y1="7" y2="0"/><linearGradient id="D" gradientUnits="userSpaceOnUse" x1="39" x2="39" xlink:href="#v" y1="8" y2="1"/><linearGradient id="E" gradientUnits="userSpaceOnUse" x1="48.5" x2="48.5" xlink:href="#v" y1="10" y2="1"/><linearGradient id="F" gradientUnits="userSpaceOnUse" x1="57.5" x2="57.5" xlink:href="#v" y1="10" y2="0"/><linearGradient id="G" gradientUnits="userSpaceOnUse" x1="65.5" x2="65.5" xlink:href="#v" y1="10" y2="1"/><linearGradient id="H" gradientUnits="userSpaceOnUse" x1="84" x2="84" xlink:href="#v" y1="8" y2="1"/><linearGradient id="I" gradientUnits="userSpaceOnUse" x1="75" x2="74.5" xlink:href="#v" y1="7" y2="0"/><linearGradient id="J" gradientUnits="userSpaceOnUse" x1="79" x2="79" xlink:href="#v" y1="78"
y2="67"/><linearGradient id="K" gradientUnits="userSpaceOnUse" x1="0" x2="0" xlink:href="#u" y1="40" y2="33"/><linearGradient id="L" gradientUnits="userSpaceOnUse" x1="8" x2="8" xlink:href="#u" y1="41" y2="34"/><linearGradient id="M" gradientUnits="userSpaceOnUse" x1="17" x2="17" xlink:href="#u" y1="43" y2="34"/><linearGradient id="N" gradientUnits="userSpaceOnUse" x1="30.5" x2="30.5" xlink:href="#u" y1="40" y2="33"/><linearGradient id="O" gradientUnits="userSpaceOnUse" x1="39" x2="39" xlink:href="#u" y1="41" y2="34"/><linearGradient id="P" gradientUnits="userSpaceOnUse" x1="49" x2="49" xlink:href="#u" y1="43" y2="34"/><linearGradient id="Q" gradientUnits="userSpaceOnUse" x1="57.5" x2="57.5" xlink:href="#u" y1="43" y2="33"/><linearGradient id="R" gradientUnits="userSpaceOnUse" x1="65.5" x2="65.5" xlink:href="#u" y1="43" y2="34"/><linearGradient id="S" gradientUnits="userSpaceOnUse" x1="74.5" x2="74.5" xlink:href="#u" y1="40" y2="33"/><linearGradient id="T" gradientUnits="userSpaceOn
Use" x1="84.5" x2="84.5" xlink:href="#u" y1="41" y2="34"/><linearGradient id="U" gradientUnits="userSpaceOnUse" x1="94" x2="94" xlink:href="#u" y1="40" y2="33"/><linearGradient id="V" gradientUnits="userSpaceOnUse" x1="102" x2="102" xlink:href="#u" y1="42" y2="33"/><linearGradient id="W" gradientUnits="userSpaceOnUse" x1="112" x2="112" xlink:href="#u" y1="44" y2="33"/><linearGradient id="X" gradientUnits="userSpaceOnUse" x1="86" x2="86" xlink:href="#u" y1="91" y2="80"/><linearGradient id="Y" gradientUnits="userSpaceOnUse" x1="19.5" x2="19.5" xlink:href="#u" y1="75" y2="68"/><linearGradient id="Z" gradientUnits="userSpaceOnUse" x1="0" x2="0" xlink:href="#t" y1="29" y2="22"/><linearGradient id="aa" gradientUnits="userSpaceOnUse" x1="8" x2="8" xlink:href="#t" y1="30" y2="23"/><linearGradient id="ab" gradientUnits="userSpaceOnUse" x1="17" x2="17" xlink:href="#t" y1="32" y2="23"/><linearGradient id="ac" gradientUnits="userSpaceOnUse" x1="30.5" x2="30.5" xlink:href="#t" y1="29" y2="22"/><
linearGradient id="ad" gradientUnits="userSpaceOnUse" x1="38.5" x2="38.5" xlink:href="#t" y1="30" y2="23"/><linearGradient id="ae" gradientUnits="userSpaceOnUse" x1="48.5" x2="48.5" xlink:href="#t" y1="32" y2="23"/><linearGradient id="af" gradientUnits="userSpaceOnUse" x1="57.5" x2="57.5" xlink:href="#t" y1="32" y2="22"/><linearGradient id="ag" gradientUnits="userSpaceOnUse" x1="65.5" x2="65.5" xlink:href="#t" y1="32" y2="23"/><linearGradient id="ah" gradientUnits="userSpaceOnUse" x1="74.5" x2="74.5" xlink:href="#t" y1="29" y2="22"/><linearGradient id="ai" gradientUnits="userSpaceOnUse" x1="84.5" x2="84.5" xlink:href="#t" y1="30" y2="23"/><linearGradient id="aj" gradientUnits="userSpaceOnUse" x1="90" x2="90" xlink:href="#t" y1="29" y2="22"/><linearGradient id="ak" gradientUnits="userSpaceOnUse" x1="97" x2="97" xlink:href="#t" y1="31" y2="22"/><linearGradient id="al" gradientUnits="userSpaceOnUse" x1="106" x2="106" xlink:href="#t" y1="33" y2="22"/><linearGradient id="am" gradientUnit
s="userSpaceOnUse" x1="73" x2="74" xlink:href="#t" y1="91.000023" y2="80"/><linearGradient id="an" gradientUnits="userSpaceOnUse" x1="19.5" x2="19.5" xlink:href="#t" y1="84" y2="77"/><linearGradient id="ao" gradientUnits="userSpaceOnUse" x1="0" x2="0" xlink:href="#s" y1="18" y2="11"/><linearGradient id="ap" gradientUnits="userSpaceOnUse" x1="8" x2="8" xlink:href="#s" y1="19" y2="12"/><linearGradient id="aq" gradientUnits="userSpaceOnUse" x1="17" x2="17" xlink:href="#s" y1="21" y2="12"/><linearGradient id="ar" gradientUnits="userSpaceOnUse" x1="27" x2="34" xlink:href="#s" y1="14.50002" y2="14.50002"/><linearGradient id="as" gradientUnits="userSpaceOnUse" x1="39" x2="39" xlink:href="#s" y1="19" y2="12"/><linearGradient id="at" gradientUnits="userSpaceOnUse" x1="49" x2="49" xlink:href="#s" y1="21" y2="12"/><linearGradient id="au" gradientUnits="userSpaceOnUse" x1="58" x2="58" xlink:href="#s" y1="21" y2="11"/><linearGradient id="av" gradientUnits="userSpaceOnUse" x1="65" x2="65" xlink:h
ref="#s" y1="21" y2="12"/><linearGradient id="aw" gradientUnits="userSpaceOnUse" x1="74.5" x2="74.5" xlink:href="#s" y1="18" y2="11"/><linearGradient id="ax" gradientUnits="userSpaceOnUse" x1="84.5" x2="84.5" xlink:href="#s" y1="19" y2="12"/><linearGradient id="ay" gradientUnits="userSpaceOnUse" x1="97" x2="97" xlink:href="#s" y1="18" y2="11"/><linearGradient id="az" gradientUnits="userSpaceOnUse" x1="97" x2="97" xlink:href="#s" y1="20" y2="11"/><linearGradient id="aA" gradientUnits="userSpaceOnUse" x1="106" x2="106" xlink:href="#s" y1="22" y2="11"/><linearGradient id="aB" gradientUnits="userSpaceOnUse" x1="99" x2="99" xlink:href="#s" y1="91" y2="80"/><linearGradient id="aC" gradientUnits="userSpaceOnUse" x1="0" x2="0" xlink:href="#r" y1="51" y2="44"/><linearGradient id="aD" gradientUnits="userSpaceOnUse" x1="8" x2="8" xlink:href="#r" y1="52" y2="45"/><linearGradient id="aE" gradientUnits="userSpaceOnUse" x1="17" x2="17" xlink:href="#r" y1="54" y2="45"/><linearGradient id="aF" gradi
entUnits="userSpaceOnUse" x1="30" x2="30" xlink:href="#r" y1="51" y2="44"/><linearGradient id="aG" gradientUnits="userSpaceOnUse" x1="38" x2="38" xlink:href="#r" y1="52" y2="45"/><linearGradient id="aH" gradientUnits="userSpaceOnUse" x1="48" x2="48.5" xlink:href="#r" y1="54" y2="45.000019"/><linearGradient id="aI" gradientUnits="userSpaceOnUse" x1="57" x2="57" xlink:href="#r" y1="54" y2="44"/><linearGradient id="aJ" gradientUnits="userSpaceOnUse" x1="66" x2="66" xlink:href="#r" y1="54" y2="45"/><linearGradient id="aK" gradientUnits="userSpaceOnUse" x1="75" x2="75" xlink:href="#r" y1="51" y2="44"/><linearGradient id="aL" gradientUnits="userSpaceOnUse" x1="80" x2="89" xlink:href="#r" y1="48.50002" y2="48.50002"/><linearGradient id="aM" gradientUnits="userSpaceOnUse" x1="90" x2="90" xlink:href="#r" y1="51" y2="44"/><linearGradient id="aN" gradientUnits="userSpaceOnUse" x1="97" x2="97" xlink:href="#r" y1="53" y2="44"/><linearGradient id="aO" gradientUnits="userSpaceOnUse" x1="112" x2="1
12" xlink:href="#r" y1="55" y2="44"/><linearGradient id="aP" gradientUnits="userSpaceOnUse" x1="92" x2="92" xlink:href="#r" y1="78" y2="67"/><linearGradient id="aQ" gradientUnits="userSpaceOnUse" x1="8" x2="8" xlink:href="#r" y1="79.9375" y2="72"/><path d="m99 67.00002h11v11h-11z" fill="url(#b)"/><path d="m25 68.00002h22v22h-22z" fill="#b3b3b3" opacity=".2"/><path d="m36 71.00002c-1.104569 0-2 .8954-2 2 0 .932.637301 1.7155 1.5 1.9375v2.0625h-2.5v1h2.5v7.9687c-2.53904-.1627-4.748393-1.5121-6.09375-3.5l.1875-.094.90625-.5-.5-.875c.000019 0-3 1.625-3 1.625l.5.875 1.03125-.5625c1.604162 2.4357 4.335597 4.0625 7.46875 4.0625s5.863905-1.6268 7.46875-4.0625l1.03125.5625.5-.875c.000014-.0006-3-1.625-3-1.625l-.5.875.90625.5.1875.094c-1.345357 1.9879-3.554711 3.3373-6.09375 3.5v-7.9687h2.5v-1h-2.5v-2.0625c.862699-.222 1.5-1.0055 1.5-1.9375 0-1.1046-.895431-2-2-2zm0 1c.552285 0 1 .4477 1 1s-.447715 1-1 1-1-.4477-1-1 .447715-1 1-1z" fill="url(#c)" fill-rule="evenodd"/><g fill="#2a9240" transfo
rm="translate(0 11)"><path d="m0 22h7v7h-7z" fill="url(#Z)"/><path d="m8 23h7v7h-7z" fill="url(#aa)"/><path d="m17 23h9v9h-9z" fill="url(#ab)"/><path d="m34 25.5a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#ac)"/><path d="m42 26.5a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#ad)"/><path d="m53 27.5a4.5 4.5 0 0 1 -4.5 4.5 4.5 4.5 0 0 1 -4.5-4.5 4.5 4.5 0 0 1 4.5-4.5 4.5 4.5 0 0 1 4.5 4.5z" fill="url(#ae)"/><path d="m61 27a3.5 5 0 0 1 -3.5 5 3.5 5 0 0 1 -3.5-5 3.5 5 0 0 1 3.5-5 3.5 5 0 0 1 3.5 5z" fill="url(#af)"/><path d="m69 27.5a3.5 4.5 0 0 1 -3.5 4.5 3.5 4.5 0 0 1 -3.5-4.5 3.5 4.5 0 0 1 3.5-4.5 3.5 4.5 0 0 1 3.5 4.5z" fill="url(#ag)"/><path d="m79 25.5a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#ah)"/><path d="m89 26.5a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z"
fill="url(#ai)"/><path d="m90 22v7h7v-7zm3 1h1v2h2v1h-2v2h-1v-1-1h-2v-1h2v-1z" fill="url(#aj)"/><path d="m97 22v9h9v-9zm4 1h1v3h3v1h-3v3h-1v-1-2h-3v-1h3v-2z" fill="url(#ak)"/><path d="m106 22v11h11v-11zm5 1h1v4h4v1h-4v4h-1v-1-3h-4v-1h4v-3z" fill="url(#al)"/></g><g fill="#0040dd"><path d="m97 0v9h9v-9zm4 1h1v1 2h2 1v1h-1-2v2 1h-1v-1-2h-2-1v-1h1 2v-2z" fill="url(#x)"/><path d="m106 0v11h11v-11zm5 1h1v1 3h3 1v1h-1-3v3 1h-1v-1-3h-3-1v-1h1 3v-3z" fill="url(#y)"/><path d="m90 0v7h7v-7zm3 1h1v1 1h1 1v1h-1-1v1 1h-1v-1-1h-1-1v-1h1 1v-1z" fill="url(#z)"/><path d="m0 0v7h7v-7z" fill="url(#w)"/><path d="m8 1v7h7v-7z" fill="url(#A)"/><path d="m17 1v9h9v-9z" fill="url(#B)"/><path d="m30.5 0c-1.932997 0-3.5 1.5670034-3.5 3.5s1.567003 3.5 3.5 3.5 3.5-1.5670034 3.5-3.5-1.567003-3.5-3.5-3.5z" fill="url(#C)"/><path d="m38.5 1c-1.932997 0-3.5 1.5670034-3.5 3.5s1.567003 3.5 3.5 3.5 3.5-1.5670034 3.5-3.5-1.567003-3.5-3.5-3.5z" fill="url(#D)"/><path d="m48.5 1c-2.485281 0-4.5 2.0147186-4.5 4.5s2.014719 4
.5 4.5 4.5 4.5-2.0147186 4.5-4.5-2.014719-4.5-4.5-4.5z" fill="url(#E)"/><path d="m57.5 0c-1.932997 0-3.5 2.2385763-3.5 5s1.567003 5 3.5 5 3.5-2.2385763 3.5-5-1.567003-5-3.5-5z" fill="url(#F)"/><path d="m65.5 1c-1.932997 0-3.5 2.01472-3.5 4.5s1.567003 4.5 3.5 4.5 3.5-2.01472 3.5-4.5-1.567003-4.5-3.5-4.5z" fill="url(#G)"/><path d="m84.5 1c-2.485281 0-4.5 1.5670034-4.5 3.5s2.014719 3.5 4.5 3.5 4.5-1.5670034 4.5-3.5-2.014719-3.5-4.5-3.5z" fill="url(#H)"/><path d="m74.5 0c-2.485281 0-4.5 1.5670034-4.5 3.5s2.014719 3.5 4.5 3.5 4.5-1.5670034 4.5-3.5-2.014719-3.5-4.5-3.5z" fill="url(#I)"/></g><g fill="#ffd60a"><path d="m0 11h7v7h-7z" fill="url(#ao)"/><path d="m8 12h7v7h-7z" fill="url(#ap)"/><path d="m17 12h9v9h-9z" fill="url(#aq)"/><path d="m34 14.50002a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#ar)"/><path d="m42 15.50002a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#as)"/><
path d="m53 16.50002a4.5 4.5 0 0 1 -4.5 4.5 4.5 4.5 0 0 1 -4.5-4.5 4.5 4.5 0 0 1 4.5-4.5 4.5 4.5 0 0 1 4.5 4.5z" fill="url(#at)"/><path d="m61 16.00002a3.5 5 0 0 1 -3.5 5 3.5 5 0 0 1 -3.5-5 3.5 5 0 0 1 3.5-5 3.5 5 0 0 1 3.5 5z" fill="url(#au)"/><path d="m69 16.50003a3.5 4.50001 0 0 1 -3.5 4.50001 3.5 4.50001 0 0 1 -3.5-4.50001 3.5 4.50001 0 0 1 3.5-4.50001 3.5 4.50001 0 0 1 3.5 4.50001z" fill="url(#av)"/><path d="m79 14.50002a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#aw)"/><path d="m89 15.50002a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#ax)"/><path d="m90 11v7h7v-7zm3 1h1v2h2v1h-2v2h-1v-1-1h-2v-1h2v-1z" fill="url(#ay)"/><path d="m97 11v9h9c0-2.981105 0-5.990251 0-9zm4 1h1v3h3v1h-3v3h-1v-1-2h-3v-1h3v-2z" fill="url(#az)"/><path d="m106 11v11h11v-11zm5 1h1v4h4v1h-4v4h-1v-1-3h-4v-1h4v-3z" fill="url(#aA)"/></g><g fill="#98989d"><path d="m0 55.00002h7v7h-7z" fill="url(#
d)"/><path d="m8 56.00002h7v7h-7z" fill="url(#e)"/><path d="m17 56.00002h9v9h-9z" fill="url(#f)"/><path d="m34 58.50002a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#g)"/><path d="m42 59.50002a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#h)"/><path d="m53 60.50002a4.5 4.5 0 0 1 -4.5 4.5 4.5 4.5 0 0 1 -4.5-4.5 4.5 4.5 0 0 1 4.5-4.5 4.5 4.5 0 0 1 4.5 4.5z" fill="url(#i)"/><path d="m61 60.00002a3.5 5 0 0 1 -3.5 5 3.5 5 0 0 1 -3.5-5 3.5 5 0 0 1 3.5-5 3.5 5 0 0 1 3.5 5z" fill="url(#j)"/><path d="m69 60.50001a3.5 4.49999 0 0 1 -3.5 4.49999 3.5 4.49999 0 0 1 -3.5-4.49999 3.5 4.49999 0 0 1 3.5-4.49999 3.5 4.49999 0 0 1 3.5 4.49999z" fill="url(#k)"/><path d="m79 58.50002a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#l)"/><path d="m89 59.50002a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1
4.5 3.5z" fill="url(#m)"/><path d="m90 55v7h7v-7zm3 1h1v2h2v1h-2v2h-1v-1-1h-2v-1h2v-1z" fill="url(#n)"/><path d="m97 55v9h9v-9zm4 1h1v3h3v1h-3v3h-1v-1-2h-3v-1h3v-2z" fill="url(#o)"/><path d="m106 55v11h11v-11zm5 1h1v4h4v1h-4v4h-1v-1-3h-4v-1h4v-3z" fill="url(#p)"/></g><g fill="#ff9500"><path d="m0 44.00002h7v7h-7z" fill="url(#aC)"/><path d="m8 45.00002h7v7h-7z" fill="url(#aD)"/><path d="m17 45.00002h9v9h-9z" fill="url(#aE)"/><path d="m34 47.50002a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#aF)"/><path d="m42 48.50002a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#aG)"/><path d="m53 49.50002a4.5 4.5 0 0 1 -4.5 4.5 4.5 4.5 0 0 1 -4.5-4.5 4.5 4.5 0 0 1 4.5-4.5 4.5 4.5 0 0 1 4.5 4.5z" fill="url(#aH)"/><path d="m61 49.00002a3.5 5 0 0 1 -3.5 5 3.5 5 0 0 1 -3.5-5 3.5 5 0 0 1 3.5-5 3.5 5 0 0 1 3.5 5z" fill="url(#aI)"/></g><path d="m65.5 44.00002c-2.485281 0-4.5 2.4624-4.5 5.5 0
3.0375 2.014719 5.5 4.5 5.5s4.5-2.4625 4.5-5.5c0-3.0376-2.014719-5.5-4.5-5.5zm0 1c1.932997 0 3.5 2.0147 3.5 4.5s-1.567003 4.5-3.5 4.5-3.5-2.0147-3.5-4.5 1.567003-4.5 3.5-4.5z" fill="#c93400"/><g fill="#ff9500"><path d="m69 49.50002a3.5 4.5 0 0 1 -3.5 4.5 3.5 4.5 0 0 1 -3.5-4.5 3.5 4.5 0 0 1 3.5-4.5 3.5 4.5 0 0 1 3.5 4.5z" fill="url(#aJ)"/><path d="m79 47.50002a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#aK)"/><path d="m89 48.50002a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#aL)"/><path d="m90 44v7h7v-7zm3 1h1v2h2v1h-2v2h-1v-1-1h-2v-1h2v-1z" fill="url(#aM)"/><path d="m97 44v9h9v-9zm4 1h1v3h3v1h-3v3h-1v-1-2h-3v-1h3v-2z" fill="url(#aN)"/><path d="m106 44v11h11v-11zm5 1h1v4h4v1h-4v4h-1v-1-3h-4v-1h4v-3z" fill="url(#aO)"/></g><g fill="#fff"><path d="m93 45.00002v2h-2v1h2v2h1v-2h2v-1h-2v-2z"/><path d="m101 45.00002v3h-3v1h3v3h1v-3h3v-1h-3v-3z"/><path d="m111 45.00002v4h-4v
1h4v4h1v-4h4v-1h-4v-4z"/></g><g fill="#d70015" transform="translate(0 -11)"><path d="m0 33h7v7.00002h-7z" fill="url(#K)"/><path d="m8 34h7v7.00002h-7z" fill="url(#L)"/><path d="m17 34h9v9.00002h-9z" fill="url(#M)"/><path d="m34 36.5a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#N)"/><path d="m42 37.5a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#O)"/><path d="m53 38.5a4.5 4.5 0 0 1 -4.5 4.5 4.5 4.5 0 0 1 -4.5-4.5 4.5 4.5 0 0 1 4.5-4.5 4.5 4.5 0 0 1 4.5 4.5z" fill="url(#P)"/><path d="m61 38a3.5 5 0 0 1 -3.5 5 3.5 5 0 0 1 -3.5-5 3.5 5 0 0 1 3.5-5 3.5 5 0 0 1 3.5 5z" fill="url(#Q)"/><path d="m69 38.49999a3.5 4.49999 0 0 1 -3.5 4.49999 3.5 4.49999 0 0 1 -3.5-4.49999 3.5 4.49999 0 0 1 3.5-4.49999 3.5 4.49999 0 0 1 3.5 4.49999z" fill="url(#R)"/><path d="m79 36.5a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#S)"/><path d=
"m89 37.5a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#T)"/><path d="m90 33v7h7v-7zm3 1h1v2h2v1h-2v2h-1v-1-1h-2v-1h2v-1z" fill="url(#U)"/><path d="m97 33v9h9v-9zm4 1h1v3h3v1h-3v3h-1v-1-2h-3v-1h3v-2z" fill="url(#V)"/><path d="m106 33v11h11v-11zm5 1h1v4h4v1h-4v4h-1v-1-3h-4v-1h4v-3z" fill="url(#W)"/></g><g fill="#fff"><path d="m93 34v2h-2v1h2v2h1v-2h2v-1h-2v-2z" opacity=".9"/><path d="m101 34v3h-3v1h3v3.00002h1v-3.00002h3v-1h-3v-3z" opacity=".9"/><path d="m111 34v4h-4v1h4v4.00002h1v-4.00002h4v-1h-4v-4z" opacity=".9"/></g><path d="m73 67.00002h11v11h-11z" fill="url(#J)"/><path d="m86 80.00002h11v11h-11z" fill="url(#X)"/><path d="m73 80.00002h11v11h-11z" fill="url(#am)"/><path d="m86 67.00002h11v11h-11z" fill="url(#aP)"/><path d="m99 80.00002h11v11h-11z" fill="url(#aB)"/><path d="m7.5 71c-2.485281 0-4.5 2.0147-4.5 4.5s2.014719 4.5 4.5 4.5 4.5-2.0147 4.5-4.5-2.014719-4.5-4.5-4.5z" fill="url(#aQ)"/><path d="m49 68v22h22v-22zm11 3c1.
104569 0 2 .89543 2 2 0 .93198-.637301 1.715537-1.5 1.9375v2.0625h2.5v1h-2.5v7.96875c2.539039-.16277 4.748393-1.51216 6.09375-3.5l-.1875-.09375-.90625-.5.5-.875s3.000014 1.62437 3 1.625l-.5.875-1.03125-.5625c-1.604845 2.43564-4.335597 4.0625-7.46875 4.0625s-5.864588-1.62686-7.46875-4.0625l-1.03125.5625-.5-.875s3.000019-1.624983 3-1.625l.5.875-.90625.5-.1875.09375c1.345357 1.98784 3.55471 3.33723 6.09375 3.5v-7.96875h-2.5v-1h2.5v-2.0625c-.862699-.221963-1.5-1.00552-1.5-1.9375 0-1.10457.895431-2 2-2zm0 1c-.552285 0-1 .447715-1 1s.447715 1 1 1 1-.447715 1-1-.447715-1-1-1z" fill="url(#q)"/><g fill="#fff"><path d="m93 23v2h-2v1h2v2h1v-2h2v-1h-2v-2z" opacity=".9"/><path d="m101 23v3h-3v1h3v3h1v-3h3v-1h-3v-3z" opacity=".9"/><path d="m111 23v4h-4v1h4v4h1v-4h4v-1h-4v-4z" opacity=".9"/><path d="m93 56.00002v2h-2v1h2v2h1v-2h2v-1h-2v-2z" opacity=".9"/><path d="m101 56.00002v3h-3v1h3v3h1v-3h3v-1h-3v-3z" opacity=".9"/><path d="m111 56.00002v4h-4v1h4v4h1v-4h4v-1h-4v-4z" opacity=".9"/><path d="m7 6
8v2.03125c-2.6379251.238104-4.7306463 2.330825-4.96875 4.96875h-2.03125v1h2.03125c.2381037 2.637925 2.3308249 4.730646 4.96875 4.96875v2.03125h1v-2.03125c2.637925-.238104 4.730646-2.330825 4.96875-4.96875h2.03125v-1h-2.03125c-.238104-2.637925-2.330825-4.730646-4.96875-4.96875v-2.03125zm0 3.0625v.9375h1v-.9375c2.079314.233649 3.703851 1.858186 3.9375 3.9375h-.9375v1h.9375c-.233649 2.079314-1.858186 3.703851-3.9375 3.9375v-.9375h-1v.9375c-2.0793143-.233649-3.7038511-1.858186-3.9375-3.9375h.9375v-1h-.9375c.2336489-2.079314 1.8581857-3.703851 3.9375-3.9375z" opacity=".9"/><path d="m93 45.00002v2h-2v1h2v2h1v-2h2v-1h-2v-2z" opacity=".9"/><path d="m101 45.00002v3h-3v1h3v3h1v-3h3v-1h-3v-3z" opacity=".9"/><path d="m111 45.00002v4h-4v1h4v4h1v-4h4v-1h-4v-4z" opacity=".9"/></g><g fill="#c93400"><path d="m7 44.00002v8 1h8 1v-9h-1-7zm1 1h7v7h-7z"/><path d="m16 44.00002v11h11v-11zm1 1h9v9h-9z"/><path d="m38.5 44.00002c-2.485281 0-4.5 2.0147-4.5 4.5s2.014719 4.5 4.5 4.5 4.5-2.0147 4.5-4.5-2.014719-
4.5-4.5-4.5zm0 1c1.932997 0 3.5 1.567 3.5 3.5s-1.567003 3.5-3.5 3.5-3.5-1.567-3.5-3.5 1.567003-3.5 3.5-3.5z"/><path d="m48.5 44.00002c-3.037566 0-5.5 2.4624-5.5 5.5s2.462434 5.5 5.5 5.5 5.5-2.4624 5.5-5.5-2.462434-5.5-5.5-5.5zm0 1c2.485281 0 4.5 2.0147 4.5 4.5s-2.014719 4.5-4.5 4.5-4.5-2.0147-4.5-4.5 2.014719-4.5 4.5-4.5z"/><path d="m84.5 44.00002c-3.037566 0-5.5 2.0147-5.5 4.5s2.462434 4.5 5.5 4.5 5.5-2.0147 5.5-4.5-2.462434-4.5-5.5-4.5zm0 1c2.485281 0 4.5 1.567 4.5 3.5s-2.014719 3.5-4.5 3.5-4.5-1.567-4.5-3.5 2.014719-3.5 4.5-3.5z"/></g><g fill="#fff"><path d="m93 12.00002v2h-2v1h2v2h1v-2h2v-1h-2v-2z" opacity=".9"/><path d="m101 12.00002v3h-3v1h3v3h1v-3h3v-1h-3v-3z" opacity=".9"/><path d="m111 12.00002v4h-4v1h4v4h1v-4h4v-1h-4v-4z" opacity=".9"/></g><g fill="#d70015" transform="translate(0 -11.00001)"><path d="m16 33v11.00002h11v-11.00002zm1 1h9v9.00002h-9z"/><path d="m7 33v9.00002h9v-9.00002zm1 1h7v7.00002h-7z"/><path d="m38.5 33c-2.485281 0-4.5 2.0147-4.5 4.5 0 2.48532 2.014719 4.
50002 4.5 4.50002s4.5-2.0147 4.5-4.50002c0-2.4853-2.014719-4.5-4.5-4.5zm0 1c1.932997 0 3.5 1.567 3.5 3.5s-1.567003 3.50002-3.5 3.50002-3.5-1.56702-3.5-3.50002 1.567003-3.5 3.5-3.5z"/><path d="m48.5 33c-3.037566 0-5.5 2.4624-5.5 5.5 0 3.03752 2.462434 5.50002 5.5 5.50002s5.5-2.4625 5.5-5.50002c0-3.0376-2.462434-5.5-5.5-5.5zm0 1c2.485281 0 4.5 2.0147 4.5 4.5 0 2.48532-2.014719 4.50002-4.5 4.50002s-4.5-2.0147-4.5-4.50002c0-2.4853 2.014719-4.5 4.5-4.5z"/><path d="m84.5 33c-3.037566 0-5.5 2.0147-5.5 4.5 0 2.48532 2.462434 4.50002 5.5 4.50002s5.5-2.0147 5.5-4.50002c0-2.4853-2.462434-4.5-5.5-4.5zm0 1c2.485281 0 4.5 1.567 4.5 3.5s-2.014719 3.50002-4.5 3.50002-4.5-1.56702-4.5-3.50002 2.014719-3.5 4.5-3.5z"/><path d="m65.5 33c-2.485281 0-4.5 2.4624-4.5 5.5 0 3.03752 2.014719 5.50002 4.5 5.50002s4.5-2.4625 4.5-5.50002c0-3.0376-2.014719-5.5-4.5-5.5zm0 1c1.932997 0 3.5 2.0147 3.5 4.5 0 2.48532-1.567003 4.50002-3.5 4.50002s-3.5-2.0147-3.5-4.50002c0-2.4853 1.567003-4.5 3.5-4.5z"/></g><g fill="#004
0dd"><path d="m7 0v8 1h8 1v-9h-1-7zm1 1h7v7h-7z"/><path d="m16 0v11h11v-11zm1 1h9v9h-9z"/><path d="m38.5 0c-2.485281 0-4.5 2.0147186-4.5 4.5s2.014719 4.5 4.5 4.5 4.5-2.0147186 4.5-4.5-2.014719-4.5-4.5-4.5zm0 1c1.932997 0 3.5 1.5670034 3.5 3.5s-1.567003 3.5-3.5 3.5-3.5-1.5670034-3.5-3.5 1.567003-3.5 3.5-3.5z"/><path d="m48.5 0c-3.037566 0-5.5 2.4624339-5.5 5.5s2.462434 5.5 5.5 5.5 5.5-2.4624339 5.5-5.5-2.462434-5.5-5.5-5.5zm0 1c2.485281 0 4.5 2.0147186 4.5 4.5s-2.014719 4.5-4.5 4.5-4.5-2.0147186-4.5-4.5 2.014719-4.5 4.5-4.5z"/><path d="m84.5 0c-3.037566 0-5.5 2.0147186-5.5 4.5s2.462434 4.5 5.5 4.5 5.5-2.0147186 5.5-4.5-2.462434-4.5-5.5-4.5zm0 1c2.485281 0 4.5 1.5670034 4.5 3.5s-2.014719 3.5-4.5 3.5-4.5-1.5670034-4.5-3.5 2.014719-3.5 4.5-3.5z"/><path d="m65.5 0c-2.485281 0-4.5 2.4624-4.5 5.5 0 3.0375 2.014719 5.5 4.5 5.5s4.5-2.4625 4.5-5.5c0-3.0376-2.014719-5.5-4.5-5.5zm0 1c1.932997 0 3.5 2.0147 3.5 4.5s-1.567003 4.5-3.5 4.5-3.5-2.0147-3.5-4.5 1.567003-4.5 3.5-4.5z"/></g><g fill="#2a9
240" transform="translate(0 11.00001)"><path d="m16 22v11h11v-11zm1 1h9v9h-9z"/><path d="m7 22v9h9v-9zm1 1h7v7h-7z"/><path d="m38.5 22c-2.485281 0-4.5 2.0147-4.5 4.5s2.014719 4.5 4.5 4.5 4.5-2.0147 4.5-4.5-2.014719-4.5-4.5-4.5zm0 1c1.932997 0 3.5 1.567 3.5 3.5s-1.567003 3.5-3.5 3.5-3.5-1.567-3.5-3.5 1.567003-3.5 3.5-3.5z"/><path d="m48.5 22c-3.037566 0-5.5 2.4624-5.5 5.5 0 3.0375 2.462434 5.5 5.5 5.5s5.5-2.4625 5.5-5.5c0-3.0376-2.462434-5.5-5.5-5.5zm0 1c2.485281 0 4.5 2.0147 4.5 4.5s-2.014719 4.5-4.5 4.5-4.5-2.0147-4.5-4.5 2.014719-4.5 4.5-4.5z"/><path d="m84.5 22c-3.037566 0-5.5 2.0147-5.5 4.5s2.462434 4.5 5.5 4.5 5.5-2.0147 5.5-4.5-2.462434-4.5-5.5-4.5zm0 1c2.485281 0 4.5 1.567 4.5 3.5s-2.014719 3.5-4.5 3.5-4.5-1.567-4.5-3.5 2.014719-3.5 4.5-3.5z"/><path d="m65.5 22c-2.485281 0-4.5 2.4624-4.5 5.5 0 3.0375 2.014719 5.5 4.5 5.5s4.5-2.4625 4.5-5.5c0-3.0376-2.014719-5.5-4.5-5.5zm0 1c1.932997 0 3.5 2.0147 3.5 4.5s-1.567003 4.5-3.5 4.5-3.5-2.0147-3.5-4.5 1.567003-4.5 3.5-4.5z"/></g><g f
ill="#69696e"><path d="m16 55.00002v11h11v-11zm1 1h9v9h-9z"/><path d="m7 55.00002v9h9v-9zm1 1h7v7h-7z"/><path d="m38.5 55.00002c-2.485281 0-4.5 2.0147-4.5 4.5s2.014719 4.5 4.5 4.5 4.5-2.0147 4.5-4.5-2.014719-4.5-4.5-4.5zm0 1c1.932997 0 3.5 1.567 3.5 3.5s-1.567003 3.5-3.5 3.5-3.5-1.567-3.5-3.5 1.567003-3.5 3.5-3.5z"/><path d="m48.5 55.00002c-3.037566 0-5.5 2.4624-5.5 5.5 0 3.0375 2.462434 5.5 5.5 5.5s5.5-2.4625 5.5-5.5c0-3.0376-2.462434-5.5-5.5-5.5zm0 1c2.485281 0 4.5 2.0147 4.5 4.5s-2.014719 4.5-4.5 4.5-4.5-2.0147-4.5-4.5 2.014719-4.5 4.5-4.5z"/><path d="m84.5 55.00002c-3.037566 0-5.5 2.0147-5.5 4.5s2.462434 4.5 5.5 4.5 5.5-2.0147 5.5-4.5-2.462434-4.5-5.5-4.5zm0 1c2.485281 0 4.5 1.567 4.5 3.5s-2.014719 3.5-4.5 3.5-4.5-1.567-4.5-3.5 2.014719-3.5 4.5-3.5z"/><path d="m65.5 55.00002c-2.485281 0-4.5 2.4624-4.5 5.5 0 3.0375 2.014719 5.5 4.5 5.5s4.5-2.4625 4.5-5.5c0-3.0376-2.014719-5.5-4.5-5.5zm0 1c1.932997 0 3.5 2.0147 3.5 4.5s-1.567003 4.5-3.5 4.5-3.5-2.0147-3.5-4.5 1.567003-4.5 3.5-4.5z
"/></g><path d="m24 71.5a4.5 4.5 0 0 1 -4.5 4.5 4.5 4.5 0 0 1 -4.5-4.5 4.5 4.5 0 0 1 4.5-4.5 4.5 4.5 0 0 1 4.5 4.5z" fill="#fff"/><path d="m19.5 68a3.5 3.5 0 0 0 -3.5 3.5 3.5 3.5 0 0 0 3.5 3.5 3.5 3.5 0 0 0 3.5-3.5 3.5 3.5 0 0 0 -3.5-3.5zm-.5 1h1v2h2v1h-2v2h-1v-2h-2v-1h2z" fill="url(#Y)"/><path d="m19 69v2h-2v1h2v2h1v-2h2v-1h-2v-2z" fill="#fff" opacity=".9"/><path d="m24 80.5a4.5 4.5 0 0 1 -4.5 4.5 4.5 4.5 0 0 1 -4.5-4.5 4.5 4.5 0 0 1 4.5-4.5 4.5 4.5 0 0 1 4.5 4.5z" fill="#fff"/><path d="m19.5 77a3.5 3.5 0 0 0 -3.5 3.5 3.5 3.5 0 0 0 3.5 3.5 3.5 3.5 0 0 0 3.5-3.5 3.5 3.5 0 0 0 -3.5-3.5zm-.5 1h1v2h2v1h-2v2h-1v-2h-2v-1h2z" fill="url(#an)"/><path d="m19 78v2h-2v1h2v2h1v-2h2v-1h-2v-2z" fill="#fff" opacity=".9"/><path d="m60 71.00002c-1.104569 0-2 .8954-2 2 0 .932.637301 1.7155 1.5 1.9375v2.0625h-2.5v1h2.5v7.9687c-2.53904-.1627-4.748393-1.5121-6.09375-3.5l.1875-.094.90625-.5-.5-.875c.000019 0-3 1.625-3 1.625l.5.875 1.03125-.5625c1.604162 2.4357 4.335597 4.0625 7.46875 4.0625s5.863905-1.62
68 7.46875-4.0625l1.03125.5625.5-.875c.000014-.0006-3-1.625-3-1.625l-.5.875.90625.5.1875.094c-1.345357 1.9879-3.554711 3.3373-6.09375 3.5v-7.9687h2.5v-1h-2.5v-2.0625c.862699-.222 1.5-1.0055 1.5-1.9375 0-1.1046-.895431-2-2-2zm0 1c.552285 0 1 .4477 1 1s-.447715 1-1 1-1-.4477-1-1 .447715-1 1-1z" fill="#fff" fill-rule="evenodd" opacity=".9"/><g fill="#a05a00"><path d="m7 11v8 1h8 1v-9h-1-7zm1 1h7v7h-7z"/><path d="m16 11v11h11v-11zm1 1h9v9h-9z"/><path d="m38.5 11c-2.485281 0-4.5 2.014719-4.5 4.5s2.014719 4.5 4.5 4.5 4.5-2.014719 4.5-4.5-2.014719-4.5-4.5-4.5zm0 1c1.932997 0 3.5 1.567003 3.5 3.5s-1.567003 3.5-3.5 3.5-3.5-1.567003-3.5-3.5 1.567003-3.5 3.5-3.5z"/><path d="m48.5 11c-3.037566 0-5.5 2.462434-5.5 5.5s2.462434 5.5 5.5 5.5 5.5-2.462434 5.5-5.5-2.462434-5.5-5.5-5.5zm0 1c2.485281 0 4.5 2.014719 4.5 4.5s-2.014719 4.5-4.5 4.5-4.5-2.014719-4.5-4.5 2.014719-4.5 4.5-4.5z"/><path d="m84.5 11c-3.037566 0-5.5 2.014719-5.5 4.5s2.462434 4.5 5.5 4.5 5.5-2.014719 5.5-4.5-2.462434-4.5-5.5-4.5zm0
1c2.485281 0 4.5 1.567003 4.5 3.5s-2.014719 3.5-4.5 3.5-4.5-1.567003-4.5-3.5 2.014719-3.5 4.5-3.5z"/><path d="m65.5 11c-2.485281 0-4.5 2.4624-4.5 5.5 0 3.0375 2.014719 5.5 4.5 5.5s4.5-2.4625 4.5-5.5c0-3.0376-2.014719-5.5-4.5-5.5zm0 1c1.932997 0 3.5 2.0147 3.5 4.5s-1.567003 4.5-3.5 4.5-3.5-2.0147-3.5-4.5 1.567003-4.5 3.5-4.5z"/></g><g fill="#fff"><path d="m93 1v2h-2v1h2v2h1v-2h2v-1h-2v-2z" opacity=".9"/><path d="m101 1v3h-3v1h3v3h1v-3h3v-1h-3v-3z" opacity=".9"/><path d="m111 1v4h-4v1h4v4h1v-4h4v-1h-4v-4z" opacity=".9"/></g></svg>
\ No newline at end of file
+<svg viewBox="0 0 117 92" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><linearGradient id="a"><stop offset="0" stop-color="#848489"/><stop offset="1" stop-color="#98989d" stop-opacity=".949612"/></linearGradient><linearGradient id="b" gradientUnits="userSpaceOnUse" x1="99" x2="99" xlink:href="#a" y1="78" y2="67"/><linearGradient id="c" gradientUnits="userSpaceOnUse" x1="27" x2="27" xlink:href="#a" y1="87" y2="71"/><linearGradient id="d" gradientUnits="userSpaceOnUse" x1="0" x2="0" xlink:href="#a" y1="62" y2="55"/><linearGradient id="e" gradientUnits="userSpaceOnUse" x1="8" x2="8" xlink:href="#a" y1="63" y2="56"/><linearGradient id="f" gradientUnits="userSpaceOnUse" x1="17" x2="17" xlink:href="#a" y1="65" y2="56"/><linearGradient id="g" gradientUnits="userSpaceOnUse" x1="30" x2="30" xlink:href="#a" y1="62" y2="55"/><linearGradient id="h" gradientUnits="userSpaceOnUse" x1="38" x2="38" xlink:href="#a" y1="63" y2="56"/><linearGradient id="i" gradientUnit
s="userSpaceOnUse" x1="49" x2="48.5" xlink:href="#a" y1="65" y2="56.000019"/><linearGradient id="j" gradientUnits="userSpaceOnUse" x1="57" x2="57" xlink:href="#a" y1="65" y2="55"/><linearGradient id="k" gradientUnits="userSpaceOnUse" x1="65" x2="65" xlink:href="#a" y1="65" y2="56"/><linearGradient id="l" gradientUnits="userSpaceOnUse" x1="74" x2="74" xlink:href="#a" y1="62" y2="55"/><linearGradient id="m" gradientUnits="userSpaceOnUse" x1="84" x2="84" xlink:href="#a" y1="63" y2="56"/><linearGradient id="n" gradientUnits="userSpaceOnUse" x1="90" x2="90" xlink:href="#a" y1="62" y2="55"/><linearGradient id="o" gradientUnits="userSpaceOnUse" x1="97" x2="97" xlink:href="#a" y1="64" y2="55"/><linearGradient id="p" gradientUnits="userSpaceOnUse" x1="106" x2="106" xlink:href="#a" y1="66" y2="55"/><linearGradient id="q" gradientUnits="userSpaceOnUse" x1="49" x2="49" xlink:href="#a" y1="90" y2="68"/><linearGradient id="r"><stop offset="0" stop-color="#f58b00"/><stop offset="1" stop-color="#ff
9f0a" stop-opacity=".74031"/></linearGradient><linearGradient id="s"><stop offset="0" stop-color="#f5c200"/><stop offset="1" stop-color="#ffd60a"/></linearGradient><linearGradient id="t"><stop offset="0" stop-color="#2a9240"/><stop offset="1" stop-color="#32d74b" stop-opacity=".755814"/></linearGradient><linearGradient id="u"><stop offset="0" stop-color="#d70015"/><stop offset="1" stop-color="#ff453a" stop-opacity=".976744"/></linearGradient><linearGradient id="v"><stop offset="0" stop-color="#0040dd"/><stop offset="1" stop-color="#0a84ff"/></linearGradient><linearGradient id="w" gradientUnits="userSpaceOnUse" x1="3" x2="3" xlink:href="#v" y1="7" y2="0"/><linearGradient id="x" gradientUnits="userSpaceOnUse" x1="102" x2="102" xlink:href="#v" y1="9" y2="0"/><linearGradient id="y" gradientUnits="userSpaceOnUse" x1="112" x2="112" xlink:href="#v" y1="11" y2="0"/><linearGradient id="z" gradientUnits="userSpaceOnUse" x1="94" x2="94" xlink:href="#v" y1="7" y2="0"/><linearGradient id="A" gra
dientUnits="userSpaceOnUse" x1="12" x2="12" xlink:href="#v" y1="8" y2="2"/><linearGradient id="B" gradientUnits="userSpaceOnUse" x1="22" x2="22" xlink:href="#v" y1="10" y2="2"/><linearGradient id="C" gradientUnits="userSpaceOnUse" x1="30" x2="30.5" xlink:href="#v" y1="7" y2="0"/><linearGradient id="D" gradientUnits="userSpaceOnUse" x1="39" x2="39" xlink:href="#v" y1="8" y2="1"/><linearGradient id="E" gradientUnits="userSpaceOnUse" x1="48.5" x2="48.5" xlink:href="#v" y1="10" y2="1"/><linearGradient id="F" gradientUnits="userSpaceOnUse" x1="57.5" x2="57.5" xlink:href="#v" y1="10" y2="0"/><linearGradient id="G" gradientUnits="userSpaceOnUse" x1="65.5" x2="65.5" xlink:href="#v" y1="10" y2="1"/><linearGradient id="H" gradientUnits="userSpaceOnUse" x1="84" x2="84" xlink:href="#v" y1="8" y2="1"/><linearGradient id="I" gradientUnits="userSpaceOnUse" x1="75" x2="74.5" xlink:href="#v" y1="7" y2="0"/><linearGradient id="J" gradientUnits="userSpaceOnUse" x1="79" x2="79" xlink:href="#v" y1="78"
y2="67"/><linearGradient id="K" gradientUnits="userSpaceOnUse" x1="0" x2="0" xlink:href="#u" y1="40" y2="33"/><linearGradient id="L" gradientUnits="userSpaceOnUse" x1="8" x2="8" xlink:href="#u" y1="41" y2="34"/><linearGradient id="M" gradientUnits="userSpaceOnUse" x1="17" x2="17" xlink:href="#u" y1="43" y2="34"/><linearGradient id="N" gradientUnits="userSpaceOnUse" x1="30.5" x2="30.5" xlink:href="#u" y1="40" y2="33"/><linearGradient id="O" gradientUnits="userSpaceOnUse" x1="39" x2="39" xlink:href="#u" y1="41" y2="34"/><linearGradient id="P" gradientUnits="userSpaceOnUse" x1="49" x2="49" xlink:href="#u" y1="43" y2="34"/><linearGradient id="Q" gradientUnits="userSpaceOnUse" x1="57.5" x2="57.5" xlink:href="#u" y1="43" y2="33"/><linearGradient id="R" gradientUnits="userSpaceOnUse" x1="65.5" x2="65.5" xlink:href="#u" y1="43" y2="34"/><linearGradient id="S" gradientUnits="userSpaceOnUse" x1="74.5" x2="74.5" xlink:href="#u" y1="40" y2="33"/><linearGradient id="T" gradientUnits="userSpaceOn
Use" x1="84.5" x2="84.5" xlink:href="#u" y1="41" y2="34"/><linearGradient id="U" gradientUnits="userSpaceOnUse" x1="94" x2="94" xlink:href="#u" y1="40" y2="33"/><linearGradient id="V" gradientUnits="userSpaceOnUse" x1="102" x2="102" xlink:href="#u" y1="42" y2="33"/><linearGradient id="W" gradientUnits="userSpaceOnUse" x1="112" x2="112" xlink:href="#u" y1="44" y2="33"/><linearGradient id="X" gradientUnits="userSpaceOnUse" x1="86" x2="86" xlink:href="#u" y1="91" y2="80"/><linearGradient id="Y" gradientUnits="userSpaceOnUse" x1="19.5" x2="19.5" xlink:href="#u" y1="75" y2="68"/><linearGradient id="Z" gradientUnits="userSpaceOnUse" x1="0" x2="0" xlink:href="#t" y1="29" y2="22"/><linearGradient id="aa" gradientUnits="userSpaceOnUse" x1="8" x2="8" xlink:href="#t" y1="30" y2="23"/><linearGradient id="ab" gradientUnits="userSpaceOnUse" x1="17" x2="17" xlink:href="#t" y1="32" y2="23"/><linearGradient id="ac" gradientUnits="userSpaceOnUse" x1="30.5" x2="30.5" xlink:href="#t" y1="29" y2="22"/><
linearGradient id="ad" gradientUnits="userSpaceOnUse" x1="38.5" x2="38.5" xlink:href="#t" y1="30" y2="23"/><linearGradient id="ae" gradientUnits="userSpaceOnUse" x1="48.5" x2="48.5" xlink:href="#t" y1="32" y2="23"/><linearGradient id="af" gradientUnits="userSpaceOnUse" x1="57.5" x2="57.5" xlink:href="#t" y1="32" y2="22"/><linearGradient id="ag" gradientUnits="userSpaceOnUse" x1="65.5" x2="65.5" xlink:href="#t" y1="32" y2="23"/><linearGradient id="ah" gradientUnits="userSpaceOnUse" x1="74.5" x2="74.5" xlink:href="#t" y1="29" y2="22"/><linearGradient id="ai" gradientUnits="userSpaceOnUse" x1="84.5" x2="84.5" xlink:href="#t" y1="30" y2="23"/><linearGradient id="aj" gradientUnits="userSpaceOnUse" x1="90" x2="90" xlink:href="#t" y1="29" y2="22"/><linearGradient id="ak" gradientUnits="userSpaceOnUse" x1="97" x2="97" xlink:href="#t" y1="31" y2="22"/><linearGradient id="al" gradientUnits="userSpaceOnUse" x1="106" x2="106" xlink:href="#t" y1="33" y2="22"/><linearGradient id="am" gradientUnit
s="userSpaceOnUse" x1="73" x2="74" xlink:href="#t" y1="91.000023" y2="80"/><linearGradient id="an" gradientUnits="userSpaceOnUse" x1="19.5" x2="19.5" xlink:href="#t" y1="84" y2="77"/><linearGradient id="ao" gradientUnits="userSpaceOnUse" x1="0" x2="0" xlink:href="#s" y1="18" y2="11"/><linearGradient id="ap" gradientUnits="userSpaceOnUse" x1="8" x2="8" xlink:href="#s" y1="19" y2="12"/><linearGradient id="aq" gradientUnits="userSpaceOnUse" x1="17" x2="17" xlink:href="#s" y1="21" y2="12"/><linearGradient id="ar" gradientUnits="userSpaceOnUse" x1="27" x2="34" xlink:href="#s" y1="14.50002" y2="14.50002"/><linearGradient id="as" gradientUnits="userSpaceOnUse" x1="39" x2="39" xlink:href="#s" y1="19" y2="12"/><linearGradient id="at" gradientUnits="userSpaceOnUse" x1="49" x2="49" xlink:href="#s" y1="21" y2="12"/><linearGradient id="au" gradientUnits="userSpaceOnUse" x1="58" x2="58" xlink:href="#s" y1="21" y2="11"/><linearGradient id="av" gradientUnits="userSpaceOnUse" x1="65" x2="65" xlink:h
ref="#s" y1="21" y2="12"/><linearGradient id="aw" gradientUnits="userSpaceOnUse" x1="74.5" x2="74.5" xlink:href="#s" y1="18" y2="11"/><linearGradient id="ax" gradientUnits="userSpaceOnUse" x1="84.5" x2="84.5" xlink:href="#s" y1="19" y2="12"/><linearGradient id="ay" gradientUnits="userSpaceOnUse" x1="97" x2="97" xlink:href="#s" y1="18" y2="11"/><linearGradient id="az" gradientUnits="userSpaceOnUse" x1="97" x2="97" xlink:href="#s" y1="20" y2="11"/><linearGradient id="aA" gradientUnits="userSpaceOnUse" x1="106" x2="106" xlink:href="#s" y1="22" y2="11"/><linearGradient id="aB" gradientUnits="userSpaceOnUse" x1="99" x2="99" xlink:href="#s" y1="91" y2="80"/><linearGradient id="aC" gradientUnits="userSpaceOnUse" x1="0" x2="0" xlink:href="#r" y1="51" y2="44"/><linearGradient id="aD" gradientUnits="userSpaceOnUse" x1="8" x2="8" xlink:href="#r" y1="52" y2="45"/><linearGradient id="aE" gradientUnits="userSpaceOnUse" x1="17" x2="17" xlink:href="#r" y1="54" y2="45"/><linearGradient id="aF" gradi
entUnits="userSpaceOnUse" x1="30" x2="30" xlink:href="#r" y1="51" y2="44"/><linearGradient id="aG" gradientUnits="userSpaceOnUse" x1="38" x2="38" xlink:href="#r" y1="52" y2="45"/><linearGradient id="aH" gradientUnits="userSpaceOnUse" x1="48" x2="48.5" xlink:href="#r" y1="54" y2="45.000019"/><linearGradient id="aI" gradientUnits="userSpaceOnUse" x1="57" x2="57" xlink:href="#r" y1="54" y2="44"/><linearGradient id="aJ" gradientUnits="userSpaceOnUse" x1="66" x2="66" xlink:href="#r" y1="54" y2="45"/><linearGradient id="aK" gradientUnits="userSpaceOnUse" x1="75" x2="75" xlink:href="#r" y1="51" y2="44"/><linearGradient id="aL" gradientUnits="userSpaceOnUse" x1="80" x2="89" xlink:href="#r" y1="48.50002" y2="48.50002"/><linearGradient id="aM" gradientUnits="userSpaceOnUse" x1="90" x2="90" xlink:href="#r" y1="51" y2="44"/><linearGradient id="aN" gradientUnits="userSpaceOnUse" x1="97" x2="97" xlink:href="#r" y1="53" y2="44"/><linearGradient id="aO" gradientUnits="userSpaceOnUse" x1="112" x2="1
12" xlink:href="#r" y1="55" y2="44"/><linearGradient id="aP" gradientUnits="userSpaceOnUse" x1="92" x2="92" xlink:href="#r" y1="78" y2="67"/><linearGradient id="aQ" gradientUnits="userSpaceOnUse" x1="8" x2="8" xlink:href="#r" y1="79.9375" y2="72"/><path d="m99 67.00002h11v11h-11z" fill="url(#b)"/><path d="m25 68.00002h22v22h-22z" fill="#b3b3b3" opacity=".2"/><path d="m35.5 71a2.5 2.5 0 0 0 -2.5 2.5 2.5 2.5 0 0 0 2.037109 2.455078 2.5 2.5 0 0 1 -.037109-.005859v1.050781h-3v1h3v7.96875c-2.53904-.1627-4.248393-1.5121-5.59375-3.5l.1875-.09375.90625-.5-.5-.875c.000019 0-3 1.625-3 1.625l.5.875 1.03125-.5625c1.604162 2.4357 3.835597 4.0625 6.96875 4.0625s5.364588-1.6268 6.96875-4.0625l1.03125.5625.5-.875s-3.000019-1.625-3-1.625l-.5.875.90625.5.1875.09375c-1.345357 1.9879-3.05471 3.3373-5.59375 3.5v-7.96875h3v-1h-3v-1.050781a2.5 2.5 0 0 0 2-2.449219 2.5 2.5 0 0 0 -2.5-2.5zm0 1a1.5 1.5 0 0 1 1.5 1.5 1.5 1.5 0 0 1 -1.5 1.5 1.5 1.5 0 0 1 -1.5-1.5 1.5 1.5 0 0 1 1.5-1.5zm-.349609 3.972656a2.5 2.
5 0 0 0 .140625.017578 2.5 2.5 0 0 1 -.140625-.017578z" fill="url(#c)" fill-rule="evenodd"/><g fill="#2a9240" transform="translate(0 11)"><path d="m0 22h7v7h-7z" fill="url(#Z)"/><path d="m8 23h7v7h-7z" fill="url(#aa)"/><path d="m17 23h9v9h-9z" fill="url(#ab)"/><path d="m34 25.5a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#ac)"/><path d="m42 26.5a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#ad)"/><path d="m53 27.5a4.5 4.5 0 0 1 -4.5 4.5 4.5 4.5 0 0 1 -4.5-4.5 4.5 4.5 0 0 1 4.5-4.5 4.5 4.5 0 0 1 4.5 4.5z" fill="url(#ae)"/><path d="m61 27a3.5 5 0 0 1 -3.5 5 3.5 5 0 0 1 -3.5-5 3.5 5 0 0 1 3.5-5 3.5 5 0 0 1 3.5 5z" fill="url(#af)"/><path d="m69 27.5a3.5 4.5 0 0 1 -3.5 4.5 3.5 4.5 0 0 1 -3.5-4.5 3.5 4.5 0 0 1 3.5-4.5 3.5 4.5 0 0 1 3.5 4.5z" fill="url(#ag)"/><path d="m79 25.5a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url
(#ah)"/><path d="m89 26.5a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#ai)"/><path d="m90 22v7h7v-7zm3 1h1v2h2v1h-2v2h-1v-1-1h-2v-1h2v-1z" fill="url(#aj)"/><path d="m97 22v9h9v-9zm4 1h1v3h3v1h-3v3h-1v-1-2h-3v-1h3v-2z" fill="url(#ak)"/><path d="m106 22v11h11v-11zm5 1h1v4h4v1h-4v4h-1v-1-3h-4v-1h4v-3z" fill="url(#al)"/></g><g fill="#0040dd"><path d="m97 0v9h9v-9zm4 1h1v1 2h2 1v1h-1-2v2 1h-1v-1-2h-2-1v-1h1 2v-2z" fill="url(#x)"/><path d="m106 0v11h11v-11zm5 1h1v1 3h3 1v1h-1-3v3 1h-1v-1-3h-3-1v-1h1 3v-3z" fill="url(#y)"/><path d="m90 0v7h7v-7zm3 1h1v1 1h1 1v1h-1-1v1 1h-1v-1-1h-1-1v-1h1 1v-1z" fill="url(#z)"/><path d="m0 0v7h7v-7z" fill="url(#w)"/><path d="m8 1v7h7v-7z" fill="url(#A)"/><path d="m17 1v9h9v-9z" fill="url(#B)"/><path d="m30.5 0c-1.932997 0-3.5 1.5670034-3.5 3.5s1.567003 3.5 3.5 3.5 3.5-1.5670034 3.5-3.5-1.567003-3.5-3.5-3.5z" fill="url(#C)"/><path d="m38.5 1c-1.932997 0-3.5 1.5670034-3.5 3.5s1.567003 3.5 3.5 3.5 3.5-1
.5670034 3.5-3.5-1.567003-3.5-3.5-3.5z" fill="url(#D)"/><path d="m48.5 1c-2.485281 0-4.5 2.0147186-4.5 4.5s2.014719 4.5 4.5 4.5 4.5-2.0147186 4.5-4.5-2.014719-4.5-4.5-4.5z" fill="url(#E)"/><path d="m57.5 0c-1.932997 0-3.5 2.2385763-3.5 5s1.567003 5 3.5 5 3.5-2.2385763 3.5-5-1.567003-5-3.5-5z" fill="url(#F)"/><path d="m65.5 1c-1.932997 0-3.5 2.01472-3.5 4.5s1.567003 4.5 3.5 4.5 3.5-2.01472 3.5-4.5-1.567003-4.5-3.5-4.5z" fill="url(#G)"/><path d="m84.5 1c-2.485281 0-4.5 1.5670034-4.5 3.5s2.014719 3.5 4.5 3.5 4.5-1.5670034 4.5-3.5-2.014719-3.5-4.5-3.5z" fill="url(#H)"/><path d="m74.5 0c-2.485281 0-4.5 1.5670034-4.5 3.5s2.014719 3.5 4.5 3.5 4.5-1.5670034 4.5-3.5-2.014719-3.5-4.5-3.5z" fill="url(#I)"/></g><g fill="#ffd60a"><path d="m0 11h7v7h-7z" fill="url(#ao)"/><path d="m8 12h7v7h-7z" fill="url(#ap)"/><path d="m17 12h9v9h-9z" fill="url(#aq)"/><path d="m34 14.50002a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#ar)"/><path d="m42 15
.50002a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#as)"/><path d="m53 16.50002a4.5 4.5 0 0 1 -4.5 4.5 4.5 4.5 0 0 1 -4.5-4.5 4.5 4.5 0 0 1 4.5-4.5 4.5 4.5 0 0 1 4.5 4.5z" fill="url(#at)"/><path d="m61 16.00002a3.5 5 0 0 1 -3.5 5 3.5 5 0 0 1 -3.5-5 3.5 5 0 0 1 3.5-5 3.5 5 0 0 1 3.5 5z" fill="url(#au)"/><path d="m69 16.50003a3.5 4.50001 0 0 1 -3.5 4.50001 3.5 4.50001 0 0 1 -3.5-4.50001 3.5 4.50001 0 0 1 3.5-4.50001 3.5 4.50001 0 0 1 3.5 4.50001z" fill="url(#av)"/><path d="m79 14.50002a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#aw)"/><path d="m89 15.50002a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#ax)"/><path d="m90 11v7h7v-7zm3 1h1v2h2v1h-2v2h-1v-1-1h-2v-1h2v-1z" fill="url(#ay)"/><path d="m97 11v9h9c0-2.981105 0-5.990251 0-9zm4 1h1v3h3v1h-3v3h-1v-1-2h-3v-1h3v-2z" fill="url(#az)"/><path d="m106 11v11h11v-11zm5
1h1v4h4v1h-4v4h-1v-1-3h-4v-1h4v-3z" fill="url(#aA)"/></g><g fill="#98989d"><path d="m0 55.00002h7v7h-7z" fill="url(#d)"/><path d="m8 56.00002h7v7h-7z" fill="url(#e)"/><path d="m17 56.00002h9v9h-9z" fill="url(#f)"/><path d="m34 58.50002a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#g)"/><path d="m42 59.50002a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#h)"/><path d="m53 60.50002a4.5 4.5 0 0 1 -4.5 4.5 4.5 4.5 0 0 1 -4.5-4.5 4.5 4.5 0 0 1 4.5-4.5 4.5 4.5 0 0 1 4.5 4.5z" fill="url(#i)"/><path d="m61 60.00002a3.5 5 0 0 1 -3.5 5 3.5 5 0 0 1 -3.5-5 3.5 5 0 0 1 3.5-5 3.5 5 0 0 1 3.5 5z" fill="url(#j)"/><path d="m69 60.50001a3.5 4.49999 0 0 1 -3.5 4.49999 3.5 4.49999 0 0 1 -3.5-4.49999 3.5 4.49999 0 0 1 3.5-4.49999 3.5 4.49999 0 0 1 3.5 4.49999z" fill="url(#k)"/><path d="m79 58.50002a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fi
ll="url(#l)"/><path d="m89 59.50002a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#m)"/><path d="m90 55v7h7v-7zm3 1h1v2h2v1h-2v2h-1v-1-1h-2v-1h2v-1z" fill="url(#n)"/><path d="m97 55v9h9v-9zm4 1h1v3h3v1h-3v3h-1v-1-2h-3v-1h3v-2z" fill="url(#o)"/><path d="m106 55v11h11v-11zm5 1h1v4h4v1h-4v4h-1v-1-3h-4v-1h4v-3z" fill="url(#p)"/></g><g fill="#ff9500"><path d="m0 44.00002h7v7h-7z" fill="url(#aC)"/><path d="m8 45.00002h7v7h-7z" fill="url(#aD)"/><path d="m17 45.00002h9v9h-9z" fill="url(#aE)"/><path d="m34 47.50002a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#aF)"/><path d="m42 48.50002a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#aG)"/><path d="m53 49.50002a4.5 4.5 0 0 1 -4.5 4.5 4.5 4.5 0 0 1 -4.5-4.5 4.5 4.5 0 0 1 4.5-4.5 4.5 4.5 0 0 1 4.5 4.5z" fill="url(#aH)"/><path d="m61 49.00002a3.5 5 0 0 1 -3.5 5 3.5 5 0 0 1 -3.5-
5 3.5 5 0 0 1 3.5-5 3.5 5 0 0 1 3.5 5z" fill="url(#aI)"/></g><path d="m65.5 44.00002c-2.485281 0-4.5 2.4624-4.5 5.5 0 3.0375 2.014719 5.5 4.5 5.5s4.5-2.4625 4.5-5.5c0-3.0376-2.014719-5.5-4.5-5.5zm0 1c1.932997 0 3.5 2.0147 3.5 4.5s-1.567003 4.5-3.5 4.5-3.5-2.0147-3.5-4.5 1.567003-4.5 3.5-4.5z" fill="#c93400"/><g fill="#ff9500"><path d="m69 49.50002a3.5 4.5 0 0 1 -3.5 4.5 3.5 4.5 0 0 1 -3.5-4.5 3.5 4.5 0 0 1 3.5-4.5 3.5 4.5 0 0 1 3.5 4.5z" fill="url(#aJ)"/><path d="m79 47.50002a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#aK)"/><path d="m89 48.50002a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#aL)"/><path d="m90 44v7h7v-7zm3 1h1v2h2v1h-2v2h-1v-1-1h-2v-1h2v-1z" fill="url(#aM)"/><path d="m97 44v9h9v-9zm4 1h1v3h3v1h-3v3h-1v-1-2h-3v-1h3v-2z" fill="url(#aN)"/><path d="m106 44v11h11v-11zm5 1h1v4h4v1h-4v4h-1v-1-3h-4v-1h4v-3z" fill="url(#aO)"/></g><g fill="#fff"><path d="m93 45.
00002v2h-2v1h2v2h1v-2h2v-1h-2v-2z"/><path d="m101 45.00002v3h-3v1h3v3h1v-3h3v-1h-3v-3z"/><path d="m111 45.00002v4h-4v1h4v4h1v-4h4v-1h-4v-4z"/></g><g fill="#d70015" transform="translate(0 -11)"><path d="m0 33h7v7.00002h-7z" fill="url(#K)"/><path d="m8 34h7v7.00002h-7z" fill="url(#L)"/><path d="m17 34h9v9.00002h-9z" fill="url(#M)"/><path d="m34 36.5a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#N)"/><path d="m42 37.5a3.5 3.5 0 0 1 -3.5 3.5 3.5 3.5 0 0 1 -3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="url(#O)"/><path d="m53 38.5a4.5 4.5 0 0 1 -4.5 4.5 4.5 4.5 0 0 1 -4.5-4.5 4.5 4.5 0 0 1 4.5-4.5 4.5 4.5 0 0 1 4.5 4.5z" fill="url(#P)"/><path d="m61 38a3.5 5 0 0 1 -3.5 5 3.5 5 0 0 1 -3.5-5 3.5 5 0 0 1 3.5-5 3.5 5 0 0 1 3.5 5z" fill="url(#Q)"/><path d="m69 38.49999a3.5 4.49999 0 0 1 -3.5 4.49999 3.5 4.49999 0 0 1 -3.5-4.49999 3.5 4.49999 0 0 1 3.5-4.49999 3.5 4.49999 0 0 1 3.5 4.49999z" fill="url(#R)"/><path d="m79 36.5
a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#S)"/><path d="m89 37.5a4.5 3.5 0 0 1 -4.5 3.5 4.5 3.5 0 0 1 -4.5-3.5 4.5 3.5 0 0 1 4.5-3.5 4.5 3.5 0 0 1 4.5 3.5z" fill="url(#T)"/><path d="m90 33v7h7v-7zm3 1h1v2h2v1h-2v2h-1v-1-1h-2v-1h2v-1z" fill="url(#U)"/><path d="m97 33v9h9v-9zm4 1h1v3h3v1h-3v3h-1v-1-2h-3v-1h3v-2z" fill="url(#V)"/><path d="m106 33v11h11v-11zm5 1h1v4h4v1h-4v4h-1v-1-3h-4v-1h4v-3z" fill="url(#W)"/></g><g fill="#fff"><path d="m93 34v2h-2v1h2v2h1v-2h2v-1h-2v-2z" opacity=".9"/><path d="m101 34v3h-3v1h3v3.00002h1v-3.00002h3v-1h-3v-3z" opacity=".9"/><path d="m111 34v4h-4v1h4v4.00002h1v-4.00002h4v-1h-4v-4z" opacity=".9"/></g><path d="m73 67.00002h11v11h-11z" fill="url(#J)"/><path d="m86 80.00002h11v11h-11z" fill="url(#X)"/><path d="m73 80.00002h11v11h-11z" fill="url(#am)"/><path d="m86 67.00002h11v11h-11z" fill="url(#aP)"/><path d="m99 80.00002h11v11h-11z" fill="url(#aB)"/><path d="m7.5 71c-2.485281 0-4.5 2.0147-4.5 4
.5s2.014719 4.5 4.5 4.5 4.5-2.0147 4.5-4.5-2.014719-4.5-4.5-4.5z" fill="url(#aQ)"/><path d="m49 68v22h22v-22zm10.5 3a2.5 2.5 0 0 1 2.5 2.5 2.5 2.5 0 0 1 -2 2.449219v1.050781h3v1h-3v7.96875c2.53904-.1627 4.248393-1.5121 5.59375-3.5l-.1875-.09375-.90625-.5.5-.875c-.000019 0 3 1.625 3 1.625l-.5.875-1.03125-.5625c-1.604162 2.4357-3.835597 4.0625-6.96875 4.0625s-5.364588-1.6268-6.96875-4.0625l-1.03125.5625-.5-.875s3.000019-1.625 3-1.625l.5.875-.90625.5-.1875.09375c1.345357 1.9879 3.054711 3.3373 5.59375 3.5v-7.96875h-3v-1h3v-1.050781a2.5 2.5 0 0 0 .037109.005859 2.5 2.5 0 0 1 -2.037109-2.455078 2.5 2.5 0 0 1 2.5-2.5zm0 1a1.5 1.5 0 0 0 -1.5 1.5 1.5 1.5 0 0 0 1.5 1.5 1.5 1.5 0 0 0 1.5-1.5 1.5 1.5 0 0 0 -1.5-1.5z" fill="url(#q)"/><g fill="#fff"><path d="m93 23v2h-2v1h2v2h1v-2h2v-1h-2v-2z" opacity=".9"/><path d="m101 23v3h-3v1h3v3h1v-3h3v-1h-3v-3z" opacity=".9"/><path d="m111 23v4h-4v1h4v4h1v-4h4v-1h-4v-4z" opacity=".9"/><path d="m93 56.00002v2h-2v1h2v2h1v-2h2v-1h-2v-2z" opacity=".9"/><path
d="m101 56.00002v3h-3v1h3v3h1v-3h3v-1h-3v-3z" opacity=".9"/><path d="m111 56.00002v4h-4v1h4v4h1v-4h4v-1h-4v-4z" opacity=".9"/><path d="m7 68v2.03125c-2.6379251.238104-4.7306463 2.330825-4.96875 4.96875h-2.03125v1h2.03125c.2381037 2.637925 2.3308249 4.730646 4.96875 4.96875v2.03125h1v-2.03125c2.637925-.238104 4.730646-2.330825 4.96875-4.96875h2.03125v-1h-2.03125c-.238104-2.637925-2.330825-4.730646-4.96875-4.96875v-2.03125zm0 3.0625v.9375h1v-.9375c2.079314.233649 3.703851 1.858186 3.9375 3.9375h-.9375v1h.9375c-.233649 2.079314-1.858186 3.703851-3.9375 3.9375v-.9375h-1v.9375c-2.0793143-.233649-3.7038511-1.858186-3.9375-3.9375h.9375v-1h-.9375c.2336489-2.079314 1.8581857-3.703851 3.9375-3.9375z" opacity=".9"/><path d="m93 45.00002v2h-2v1h2v2h1v-2h2v-1h-2v-2z" opacity=".9"/><path d="m101 45.00002v3h-3v1h3v3h1v-3h3v-1h-3v-3z" opacity=".9"/><path d="m111 45.00002v4h-4v1h4v4h1v-4h4v-1h-4v-4z" opacity=".9"/></g><g fill="#c93400"><path d="m7 44.00002v8 1h8 1v-9h-1-7zm1 1h7v7h-7z"/><path d="m16
44.00002v11h11v-11zm1 1h9v9h-9z"/><path d="m38.5 44.00002c-2.485281 0-4.5 2.0147-4.5 4.5s2.014719 4.5 4.5 4.5 4.5-2.0147 4.5-4.5-2.014719-4.5-4.5-4.5zm0 1c1.932997 0 3.5 1.567 3.5 3.5s-1.567003 3.5-3.5 3.5-3.5-1.567-3.5-3.5 1.567003-3.5 3.5-3.5z"/><path d="m48.5 44.00002c-3.037566 0-5.5 2.4624-5.5 5.5s2.462434 5.5 5.5 5.5 5.5-2.4624 5.5-5.5-2.462434-5.5-5.5-5.5zm0 1c2.485281 0 4.5 2.0147 4.5 4.5s-2.014719 4.5-4.5 4.5-4.5-2.0147-4.5-4.5 2.014719-4.5 4.5-4.5z"/><path d="m84.5 44.00002c-3.037566 0-5.5 2.0147-5.5 4.5s2.462434 4.5 5.5 4.5 5.5-2.0147 5.5-4.5-2.462434-4.5-5.5-4.5zm0 1c2.485281 0 4.5 1.567 4.5 3.5s-2.014719 3.5-4.5 3.5-4.5-1.567-4.5-3.5 2.014719-3.5 4.5-3.5z"/></g><g fill="#fff"><path d="m93 12.00002v2h-2v1h2v2h1v-2h2v-1h-2v-2z" opacity=".9"/><path d="m101 12.00002v3h-3v1h3v3h1v-3h3v-1h-3v-3z" opacity=".9"/><path d="m111 12.00002v4h-4v1h4v4h1v-4h4v-1h-4v-4z" opacity=".9"/></g><g fill="#d70015" transform="translate(0 -11.00001)"><path d="m16 33v11.00002h11v-11.00002zm1 1h9v
9.00002h-9z"/><path d="m7 33v9.00002h9v-9.00002zm1 1h7v7.00002h-7z"/><path d="m38.5 33c-2.485281 0-4.5 2.0147-4.5 4.5 0 2.48532 2.014719 4.50002 4.5 4.50002s4.5-2.0147 4.5-4.50002c0-2.4853-2.014719-4.5-4.5-4.5zm0 1c1.932997 0 3.5 1.567 3.5 3.5s-1.567003 3.50002-3.5 3.50002-3.5-1.56702-3.5-3.50002 1.567003-3.5 3.5-3.5z"/><path d="m48.5 33c-3.037566 0-5.5 2.4624-5.5 5.5 0 3.03752 2.462434 5.50002 5.5 5.50002s5.5-2.4625 5.5-5.50002c0-3.0376-2.462434-5.5-5.5-5.5zm0 1c2.485281 0 4.5 2.0147 4.5 4.5 0 2.48532-2.014719 4.50002-4.5 4.50002s-4.5-2.0147-4.5-4.50002c0-2.4853 2.014719-4.5 4.5-4.5z"/><path d="m84.5 33c-3.037566 0-5.5 2.0147-5.5 4.5 0 2.48532 2.462434 4.50002 5.5 4.50002s5.5-2.0147 5.5-4.50002c0-2.4853-2.462434-4.5-5.5-4.5zm0 1c2.485281 0 4.5 1.567 4.5 3.5s-2.014719 3.50002-4.5 3.50002-4.5-1.56702-4.5-3.50002 2.014719-3.5 4.5-3.5z"/><path d="m65.5 33c-2.485281 0-4.5 2.4624-4.5 5.5 0 3.03752 2.014719 5.50002 4.5 5.50002s4.5-2.4625 4.5-5.50002c0-3.0376-2.014719-5.5-4.5-5.5zm0 1c1.93
2997 0 3.5 2.0147 3.5 4.5 0 2.48532-1.567003 4.50002-3.5 4.50002s-3.5-2.0147-3.5-4.50002c0-2.4853 1.567003-4.5 3.5-4.5z"/></g><g fill="#0040dd"><path d="m7 0v8 1h8 1v-9h-1-7zm1 1h7v7h-7z"/><path d="m16 0v11h11v-11zm1 1h9v9h-9z"/><path d="m38.5 0c-2.485281 0-4.5 2.0147186-4.5 4.5s2.014719 4.5 4.5 4.5 4.5-2.0147186 4.5-4.5-2.014719-4.5-4.5-4.5zm0 1c1.932997 0 3.5 1.5670034 3.5 3.5s-1.567003 3.5-3.5 3.5-3.5-1.5670034-3.5-3.5 1.567003-3.5 3.5-3.5z"/><path d="m48.5 0c-3.037566 0-5.5 2.4624339-5.5 5.5s2.462434 5.5 5.5 5.5 5.5-2.4624339 5.5-5.5-2.462434-5.5-5.5-5.5zm0 1c2.485281 0 4.5 2.0147186 4.5 4.5s-2.014719 4.5-4.5 4.5-4.5-2.0147186-4.5-4.5 2.014719-4.5 4.5-4.5z"/><path d="m84.5 0c-3.037566 0-5.5 2.0147186-5.5 4.5s2.462434 4.5 5.5 4.5 5.5-2.0147186 5.5-4.5-2.462434-4.5-5.5-4.5zm0 1c2.485281 0 4.5 1.5670034 4.5 3.5s-2.014719 3.5-4.5 3.5-4.5-1.5670034-4.5-3.5 2.014719-3.5 4.5-3.5z"/><path d="m65.5 0c-2.485281 0-4.5 2.4624-4.5 5.5 0 3.0375 2.014719 5.5 4.5 5.5s4.5-2.4625 4.5-5.5c0-3.0376
-2.014719-5.5-4.5-5.5zm0 1c1.932997 0 3.5 2.0147 3.5 4.5s-1.567003 4.5-3.5 4.5-3.5-2.0147-3.5-4.5 1.567003-4.5 3.5-4.5z"/></g><g fill="#2a9240" transform="translate(0 11.00001)"><path d="m16 22v11h11v-11zm1 1h9v9h-9z"/><path d="m7 22v9h9v-9zm1 1h7v7h-7z"/><path d="m38.5 22c-2.485281 0-4.5 2.0147-4.5 4.5s2.014719 4.5 4.5 4.5 4.5-2.0147 4.5-4.5-2.014719-4.5-4.5-4.5zm0 1c1.932997 0 3.5 1.567 3.5 3.5s-1.567003 3.5-3.5 3.5-3.5-1.567-3.5-3.5 1.567003-3.5 3.5-3.5z"/><path d="m48.5 22c-3.037566 0-5.5 2.4624-5.5 5.5 0 3.0375 2.462434 5.5 5.5 5.5s5.5-2.4625 5.5-5.5c0-3.0376-2.462434-5.5-5.5-5.5zm0 1c2.485281 0 4.5 2.0147 4.5 4.5s-2.014719 4.5-4.5 4.5-4.5-2.0147-4.5-4.5 2.014719-4.5 4.5-4.5z"/><path d="m84.5 22c-3.037566 0-5.5 2.0147-5.5 4.5s2.462434 4.5 5.5 4.5 5.5-2.0147 5.5-4.5-2.462434-4.5-5.5-4.5zm0 1c2.485281 0 4.5 1.567 4.5 3.5s-2.014719 3.5-4.5 3.5-4.5-1.567-4.5-3.5 2.014719-3.5 4.5-3.5z"/><path d="m65.5 22c-2.485281 0-4.5 2.4624-4.5 5.5 0 3.0375 2.014719 5.5 4.5 5.5s4.5-2.4625 4.5-5.5
c0-3.0376-2.014719-5.5-4.5-5.5zm0 1c1.932997 0 3.5 2.0147 3.5 4.5s-1.567003 4.5-3.5 4.5-3.5-2.0147-3.5-4.5 1.567003-4.5 3.5-4.5z"/></g><g fill="#69696e"><path d="m16 55.00002v11h11v-11zm1 1h9v9h-9z"/><path d="m7 55.00002v9h9v-9zm1 1h7v7h-7z"/><path d="m38.5 55.00002c-2.485281 0-4.5 2.0147-4.5 4.5s2.014719 4.5 4.5 4.5 4.5-2.0147 4.5-4.5-2.014719-4.5-4.5-4.5zm0 1c1.932997 0 3.5 1.567 3.5 3.5s-1.567003 3.5-3.5 3.5-3.5-1.567-3.5-3.5 1.567003-3.5 3.5-3.5z"/><path d="m48.5 55.00002c-3.037566 0-5.5 2.4624-5.5 5.5 0 3.0375 2.462434 5.5 5.5 5.5s5.5-2.4625 5.5-5.5c0-3.0376-2.462434-5.5-5.5-5.5zm0 1c2.485281 0 4.5 2.0147 4.5 4.5s-2.014719 4.5-4.5 4.5-4.5-2.0147-4.5-4.5 2.014719-4.5 4.5-4.5z"/><path d="m84.5 55.00002c-3.037566 0-5.5 2.0147-5.5 4.5s2.462434 4.5 5.5 4.5 5.5-2.0147 5.5-4.5-2.462434-4.5-5.5-4.5zm0 1c2.485281 0 4.5 1.567 4.5 3.5s-2.014719 3.5-4.5 3.5-4.5-1.567-4.5-3.5 2.014719-3.5 4.5-3.5z"/><path d="m65.5 55.00002c-2.485281 0-4.5 2.4624-4.5 5.5 0 3.0375 2.014719 5.5 4.5 5.5s4.5-2.4
625 4.5-5.5c0-3.0376-2.014719-5.5-4.5-5.5zm0 1c1.932997 0 3.5 2.0147 3.5 4.5s-1.567003 4.5-3.5 4.5-3.5-2.0147-3.5-4.5 1.567003-4.5 3.5-4.5z"/></g><path d="m24 71.5a4.5 4.5 0 0 1 -4.5 4.5 4.5 4.5 0 0 1 -4.5-4.5 4.5 4.5 0 0 1 4.5-4.5 4.5 4.5 0 0 1 4.5 4.5z" fill="#fff"/><path d="m19.5 68a3.5 3.5 0 0 0 -3.5 3.5 3.5 3.5 0 0 0 3.5 3.5 3.5 3.5 0 0 0 3.5-3.5 3.5 3.5 0 0 0 -3.5-3.5zm-.5 1h1v2h2v1h-2v2h-1v-2h-2v-1h2z" fill="url(#Y)"/><path d="m19 69v2h-2v1h2v2h1v-2h2v-1h-2v-2z" fill="#fff" opacity=".9"/><path d="m24 80.5a4.5 4.5 0 0 1 -4.5 4.5 4.5 4.5 0 0 1 -4.5-4.5 4.5 4.5 0 0 1 4.5-4.5 4.5 4.5 0 0 1 4.5 4.5z" fill="#fff"/><path d="m19.5 77a3.5 3.5 0 0 0 -3.5 3.5 3.5 3.5 0 0 0 3.5 3.5 3.5 3.5 0 0 0 3.5-3.5 3.5 3.5 0 0 0 -3.5-3.5zm-.5 1h1v2h2v1h-2v2h-1v-2h-2v-1h2z" fill="url(#an)"/><path d="m19 78v2h-2v1h2v2h1v-2h2v-1h-2v-2z" fill="#fff" opacity=".9"/><g fill="#a05a00"><path d="m7 11v8 1h8 1v-9h-1-7zm1 1h7v7h-7z"/><path d="m16 11v11h11v-11zm1 1h9v9h-9z"/><path d="m38.5 11c-2.485281 0-4.5 2.0
14719-4.5 4.5s2.014719 4.5 4.5 4.5 4.5-2.014719 4.5-4.5-2.014719-4.5-4.5-4.5zm0 1c1.932997 0 3.5 1.567003 3.5 3.5s-1.567003 3.5-3.5 3.5-3.5-1.567003-3.5-3.5 1.567003-3.5 3.5-3.5z"/><path d="m48.5 11c-3.037566 0-5.5 2.462434-5.5 5.5s2.462434 5.5 5.5 5.5 5.5-2.462434 5.5-5.5-2.462434-5.5-5.5-5.5zm0 1c2.485281 0 4.5 2.014719 4.5 4.5s-2.014719 4.5-4.5 4.5-4.5-2.014719-4.5-4.5 2.014719-4.5 4.5-4.5z"/><path d="m84.5 11c-3.037566 0-5.5 2.014719-5.5 4.5s2.462434 4.5 5.5 4.5 5.5-2.014719 5.5-4.5-2.462434-4.5-5.5-4.5zm0 1c2.485281 0 4.5 1.567003 4.5 3.5s-2.014719 3.5-4.5 3.5-4.5-1.567003-4.5-3.5 2.014719-3.5 4.5-3.5z"/><path d="m65.5 11c-2.485281 0-4.5 2.4624-4.5 5.5 0 3.0375 2.014719 5.5 4.5 5.5s4.5-2.4625 4.5-5.5c0-3.0376-2.014719-5.5-4.5-5.5zm0 1c1.932997 0 3.5 2.0147 3.5 4.5s-1.567003 4.5-3.5 4.5-3.5-2.0147-3.5-4.5 1.567003-4.5 3.5-4.5z"/></g><g fill="#fff"><g><path d="m93 1v2h-2v1h2v2h1v-2h2v-1h-2v-2z" opacity=".9"/><path d="m101 1v3h-3v1h3v3h1v-3h3v-1h-3v-3z" opacity=".9"/><path d="m111
1v4h-4v1h4v4h1v-4h4v-1h-4v-4z" opacity=".9"/></g><path d="m59.500001 71.000041a2.5 2.5 0 0 0 -2.5 2.5 2.5 2.5 0 0 0 2.037109 2.455078 2.5 2.5 0 0 1 -.03711-.0059v1.050781h-3v1h3v7.968791c-2.539039-.1627-4.248392-1.5121-5.593749-3.5l.1875-.09375.90625-.5-.5-.875c.000019 0-3 1.625-3 1.625l.5.875 1.03125-.5625c1.604162 2.4357 3.835597 4.0625 6.96875 4.0625s5.364588-1.6268 6.96875-4.0625l1.03125.5625.5-.875s-3.000019-1.625-3-1.625l-.5.875.90625.5.1875.09375c-1.345357 1.9879-3.05471 3.3373-5.59375 3.5v-7.96875h3v-1h-3v-1.050781a2.5 2.5 0 0 0 2-2.449219 2.5 2.5 0 0 0 -2.5-2.5zm0 1a1.5 1.5 0 0 1 1.5 1.5 1.5 1.5 0 0 1 -1.5 1.5 1.5 1.5 0 0 1 -1.5-1.5 1.5 1.5 0 0 1 1.5-1.5zm-.349609 3.972656a2.5 2.5 0 0 0 .140625.01758 2.5 2.5 0 0 1 -.140625-.01758z" fill-opacity=".901961" fill-rule="evenodd"/></g></svg>
\ No newline at end of file
commit a90c9f59d8f2e9a24527ac86b0f8b8c6eaa29a07
Author: Julien Nabet <serval2412 at yahoo.fr>
AuthorDate: Sat Apr 10 19:09:41 2021 +0200
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Apr 14 10:50:57 2021 +0200
Related tdf#117750: fix "Solarization" and "Aging"
For solarization, regression from:
https://cgit.freedesktop.org/libreoffice/core/commit/?id=c38485279cd36da96ac81107d567ea4e779b2b96
author Chris Sherlock <chris.sherlock79 at gmail.com> 2018-04-20 20:27:41 +1000
committer Tomaž Vajngerl <quikee at gmail.com> 2018-04-22 05:33:11 +0200
commit c38485279cd36da96ac81107d567ea4e779b2b96 (patch)
tree ad9843a17f87271f9e0cf89643e2e6c3ee8a8de1
parent bcbf767bcfc024e2be839e0c0886f942dd068e4f (diff)
vcl: ImplSolarize() to BitmapSolarizeFilter
For aging, regression from:
https://cgit.freedesktop.org/libreoffice/core/commit/?id=1ab12471f3a69c4d502e6271e84ddf8a981f507f
author Chris Sherlock <chris.sherlock79 at gmail.com> 2018-04-20 20:32:23 +1000
committer Tomaž Vajngerl <quikee at gmail.com> 2018-04-22 05:33:39 +0200
commit 1ab12471f3a69c4d502e6271e84ddf8a981f507f (patch)
tree 6652276229ad1c3ffca48f7a31e1b77d2ea04b07
parent c38485279cd36da96ac81107d567ea4e779b2b96 (diff)
vcl: ImplSepia -> BitmapSepiaFilter
Change-Id: I4f350aa8b494caf55c9c810ac7fa9ed8db349725
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113926
(cherry picked from commit f3151e62bcc7cb66313df70a2ec8eed8ca8f2c88)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113858
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/vcl/source/bitmap/BitmapSepiaFilter.cxx b/vcl/source/bitmap/BitmapSepiaFilter.cxx
index cfac984b8fa3..9c1ff76672d3 100644
--- a/vcl/source/bitmap/BitmapSepiaFilter.cxx
+++ b/vcl/source/bitmap/BitmapSepiaFilter.cxx
@@ -103,7 +103,7 @@ BitmapEx BitmapSepiaFilter::execute(BitmapEx const& rBitmapEx) const
}
if (bRet)
- return rBitmapEx;
+ return BitmapEx(aBitmap);
return BitmapEx();
}
diff --git a/vcl/source/bitmap/BitmapSolarizeFilter.cxx b/vcl/source/bitmap/BitmapSolarizeFilter.cxx
index c4df366a65cb..0fc4ab6136cc 100644
--- a/vcl/source/bitmap/BitmapSolarizeFilter.cxx
+++ b/vcl/source/bitmap/BitmapSolarizeFilter.cxx
@@ -63,7 +63,7 @@ BitmapEx BitmapSolarizeFilter::execute(BitmapEx const& rBitmapEx) const
}
if (bRet)
- return rBitmapEx;
+ return BitmapEx(aBitmap);
return BitmapEx();
}
commit c4913642e9f5ae77fdde206032a5429ea6ca9018
Author: Julien Nabet <serval2412 at yahoo.fr>
AuthorDate: Sat Apr 10 19:30:23 2021 +0200
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Apr 14 10:50:56 2021 +0200
Related tdf#117750: fix UnsharpenFilter
Change-Id: I372bb6baae747adb3b2d2a2b8fd39d1631b074ec
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113927
(cherry picked from commit 3d32e6a6ccfae56f379cb1dec6dcadf9aa8fa85f)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113859
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/vcl/source/bitmap/BitmapSmoothenFilter.cxx b/vcl/source/bitmap/BitmapSmoothenFilter.cxx
index 67cea0cb3dfa..e9c135f8ec59 100644
--- a/vcl/source/bitmap/BitmapSmoothenFilter.cxx
+++ b/vcl/source/bitmap/BitmapSmoothenFilter.cxx
@@ -24,7 +24,7 @@ BitmapEx BitmapSmoothenFilter::execute(BitmapEx const& rBitmapEx) const
bRet = BitmapFilter::Filter(aBitmapEx, BitmapSeparableUnsharpenFilter(mfRadius));
if (bRet)
- return rBitmapEx;
+ return aBitmapEx;
return BitmapEx();
}
commit b314d44dcb5ad4f3de81e83b85f18689d57350a7
Author: Rizal Muttaqin <riz_17_oke at yahoo.co.id>
AuthorDate: Sat Apr 10 16:09:09 2021 +0700
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Apr 14 10:50:56 2021 +0200
tdf#141600 fix blured vertical line of Colibre anchor marker
Change-Id: I5acab0328fd40e7eb4043a77197d78925c38237a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113861
Tested-by: Jenkins
Reviewed-by: Rizal Muttaqin <rizmut at libreoffice.org>
diff --git a/icon-themes/colibre/svx/res/marker-anchor.png b/icon-themes/colibre/svx/res/marker-anchor.png
index d565be7c2b7c..85d78d39be53 100644
Binary files a/icon-themes/colibre/svx/res/marker-anchor.png and b/icon-themes/colibre/svx/res/marker-anchor.png differ
diff --git a/icon-themes/colibre/svx/res/markers.png b/icon-themes/colibre/svx/res/markers.png
index ed78dc4ffb96..6ba31b765cfb 100644
Binary files a/icon-themes/colibre/svx/res/markers.png and b/icon-themes/colibre/svx/res/markers.png differ
diff --git a/icon-themes/colibre_svg/svx/res/marker-anchor.svg b/icon-themes/colibre_svg/svx/res/marker-anchor.svg
index 9d5325f0b7bc..4704a5b1b055 100644
--- a/icon-themes/colibre_svg/svx/res/marker-anchor.svg
+++ b/icon-themes/colibre_svg/svx/res/marker-anchor.svg
@@ -1 +1 @@
-<svg height="22" viewBox="0 0 22 22" width="22" xmlns="http://www.w3.org/2000/svg"><path d="m0 .00026h22v22h-22z" fill="#c8c6c4" opacity=".66"/><path d="m11 3c-1.1045687 0-2 .8954-2 2 0 .932.6373013 1.7155 1.5 1.9375v2.0625h-2.5v1h2.5v7.96875c-2.3033166-.147595-4.3276441-1.277241-5.6894531-2.96875h2.1894531v-1h-3-1v1 3h1v-2.435547c1.6390582 2.078797 4.1481571 3.435547 7 3.435547 2.851843 0 5.360528-1.35675 7-3.435547v2.435547h1v-3-1h-1-3v1h2.189453c-1.361809 1.691509-3.386137 2.821155-5.689453 2.96875v-7.96875h2.5v-1h-2.5v-2.0625c.862699-.222 1.5-1.0055 1.5-1.9375 0-1.1046-.895431-2-2-2zm0 1c.552285 0 1 .4477 1 1s-.447715 1-1 1-1-.4477-1-1 .447715-1 1-1z" fill="#3a3a38" fill-rule="evenodd"/></svg>
\ No newline at end of file
... etc. - the rest is truncated
More information about the Libreoffice-commits
mailing list