summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUwe Klotz <uklotz@mixxx.org>2021-04-16 18:12:19 +0200
committerUwe Klotz <uklotz@mixxx.org>2021-04-16 18:12:19 +0200
commit0936681e9d844991520bdf383223acef4adc2248 (patch)
treee11080aee87ef3cca33621964d16a224ba798131
parent21c3730598ebd7263108b3bdf340910589c1122d (diff)
parent9744e5a4f840aad0fa8876f93222bd08cbb0fc79 (diff)
Merge branch 'main' into remove-trackfile
-rw-r--r--.github/workflows/build.yml3
-rw-r--r--CMakeLists.txt48
-rw-r--r--res/Mixxx-Keyboard-Shortcuts.pdfbin206495 -> 277063 bytes
-rw-r--r--res/images/templates/ic_template_keyboard_mapping_sheet.svg29776
-rw-r--r--res/skins/Deere/style.qss8
-rw-r--r--res/skins/LateNight/decks/vinyl_controls.xml5
-rw-r--r--res/skins/LateNight/fx/focus_button.xml5
-rw-r--r--res/skins/LateNight/fx/slot_controls.xml21
-rw-r--r--res/skins/LateNight/fx/slot_parameters.xml11
-rw-r--r--res/skins/LateNight/fx/unit_parameters_hidden.xml40
-rw-r--r--res/skins/LateNight/fx/unit_parameters_visible.xml7
-rw-r--r--res/skins/LateNight/helpers/skin_helper_deck_size.xml242
-rw-r--r--res/skins/LateNight/helpers/skin_settings_button_2state.xml5
-rw-r--r--res/skins/LateNight/helpers/skin_settings_cover.xml19
-rw-r--r--res/skins/LateNight/helpers/skin_settings_cover_inverted.xml20
-rw-r--r--res/skins/LateNight/palemoon/buttons/btn__fx_focus.svg56
-rw-r--r--res/skins/LateNight/palemoon/buttons/btn__fx_focus_active.svg82
-rw-r--r--res/skins/LateNight/palemoon/style/fx_flow_horizontal.svg16
-rw-r--r--res/skins/LateNight/palemoon/style/fx_flow_vertical.svg28
-rw-r--r--res/skins/LateNight/samplers/sampler_expand_button.xml19
-rw-r--r--res/skins/LateNight/skin.xml1
-rw-r--r--res/skins/LateNight/skin_settings.xml312
-rw-r--r--res/skins/LateNight/style.qss38
-rw-r--r--res/skins/LateNight/style_classic.qss46
-rw-r--r--res/skins/LateNight/style_palemoon.qss66
-rw-r--r--res/skins/LateNight/toolbar.xml2
-rw-r--r--res/skins/Shade/style.qss12
-rw-r--r--res/skins/Tango (64 Samplers)/skin.xml4
-rw-r--r--res/skins/Tango (64 Samplers)/skin_settings.xml23
-rw-r--r--res/skins/Tango/buttons/btn_fx_selector_list.svg6
-rw-r--r--res/skins/Tango/buttons/btn_fx_selector_list_hover.svg8
-rw-r--r--res/skins/Tango/deck_row_transport_left.xml6
-rw-r--r--res/skins/Tango/deck_row_transport_right.xml6
-rw-r--r--res/skins/Tango/fx_parameter_button.xml53
-rw-r--r--res/skins/Tango/fx_toggle_selector.xml6
-rw-r--r--res/skins/Tango/fx_unit_left.xml206
-rw-r--r--res/skins/Tango/fx_unit_left_mini.xml75
-rw-r--r--res/skins/Tango/fx_unit_right.xml202
-rw-r--r--res/skins/Tango/fx_unit_right_mini.xml75
-rw-r--r--res/skins/Tango/loop_controls.xml4
-rw-r--r--res/skins/Tango/rate_pitch_key.xml10
-rw-r--r--res/skins/Tango/sampler_row.xml5
-rw-r--r--res/skins/Tango/skin_settings.xml20
-rw-r--r--res/skins/Tango/style.qss196
-rw-r--r--res/skins/Tango/topbar.xml2
-rw-r--r--res/skins/Tango/waveform.xml76
-rw-r--r--src/config.h.in3
-rw-r--r--src/controllers/defs_controllers.h2
-rw-r--r--src/engine/controls/bpmcontrol.cpp59
-rw-r--r--src/engine/controls/bpmcontrol.h1
-rw-r--r--src/library/export/engineprimeexportjob.cpp83
-rw-r--r--src/preferences/dialog/dlgprefvinyl.cpp2
-rw-r--r--src/preferences/upgrade.cpp28
-rw-r--r--src/soundio/sounddeviceportaudio.cpp2
-rw-r--r--src/test/enginesynctest.cpp25
-rw-r--r--src/util/cmdlineargs.cpp5
-rw-r--r--tools/windows_buildenv.bat8
57 files changed, 16075 insertions, 16014 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 4f7fa89aa1..74cf792483 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -57,6 +57,9 @@ jobs:
- name: Windows 2019 (MSVC)
os: windows-2019
# TODO: Reenable FFmpeg after licensing issues have been clarified
+ # Attention: If you change the cmake_args for the Windows CI build,
+ # also adjust the for the local Windows build setup in
+ # ./tools/windows_buildenv.bat
cmake_args: >-
-DBULK=OFF
-DFFMPEG=OFF
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 910b5bc6cc..717a1d83b5 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,22 +1,4 @@
-cmake_minimum_required(VERSION 3.16.0)
-project(mixxx VERSION 2.3.0)
-set(CMAKE_PROJECT_HOMEPAGE_URL "https://www.mixxx.org")
-set(CMAKE_PROJECT_DESCRIPTION "Mixxx is Free DJ software that gives you everything you need to perform live mixes.")
-
-# Used for force control of color output
-set(BUILD_COLORS "auto" CACHE STRING "Try to use colors auto/always/no")
-# Option to disable symlinks
-set(USE_SYMLINKS ON CACHE BOOL "Use symlinks in build directory when possible")
-
-# Support new IN_LIST if() operator
-if(POLICY CMP0057)
- cmake_policy(SET CMP0057 NEW)
-endif()
-
-# Let AUTOMOC and AUTOUIC process GENERATED files
-if(POLICY CMP0071)
- cmake_policy(SET CMP0071 NEW)
-endif()
+cmake_minimum_required(VERSION 3.16)
# CMAKE_CXX_COMPILER_ID: Distinguish between "AppleClang" and "Clang"
if(POLICY CMP0025)
@@ -28,10 +10,31 @@ if(POLICY CMP0042)
cmake_policy(SET CMP0042 NEW)
endif()
+# Support new IN_LIST if() operator
+if(POLICY CMP0057)
+ cmake_policy(SET CMP0057 NEW)
+endif()
+
+# Enforce interprocedural optimization
if(POLICY CMP0069)
cmake_policy(SET CMP0069 NEW)
endif()
+# Let AUTOMOC and AUTOUIC process GENERATED files
+if(POLICY CMP0071)
+ cmake_policy(SET CMP0071 NEW)
+endif()
+
+project(mixxx VERSION 2.3.0)
+
+set(CMAKE_PROJECT_HOMEPAGE_URL "https://www.mixxx.org")
+set(CMAKE_PROJECT_DESCRIPTION "Mixxx is Free DJ software that gives you everything you need to perform live mixes.")
+
+# Used for force control of color output
+set(BUILD_COLORS "auto" CACHE STRING "Try to use colors auto/always/no")
+# Option to disable symlinks
+set(USE_SYMLINKS ON CACHE BOOL "Use symlinks in build directory when possible")
+
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules")
include(CMakeDependentOption)
include(CheckSymbolExists)
@@ -1018,9 +1021,8 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL
)
set_target_properties(mixxx-lib PROPERTIES AUTOMOC ON AUTOUIC ON CXX_CLANG_TIDY "${CLANG_TIDY}")
target_include_directories(mixxx-lib PUBLIC src "${CMAKE_CURRENT_BINARY_DIR}/src")
-target_compile_definitions(mixxx-lib PRIVATE SETTINGS_FILE="mixxx.cfg")
if(UNIX AND NOT APPLE)
- target_compile_definitions(mixxx-lib PRIVATE SETTINGS_PATH=".mixxx/")
+ set(MIXXX_SETTINGS_PATH ".mixxx/")
endif()
# Disable warnings in generated source files
@@ -1720,8 +1722,8 @@ if(ENGINEPRIME)
set(DJINTEROP_LIBRARY "lib/${CMAKE_STATIC_LIBRARY_PREFIX}djinterop${CMAKE_STATIC_LIBRARY_SUFFIX}")
file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/download")
ExternalProject_Add(libdjinterop
- URL "https://github.com/xsco/libdjinterop/archive/0.14.6.tar.gz"
- URL_HASH SHA256=db2f57f6c06c801d1785280ede0f032d7280bedd72f2a30bc263a272e3269587
+ URL "https://github.com/xsco/libdjinterop/archive/0.15.1.tar.gz"
+ URL_HASH SHA256=87b3e6c726c208333d55b7e7e3af0a7230c9ad9edb3ca0ca81feffe17b3fc008
DOWNLOAD_DIR "${CMAKE_CURRENT_BINARY_DIR}/download/libdjinterop"
INSTALL_DIR ${DJINTEROP_INSTALL_DIR}
CMAKE_ARGS
diff --git a/res/Mixxx-Keyboard-Shortcuts.pdf b/res/Mixxx-Keyboard-Shortcuts.pdf
index 3e5623f8eb..6efd3a8585 100644
--- a/res/Mixxx-Keyboard-Shortcuts.pdf
+++ b/res/Mixxx-Keyboard-Shortcuts.pdf
Binary files differ
diff --git a/res/images/templates/ic_template_keyboard_mapping_sheet.svg b/res/images/templates/ic_template_keyboard_mapping_sheet.svg
index 6b921e8698..1d9651e790 100644
--- a/res/images/templates/ic_template_keyboard_mapping_sheet.svg
+++ b/res/images/templates/ic_template_keyboard_mapping_sheet.svg
@@ -9,7 +9,7 @@
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
sodipodi:docname="ic_template_keyboard_mapping_sheet.svg"
- inkscape:version="1.0.1 (0767f8302a, 2020-10-17)"
+ inkscape:version="1.0.2 (394de47547, 2021-03-26)"
style="display:inline"
xml:space="preserve"
id="Layer_1"
@@ -29,13 +29,13 @@
inkscape:window-height="1056"
id="namedview8739"
showgrid="false"
- inkscape:zoom="2.7869995"
- inkscape:cx="255.18168"
- inkscape:cy="175.81754"
+ inkscape:zoom="1.7564101"
+ inkscape:cx="405.98341"
+ inkscape:cy="148.62522"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
- inkscape:current-layer="g3458"
+ inkscape:current-layer="layer2"
showguides="true"
inkscape:guide-bbox="true"
units="px"
@@ -139,13 +139,7 @@
x1="1.2294425"
y1="-0.099446326"
x2="0.34167257"
- y2="-0.099446379" /><filter
- inkscape:collect="always"
- id="filter23959-5"
- style="color-interpolation-filters:sRGB"><feGaussianBlur
- inkscape:collect="always"
- stdDeviation="0.1587275"
- id="feGaussianBlur23961-2" /></filter><linearGradient
+ y2="-0.099446379" /><linearGradient
inkscape:collect="always"
xlink:href="#linearGradient31738"
id="linearGradient23873-2"
@@ -402,7 +396,7483 @@
y1="0"
x2="1"
y2="0"
- spreadMethod="pad" /></defs>
+ spreadMethod="pad" /><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,30.7554,347.0751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient13872"
+ y2="911.19781"
+ x2="81.238297"
+ y1="911.19781"
+ x1="-5.7480001"><stop
+ offset="0.2"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop13868" /><stop
+ offset="0.80000001"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop13870" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,51.7695,320.3168)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient13878"
+ y2="911.08643"
+ x2="9.9525995"
+ y1="911.08643"
+ x1="-77.083504"><stop
+ offset="0.2"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop13874" /><stop
+ offset="0.80000001"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop13876" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,31.1953,325.3285)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient13888"
+ y2="888.25562"
+ x2="4.1355"
+ y1="908.75342"
+ x1="-16.362301"><stop
+ offset="0.02"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop13880" /><stop
+ offset="0.308"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop13882" /><stop
+ offset="0.69199997"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop13884" /><stop
+ offset="0.98000002"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop13886" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,46.8662,325.1571)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient13898"
+ y2="888.78809"
+ x2="15.1563"
+ y1="909.26898"
+ x1="35.637199"><stop
+ offset="0.01"
+ style="stop-color:#bcbec0;stop-opacity:1"
+ id="stop13890" /><stop
+ offset="0.30399999"
+ style="stop-color:#bcbec0;stop-opacity:1"
+ id="stop13892" /><stop
+ offset="0.69599998"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop13894" /><stop
+ offset="0.99000001"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop13896" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,46.3013,346.1517)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient13908"
+ y2="919.86768"
+ x2="16.7265"
+ y1="898.59619"
+ x1="37.998001"><stop
+ offset="0.09"
+ style="stop-color:#bcbec0;stop-opacity:1"
+ id="stop13900" /><stop
+ offset="0.336"
+ style="stop-color:#bcbec0;stop-opacity:1"
+ id="stop13902" /><stop
+ offset="0.66399997"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop13904" /><stop
+ offset="0.91000003"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop13906" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,31.4941,346.2787)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient13918"
+ y2="919.49622"
+ x2="3.4991"
+ y1="898.28473"
+ x1="-17.7124"><stop
+ offset="0.09"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop13910" /><stop
+ offset="0.336"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop13912" /><stop
+ offset="0.66399997"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop13914" /><stop
+ offset="0.91000003"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop13916" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,29.1309,324.7738)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient13928"
+ y2="968.94067"
+ x2="85.659599"
+ y1="912.43213"
+ x1="1.8823"><stop
+ offset="0.14"
+ style="stop-color:#bcbec0;stop-opacity:1"
+ id="stop13920" /><stop
+ offset="0.47119999"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop13922" /><stop
+ offset="0.62239999"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop13924" /><stop
+ offset="0.86000001"
+ style="stop-color:#ffffff;stop-opacity:1"
+ id="stop13926" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,30.7554,347.0751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient13944"
+ y2="911.19781"
+ x2="81.238297"
+ y1="911.19781"
+ x1="-5.7480001"><stop
+ offset="0.2"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop13940" /><stop
+ offset="0.80000001"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop13942" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,51.7695,320.3168)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient13950"
+ y2="911.08643"
+ x2="9.9525995"
+ y1="911.08643"
+ x1="-77.083504"><stop
+ offset="0.2"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop13946" /><stop
+ offset="0.80000001"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop13948" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,31.1953,325.3285)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient13960"
+ y2="888.25562"
+ x2="4.1355"
+ y1="908.75342"
+ x1="-16.362301"><stop
+ offset="0.02"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop13952" /><stop
+ offset="0.308"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop13954" /><stop
+ offset="0.69199997"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop13956" /><stop
+ offset="0.98000002"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop13958" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,46.8662,325.1571)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient13970"
+ y2="888.78809"
+ x2="15.1563"
+ y1="909.26898"
+ x1="35.637199"><stop
+ offset="0.01"
+ style="stop-color:#bcbec0;stop-opacity:1"
+ id="stop13962" /><stop
+ offset="0.30399999"
+ style="stop-color:#bcbec0;stop-opacity:1"
+ id="stop13964" /><stop
+ offset="0.69599998"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop13966" /><stop
+ offset="0.99000001"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop13968" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,46.3013,346.1517)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient13980"
+ y2="919.86768"
+ x2="16.7265"
+ y1="898.59619"
+ x1="37.998001"><stop
+ offset="0.09"
+ style="stop-color:#bcbec0;stop-opacity:1"
+ id="stop13972" /><stop
+ offset="0.336"
+ style="stop-color:#bcbec0;stop-opacity:1"
+ id="stop13974" /><stop
+ offset="0.66399997"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop13976" /><stop
+ offset="0.91000003"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop13978" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,31.4941,346.2787)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient13990"
+ y2="919.49622"
+ x2="3.4991"
+ y1="898.28473"
+ x1="-17.7124"><stop
+ offset="0.09"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop13982" /><stop
+ offset="0.336"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop13984" /><stop
+ offset="0.66399997"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop13986" /><stop
+ offset="0.91000003"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop13988" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,29.1309,324.7738)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient14000"
+ y2="968.94067"
+ x2="85.659599"
+ y1="912.43213"
+ x1="1.8823"><stop
+ offset="0.14"
+ style="stop-color:#bcbec0;stop-opacity:1"
+ id="stop13992" /><stop
+ offset="0.47119999"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop13994" /><stop
+ offset="0.62239999"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop13996" /><stop
+ offset="0.86000001"
+ style="stop-color:#ffffff;stop-opacity:1"
+ id="stop13998" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,30.7554,347.0751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient14016"
+ y2="911.19781"
+ x2="81.238297"
+ y1="911.19781"
+ x1="-5.7480001"><stop
+ offset="0.2"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop14012" /><stop
+ offset="0.80000001"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop14014" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,51.7695,320.3168)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient14022"
+ y2="911.08643"
+ x2="9.9525995"
+ y1="911.08643"
+ x1="-77.083504"><stop
+ offset="0.2"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop14018" /><stop
+ offset="0.80000001"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop14020" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,31.1953,325.3285)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient14032"
+ y2="888.25562"
+ x2="4.1355"
+ y1="908.75342"
+ x1="-16.362301"><stop
+ offset="0.02"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop14024" /><stop
+ offset="0.308"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop14026" /><stop
+ offset="0.69199997"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop14028" /><stop
+ offset="0.98000002"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop14030" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,46.8662,325.1571)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient14042"
+ y2="888.78809"
+ x2="15.1563"
+ y1="909.26898"
+ x1="35.637199"><stop
+ offset="0.01"
+ style="stop-color:#bcbec0;stop-opacity:1"
+ id="stop14034" /><stop
+ offset="0.30399999"
+ style="stop-color:#bcbec0;stop-opacity:1"
+ id="stop14036" /><stop
+ offset="0.69599998"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop14038" /><stop
+ offset="0.99000001"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop14040" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,46.3013,346.1517)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient14052"
+ y2="919.86768"
+ x2="16.7265"
+ y1="898.59619"
+ x1="37.998001"><stop
+ offset="0.09"
+ style="stop-color:#bcbec0;stop-opacity:1"
+ id="stop14044" /><stop
+ offset="0.336"
+ style="stop-color:#bcbec0;stop-opacity:1"
+ id="stop14046" /><stop
+ offset="0.66399997"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop14048" /><stop
+ offset="0.91000003"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop14050" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,31.4941,346.2787)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient14062"
+ y2="919.49622"
+ x2="3.4991"
+ y1="898.28473"
+ x1="-17.7124"><stop
+ offset="0.09"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop14054" /><stop
+ offset="0.336"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop14056" /><stop
+ offset="0.66399997"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop14058" /><stop
+ offset="0.91000003"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop14060" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,29.1309,324.7738)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient14072"
+ y2="968.94067"
+ x2="85.659599"
+ y1="912.43213"
+ x1="1.8823"><stop
+ offset="0.14"
+ style="stop-color:#bcbec0;stop-opacity:1"
+ id="stop14064" /><stop
+ offset="0.47119999"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop14066" /><stop
+ offset="0.62239999"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop14068" /><stop
+ offset="0.86000001"
+ style="stop-color:#ffffff;stop-opacity:1"
+ id="stop14070" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,30.7554,347.0751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4696"
+ y2="911.19781"
+ x2="81.238297"
+ y1="911.19781"
+ x1="-5.7480001"><stop
+ offset="0.2"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop4692" /><stop
+ offset="0.80000001"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop4694" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,51.7695,320.3168)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4702"
+ y2="911.08643"
+ x2="9.9525995"
+ y1="911.08643"
+ x1="-77.083504"><stop
+ offset="0.2"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop4698" /><stop
+ offset="0.80000001"
+ style="stop-color:#e7e8e9;stop-opacity:1"
+ id="stop4700" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,31.1953,325.3285)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4712"
+ y2="888.25562"
+ x2="4.1355"
+ y1="908.75342"
+ x1="-16.362301"><stop
+ offset="0.02"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop4704" /><stop
+ offset="0.308"
+ style="stop-color:#f1f1f2;stop-opacity:1"
+ id="stop4706" /><stop
+ offset="0.69199997"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop4708" /><stop
+ offset="0.98000002"
+ style="stop-color:#d1d3d4;stop-opacity:1"
+ id="stop4710" /></linearGradient><linearGradient
+ gradientTransform="matrix(0.2947,0,0,0.2947,46.8662,325.1571)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4722"
+ y2="888.78809"
+ x2="15.1563"
+ y1="909.26898"
+ x1="3