Merge branch 'blender-v2.81-release'
authorCampbell Barton <ideasman42@gmail.com>
Mon, 18 Nov 2019 05:39:16 +0000 (16:39 +1100)
committerCampbell Barton <ideasman42@gmail.com>
Mon, 18 Nov 2019 05:39:16 +0000 (16:39 +1100)
240 files changed:
.github/stale.yml [new file with mode: 0644]
CMakeLists.txt
build_files/build_environment/cmake/alembic.cmake
build_files/build_environment/cmake/boost.cmake
build_files/build_environment/cmake/clang.cmake
build_files/build_environment/cmake/harvest.cmake
build_files/build_environment/cmake/llvm.cmake
build_files/build_environment/cmake/opencolorio.cmake
build_files/build_environment/cmake/openimageio.cmake
build_files/build_environment/cmake/opensubdiv.cmake
build_files/build_environment/cmake/openvdb.cmake
build_files/build_environment/cmake/options.cmake
build_files/build_environment/cmake/osl.cmake
build_files/build_environment/cmake/tbb.cmake
build_files/build_environment/cmake/versions.cmake
build_files/build_environment/cmake/webp.cmake
build_files/build_environment/cmake/yamlcpp.cmake
build_files/build_environment/patches/opencollada.diff
build_files/cmake/macros.cmake
build_files/cmake/platform/platform_win32.cmake
build_files/utils/make_update.py
build_files/windows/check_libraries.cmd
build_files/windows/find_dependencies.cmd
build_files/windows/format.cmd
doc/doxygen/Doxyfile
extern/audaspace/plugins/openal/OpenALDevice.cpp
extern/audaspace/src/respec/ChannelMapperReader.cpp
intern/CMakeLists.txt
intern/cycles/CMakeLists.txt
intern/cycles/blender/addon/engine.py
intern/cycles/device/device_cuda.cpp
intern/cycles/kernel/CMakeLists.txt
intern/cycles/kernel/filter/filter_transform_gpu.h
intern/cycles/kernel/filter/filter_transform_sse.h
intern/ghost/intern/GHOST_DisplayManagerWin32.cpp
intern/ghost/intern/GHOST_SystemPathsWin32.cpp
intern/ghost/intern/GHOST_SystemPathsWin32.h
intern/ghost/intern/GHOST_SystemX11.cpp
intern/ghost/intern/GHOST_TaskbarWin32.h
intern/ghost/intern/GHOST_WindowViewCocoa.h
intern/opensubdiv/internal/opensubdiv_evaluator.cc
intern/opensubdiv/internal/opensubdiv_evaluator_internal.cc
intern/opensubdiv/internal/opensubdiv_evaluator_internal.h
intern/opensubdiv/opensubdiv_capi_type.h
intern/opensubdiv/opensubdiv_evaluator_capi.h
intern/openvdb/CMakeLists.txt
release/datafiles/blender_icons.svg
release/datafiles/blender_icons16/icon16_con_action.dat
release/datafiles/blender_icons16/icon16_desktop.dat
release/datafiles/blender_icons16/icon16_disk.dat [new file with mode: 0644]
release/datafiles/blender_icons16/icon16_documents.dat [new file with mode: 0644]
release/datafiles/blender_icons16/icon16_file_archive.dat
release/datafiles/blender_icons16/icon16_file_folder.dat
release/datafiles/blender_icons16/icon16_file_font.dat
release/datafiles/blender_icons16/icon16_file_script.dat
release/datafiles/blender_icons16/icon16_file_sound.dat
release/datafiles/blender_icons16/icon16_filebrowser.dat
release/datafiles/blender_icons16/icon16_home.dat [new file with mode: 0644]
release/datafiles/blender_icons16/icon16_memory.dat [new file with mode: 0644]
release/datafiles/blender_icons16/icon16_mod_mirror.dat
release/datafiles/blender_icons16/icon16_newfolder.dat
release/datafiles/blender_icons16/icon16_options.dat [new file with mode: 0644]
release/datafiles/blender_icons16/icon16_plugin.dat
release/datafiles/blender_icons16/icon16_preset.dat
release/datafiles/blender_icons16/icon16_select_intersect.dat
release/datafiles/blender_icons16/icon16_statusbar.dat [new file with mode: 0644]
release/datafiles/blender_icons16/icon16_temp.dat [new file with mode: 0644]
release/datafiles/blender_icons16/icon16_topbar.dat [new file with mode: 0644]
release/datafiles/blender_icons32/icon32_con_action.dat
release/datafiles/blender_icons32/icon32_desktop.dat
release/datafiles/blender_icons32/icon32_disk.dat [new file with mode: 0644]
release/datafiles/blender_icons32/icon32_documents.dat [new file with mode: 0644]
release/datafiles/blender_icons32/icon32_file_archive.dat
release/datafiles/blender_icons32/icon32_file_folder.dat
release/datafiles/blender_icons32/icon32_file_font.dat
release/datafiles/blender_icons32/icon32_file_script.dat
release/datafiles/blender_icons32/icon32_file_sound.dat
release/datafiles/blender_icons32/icon32_filebrowser.dat
release/datafiles/blender_icons32/icon32_home.dat [new file with mode: 0644]
release/datafiles/blender_icons32/icon32_memory.dat [new file with mode: 0644]
release/datafiles/blender_icons32/icon32_mod_mirror.dat
release/datafiles/blender_icons32/icon32_newfolder.dat
release/datafiles/blender_icons32/icon32_options.dat [new file with mode: 0644]
release/datafiles/blender_icons32/icon32_plugin.dat
release/datafiles/blender_icons32/icon32_preset.dat
release/datafiles/blender_icons32/icon32_select_intersect.dat
release/datafiles/blender_icons32/icon32_statusbar.dat [new file with mode: 0644]
release/datafiles/blender_icons32/icon32_temp.dat [new file with mode: 0644]
release/datafiles/blender_icons32/icon32_topbar.dat [new file with mode: 0644]
release/datafiles/icons/ops.gpencil.primitive_polyline.dat [new file with mode: 0644]
release/datafiles/icons/ops.paint.eyedropper_add.dat [new file with mode: 0644]
release/datafiles/locale
release/datafiles/prvicons.png
release/datafiles/prvicons.svg
release/datafiles/userdef/userdef_default.c
release/datafiles/userdef/userdef_default_theme.c
release/scripts/addons
release/scripts/addons_contrib
release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py
release/scripts/modules/bpy/path.py
release/scripts/modules/bpy/utils/__init__.py
release/scripts/modules/bpy_extras/object_utils.py
release/scripts/presets/keyconfig/keymap_data/blender_default.py
release/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py
release/scripts/startup/bl_operators/add_mesh_torus.py
release/scripts/startup/bl_operators/presets.py
release/scripts/startup/bl_operators/sequencer.py
release/scripts/startup/bl_operators/userpref.py
release/scripts/startup/bl_operators/uvcalc_follow_active.py
release/scripts/startup/bl_operators/uvcalc_lightmap.py
release/scripts/startup/bl_operators/wm.py
release/scripts/startup/bl_ui/properties_constraint.py
release/scripts/startup/bl_ui/properties_data_modifier.py
release/scripts/startup/bl_ui/properties_paint_common.py
release/scripts/startup/bl_ui/space_filebrowser.py
release/scripts/startup/bl_ui/space_node.py
release/scripts/startup/bl_ui/space_sequencer.py
release/scripts/startup/bl_ui/space_toolsystem_toolbar.py
release/scripts/startup/bl_ui/space_userpref.py
release/scripts/startup/bl_ui/space_view3d.py
release/scripts/startup/bl_ui/space_view3d_toolbar.py
source/blender/alembic/intern/abc_mesh.cc
source/blender/alembic/intern/abc_mesh.h
source/blender/blenfont/intern/blf_internal_types.h
source/blender/blenkernel/BKE_blender_version.h
source/blender/blenkernel/BKE_constraint.h
source/blender/blenkernel/BKE_gpencil.h
source/blender/blenkernel/BKE_idprop.h
source/blender/blenkernel/BKE_particle.h
source/blender/blenkernel/intern/brush.c
source/blender/blenkernel/intern/constraint.c
source/blender/blenkernel/intern/fcurve.c
source/blender/blenkernel/intern/gpencil.c
source/blender/blenkernel/intern/idprop.c
source/blender/blenkernel/intern/layer.c
source/blender/blenkernel/intern/particle_system.c
source/blender/blenkernel/intern/shrinkwrap.c
source/blender/blenkernel/intern/smoke.c
source/blender/blenlib/BLI_buffer.h
source/blender/blenlib/BLI_math_vector.h
source/blender/blenlib/BLI_task.h
source/blender/blenlib/intern/BLI_temporary_allocator.cc
source/blender/blenlib/intern/expr_pylike_eval.c
source/blender/blenlib/intern/math_solvers.c
source/blender/blenlib/intern/task.c
source/blender/blenloader/intern/versioning_280.c
source/blender/blenloader/intern/versioning_userdef.c
source/blender/depsgraph/intern/builder/deg_builder_relations.cc
source/blender/draw/engines/gpencil/gpencil_draw_utils.c
source/blender/draw/engines/gpencil/gpencil_engine.c
source/blender/draw/engines/gpencil/gpencil_engine.h
source/blender/draw/modes/edit_mesh_mode.c
source/blender/editors/animation/anim_markers.c
source/blender/editors/datafiles/CMakeLists.txt
source/blender/editors/gpencil/gpencil_intern.h
source/blender/editors/gpencil/gpencil_paint.c
source/blender/editors/gpencil/gpencil_primitive.c
source/blender/editors/include/ED_mask.h
source/blender/editors/include/ED_transform_snap_object_context.h
source/blender/editors/include/UI_icons.h
source/blender/editors/include/UI_interface.h
source/blender/editors/interface/CMakeLists.txt
source/blender/editors/interface/interface_eyedropper.c
source/blender/editors/interface/interface_eyedropper_gpencil_color.c [new file with mode: 0644]
source/blender/editors/interface/interface_intern.h
source/blender/editors/interface/interface_layout.c
source/blender/editors/interface/interface_ops.c
source/blender/editors/interface/interface_templates.c
source/blender/editors/interface/interface_widgets.c
source/blender/editors/mask/mask_add.c
source/blender/editors/mask/mask_draw.c
source/blender/editors/mask/mask_edit.c
source/blender/editors/mask/mask_editaction.c
source/blender/editors/mask/mask_intern.h
source/blender/editors/mask/mask_ops.c
source/blender/editors/mask/mask_relationships.c
source/blender/editors/mask/mask_select.c
source/blender/editors/mask/mask_shapekey.c
source/blender/editors/object/object_add.c
source/blender/editors/render/render_view.c
source/blender/editors/screen/area.c
source/blender/editors/screen/screen_edit.c
source/blender/editors/screen/screen_ops.c
source/blender/editors/space_file/file_ops.c
source/blender/editors/space_file/filelist.c
source/blender/editors/space_file/filesel.c
source/blender/editors/space_graph/graph_edit.c
source/blender/editors/space_graph/space_graph.c
source/blender/editors/space_sequencer/sequencer_add.c
source/blender/editors/space_sequencer/sequencer_draw.c
source/blender/editors/space_sequencer/sequencer_edit.c
source/blender/editors/space_sequencer/sequencer_intern.h
source/blender/editors/space_sequencer/sequencer_ops.c
source/blender/editors/space_sequencer/sequencer_select.c
source/blender/editors/space_view3d/view3d_draw.c
source/blender/editors/space_view3d/view3d_view.c
source/blender/editors/transform/transform.c
source/blender/editors/transform/transform.h
source/blender/editors/transform/transform_convert.c
source/blender/editors/transform/transform_generics.c
source/blender/editors/transform/transform_snap.c
source/blender/editors/transform/transform_snap_object.c
source/blender/gpencil_modifiers/CMakeLists.txt
source/blender/gpencil_modifiers/MOD_gpencil_modifiertypes.h
source/blender/gpencil_modifiers/intern/MOD_gpencil_util.c
source/blender/gpencil_modifiers/intern/MOD_gpencilmultiply.c [new file with mode: 0644]
source/blender/makesdna/DNA_constraint_types.h
source/blender/makesdna/DNA_gpencil_modifier_types.h
source/blender/makesdna/DNA_modifier_types.h
source/blender/makesdna/DNA_scene_types.h
source/blender/makesdna/DNA_screen_types.h
source/blender/makesdna/DNA_space_types.h
source/blender/makesdna/DNA_userdef_types.h
source/blender/makesrna/RNA_access.h
source/blender/makesrna/intern/rna_constraint.c
source/blender/makesrna/intern/rna_gpencil_modifier.c
source/blender/makesrna/intern/rna_modifier.c
source/blender/makesrna/intern/rna_object_api.c
source/blender/makesrna/intern/rna_scene.c
source/blender/makesrna/intern/rna_space.c
source/blender/makesrna/intern/rna_ui_api.c
source/blender/makesrna/intern/rna_userdef.c
source/blender/makesrna/intern/rna_wm_api.c
source/blender/modifiers/CMakeLists.txt
source/blender/modifiers/intern/MOD_solidify.c
source/blender/modifiers/intern/MOD_solidify_extrude.c [new file with mode: 0644]
source/blender/modifiers/intern/MOD_solidify_nonmanifold.c [new file with mode: 0644]
source/blender/modifiers/intern/MOD_solidify_util.h [new file with mode: 0644]
source/blender/python/generic/py_capi_utils.c
source/blender/python/mathutils/mathutils_geometry.c
source/blender/python/mathutils/mathutils_kdtree.c
source/blender/render/intern/source/render_texture.c
source/blender/windowmanager/WM_api.h
source/blender/windowmanager/intern/wm_event_system.c
source/blender/windowmanager/intern/wm_operators.c
source/creator/CMakeLists.txt
source/creator/creator.c
source/tools
tests/gtests/blenlib/BLI_task_performance_test.cc
tests/gtests/blenlib/BLI_task_test.cc

diff --git a/.github/stale.yml b/.github/stale.yml
new file mode 100644 (file)
index 0000000..9c563f2
--- /dev/null
@@ -0,0 +1,22 @@
+# Configuration for probot-stale - https://github.com/probot/stale
+# This file is used on Blender's GitHub mirror to automatically close any pull request
+# and invite contributors to join the official development platform on blender.org
+
+# Number of days of inactivity before an Issue or Pull Request becomes stale
+daysUntilStale: 1
+
+# Number of days of inactivity before an Issue or Pull Request with the stale label is closed.
+# Set to false to disable. If disabled, issues still need to be closed manually, but will remain marked as stale.
+daysUntilClose: 1
+
+# Label to use when marking as stale
+staleLabel: stale
+
+# Comment to post when closing a stale Issue or Pull Request.
+closeComment: >
+  This issue has been automatically closed, because this repository is only
+  used as a mirror of git.blender.org. Blender development happens on
+  developer.blender.org.
+
+  To get started contributing code, please read:
+  https://wiki.blender.org/wiki/Process/Contributing_Code
index 0c2e4f8b6b05bc9848f2ecbc17d486f6b0fcf685..f87ba599c19a063a2319915e638bc9e0240ddc74 100644 (file)
@@ -170,6 +170,14 @@ option_defaults_init(
   _init_OPENSUBDIV
 )
 
+# TBB malloc is only supported on for windows currently
+if(WIN32)
+  set(_init_TBB_MALLOC_PROXY ON)
+else()
+  set(_init_TBB_MALLOC_PROXY OFF)
+endif()
+
+
 # customize...
 if(UNIX AND NOT APPLE)
   # some of these libraries are problematic on Linux
@@ -463,6 +471,7 @@ mark_as_advanced(WITH_ASSERT_ABORT)
 
 option(WITH_BOOST "Enable features depending on boost" ON)
 option(WITH_TBB   "Enable features depending on TBB (OpenVDB, OpenImageDenoise, sculpt multithreading)" ON)
+option(WITH_TBB_MALLOC_PROXY "Enable the TBB malloc replacement" ${_init_TBB_MALLOC_PROXY})
 
 # Unit testsing
 option(WITH_GTESTS "Enable GTest unit testing" OFF)
index fa2d7243f7d194f2d514662e064039b9bff47087..49c54ff6e826be67713a075d77bcd2f1b3e85477 100644 (file)
@@ -40,7 +40,7 @@ set(ALEMBIC_EXTRA_ARGS
   -DBoost_USE_MULTITHREADED=ON
   -DUSE_STATIC_BOOST=On
   -DBoost_USE_STATIC_LIBS=ON
-  -DBoost_USE_STATIC_RUNTIME=ON
+  -DBoost_USE_STATIC_RUNTIME=OFF
   -DBoost_DEBUG=ON
   -DBOOST_ROOT=${LIBDIR}/boost
   -DBoost_NO_SYSTEM_PATHS=ON
index fabc055ce29e4fc97d97b6b338827c97e3ac2573..4c5ce749cd52a1ea3c3ee7bc360233fbd295e811 100644 (file)
@@ -29,13 +29,13 @@ if(WIN32)
     set(PYTHON_OUTPUTDIR ${BUILD_DIR}/python/src/external_python/pcbuild/win32/)
     set(BOOST_ADDRESS_MODEL 32)
   endif()
-  if(MSVC14)
-    set(BOOST_TOOLSET toolset=msvc-14.0)
-    set(BOOST_COMPILER_STRING -vc140)
-  endif()
+
+  set(BOOST_TOOLSET toolset=msvc-14.1)
+  set(BOOST_COMPILER_STRING -vc141)
+
   set(BOOST_CONFIGURE_COMMAND bootstrap.bat)
   set(BOOST_BUILD_COMMAND bjam)
-  set(BOOST_BUILD_OPTIONS runtime-link=static )
+  set(BOOST_BUILD_OPTIONS runtime-link=shared )
   set(BOOST_HARVEST_CMD   ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/boost/lib/ ${HARVEST_TARGET}/boost/lib/ )
   if(BUILD_MODE STREQUAL Release)
     set(BOOST_HARVEST_CMD ${BOOST_HARVEST_CMD} && ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/boost/include/boost-1_68/ ${HARVEST_TARGET}/boost/include/)
index f1f537baf1d78b4aa4a2d88bbe0eaf836785a683..3231a339e1753a0d2fd4379ff0d87acf2fa89c81 100644 (file)
@@ -19,8 +19,8 @@
 set(CLANG_EXTRA_ARGS
   -DCLANG_PATH_TO_LLVM_SOURCE=${BUILD_DIR}/ll/src/ll
   -DCLANG_PATH_TO_LLVM_BUILD=${LIBDIR}/llvm
-  -DLLVM_USE_CRT_RELEASE=MT
-  -DLLVM_USE_CRT_DEBUG=MTd
+  -DLLVM_USE_CRT_RELEASE=MD
+  -DLLVM_USE_CRT_DEBUG=MDd
   -DLLVM_CONFIG=${LIBDIR}/llvm/bin/llvm-config
 )
 
index cc596b2c78654f175540eba5de49c8cac3860dcb..89eec7cf72fb447850cc01a7483d17eaa0797cc3 100644 (file)
@@ -52,9 +52,7 @@ if(BUILD_MODE STREQUAL Release)
         ${CMAKE_COMMAND} -E copy ${LIBDIR}/tiff/lib/tiff.lib ${HARVEST_TARGET}/tiff/lib/libtiff.lib &&
         ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/tiff/include/ ${HARVEST_TARGET}/tiff/include/ &&
         # hidapi
-        ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/hidapi/ ${HARVEST_TARGET}/hidapi/ &&
-        # webp, straight up copy
-        ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/webp ${HARVEST_TARGET}/webp &&
+        ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/hidapi/ ${HARVEST_TARGET}/hidapi/
     DEPENDS
   )
 endif()
index 8acf6b56e3df24af4cf6d603f98a6117564a8dbe..dc1a5cf8a80215adb7daf530b39e04f307fe0aba 100644 (file)
@@ -17,8 +17,8 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(LLVM_EXTRA_ARGS
-  -DLLVM_USE_CRT_RELEASE=MT
-  -DLLVM_USE_CRT_DEBUG=MTd
+  -DLLVM_USE_CRT_RELEASE=MD
+  -DLLVM_USE_CRT_DEBUG=MDd
   -DLLVM_INCLUDE_TESTS=OFF
   -DLLVM_TARGETS_TO_BUILD=X86
   -DLLVM_INCLUDE_EXAMPLES=OFF
index 1260a1217dde51ef4eb045e6098c69ce55b1c88f..502e9a6c03b9cb807da2c43f019ea12868cb2a19 100644 (file)
@@ -95,7 +95,7 @@ if(WIN32)
     ExternalProject_Add_Step(external_opencolorio after_install
       COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencolorio/include ${HARVEST_TARGET}/opencolorio/include
       COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/opencolorio/lib/static ${HARVEST_TARGET}/opencolorio/lib
-      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmt.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmd.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp.lib
       COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tinyxml/lib/tinyxml.lib ${HARVEST_TARGET}/opencolorio/lib/tinyxml.lib
       DEPENDEES install
     )
@@ -103,7 +103,7 @@ if(WIN32)
   if(BUILD_MODE STREQUAL Debug)
     ExternalProject_Add_Step(external_opencolorio after_install
       COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/opencolorio/lib/static/Opencolorio.lib ${HARVEST_TARGET}/opencolorio/lib/OpencolorIO_d.lib
-      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmtd.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp_d.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/yamlcpp/lib/libyaml-cppmdd.lib ${HARVEST_TARGET}/opencolorio/lib/libyaml-cpp_d.lib
       COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tinyxml/lib/tinyxml.lib ${HARVEST_TARGET}/opencolorio/lib/tinyxml_d.lib
       DEPENDEES install
     )
index 920e9ee0273e6be591d0bec06e54b23b0479cba2..57b8860f2bd065c542fb2e4e3b67f76ae18f2de1 100644 (file)
@@ -69,7 +69,7 @@ set(OPENIMAGEIO_EXTRA_ARGS
   -DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
   -DBoost_USE_MULTITHREADED=ON
   -DBoost_USE_STATIC_LIBS=ON
-  -DBoost_USE_STATIC_RUNTIME=ON
+  -DBoost_USE_STATIC_RUNTIME=OFF
   -DBOOST_ROOT=${LIBDIR}/boost
   -DBOOST_LIBRARYDIR=${LIBDIR}/boost/lib/
   -DBoost_NO_SYSTEM_PATHS=ON
index b81170c72b749ded7cee6e997770ba8e5c09eb56..5c1ebe46a20fc3764f1443d8984fe4d403d44216 100644 (file)
@@ -41,7 +41,6 @@ if(WIN32)
     -DCLEW_LIBRARY=${LIBDIR}/clew/lib/clew${LIBEXT}
     -DCUEW_INCLUDE_DIR=${LIBDIR}/cuew/include
     -DCUEW_LIBRARY=${LIBDIR}/cuew/lib/cuew${LIBEXT}
-    -DCMAKE_EXE_LINKER_FLAGS_RELEASE=libcmt.lib
   )
   if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
     set(OPENSUBDIV_EXTRA_ARGS
index 215b3e8f2fe16ece80e15d7d795a577530532e8c..c73cf2681aee7e90971ccf172b9329195fd36d9e 100644 (file)
@@ -24,7 +24,7 @@ set(OPENVDB_EXTRA_ARGS
   -DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
   -DBoost_USE_MULTITHREADED=ON
   -DBoost_USE_STATIC_LIBS=ON
-  -DBoost_USE_STATIC_RUNTIME=ON
+  -DBoost_USE_STATIC_RUNTIME=OFF
   -DBOOST_ROOT=${LIBDIR}/boost
   -DBoost_NO_SYSTEM_PATHS=ON
   -DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY}
index 52b850a021f98c2846aeb62e1d049ab7d10f4eb8..af9f8b6271d9d8b8601169e173441e9758cf3616 100644 (file)
@@ -62,22 +62,22 @@ if(WIN32)
   endif()
   set(COMMON_MSVC_FLAGS "${COMMON_MSVC_FLAGS} /bigobj")
   if(WITH_OPTIMIZED_DEBUG)
-    set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MTd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+    set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MDd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
   else()
-    set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MTd ${COMMON_MSVC_FLAGS} /Zi /Ob0 /Od /RTC1 /D_DEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+    set(BLENDER_CMAKE_C_FLAGS_DEBUG "/MDd ${COMMON_MSVC_FLAGS} /Zi /Ob0 /Od /RTC1 /D_DEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
   endif()
-  set(BLENDER_CMAKE_C_FLAGS_MINSIZEREL "/MT ${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
-  set(BLENDER_CMAKE_C_FLAGS_RELEASE "/MT ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
-  set(BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO "/MT ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+  set(BLENDER_CMAKE_C_FLAGS_MINSIZEREL "/MD ${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+  set(BLENDER_CMAKE_C_FLAGS_RELEASE "/MD ${COMMON_MSVC_FLAGS} /O2 /Ob2 /DNDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+  set(BLENDER_CMAKE_C_FLAGS_RELWITHDEBINFO "/MD ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
 
   if(WITH_OPTIMIZED_DEBUG)
-    set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "/MTd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+    set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "/MDd ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
   else()
     set(BLENDER_CMAKE_CXX_FLAGS_DEBUG "/D_DEBUG /D PLATFORM_WINDOWS /MTd  ${COMMON_MSVC_FLAGS} /Zi /Ob0 /Od /RTC1 /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
   endif()
-  set(BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL "/MT /${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG  /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
-  set(BLENDER_CMAKE_CXX_FLAGS_RELEASE "/MT ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
-  set(BLENDER_CMAKE_CXX_FLAGS_RELWITHDEBINFO "/MT ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+  set(BLENDER_CMAKE_CXX_FLAGS_MINSIZEREL "/MD /${COMMON_MSVC_FLAGS} /O1 /Ob1 /D NDEBUG  /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+  set(BLENDER_CMAKE_CXX_FLAGS_RELEASE "/MD ${COMMON_MSVC_FLAGS} /O2 /Ob2 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
+  set(BLENDER_CMAKE_CXX_FLAGS_RELWITHDEBINFO "/MD ${COMMON_MSVC_FLAGS} /Zi /O2 /Ob1 /D NDEBUG /D PLATFORM_WINDOWS /DPSAPI_VERSION=1 /DOIIO_STATIC_BUILD /DTINYFORMAT_ALLOW_WCHAR_STRINGS")
 
   set(PLATFORM_FLAGS)
   set(PLATFORM_CXX_FLAGS)
@@ -97,8 +97,8 @@ if(WIN32)
 
   set(CONFIGURE_ENV
     cd ${MINGW_PATH} &&
-    call ${MINGW_SHELL} &&
     call ${PERL_SHELL} &&
+    call ${MINGW_SHELL} &&
     set path &&
     set CFLAGS=-g &&
     set LDFLAGS=-Wl,--as-needed -static-libgcc
index 4e0a924530a57fbe5b1577f80c2eed9743922092..840eb87b1962612197aaf743addebbe416ab5ed0 100644 (file)
@@ -40,7 +40,7 @@ set(OSL_EXTRA_ARGS
   -DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING}
   -DBoost_USE_MULTITHREADED=ON
   -DBoost_USE_STATIC_LIBS=ON
-  -DBoost_USE_STATIC_RUNTIME=ON
+  -DBoost_USE_STATIC_RUNTIME=OFF
   -DBOOST_ROOT=${LIBDIR}/boost
   -DBOOST_LIBRARYDIR=${LIBDIR}/boost/lib/
   -DBoost_NO_SYSTEM_PATHS=ON
index 26c52e00c7685feda27e4f8682bcfe8d1c53d494..8bd2f3160d097222c215eddbb93e1f6eca92ff03 100644 (file)
 # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 #
 # ***** END GPL LICENSE BLOCK *****
-
-set(TBB_EXTRA_ARGS
-  -DTBB_BUILD_SHARED=Off
-  -DTBB_BUILD_TBBMALLOC=On
-  -DTBB_BUILD_TBBMALLOC_PROXY=Off
-  -DTBB_BUILD_STATIC=On
+if(WIN32)
+  set(TBB_EXTRA_ARGS
+    -DTBB_BUILD_SHARED=On
+    -DTBB_BUILD_TBBMALLOC=On
+    -DTBB_BUILD_TBBMALLOC_PROXY=On
+    -DTBB_BUILD_STATIC=On
 )
+else()
+  set(TBB_EXTRA_ARGS
+    -DTBB_BUILD_SHARED=Off
+    -DTBB_BUILD_TBBMALLOC=On
+    -DTBB_BUILD_TBBMALLOC_PROXY=Off
+    -DTBB_BUILD_STATIC=On
+  )
+endif()
 
 # CMake script for TBB from https://github.com/wjakob/tbb/blob/master/CMakeLists.txt
 ExternalProject_Add(external_tbb
@@ -39,6 +47,10 @@ if(WIN32)
   if(BUILD_MODE STREQUAL Release)
     ExternalProject_Add_Step(external_tbb after_install
       COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb_static.lib ${HARVEST_TARGET}/tbb/lib/tbb.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc.lib ${HARVEST_TARGET}/tbb/lib/tbbmalloc.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc.dll ${HARVEST_TARGET}/tbb/lib/tbbmalloc.dll
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc_proxy.lib ${HARVEST_TARGET}/tbb/lib/tbbmalloc_proxy.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc_proxy.dll ${HARVEST_TARGET}/tbb/lib/tbbmalloc_proxy.dll
       COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/tbb/include/ ${HARVEST_TARGET}/tbb/include/
       DEPENDEES install
     )
@@ -46,6 +58,9 @@ if(WIN32)
   if(BUILD_MODE STREQUAL Debug)
     ExternalProject_Add_Step(external_tbb after_install
       COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbb_static.lib ${HARVEST_TARGET}/tbb/lib/tbb_debug.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc_proxy.lib ${HARVEST_TARGET}/tbb/lib/tbbmalloc_proxy_debug.lib
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc.dll ${HARVEST_TARGET}/tbb/lib/debug/tbbmalloc.dll
+      COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/tbb/lib/tbbmalloc_proxy.dll ${HARVEST_TARGET}/tbb/lib/debug/tbbmalloc_proxy.dll
       DEPENDEES install
     )
   endif()
index a261b5fd5049622063827bbab0acce6d2e329c5c..fb3b96a5da740520ed7c4a22cdb422905ba5039c 100644 (file)
@@ -149,9 +149,9 @@ set(PYTHON_SHORT_VERSION_NO_DOTS 37)
 set(PYTHON_URI https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}.tar.xz)
 set(PYTHON_HASH d33e4aae66097051c2eca45ee3604803)
 
-set(TBB_VERSION 2018_U5)
+set(TBB_VERSION 2019_U9)
 set(TBB_URI https://github.com/01org/tbb/archive/${TBB_VERSION}.tar.gz)
-set(TBB_HASH ff3ae09f8c23892fbc3008c39f78288f)
+set(TBB_HASH 584edbec127c508f2cd5b6e79ad200fc)
 
 set(OPENVDB_VERSION 5.1.0)
 set(OPENVDB_URI https://github.com/dreamworksanimation/openvdb/archive/v${OPENVDB_VERSION}.tar.gz)
@@ -263,9 +263,9 @@ set(TINYXML_VERSION_DOTS 2.6.2)
 set(TINYXML_URI https://nchc.dl.sourceforge.net/project/tinyxml/tinyxml/${TINYXML_VERSION_DOTS}/tinyxml_${TINYXML_VERSION}.tar.gz)
 set(TINYXML_HASH c1b864c96804a10526540c664ade67f0)
 
-set(YAMLCPP_VERSION 0.6.2)
+set(YAMLCPP_VERSION 0.6.3)
 set(YAMLCPP_URI https://codeload.github.com/jbeder/yaml-cpp/tar.gz/yaml-cpp-${YAMLCPP_VERSION})
-set(YAMLCPP_HASH 5b943e9af0060d0811148b037449ef82)
+set(YAMLCPP_HASH b45bf1089a382e81f6b661062c10d0c2)
 
 set(LCMS_VERSION 2.9)
 set(LCMS_URI https://nchc.dl.sourceforge.net/project/lcms/lcms/${LCMS_VERSION}/lcms2-${LCMS_VERSION}.tar.gz)
index 73557859ae66448bf4b7faaf7678f08bfc23f9c9..7d5a533335671984952f8352c5909d9467aa5be6 100644 (file)
@@ -39,3 +39,12 @@ ExternalProject_Add(external_webp
   CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/webp -Wno-dev ${DEFAULT_CMAKE_FLAGS} ${WEBP_EXTRA_ARGS}
   INSTALL_DIR ${LIBDIR}/webp
 )
+
+if(WIN32)
+  if(BUILD_MODE STREQUAL Release)
+    ExternalProject_Add_Step(external_webp after_install
+      COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/webp ${HARVEST_TARGET}/webp
+      DEPENDEES install
+    )
+  endif()
+endif()
index b0ce77d079f9de24bc4b4e97e405ef2389b705b0..3d3639593adc0ba509dd7bd63cfa68f77fb1936c 100644 (file)
@@ -21,7 +21,7 @@ set(YAMLCPP_EXTRA_ARGS
   -DYAML_CPP_BUILD_TESTS=OFF
   -DYAML_CPP_BUILD_TOOLS=OFF
   -DYAML_CPP_BUILD_CONTRIB=OFF
-  -DMSVC_SHARED_RT=OFF
+  -DYAML_MSVC_SHARED_RT=ON
 )
 
 ExternalProject_Add(external_yamlcpp
index 48a5008f356a8e256903d3407bbb72e0ad6444fb..19498e517063cf0be19f7f779c3fe13f445afe15 100644 (file)
@@ -3,19 +3,19 @@ index 95abbe2..4f14f30 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
 @@ -254,11 +254,11 @@ if(USE_STATIC_MSVC_RUNTIME)
- endif()\r
\r
- #adding PCRE\r
--find_package(PCRE)\r
-+#find_package(PCRE)\r
- if (PCRE_FOUND)\r
-       message(STATUS "SUCCESSFUL: PCRE found")\r
- else ()  # if pcre not found building its local copy from ./Externals\r
--      if (WIN32 OR APPLE)\r
-+      if (1)\r
-               message("WARNING: Native PCRE not found, taking PCRE from ./Externals")\r
-               add_definitions(-DPCRE_STATIC)\r
-               add_subdirectory(${EXTERNAL_LIBRARIES}/pcre)\r
+ endif()
+ #adding PCRE
+-find_package(PCRE)
++#find_package(PCRE)
+ if (PCRE_FOUND)
+       message(STATUS "SUCCESSFUL: PCRE found")
+ else ()  # if pcre not found building its local copy from ./Externals
+-      if (WIN32 OR APPLE)
++      if (1)
+               message("WARNING: Native PCRE not found, taking PCRE from ./Externals")
+               add_definitions(-DPCRE_STATIC)
+               add_subdirectory(${EXTERNAL_LIBRARIES}/pcre)
 diff --git a/DAEValidator/library/include/no_warning_begin b/DAEValidator/library/include/no_warning_begin
 index 7a69c32..defb315 100644
 --- a/DAEValidator/library/include/no_warning_begin
@@ -43,3 +43,34 @@ index 1f9a3ee..d151e9a 100644
          return isnan( value );
  #else
          return std::isnan(value);
+diff --git a/DAEValidator/CMakeLists.txt b/DAEValidator/CMakeLists.txt
+index 03ad540f..f7d05cfb 100644
+--- a/DAEValidator/CMakeLists.txt
++++ b/DAEValidator/CMakeLists.txt
+@@ -98,7 +98,7 @@ if (WIN32)
+ # C4710: 'function' : function not inlined
+ # C4711: function 'function' selected for inline expansion
+ # C4820: 'bytes' bytes padding added after construct 'member_name'
+-      set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP /Wall /WX /wd4505 /wd4514 /wd4592 /wd4710 /wd4711 /wd4820")
++      set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP /Wall /wd4505 /wd4514 /wd4592 /wd4710 /wd4711 /wd4820")
+ else ()
+       set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Werror")
+ endif ()
+diff --git a/DAEValidator/library/src/ArgumentParser.cpp b/DAEValidator/library/src/ArgumentParser.cpp
+index 897e4dcf..98a69ff1 100644
+--- a/DAEValidator/library/src/ArgumentParser.cpp
++++ b/DAEValidator/library/src/ArgumentParser.cpp
+@@ -6,10 +6,10 @@
+ using namespace std;
+-#ifdef _MSC_VER
+-#define NOEXCEPT _NOEXCEPT
+-#else
++#ifndef _NOEXCEPT
+ #define NOEXCEPT noexcept
++#else
++#define NOEXCEPT _NOEXCEPT
+ #endif
+ namespace opencollada
\ No newline at end of file
index 4f5abf8d5611ae25b1703fa7c03dfbdac73d710a..4bc0565754cd9e21ca01743366bc82385784980f 100644 (file)
@@ -396,6 +396,7 @@ endfunction()
 
 macro(setup_platform_linker_flags)
   set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}")
+  set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} ${PLATFORM_LINKFLAGS_RELEASE}")
   set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}")
 endmacro()
 
@@ -405,12 +406,15 @@ function(setup_liblinks
 
   set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}" PARENT_SCOPE)
   set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}" PARENT_SCOPE)
+  set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} ${PLATFORM_LINKFLAGS_RELEASE}" PARENT_SCOPE)
 
   set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}" PARENT_SCOPE)
   set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "${CMAKE_SHARED_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}" PARENT_SCOPE)
+  set(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE} ${PLATFORM_LINKFLAGS_RELEASE}" PARENT_SCOPE)
 
   set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}" PARENT_SCOPE)
   set(CMAKE_MODULE_LINKER_FLAGS_DEBUG "${CMAKE_MODULE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}" PARENT_SCOPE)
+  set(CMAKE_MODULE_LINKER_FLAGS_RELEASE "${CMAKE_MODULE_LINKER_FLAGS_RELEASE} ${PLATFORM_LINKFLAGS_RELEASE}" PARENT_SCOPE)
 
   # jemalloc must be early in the list, to be before pthread (see T57998)
   if(WITH_MEM_JEMALLOC)
index e2006be8fc2a3f84cf5354d0a93b5a6d27ee2149..c378a41fdcf373fec5a7dcac60241c934ed5fad6 100644 (file)
@@ -151,14 +151,14 @@ else()
   set(CMAKE_C_FLAGS     "${CMAKE_C_FLAGS} /nologo /J /Gd /MP /bigobj")
 endif()
 
-set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd /ZI")
-set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /MTd /ZI")
-set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MT")
-set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /MT")
-set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} /MT")
-set(CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_C_FLAGS_MINSIZEREL} /MT")
-set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MT")
-set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} /MT")
+set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd /ZI")
+set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /MDd /ZI")
+set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD")
+set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /MD")
+set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} /MD")
+set(CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_C_FLAGS_MINSIZEREL} /MD")
+set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD")
+set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} /MD")
 
 # JMC is available on msvc 15.8 (1915) and up
 if(MSVC_VERSION GREATER 1914 AND NOT MSVC_CLANG)
@@ -166,7 +166,8 @@ if(MSVC_VERSION GREATER 1914 AND NOT MSVC_CLANG)
 endif()
 
 set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} /SUBSYSTEM:CONSOLE /STACK:2097152 /INCREMENTAL:NO ")
-set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} /NODEFAULTLIB:msvcrt.lib /NODEFAULTLIB:msvcmrt.lib /NODEFAULTLIB:msvcurt.lib /NODEFAULTLIB:msvcrtd.lib ")
+set(PLATFORM_LINKFLAGS_RELEASE "/NODEFAULTLIB:libcmt.lib /NODEFAULTLIB:libcmtd.lib /NODEFAULTLIB:msvcrtd.lib")
+set(PLATFORM_LINKFLAGS_DEBUG "${PLATFORM_LINKFLAGS_DEBUG} /IGNORE:4099 /NODEFAULTLIB:libcmt.lib /NODEFAULTLIB:msvcrt.lib /NODEFAULTLIB:libcmtd.lib")
 
 # Ignore meaningless for us linker warnings.
 set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} /ignore:4049 /ignore:4217 /ignore:4221")
@@ -178,8 +179,6 @@ else()
   set(PLATFORM_LINKFLAGS "/MACHINE:IX86 /LARGEADDRESSAWARE ${PLATFORM_LINKFLAGS}")
 endif()
 
-set(PLATFORM_LINKFLAGS_DEBUG "${PLATFORM_LINKFLAGS_DEBUG} /IGNORE:4099 /NODEFAULTLIB:libcmt.lib /NODEFAULTLIB:libc.lib")
-
 if(NOT DEFINED LIBDIR)
 
   # Setup 64bit and 64bit windows systems
@@ -192,22 +191,19 @@ if(NOT DEFINED LIBDIR)
   # Can be 1910..1912
   if(MSVC_VERSION GREATER 1919)
     message(STATUS "Visual Studio 2019 detected.")
-    set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc14)
+    set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc15)
   elseif(MSVC_VERSION GREATER 1909)
     message(STATUS "Visual Studio 2017 detected.")
-    set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc14)
+    set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc15)
   elseif(MSVC_VERSION EQUAL 1900)
     message(STATUS "Visual Studio 2015 detected.")
-    set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc14)
-  else()
-    message(STATUS "Visual Studio 2013 detected.")
-    set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc12)
+    set(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/${LIBDIR_BASE}_vc15)
   endif()
 else()
   message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
 endif()
 if(NOT EXISTS "${LIBDIR}/")
-  message(FATAL_ERROR "Windows requires pre-compiled libs at: '${LIBDIR}'")
+  message(FATAL_ERROR "\n\nWindows requires pre-compiled libs at: '${LIBDIR}'. Please run `make update` in the blender source folder to obtain them.")
 endif()
 
 # Mark libdir as system headers with a lower warn level, to resolve some warnings
@@ -397,8 +393,8 @@ if(WITH_BOOST)
     set(BOOST_INCLUDE_DIR ${BOOST}/include)
     set(BOOST_LIBPATH ${BOOST}/lib)
     if(CMAKE_CL_64)
-      set(BOOST_POSTFIX "vc140-mt-s-x64-1_68.lib")
-      set(BOOST_DEBUG_POSTFIX "vc140-mt-sgd-x64-1_68.lib")
+      set(BOOST_POSTFIX "vc141-mt-x64-1_68.lib")
+      set(BOOST_DEBUG_POSTFIX "vc141-mt-gd-x64-1_68.lib")
     endif()
     set(BOOST_LIBRARIES
       optimized ${BOOST_LIBPATH}/libboost_date_time-${BOOST_POSTFIX}
@@ -503,8 +499,12 @@ if(WITH_OPENIMAGEDENOISE)
   set(OPENIMAGEDENOISE_LIBPATH ${LIBDIR}/OpenImageDenoise/lib)
   set(OPENIMAGEDENOISE_INCLUDE_DIRS ${OPENIMAGEDENOISE}/include)
   set(OPENIMAGEDENOISE_LIBRARIES
-    optimized ${OPENIMAGEDENOISE_LIBPATH}/OpenImageDenoise.lib ${OPENIMAGEDENOISE_LIBPATH}/common.lib ${OPENIMAGEDENOISE_LIBPATH}/mkldnn.lib
-    debug ${OPENIMAGEDENOISE_LIBPATH}/OpenImageDenoise_d.lib ${OPENIMAGEDENOISE_LIBPATH}/common_d.lib ${OPENIMAGEDENOISE_LIBPATH}/mkldnn_d.lib)
+    optimized ${OPENIMAGEDENOISE_LIBPATH}/OpenImageDenoise.lib
+    optimized ${OPENIMAGEDENOISE_LIBPATH}/common.lib
+    optimized ${OPENIMAGEDENOISE_LIBPATH}/mkldnn.lib
+    debug ${OPENIMAGEDENOISE_LIBPATH}/OpenImageDenoise_d.lib
+    debug ${OPENIMAGEDENOISE_LIBPATH}/common_d.lib
+    debug ${OPENIMAGEDENOISE_LIBPATH}/mkldnn_d.lib)
   set(OPENIMAGEDENOISE_DEFINITIONS)
 endif()
 
@@ -573,6 +573,9 @@ if(WITH_TBB)
   set(TBB_LIBRARIES optimized ${LIBDIR}/tbb/lib/tbb.lib debug ${LIBDIR}/tbb/lib/tbb_debug.lib)
   set(TBB_INCLUDE_DIR ${LIBDIR}/tbb/include)
   set(TBB_INCLUDE_DIRS ${TBB_INCLUDE_DIR})
+  if(WITH_TBB_MALLOC_PROXY)
+    add_definitions(-DWITH_TBB_MALLOC)
+  endif()
 else()
   if(WITH_OPENIMAGEDENOISE)
     message(STATUS "TBB disabled, also disabling OpenImageDenoise")
index 552e762526743f7f20b63024c44fbe36dc868cfb..b6157107c2348b0561f5adf2e9decf14c9c4eff9 100755 (executable)
@@ -48,7 +48,7 @@ def svn_update(args, release_version):
         # Windows checkout is usually handled by bat scripts since python3 to run
         # this script is bundled as part of the precompiled libraries. However it
         # is used by the buildbot.
-        lib_platform = "win64_vc14"
+        lib_platform = "win64_vc15"
     elif args.use_centos_libraries:
         lib_platform = "linux_centos7_x86_64"
     else:
index b838c7d7d19d8c271f6dd4374889bd05e723e505..8e43cda9eb77cb0855085e8975ab2eaf5d1ef588 100644 (file)
@@ -1,6 +1,5 @@
-if "%BUILD_VS_YEAR%"=="2015" set BUILD_VS_LIBDIRPOST=vc14
-if "%BUILD_VS_YEAR%"=="2017" set BUILD_VS_LIBDIRPOST=vc14
-if "%BUILD_VS_YEAR%"=="2019" set BUILD_VS_LIBDIRPOST=vc14
+if "%BUILD_VS_YEAR%"=="2017" set BUILD_VS_LIBDIRPOST=vc15
+if "%BUILD_VS_YEAR%"=="2019" set BUILD_VS_LIBDIRPOST=vc15
 
 set BUILD_VS_SVNDIR=win64_%BUILD_VS_LIBDIRPOST%
 set BUILD_VS_LIBDIR="%BLENDER_DIR%..\lib\%BUILD_VS_SVNDIR%"
@@ -10,7 +9,6 @@ if NOT "%verbose%" == "" (
 )
 if NOT EXIST %BUILD_VS_LIBDIR% (
        rem libs not found, but svn is on the system
-       echo 
        if not "%SVN%"=="" (
                echo.
                echo The required external libraries in %BUILD_VS_LIBDIR% are missing
@@ -55,5 +53,8 @@ if NOT EXIST %BUILD_VS_LIBDIR% (
        echo Error: Required libraries not found at "%BUILD_VS_LIBDIR%"
        echo This is needed for building, aborting!
        echo.
+       if "%SVN%"=="" (
+               echo This is most likely caused by svn.exe not being available.
+       )
        exit /b 1
 )
\ No newline at end of file
index 7419a0bc77ee1cbf86564aceddcd38c1f6abb140..0b6ae2d3c32ea90bac73b32f3d76b10c8f9522ee 100644 (file)
@@ -3,7 +3,7 @@ for %%X in (svn.exe) do (set SVN=%%~$PATH:X)
 for %%X in (cmake.exe) do (set CMAKE=%%~$PATH:X)
 for %%X in (ctest.exe) do (set CTEST=%%~$PATH:X)
 for %%X in (git.exe) do (set GIT=%%~$PATH:X)
-set PYTHON=%BLENDER_DIR%\..\lib\win64_vc14\python\37\bin\python.exe
+set PYTHON=%BLENDER_DIR%\..\lib\win64_vc15\python\37\bin\python.exe
 if NOT "%verbose%" == "" (
        echo svn    : "%SVN%"
        echo cmake  : "%CMAKE%"
index 43f8b61727d7a213c527f651892411a6051516b6..d19595bf0423388e25b934e70f8c2af25d0dd499 100644 (file)
@@ -1,5 +1,5 @@
-if EXIST %BLENDER_DIR%\..\lib\win64_vc14\llvm\bin\clang-format.exe (
-    set CF_PATH=..\lib\win64_vc14\llvm\bin
+if EXIST %BLENDER_DIR%\..\lib\win64_vc15\llvm\bin\clang-format.exe (
+    set CF_PATH=..\lib\win64_vc15\llvm\bin
     goto detect_done
 )
 
@@ -10,7 +10,7 @@ exit /b 1
 echo found clang-format in %CF_PATH%
 
 if EXIST %PYTHON% (
-    set PYTHON=%BLENDER_DIR%\..\lib\win64_vc14\python\37\bin\python.exe
+    set PYTHON=%BLENDER_DIR%\..\lib\win64_vc15\python\37\bin\python.exe
     goto detect_python_done
 )
 
index c0e609b9153cc25c7a4b304abb8d3d8c4dd6f294..c07a80bf0d564f636d3eb75a28f1b515221f95d5 100644 (file)
@@ -38,7 +38,7 @@ PROJECT_NAME           = Blender
 # could be handy for archiving the generated documentation or if some version
 # control system is used.
 
-PROJECT_NUMBER         = "V2.81"
+PROJECT_NUMBER         = "V2.82"
 
 # Using the PROJECT_BRIEF tag one can provide an optional one line description
 # for a project that appears at the top of each page and should give viewer a
index 6ad87c183aa2cf8a28c86003aa7a5edcf5079c7c..f41e9c6bef898be0cbf04f631cd8a5086c20800a 100644 (file)
@@ -1167,7 +1167,8 @@ OpenALDevice::OpenALDevice(DeviceSpecs specs, int buffersize, std::string name)
 
        if((!m_useMC && specs.channels > CHANNELS_STEREO) ||
                        specs.channels == CHANNELS_STEREO_LFE ||
-                       specs.channels == CHANNELS_SURROUND5)
+                       specs.channels == CHANNELS_SURROUND5 ||
+                       specs.channels > CHANNELS_SURROUND71)
                specs.channels = CHANNELS_STEREO;
 
        alGetError();
index 1af5e70bfc87d8dc4066c3a7de9b434ac0fa37a7..6558d2444f58f8a237e7e37704701bba5c4002e5 100644 (file)
@@ -18,6 +18,7 @@
 
 #include <cmath>
 #include <limits>
+#include <algorithm>
 
 AUD_NAMESPACE_BEGIN
 
@@ -97,12 +98,15 @@ void ChannelMapperReader::calculateMapping()
        for(int i = 0; i < m_source_channels * m_target_channels; i++)
                m_mapping[i] = 0;
 
-       const Channel* source_channels = CHANNEL_MAPS[m_source_channels - 1];
-       const Channel* target_channels = CHANNEL_MAPS[m_target_channels - 1];
+       const Channels source_channel_count = std::min(m_source_channels, CHANNELS_SURROUND71);
+       const Channels target_channel_count = std::min(m_target_channels, CHANNELS_SURROUND71);
+
+       const Channel* source_channels = CHANNEL_MAPS[source_channel_count - 1];
+       const Channel* target_channels = CHANNEL_MAPS[target_channel_count - 1];
 
        int lfe = -1;
 
-       for(int i = 0; i < m_target_channels; i++)
+       for(int i = 0; i < target_channel_count; i++)
        {
                if(target_channels[i] == CHANNEL_LFE)
                {
@@ -111,16 +115,16 @@ void ChannelMapperReader::calculateMapping()
                }
        }
 
-       const float* source_angles = CHANNEL_ANGLES[m_source_channels - 1];
-       const float* target_angles = CHANNEL_ANGLES[m_target_channels - 1];
+       const float* source_angles = CHANNEL_ANGLES[source_channel_count - 1];
+       const float* target_angles = CHANNEL_ANGLES[target_channel_count - 1];
 
-       if(m_source_channels == CHANNELS_MONO)
+       if(source_channel_count == CHANNELS_MONO)
                source_angles = &m_mono_angle;
 
        int channel_left, channel_right;
        float angle_left, angle_right, angle;
 
-       for(int i = 0; i < m_source_channels; i++)
+       for(int i = 0; i < source_channel_count; i++)
        {
                if(source_channels[i] == CHANNEL_LFE)
                {
@@ -134,7 +138,7 @@ void ChannelMapperReader::calculateMapping()
                angle_left = -2 * M_PI;
                angle_right = 2 * M_PI;
 
-               for(int j = 0; j < m_target_channels; j++)
+               for(int j = 0; j < target_channel_count; j++)
                {
                        if(j == lfe)
                                continue;
index 4493c68a88dbb4ceab76884b401831a43c5b482c..e6b561c39b94a9452e9d4781e27ed546676d6c41 100644 (file)
@@ -80,4 +80,3 @@ endif()
 if(WITH_QUADRIFLOW)
   add_subdirectory(quadriflow)
 endif()
-
index a32911568c571cecddfd7251d9ed7bd5882cf534..6f6bd7ec2cca8b63326edca26a14317d393a4a9f 100644 (file)
@@ -362,6 +362,9 @@ if(WITH_OPENCOLORIO)
     SYSTEM
     ${OPENCOLORIO_INCLUDE_DIRS}
   )
+  if(WIN32)
+    add_definitions(-DOpenColorIO_STATIC)
+  endif()
 endif()
 
 if(WITH_CYCLES_STANDALONE OR WITH_CYCLES_NETWORK OR WITH_CYCLES_CUBIN_COMPILER)
index 61ac24f7f07ff9b6e06a07e6f1f2d07d951e088a..013d86a560b89db72bec64bf4ce8ce746c1e02cb 100644 (file)
@@ -262,13 +262,13 @@ def register_passes(engine, scene, srl):
 
     if crl.use_pass_crypto_object:
         for i in range(0, crl.pass_crypto_depth, 2):
-            engine.register_pass(scene, srl, "CryptoObject" + '{:02d}'.format(i), 4, "RGBA", 'COLOR')
+            engine.register_pass(scene, srl, "CryptoObject" + '{:02d}'.format(i//2), 4, "RGBA", 'COLOR')
     if crl.use_pass_crypto_material:
         for i in range(0, crl.pass_crypto_depth, 2):
-            engine.register_pass(scene, srl, "CryptoMaterial" + '{:02d}'.format(i), 4, "RGBA", 'COLOR')
+            engine.register_pass(scene, srl, "CryptoMaterial" + '{:02d}'.format(i//2), 4, "RGBA", 'COLOR')
     if srl.cycles.use_pass_crypto_asset:
         for i in range(0, srl.cycles.pass_crypto_depth, 2):
-            engine.register_pass(scene, srl, "CryptoAsset" + '{:02d}'.format(i), 4, "RGBA", 'COLOR')
+            engine.register_pass(scene, srl, "CryptoAsset" + '{:02d}'.format(i//2), 4, "RGBA", 'COLOR')
 
     if crl.use_denoising or crl.denoising_store_passes:
         engine.register_pass(scene, srl, "Noisy Image", 4, "RGBA", 'COLOR')
index b0a12c258b9f86ef299c7a70687764dedf796162..dfd80d678fd0e1ca0982fa5427cbb64f0cbcea7b 100644 (file)
@@ -455,6 +455,12 @@ class CUDADevice : public Device {
         VLOG(1) << "Using precompiled kernel.";
         return cubin;
       }
+      const string ptx = path_get(string_printf("lib/%s_compute_%d%d.ptx", name, major, minor));
+      VLOG(1) << "Testing for pre-compiled kernel " << ptx << ".";
+      if (path_exists(ptx)) {
+        VLOG(1) << "Using precompiled kernel.";
+        return ptx;
+      }
     }
 
     const string common_cflags = compile_kernel_get_common_cflags(
index 782553e405c2b58f5ee5299ffb4e1bf1917da51a..4077a1ad516269659bbb1b89102458bce5f40298 100644 (file)
@@ -389,11 +389,20 @@ if(WITH_CYCLES_CUDA_BINARIES)
   set(cuda_cubins)
 
   macro(CYCLES_CUDA_KERNEL_ADD arch prev_arch name flags sources experimental)
-    set(cuda_cubin ${name}_${arch}.cubin)
+    if(${arch} MATCHES "compute_.*")
+      set(format "ptx")
+    else()
+      set(format "cubin")
+    endif()
+    set(cuda_file ${name}_${arch}.${format})
 
     set(kernel_sources ${sources})
     if(NOT ${prev_arch} STREQUAL "none")
-      set(kernel_sources ${kernel_sources} ${name}_${prev_arch}.cubin)
+      if(${prev_arch} MATCHES "compute_.*")
+        set(kernel_sources ${kernel_sources} ${name}_${prev_arch}.ptx)
+      else()
+        set(kernel_sources ${kernel_sources} ${name}_${prev_arch}.cubin)
+      endif()
     endif()
 
     set(cuda_kernel_src "/kernels/cuda/${name}.cu")
@@ -406,7 +415,7 @@ if(WITH_CYCLES_CUDA_BINARIES)
       -I ${CMAKE_CURRENT_SOURCE_DIR}/..
       -I ${CMAKE_CURRENT_SOURCE_DIR}/kernels/cuda
       --use_fast_math
-      -o ${CMAKE_CURRENT_BINARY_DIR}/${cuda_cubin})
+      -o ${CMAKE_CURRENT_BINARY_DIR}/${cuda_file})
 
     if(${experimental})
       set(cuda_flags ${cuda_flags} -D __KERNEL_EXPERIMENTAL__)
@@ -440,20 +449,21 @@ if(WITH_CYCLES_CUDA_BINARIES)
             -v
             -cuda-toolkit-dir "${CUDA_TOOLKIT_ROOT_DIR}"
         DEPENDS ${kernel_sources} cycles_cubin_cc)
+      set(cuda_file ${cuda_cubin})
     else()
       add_custom_command(
-        OUTPUT ${cuda_cubin}
+        OUTPUT ${cuda_file}
         COMMAND ${CUDA_NVCC_EXECUTABLE}
             -arch=${arch}
             ${CUDA_NVCC_FLAGS}
-            --cubin
+            --${format}
             ${CMAKE_CURRENT_SOURCE_DIR}${cuda_kernel_src}
             --ptxas-options="-v"
             ${cuda_flags}
         DEPENDS ${kernel_sources})
     endif()
-    delayed_install("${CMAKE_CURRENT_BINARY_DIR}" "${cuda_cubin}" ${CYCLES_INSTALL_PATH}/lib)
-    list(APPEND cuda_cubins ${cuda_cubin})
+    delayed_install("${CMAKE_CURRENT_BINARY_DIR}" "${cuda_file}" ${CYCLES_INSTALL_PATH}/lib)
+    list(APPEND cuda_cubins ${cuda_file})
 
     unset(cuda_debug_flags)
   endmacro()
index 41bbadb621df706be1f8dd95b0bf72c864684a0f..adc85881fe53b6839e43aa13c2e4835f1b9441bd 100644 (file)
@@ -76,9 +76,9 @@ ccl_device void kernel_filter_construct_transform(const ccl_global float *ccl_re
   filter_calculate_scale(feature_scale, use_time);
 
   /* === Generate the feature transformation. ===
-   * This transformation maps the num_features-dimentional feature space to a reduced feature
-   * (r-feature) space which generally has fewer dimensions. This mainly helps to prevent
-   * overfitting. */
+   * This transformation maps the num_features-dimensional feature space to a reduced feature
+   * (r-feature) space which generally has fewer dimensions.
+   * This mainly helps to prevent overfitting. */
   float feature_matrix[DENOISE_FEATURES * DENOISE_FEATURES];
   math_matrix_zero(feature_matrix, num_features);
   FOR_PIXEL_WINDOW
index 830444645d76e43acaadb9da05e701d0c8d13a97..5a124b5d73b7165c67b405fea7bdebb14f69125f 100644 (file)
@@ -73,9 +73,9 @@ ccl_device void kernel_filter_construct_transform(const float *ccl_restrict buff
   filter_calculate_scale_sse(feature_scale, use_time);
 
   /* === Generate the feature transformation. ===
-   * This transformation maps the num_features-dimentional feature space to a reduced feature
-   * (r-feature) space which generally has fewer dimensions. This mainly helps to prevent
-   * overfitting. */
+   * This transformation maps the num_features-dimensional feature space to a reduced feature
+   * (r-feature) space which generally has fewer dimensions.
+   * This mainly helps to prevent over-fitting. */
   float4 feature_matrix_sse[DENOISE_FEATURES * DENOISE_FEATURES];
   math_matrix_zero_sse(feature_matrix_sse, num_features);
   FOR_PIXEL_WINDOW_SSE
index 3b28f0551913cb7e7bc6b90eb41aae012531083b..aabaffc77324265dd3e3f2325b257631eed8367f 100644 (file)
@@ -24,8 +24,6 @@
 #include "GHOST_DisplayManagerWin32.h"
 #include "GHOST_Debug.h"
 
-#undef _WIN32_WINNT
-#define _WIN32_WINNT 0x501  // require Windows XP or newer
 #define WIN32_LEAN_AND_MEAN
 #include <windows.h>
 
index bdc403b947ebd2c695c7af02a9f0e586b479fddc..63a6b7224b52c33f87b823d5101057f7af45dd53 100644 (file)
@@ -39,15 +39,16 @@ GHOST_SystemPathsWin32::~GHOST_SystemPathsWin32()
 
 const GHOST_TUns8 *GHOST_SystemPathsWin32::getSystemDir(int, const char *versionstr) const
 {
-  static char knownpath[MAX_PATH * 3 + 128] = {
-      0}; /* 1 utf-16 might translante into 3 utf-8. 2 utf-16 translates into 4 utf-8*/
-  wchar_t knownpath_16[MAX_PATH];
+  /* 1 utf-16 might translante into 3 utf-8. 2 utf-16 translates into 4 utf-8*/
+  static char knownpath[MAX_PATH * 3 + 128] = {0};
+  PWSTR knownpath_16 = NULL;
 
-  HRESULT hResult = SHGetFolderPathW(
-      NULL, CSIDL_COMMON_APPDATA, NULL, SHGFP_TYPE_CURRENT, knownpath_16);
+  HRESULT hResult = SHGetKnownFolderPath(
+      FOLDERID_ProgramData, KF_FLAG_DEFAULT, NULL, &knownpath_16);
 
   if (hResult == S_OK) {
     conv_utf_16_to_8(knownpath_16, knownpath, MAX_PATH * 3);
+    CoTaskMemFree(knownpath_16);
     strcat(knownpath, "\\Blender Foundation\\Blender\\");
     strcat(knownpath, versionstr);
     return (GHOST_TUns8 *)knownpath;
@@ -59,12 +60,14 @@ const GHOST_TUns8 *GHOST_SystemPathsWin32::getSystemDir(int, const char *version
 const GHOST_TUns8 *GHOST_SystemPathsWin32::getUserDir(int, const char *versionstr) const
 {
   static char knownpath[MAX_PATH * 3 + 128] = {0};
-  wchar_t knownpath_16[MAX_PATH];
+  PWSTR knownpath_16 = NULL;
 
-  HRESULT hResult = SHGetFolderPathW(NULL, CSIDL_APPDATA, NULL, SHGFP_TYPE_CURRENT, knownpath_16);
+  HRESULT hResult = SHGetKnownFolderPath(
+      FOLDERID_RoamingAppData, KF_FLAG_DEFAULT, NULL, &knownpath_16);
 
   if (hResult == S_OK) {
     conv_utf_16_to_8(knownpath_16, knownpath, MAX_PATH * 3);
+    CoTaskMemFree(knownpath_16);
     strcat(knownpath, "\\Blender Foundation\\Blender\\");
     strcat(knownpath, versionstr);
     return (GHOST_TUns8 *)knownpath;
index 49d241df633f5edb4e09f1fe7b60e7cb9070f22b..f1924ea51bc6ff0f77ed35ecfa3b0db62b875f40 100644 (file)
@@ -28,8 +28,6 @@
 #  error WIN32 only!
 #endif  // WIN32
 
-#undef _WIN32_WINNT
-#define _WIN32_WINNT 0x501  // require Windows XP or newer
 #define WIN32_LEAN_AND_MEAN
 #include <windows.h>
 
index 1ca412fbccca64d06f48486c9fc286b261227a4d..cb2a04a8a87ec1293d5d6287b72534fd230d4133 100644 (file)
@@ -700,7 +700,7 @@ bool GHOST_SystemX11::processEvents(bool waitForEvent)
 
               for (int i = 0; i < (sizeof(modifiers) / sizeof(*modifiers)); i++) {
                 KeyCode kc = XKeysymToKeycode(m_display, modifiers[i]);
-                if (((xevent.xkeymap.key_vector[kc >> 3] >> (kc & 7)) & 1) != 0) {
+                if (kc != 0 && ((xevent.xkeymap.key_vector[kc >> 3] >> (kc & 7)) & 1) != 0) {
                   pushEvent(new GHOST_EventKey(getMilliSeconds(),
                                                GHOST_kEventKeyDown,
                                                window,
index b1b81337494d3d616143cbb8728098624c3ddec9..abf1172cea84a351e4320e1ffaca07b4295abcce 100644 (file)
 #  error WIN32 only!
 #endif  // WIN32
 
-/* require Windows XP or newer */
-#undef _WIN32_WINNT
-#define _WIN32_WINNT 0x501
-
 #define WIN32_LEAN_AND_MEAN
 #include <windows.h>
 #include <shlobj.h>
index 9ed339c9992374bad3892846f9f3668e8a1e3085..cee40924b7313810903958a92f7956f3721f952d 100644 (file)
   return YES;
 }
 
+- (BOOL)acceptsFirstMouse:(NSEvent *)event
+{
+  return YES;
+}
+
 // The trick to prevent Cocoa from complaining (beeping)
 - (void)keyDown:(NSEvent *)event
 {
index 2500691885c16d879d44547ab68c7602d54cea13..4f5a1db82caafd53cadf8373c413cd36014b56ee 100644 (file)
@@ -102,6 +102,17 @@ void evaluateLimit(OpenSubdiv_Evaluator *evaluator,
   evaluator->internal->eval_output->evaluateLimit(ptex_face_index, face_u, face_v, P, dPdu, dPdv);
 }
 
+void evaluatePatchesLimit(OpenSubdiv_Evaluator *evaluator,
+                          const OpenSubdiv_PatchCoord *patch_coords,
+                          const int num_patch_coords,
+                          float *P,
+                          float *dPdu,
+                          float *dPdv)
+{
+  evaluator->internal->eval_output->evaluatePatchesLimit(
+      patch_coords, num_patch_coords, P, dPdu, dPdv);
+}
+
 void evaluateVarying(OpenSubdiv_Evaluator *evaluator,
                      const int ptex_face_index,
                      float face_u,
@@ -137,6 +148,8 @@ void assignFunctionPointers(OpenSubdiv_Evaluator *evaluator)
   evaluator->evaluateLimit = evaluateLimit;
   evaluator->evaluateVarying = evaluateVarying;
   evaluator->evaluateFaceVarying = evaluateFaceVarying;
+
+  evaluator->evaluatePatchesLimit = evaluatePatchesLimit;
 }
 
 }  // namespace
index fa45c0119ec33a8c966b29fffc3b76c8ca5c6272..c5dd4509976967607aab4fa4e5ce8c0e5bf4e084 100644 (file)
@@ -54,109 +54,133 @@ using OpenSubdiv::Osd::CpuPatchTable;
 using OpenSubdiv::Osd::CpuVertexBuffer;
 using OpenSubdiv::Osd::PatchCoord;
 
-// TODO(sergey): Remove after official requirement bump for OSD version.
-#if OPENSUBDIV_VERSION_NUMBER >= 30200
-#  define OPENSUBDIV_HAS_FVAR_EVALUATION
-#else
-#  undef OPENSUBDIV_HAS_FVAR_EVALUATION
-#endif
-
 namespace opensubdiv_capi {
 
 namespace {
 
-// Helper class to wrap numerous of patch coordinates into a buffer.
-// Used to pass coordinates to the CPU evaluator. Other evaluators are not
-// supported.
-class PatchCoordBuffer : public vector<PatchCoord> {
+// Array implementation which stores small data on stack (or, rather, in the class itself).
+template<typename T, int kNumMaxElementsOnStack> class StackOrHeapArray {
  public:
-  static PatchCoordBuffer *Create(int size)
+  StackOrHeapArray()
+      : num_elements_(0), heap_elements_(NULL), num_heap_elements_(0), effective_elements_(NULL)
   {
-    PatchCoordBuffer *buffer = new PatchCoordBuffer();
-    buffer->resize(size);
-    return buffer;
   }
 
-  PatchCoord *BindCpuBuffer()
+  explicit StackOrHeapArray(int size) : StackOrHeapArray()
   {
-    return reinterpret_cast<PatchCoord *>(&(*this)[0]);
+    resize(size);
   }
 
-  int GetNumVertices()
+  ~StackOrHeapArray()
   {
-    return size();
+    delete[] heap_elements_;
   }
 
-  void UpdateData(const PatchCoord *patch_coords, int num_patch_coords)
+  int size() const
   {
-    memcpy(&(*this)[0],
-           reinterpret_cast<const void *>(patch_coords),
-           sizeof(PatchCoord) * num_patch_coords);
-  }
-};
+    return num_elements_;
+  };
 
-// Helper class to wrap single of patch coord into a buffer. Used to pass
-// coordinates to the CPU evaluator. Other evaluators are not supported.
-class SinglePatchCoordBuffer {
- public:
-  static SinglePatchCoordBuffer *Create()
+  T *data()
   {
-    return new SinglePatchCoordBuffer();
+    return effective_elements_;
   }
 
-  SinglePatchCoordBuffer()
+  void resize(int num_elements)
   {
+    const int old_num_elements = num_elements_;
+    num_elements_ = num_elements;
+    // Early output if allcoation size did not change, or allocation size is smaller.
+    // We never re-allocate, sacrificing some memory over performance.
+    if (old_num_elements >= num_elements) {
+      return;
+    }
+    // Simple case: no previously allocated buffer, can simply do one allocation.
+    if (effective_elements_ == NULL) {
+      effective_elements_ = allocate(num_elements);
+      return;
+    }
+    // Make new allocation, and copy elements if needed.
+    T *old_buffer = effective_elements_;
+    effective_elements_ = allocate(num_elements);
+    if (old_buffer != effective_elements_) {
+      memcpy(effective_elements_, old_buffer, sizeof(T) * min(old_num_elements, num_elements));
+    }
+    if (old_buffer != stack_elements_) {
+      delete[] old_buffer;
+    }
   }
 
-  explicit SinglePatchCoordBuffer(const PatchCoord &patch_coord) : patch_coord_(patch_coord)
+ protected:
+  T *allocate(int num_elements)
   {
+    if (num_elements < kNumMaxElementsOnStack) {
+      return stack_elements_;
+    }
+    heap_elements_ = new T[num_elements];
+    return heap_elements_;
   }
 
-  PatchCoord *BindCpuBuffer()
-  {
-    return &patch_coord_;
-  }
+  // Number of elements in the buffer.
+  int num_elements_;
 
-  int GetNumVertices()
+  // Elements which are allocated on a stack (or, rather, in the same allocation as the buffer
+  // itself).
+  // Is used as long as buffer is smaller than kNumMaxElementsOnStack.
+  T stack_elements_[kNumMaxElementsOnStack];
+
+  // Heap storage for buffer larger than kNumMaxElementsOnStack.
+  T *heap_elements_;
+  int num_heap_elements_;
+
+  // Depending on the current buffer size points to rither stack_elements_ or heap_elements_.
+  T *effective_elements_;
+};
+
+// 32 is a number of inner vertices along the patch size at subdivision level 6.
+typedef StackOrHeapArray<PatchCoord, 32 * 32> StackOrHeapPatchCoordArray;
+
+// Buffer which implements API required by OpenSubdiv and uses an existing memory as an underlying
+// storage.
+template<typename T> class RawDataWrapperBuffer {
+ public:
+  RawDataWrapperBuffer(T *data) : data_(data)
   {
-    return 1;
   }
 
-  void UpdateData(const PatchCoord &patch_coord)
+  T *BindCpuBuffer()
   {
-    patch_coord_ = patch_coord;
+    return data_;
   }
 
+  // TODO(sergey): Support UpdateData().
+
  protected:
-  PatchCoord patch_coord_;
+  T *data_;
 };
 
-// Helper class which is aimed to be used in cases when buffer is small enough
-// and better to be allocated in stack rather than in heap.
-//
-// TODO(sergey): Check if bare arrays could be used by CPU evaluator.
-template<int element_size, int num_vertices> class StackAllocatedBuffer {
+template<typename T> class RawDataWrapperVertexBuffer : public RawDataWrapperBuffer<T> {
  public:
-  static PatchCoordBuffer *Create(int /*size*/)
+  RawDataWrapperVertexBuffer(T *data, int num_vertices)
+      : RawDataWrapperBuffer<T>(data), num_vertices_(num_vertices)
   {
-    // TODO(sergey): Validate that requested size is smaller than static
-    // stack memory size.
-    return new StackAllocatedBuffer<element_size, num_vertices>();
-  }
-
-  float *BindCpuBuffer()
-  {
-    return &data_[0];
   }
 
   int GetNumVertices()
   {
-    return num_vertices;
+    return num_vertices_;
   }
 
-  // TODO(sergey): Support UpdateData().
  protected:
-  float data_[element_size * num_vertices];
+  int num_vertices_;
+};
+
+class ConstPatchCoordWrapperBuffer : public RawDataWrapperVertexBuffer<const PatchCoord> {
+ public:
+  ConstPatchCoordWrapperBuffer(const PatchCoord *data, int num_vertices)
+      : RawDataWrapperVertexBuffer(data, num_vertices)
+  {
+  }
 };
 
 template<typename EVAL_VERTEX_BUFFER,
@@ -217,11 +241,12 @@ class FaceVaryingVolatileEval {
                             device_context_);
   }
 
-  void evalPatch(const PatchCoord &patch_coord, float face_varying[2])
+  // NOTE: face_varying must point to a memory of at least float[2]*num_patch_coords.
+  void evalPatches(const PatchCoord *patch_coord, const int num_patch_coords, float *face_varying)
   {
-    StackAllocatedBuffer<2, 1> face_varying_data;
+    RawDataWrapperBuffer<float> face_varying_data(face_varying);
     BufferDescriptor face_varying_desc(0, 2, 2);
-    SinglePatchCoordBuffer patch_coord_buffer(patch_coord);
+    ConstPatchCoordWrapperBuffer patch_coord_buffer(patch_coord, num_patch_coords);
     const EVALUATOR *eval_instance = OpenSubdiv::Osd::GetEvaluator<EVALUATOR>(
         evaluator_cache_, src_face_varying_desc_, face_varying_desc, device_context_);
     EVALUATOR::EvalPatchesFaceVarying(src_face_varying_data_,
@@ -234,8 +259,6 @@ class FaceVaryingVolatileEval {
                                       face_varying_channel_,
                                       eval_instance,
                                       device_context_);
-    const float *refined_face_varying = face_varying_data.BindCpuBuffer();
-    memcpy(face_varying, refined_face_varying, sizeof(float) * 2);
   }
 
  protected:
@@ -297,7 +320,6 @@ class VolatileEvalOutput {
     src_data_ = SRC_VERTEX_BUFFER::Create(3, num_total_vertices, device_context_);
     src_varying_data_ = SRC_VERTEX_BUFFER::Create(3, num_total_vertices, device_context_);
     patch_table_ = PATCH_TABLE::Create(patch_table, device_context_);
-    patch_coords_ = NULL;
     vertex_stencils_ = convertToCompatibleStencilTable<STENCIL_TABLE>(vertex_stencils,
                                                                       device_context_);
     varying_stencils_ = convertToCompatibleStencilTable<STENCIL_TABLE>(varying_stencils,
@@ -398,74 +420,66 @@ class VolatileEvalOutput {
     }
   }
 
-  void evalPatchCoord(const PatchCoord &patch_coord, float P[3])
+  // NOTE: P must point to a memory of at least float[3]*num_patch_coords.
+  void evalPatches(const PatchCoord *patch_coord, const int num_patch_coords, float *P)
   {
-    StackAllocatedBuffer<6, 1> vertex_data;
-    // TODO(sergey): Varying data is interleaved in vertex array, so need to
-    // adjust stride if there is a varying data.
-    // BufferDescriptor vertex_desc(0, 3, 6);
-    BufferDescriptor vertex_desc(0, 3, 3);
-    SinglePatchCoordBuffer patch_coord_buffer(patch_coord);
+    RawDataWrapperBuffer<float> P_data(P);
+    // TODO(sergey): Support interleaved vertex-varying data.
+    BufferDescriptor P_desc(0, 3, 3);
+    ConstPatchCoordWrapperBuffer patch_coord_buffer(patch_coord, num_patch_coords);
     const EVALUATOR *eval_instance = OpenSubdiv::Osd::GetEvaluator<EVALUATOR>(
-        evaluator_cache_, src_desc_, vertex_desc, device_context_);
+        evaluator_cache_, src_desc_, P_desc, device_context_);
     EVALUATOR::EvalPatches(src_data_,
                            src_desc_,
-                           &vertex_data,
-                           vertex_desc,
+                           &P_data,
+                           P_desc,
                            patch_coord_buffer.GetNumVertices(),
                            &patch_coord_buffer,
                            patch_table_,
                            eval_instance,
                            device_context_);
-    const float *refined_vertices = vertex_data.BindCpuBuffer();
-    memcpy(P, refined_vertices, sizeof(float) * 3);
   }
 
-  void evalPatchesWithDerivatives(const PatchCoord &patch_coord,
-                                  float P[3],
-                                  float dPdu[3],
-                                  float dPdv[3])
+  // NOTE: P, dPdu, dPdv must point to a memory of at least float[3]*num_patch_coords.
+  void evalPatchesWithDerivatives(const PatchCoord *patch_coord,
+                                  const int num_patch_coords,
+                                  float *P,
+                                  float *dPdu,
+                                  float *dPdv)
   {
-    StackAllocatedBuffer<6, 1> vertex_data, derivatives;
-    // TODO(sergey): Varying data is interleaved in vertex array, so need to
-    // adjust stride if there is a varying data.
-    // BufferDescriptor vertex_desc(0, 3, 6);
-    BufferDescriptor vertex_desc(0, 3, 3);
-    BufferDescriptor du_desc(0, 3, 6), dv_desc(3, 3, 6);
-    SinglePatchCoordBuffer patch_coord_buffer(patch_coord);
+    assert(dPdu);
+    assert(dPdv);
+    RawDataWrapperBuffer<float> P_data(P);
+    RawDataWrapperBuffer<float> dPdu_data(dPdu), dPdv_data(dPdv);
+    // TODO(sergey): Support interleaved vertex-varying data.
+    BufferDescriptor P_desc(0, 3, 3);
+    BufferDescriptor dpDu_desc(0, 3, 3), pPdv_desc(0, 3, 3);
+    ConstPatchCoordWrapperBuffer patch_coord_buffer(patch_coord, num_patch_coords);
     const EVALUATOR *eval_instance = OpenSubdiv::Osd::GetEvaluator<EVALUATOR>(
-        evaluator_cache_, src_desc_, vertex_desc, du_desc, dv_desc, device_context_);
+        evaluator_cache_, src_desc_, P_desc, dpDu_desc, pPdv_desc, device_context_);
     EVALUATOR::EvalPatches(src_data_,
                            src_desc_,
-                           &vertex_data,
-                           vertex_desc,
-                           &derivatives,
-                           du_desc,
-                           &derivatives,
-                           dv_desc,
+                           &P_data,
+                           P_desc,
+                           &dPdu_data,
+                           dpDu_desc,
+                           &dPdv_data,
+                           pPdv_desc,
                            patch_coord_buffer.GetNumVertices(),
                            &patch_coord_buffer,
                            patch_table_,
                            eval_instance,
                            device_context_);
-    const float *refined_vertices = vertex_data.BindCpuBuffer();
-    memcpy(P, refined_vertices, sizeof(float) * 3);
-    if (dPdu != NULL || dPdv != NULL) {
-      const float *refined_derivatives = derivatives.BindCpuBuffer();
-      if (dPdu != NULL) {
-        memcpy(dPdu, refined_derivatives, sizeof(float) * 3);
-      }
-      if (dPdv != NULL) {
-        memcpy(dPdv, refined_derivatives + 3, sizeof(float) * 3);
-      }
-    }
   }
 
-  void evalPatchVarying(const PatchCoord &patch_coord, float varying[3])
+  // NOTE: varying must point to a memory of at least float[3]*num_patch_coords.
+  void evalPatchesVarying(const PatchCoord *patch_coord,
+                          const int num_patch_coords,
+                          float *varying)
   {
-    StackAllocatedBuffer<6, 1> varying_data;
+    RawDataWrapperBuffer<float> varying_data(varying);
     BufferDescriptor varying_desc(3, 3, 6);
-    SinglePatchCoordBuffer patch_coord_buffer(patch_coord);
+    ConstPatchCoordWrapperBuffer patch_coord_buffer(patch_coord, num_patch_coords);
     const EVALUATOR *eval_instance = OpenSubdiv::Osd::GetEvaluator<EVALUATOR>(
         evaluator_cache_, src_varying_desc_, varying_desc, device_context_);
     EVALUATOR::EvalPatchesVarying(src_varying_data_,
@@ -477,23 +491,22 @@ class VolatileEvalOutput {
                                   patch_table_,
                                   eval_instance,
                                   device_context_);
-    const float *refined_varying = varying_data.BindCpuBuffer();
-    memcpy(varying, refined_varying, sizeof(float) * 3);
   }
 
-  void evalPatchFaceVarying(const int face_varying_channel,
-                            const PatchCoord &patch_coord,
-                            float face_varying[2])
+  void evalPatchesFaceVarying(const int face_varying_channel,
+                              const PatchCoord *patch_coord,
+                              const int num_patch_coords,
+                              float face_varying[2])
   {
     assert(face_varying_channel >= 0);
     assert(face_varying_channel < face_varying_evaluators.size());
-    face_varying_evaluators[face_varying_channel]->evalPatch(patch_coord, face_varying);
+    face_varying_evaluators[face_varying_channel]->evalPatches(
+        patch_coord, num_patch_coords, face_varying);
   }
 
  private:
   SRC_VERTEX_BUFFER *src_data_;
   SRC_VERTEX_BUFFER *src_varying_data_;
-  PatchCoordBuffer *patch_coords_;
   PATCH_TABLE *patch_table_;
   BufferDescriptor src_desc_;
   BufferDescriptor src_varying_desc_;
@@ -510,6 +523,19 @@ class VolatileEvalOutput {
   DEVICE_CONTEXT *device_context_;
 };
 
+void convertPatchCoordsToArray(const OpenSubdiv_PatchCoord *patch_coords,
+                               const int num_patch_coords,
+                               const OpenSubdiv::Far::PatchMap *patch_map,
+                               StackOrHeapPatchCoordArray *array)
+{
+  array->resize(num_patch_coords);
+  for (int i = 0; i < num_patch_coords; ++i) {
+    const PatchTable::PatchHandle *handle = patch_map->FindPatch(
+        patch_coords[i].ptex_face, patch_coords[i].u, patch_coords[i].v);
+    (array->data())[i] = PatchCoord(*handle, patch_coords[i].u, patch_coords[i].v);
+  }
+}
+
 }  // namespace
 
 // Note: Define as a class instead of typedcef to make it possible
@@ -653,10 +679,10 @@ void CpuEvalOutputAPI::evaluateLimit(const int ptex_face_index,
   const PatchTable::PatchHandle *handle = patch_map_->FindPatch(ptex_face_index, face_u, face_v);
   PatchCoord patch_coord(*handle, face_u, face_v);
   if (dPdu != NULL || dPdv != NULL) {
-    implementation_->evalPatchesWithDerivatives(patch_coord, P, dPdu, dPdv);
+    implementation_->evalPatchesWithDerivatives(&patch_coord, 1, P, dPdu, dPdv);
   }
   else {
-    implementation_->evalPatchCoord(patch_coord, P);
+    implementation_->evalPatches(&patch_coord, 1, P);
   }
 }
 
@@ -671,7 +697,7 @@ void CpuEvalOutputAPI::evaluateVarying(const int ptex_face_index,
   assert(face_v <= 1.0f);
   const PatchTable::PatchHandle *handle = patch_map_->FindPatch(ptex_face_index, face_u, face_v);
   PatchCoord patch_coord(*handle, face_u, face_v);
-  implementation_->evalPatchVarying(patch_coord, varying);
+  implementation_->evalPatchesVarying(&patch_coord, 1, varying);
 }
 
 void CpuEvalOutputAPI::evaluateFaceVarying(const int face_varying_channel,
@@ -686,7 +712,24 @@ void CpuEvalOutputAPI::evaluateFaceVarying(const int face_varying_channel,
   assert(face_v <= 1.0f);
   const PatchTable::PatchHandle *handle = patch_map_->FindPatch(ptex_face_index, face_u, face_v);
   PatchCoord patch_coord(*handle, face_u, face_v);
-  implementation_->evalPatchFaceVarying(face_varying_channel, patch_coord, face_varying);
+  implementation_->evalPatchesFaceVarying(face_varying_channel, &patch_coord, 1, face_varying);
+}
+
+void CpuEvalOutputAPI::evaluatePatchesLimit(const OpenSubdiv_PatchCoord *patch_coords,
+                                            const int num_patch_coords,
+                                            float *P,
+                                            float *dPdu,
+                                            float *dPdv)
+{
+  StackOrHeapPatchCoordArray patch_coords_array;
+  convertPatchCoordsToArray(patch_coords, num_patch_coords, patch_map_, &patch_coords_array);
+  if (dPdu != NULL || dPdv != NULL) {
+    implementation_->evalPatchesWithDerivatives(
+        patch_coords_array.data(), num_patch_coords, P, dPdu, dPdv);
+  }
+  else {
+    implementation_->evalPatches(patch_coords_array.data(), num_patch_coords, P);
+  }
 }
 
 }  // namespace opensubdiv_capi
@@ -757,7 +800,6 @@ OpenSubdiv_EvaluatorInternal *openSubdiv_createEvaluatorInternal(
   }
   // Face warying stencil.
   vector<const StencilTable *> all_face_varying_stencils;
-#ifdef OPENSUBDIV_HAS_FVAR_EVALUATION
   all_face_varying_stencils.reserve(num_face_varying_channels);
   for (int face_varying_channel = 0; face_varying_channel < num_face_varying_channels;
        ++face_varying_channel) {
@@ -769,7 +811,6 @@ OpenSubdiv_EvaluatorInternal *openSubdiv_createEvaluatorInternal(
     all_face_varying_stencils.push_back(
         StencilTableFactory::Create(*refiner, face_varying_stencil_options));
   }
-#endif
   // Generate bi-cubic patch table for the limit surface.
   // TODO(sergey): Ideally we would want to expose end-cap settings via
   // C-API to make it more generic. Currently it matches old Blender's
@@ -800,7 +841,6 @@ OpenSubdiv_EvaluatorInternal *openSubdiv_createEvaluatorInternal(
       varying_stencils = table;
     }
   }
-#ifdef OPENSUBDIV_HAS_FVAR_EVALUATION
   for (int face_varying_channel = 0; face_varying_channel < num_face_varying_channels;
        ++face_varying_channel) {
     const StencilTable *table = StencilTableFactory::AppendLocalPointStencilTableFaceVarying(
@@ -813,7 +853,6 @@ OpenSubdiv_EvaluatorInternal *openSubdiv_createEvaluatorInternal(
       all_face_varying_stencils[face_varying_channel] = table;
     }
   }
-#endif
   // Create OpenSubdiv's CPU side evaluator.
   // TODO(sergey): Make it possible to use different evaluators.
   opensubdiv_capi::CpuEvalOutput *eval_output = new opensubdiv_capi::CpuEvalOutput(
index 7c963227d17d4fe84b05b134edc7de4351ec386e..392633944c6e20c22a4e8eb2cbfa30d61dfdee10 100644 (file)
@@ -26,6 +26,7 @@
 #include <opensubdiv/far/patchMap.h>
 #include <opensubdiv/far/patchTable.h>
 
+struct OpenSubdiv_PatchCoord;
 struct OpenSubdiv_TopologyRefiner;
 
 namespace opensubdiv_capi {
@@ -114,6 +115,18 @@ class CpuEvalOutputAPI {
                            float face_v,
                            float face_varying[2]);
 
+  // Batched evaluation of multiple input coordinates.
+
+  // Evaluate given ptex face at given bilinear coordinate.
+  // If derivatives are NULL, they will not be evaluated.
+  //
+  // NOTE: Output arrays must point to a memory of size float[3]*num_patch_coords.
+  void evaluatePatchesLimit(const OpenSubdiv_PatchCoord *patch_coords,
+                            const int num_patch_coords,
+                            float *P,
+                            float *dPdu,
+                            float *dPdv);
+
  protected:
   CpuEvalOutput *implementation_;
   OpenSubdiv::Far::PatchMap *patch_map_;
index 35eeb71deded58c932c81a1b8188bb94025c9758..e759c5f43b065cdeb2f8da1c1efd968ebc8e3caa 100644 (file)
@@ -58,6 +58,13 @@ typedef enum OpenSubdiv_FVarLinearInterpolation {
   OSD_FVAR_LINEAR_INTERPOLATION_ALL,
 } OpenSubdiv_FVarLinearInterpolation;
 
+typedef struct OpenSubdiv_PatchCoord {
+  int ptex_face;
+
+  // Parametric location on patch.
+  float u, v;
+} OpenSubdiv_PatchCoord;
+
 #ifdef __cplusplus
 }
 #endif
index ceb0c58feba689efd5ddd9c8e6cb10f3feba1976..1572d01b8510ec0a9fe6a07d285ec2a64cea788e 100644 (file)
@@ -24,6 +24,7 @@ extern "C" {
 #endif
 
 struct OpenSubdiv_EvaluatorInternal;
+struct OpenSubdiv_PatchCoord;
 struct OpenSubdiv_TopologyRefiner;
 
 typedef struct OpenSubdiv_Evaluator {
@@ -108,6 +109,19 @@ typedef struct OpenSubdiv_Evaluator {
                               float face_v,
                               float face_varying[2]);
 
+  // Batched evaluation of multiple input coordinates.
+
+  // Evaluate limit surface.
+  // If derivatives are NULL, they will not be evaluated.
+  //
+  // NOTE: Output arrays must point to a memory of size float[3]*num_patch_coords.
+  void (*evaluatePatchesLimit)(struct OpenSubdiv_Evaluator *evaluator,
+                               const struct OpenSubdiv_PatchCoord *patch_coords,
+                               const int num_patch_coords,
+                               float *P,
+                               float *dPdu,
+                               float *dPdv);
+
   // Internal storage for the use in this module only.
   //
   // This is where actual OpenSubdiv's evaluator is living.
index 412dade0f1a7a1525e9ac7751d96d67fee015c39..5d51e6c3dbc08bdcde990b7aac6405ced8c43748 100644 (file)
@@ -40,6 +40,12 @@ if(WITH_OPENVDB)
     ${OPENVDB_DEFINITIONS}
   )
 
+  if(WIN32)
+    add_definitions(
+      -DOPENVDB_STATICLIB
+    )
+  endif()
+
   if(WITH_OPENVDB_3_ABI_COMPATIBLE)
     add_definitions(
       -DOPENVDB_3_ABI_COMPATIBLE
index 4732b6d65f0f9f6356dc5a07060f078da8562320..f317b346eb8ae870fe9c0d72c8eabcb6748e7741 100644 (file)
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="602"
-   height="640"
-   id="svg2"
-   sodipodi:version="0.32"
-   inkscape:version="0.92.3 (2405546, 2018-03-11)"
-   version="1.0"
-   sodipodi:docname="blender_icons 2.81 - SMALL.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape"
-   style="display:inline;enable-background:new"
-   inkscape:export-filename="C:\Users\Andrzej Ambro┼╝\Desktop\ICONS - no backdrop.png"
-   inkscape:export-xdpi="96"
-   inkscape:export-ydpi="96">
-  <title
-     id="title49470">Blender icons v. 2.5.08</title>
-  <defs
-     id="defs4">
-    <inkscape:perspective
-       sodipodi:type="inkscape:persp3d"
-       inkscape:vp_x="0 : 320 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_z="602 : 320 : 1"
-       inkscape:persp3d-origin="301 : 213.33333 : 1"
-       id="perspective13101" />
-    <linearGradient
-       inkscape:collect="always"
-       id="linearGradient11146">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop11142" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop11144" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient18495"
-       inkscape:collect="always">
-      <stop
-         id="stop18497"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop18499"
-         offset="1"
-         style="stop-color:#000000;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient17265">
-      <stop
-         style="stop-color:#ffb769;stop-opacity:1;"
-         offset="0"
-         id="stop17267" />
-      <stop
-         style="stop-color:#ffeeaa;stop-opacity:0;"
-         offset="1"
-         id="stop17269" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient17073">
-      <stop
-         style="stop-color:#2561b7;stop-opacity:1;"
-         offset="0"
-         id="stop17075" />
-      <stop
-         style="stop-color:#f9fbff;stop-opacity:1;"
-         offset="1"
-         id="stop17077" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       id="linearGradient18134">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop18136" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop18138" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient16595">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop16597" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="1"
-         id="stop16599" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient16723">
-      <stop
-         style="stop-color:#343434;stop-opacity:0.61960787;"
-         offset="0"
-         id="stop16725" />
-      <stop
-         style="stop-color:#3d3d3d;stop-opacity:1;"
-         offset="1"
-         id="stop16727" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient106427">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop106429" />
-      <stop
-         style="stop-color:#030303;stop-opacity:1"
-         offset="1"
-         id="stop106431" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient29304">
-      <stop
-         style="stop-color:#11233f;stop-opacity:1;"
-         offset="0"
-         id="stop29306" />
-      <stop
-         style="stop-color:#162d50;stop-opacity:0;"
-         offset="1"
-         id="stop29308" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient24343">
-      <stop
-         id="stop24345"
-         offset="0"
-         style="stop-color:#184990;stop-opacity:1;" />
-      <stop
-         id="stop24347"
-         offset="1"
-         style="stop-color:#c1d5f3;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient25417">
-      <stop
-         id="stop25419"
-         offset="0"
-         style="stop-color:#60553b;stop-opacity:1;" />
-      <stop
-         id="stop25421"
-         offset="1"
-         style="stop-color:#b0a17f;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient25108">
-      <stop
-         id="stop25110"
-         offset="0"
-         style="stop-color:white;stop-opacity:1;" />
-      <stop
-         id="stop25112"
-         offset="1"
-         style="stop-color:#c6c6c6;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient43807">
-      <stop
-         style="stop-color:#e31b1b;stop-opacity:1;"
-         offset="0"
-         id="stop43809" />
-      <stop
-         style="stop-color:#930000;stop-opacity:1;"
-         offset="1"
-         id="stop43811" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient38256">
-      <stop
-         id="stop38258"
-         offset="0"
-         style="stop-color:#e7e0c7;stop-opacity:1;" />
-      <stop
-         id="stop38260"
-         offset="1"
-         style="stop-color:#f1eddf;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient40703">
-      <stop
-         style="stop-color:#143564;stop-opacity:1;"
-         offset="0"
-         id="stop40705" />
-      <stop
-         style="stop-color:#c1d7f8;stop-opacity:1;"
-         offset="1"
-         id="stop40707" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient35411">
-      <stop
-         id="stop35414"
-         offset="0"
-         style="stop-color:#2b5385;stop-opacity:1;" />
-      <stop
-         id="stop35416"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient28887">
-      <stop
-         style="stop-color:#2158a7;stop-opacity:1;"
-         offset="0"
-         id="stop28889" />
-      <stop
-         style="stop-color:#2f73d5;stop-opacity:0.19607843;"
-         offset="1"
-         id="stop28891" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient24144">
-      <stop
-         id="stop24146"
-         offset="0"
-         style="stop-color:#3d361a;stop-opacity:1;" />
-      <stop
-         style="stop-color:#d1c595;stop-opacity:1;"
-         offset="0.17958513"
-         id="stop24148" />
-      <stop
-         id="stop24150"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient24727">
-      <stop
-         style="stop-color:#3d361a;stop-opacity:1;"
-         offset="0"
-         id="stop24729" />
-      <stop
-         id="stop24731"
-         offset="0.77520341"
-         style="stop-color:#d1c595;stop-opacity:1;" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="1"
-         id="stop24733" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient24711">
-      <stop
-         style="stop-color:#3d361a;stop-opacity:1;"
-         offset="0"
-         id="stop24713" />
-      <stop
-         id="stop24715"
-         offset="0.21609697"
-         style="stop-color:#d1c595;stop-opacity:1;" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="1"
-         id="stop24717" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient24687">
-      <stop
-         style="stop-color:#3d361a;stop-opacity:1;"
-         offset="0"
-         id="stop24689" />
-      <stop
-         id="stop24691"
-         offset="0.59630167"
-         style="stop-color:#d1c595;stop-opacity:1;" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="1"
-         id="stop24693" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient42459">
-      <stop
-         style="stop-color:#e7dfab;stop-opacity:1;"
-         offset="0"
-         id="stop42461" />
-      <stop
-         style="stop-color:#af9d33;stop-opacity:1;"
-         offset="1"
-         id="stop42463" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient24143">
-      <stop
-         id="stop24145"
-         offset="0"
-         style="stop-color:#3d361a;stop-opacity:1;" />
-      <stop
-         style="stop-color:#d1c595;stop-opacity:1;"
-         offset="0.5"
-         id="stop24669" />
-      <stop
-         id="stop24147"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient24642">
-      <stop
-         style="stop-color:#d0dbe8;stop-opacity:1;"
-         offset="0"
-         id="stop24644" />
-      <stop
-         style="stop-color:#6ca3e9;stop-opacity:0;"
-         offset="1"
-         id="stop24646" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient24632">
-      <stop
-         style="stop-color:#28394f;stop-opacity:1;"
-         offset="0"
-         id="stop24634" />
-      <stop
-         id="stop24636"
-         offset="0.17637014"
-         style="stop-color:#0d386a;stop-opacity:0.78431374;" />
-      <stop
-         id="stop24638"
-         offset="0.35274029"
-         style="stop-color:#18437d;stop-opacity:0.47058824;" />
-      <stop
-         style="stop-color:#154e94;stop-opacity:0;"
-         offset="1"
-         id="stop24640" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient23974">
-      <stop
-         id="stop23976"
-         offset="0"
-         style="stop-color:#2561b7;stop-opacity:1;" />
-      <stop
-         id="stop23978"
-         offset="1"
-         style="stop-color:#f9fbff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient40983">
-      <stop
-         style="stop-color:#6a9ae0;stop-opacity:1;"
-         offset="0"
-         id="stop40985" />
-      <stop
-         style="stop-color:#5189db;stop-opacity:0;"
-         offset="1"
-         id="stop40987" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient8864">
-      <stop
-         id="stop8866"
-         offset="0"
-         style="stop-color:#b43214;stop-opacity:1;" />
-      <stop
-         id="stop8868"
-         offset="1"
-         style="stop-color:#e86830;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient22562">
-      <stop
-         style="stop-color:#001e50;stop-opacity:1;"
-         offset="0"
-         id="stop22564" />
-      <stop
-         style="stop-color:#1e3e70;stop-opacity:0;"
-         offset="1"
-         id="stop22566" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient22882">
-      <stop
-         style="stop-color:#323232;stop-opacity:0;"
-         offset="0"
-         id="stop22884" />
-      <stop
-         id="stop22886"
-         offset="0.21233012"
-         style="stop-color:#323232;stop-opacity:0.49803922;" />
-      <stop
-         id="stop22888"
-         offset="0.54086536"
-         style="stop-color:#323232;stop-opacity:1;" />
-      <stop
-         style="stop-color:#323232;stop-opacity:0.49803922;"
-         offset="0.83381736"
-         id="stop22890" />
-      <stop
-         style="stop-color:#323232;stop-opacity:0;"
-         offset="1"
-         id="stop22892" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient21609">
-      <stop
-         id="stop21611"
-         offset="0"
-         style="stop-color:black;stop-opacity:1" />
-      <stop
-         id="stop21613"
-         offset="1"
-         style="stop-color:white;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient21609"
-       id="linearGradient20961"
-       gradientUnits="userSpaceOnUse"
-       x1="162"
-       y1="103.71875"
-       x2="165"
-       y2="103.75" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask20957">
-      <rect
-         y="101"
-         x="162"
-         height="5"
-         width="8"
-         id="rect20959"
-         style="fill:url(#linearGradient20961);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.29999995;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
-    </mask>
-    <linearGradient
-       id="linearGradient18105">
-      <stop
-         id="stop18107"
-         offset="0"
-         style="stop-color:#162d50;stop-opacity:1" />
-      <stop
-         id="stop18109"
-         offset="1"
-         style="stop-color:#1e3e70;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient21327">
-      <stop
-         style="stop-color:#1e3e70;stop-opacity:1;"
-         offset="0"
-         id="stop21329" />
-      <stop
-         style="stop-color:#1e3e70;stop-opacity:0;"
-         offset="1"
-         id="stop21331" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient18821">
-      <stop
-         style="stop-color:#fc6b58;stop-opacity:1;"
-         offset="0"
-         id="stop18823" />
-      <stop
-         style="stop-color:#fc6b58;stop-opacity:0;"
-         offset="1"
-         id="stop18825" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient29149">
-      <stop
-         id="stop29151"
-         offset="0"
-         style="stop-color:#76adff;stop-opacity:1;" />
-      <stop
-         id="stop29153"
-         offset="1"
-         style="stop-color:#a5c9ff;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient15437">
-      <stop
-         id="stop15439"
-         offset="0"
-         style="stop-color:#20529e;stop-opacity:1;" />
-      <stop
-         id="stop15441"
-         offset="1"
-         style="stop-color:#1d3f71;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient15425">
-      <stop
-         style="stop-color:#8c0000;stop-opacity:1;"
-         offset="0"
-         id="stop15427" />
-      <stop
-         style="stop-color:#c80000;stop-opacity:0;"
-         offset="1"
-         id="stop15429" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient14262">
-      <stop
-         id="stop14264"
-         offset="0"
-         style="stop-color:#2661b6;stop-opacity:1;" />
-      <stop
-         id="stop14266"
-         offset="1"
-         style="stop-color:#c1d7f8;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient5060">
-      <stop
-         id="stop5062"
-         offset="0"
-         style="stop-color:black;stop-opacity:1;" />
-      <stop
-         id="stop5064"
-         offset="1"
-         style="stop-color:#000000;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient27957">
-      <stop
-         id="stop27959"
-         offset="0"
-         style="stop-color:#ffffff;stop-opacity:0;" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0.59290552"
-         id="stop27963" />
-      <stop
-         id="stop27961"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient20756">
-      <stop
-         style="stop-color:#932200;stop-opacity:1;"
-         offset="0"
-         id="stop20758" />
-      <stop
-         style="stop-color:#f8420a;stop-opacity:1;"
-         offset="1"
-         id="stop20760" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient47130">
-      <stop
-         style="stop-color:#ed7b00;stop-opacity:1;"
-         offset="0"
-         id="stop47132" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop47134" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient32842">
-      <stop
-         style="stop-color:#183e75;stop-opacity:1;"
-         offset="0"
-         id="stop32844" />
-      <stop
-         style="stop-color:#1d3f71;stop-opacity:0;"
-         offset="1"
-         id="stop32846" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient20973">
-      <stop
-         id="stop20975"
-         offset="0"
-         style="stop-color:#15ff00;stop-opacity:1;" />
-      <stop
-         id="stop20977"
-         offset="1"
-         style="stop-color:#15ff00;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient20962">
-      <stop
-         style="stop-color:#00a8ff;stop-opacity:1;"
-         offset="0"
-         id="stop20965" />
-      <stop
-         style="stop-color:#00a8ff;stop-opacity:0;"
-         offset="1"
-         id="stop20967" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient20036">
-      <stop
-         style="stop-color:#ffb55e;stop-opacity:1;"
-         offset="0"
-         id="stop20038" />
-      <stop
-         style="stop-color:#ff8400;stop-opacity:0;"
-         offset="1"
-         id="stop20040" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10585">
-      <stop
-         id="stop10587"
-         offset="0.0000000"
-         style="stop-color:#d7d7d7;stop-opacity:1.0000000;" />
-      <stop
-         id="stop10595"
-         offset="1.0000000"
-         style="stop-color:#000000;stop-opacity:1.0000000;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient31320">
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="0"
-         id="stop31322" />
-      <stop
-         style="stop-color:white;stop-opacity:0;"
-         offset="1"
-         id="stop31324" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient23178">
-      <stop
-         style="stop-color:#ff992b;stop-opacity:1;"
-         offset="0"
-         id="stop23180" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop23182" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient13938">
-      <stop
-         id="stop13940"
-         offset="0"
-         style="stop-color:#6e0c00;stop-opacity:1;" />
-      <stop
-         id="stop13942"
-         offset="1"
-         style="stop-color:#ee3800;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient14232">
-      <stop
-         style="stop-color:#fff32a;stop-opacity:1;"
-         offset="0"
-         id="stop14234" />
-      <stop
-         style="stop-color:#fff551;stop-opacity:0;"
-         offset="1"
-         id="stop14236" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient14418">
-      <stop
-         id="stop14420"
-         offset="0"
-         style="stop-color:#fa2509;stop-opacity:1;" />
-      <stop
-         id="stop14422"
-         offset="1"
-         style="stop-color:#fa2509;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient1610"
-       id="linearGradient18670"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1.2078427,0,0,1.0516432,-357.40769,69.427229)"
-       x1="362.28571"
-       y1="-45.098213"
-       x2="352.46426"
-       y2="-54.124699" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask18666">
-      <rect
-         y="6"
-         x="62.921577"
-         height="14.000001"
-         width="15.098035"
-         id="rect18668"
-         style="fill:url(#linearGradient18670);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
-    </mask>
-    <linearGradient
-       id="linearGradient31456">
-      <stop
-         style="stop-color:#2b1600;stop-opacity:1;"
-         offset="0"
-         id="stop31458" />
-      <stop
-         style="stop-color:#6e3900;stop-opacity:0;"
-         offset="1"
-         id="stop31460" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient19425">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop19427" />
-      <stop
-         id="stop19431"
-         offset="0.63109845"
-         style="stop-color:#fffffe;stop-opacity:0.65789473;" />
-      <stop
-         style="stop-color:#fffffe;stop-opacity:0.0000000;"
-         offset="1.0000000"
-         id="stop19429" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient9030">
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="0"
-         id="stop9032" />
-      <stop
-         style="stop-color:white;stop-opacity:0;"
-         offset="1"
-         id="stop9034" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient1610">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542">
-      <stop
-         id="stop37544"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient30124">
-      <stop
-         style="stop-color:#1d4a8c;stop-opacity:1;"
-         offset="0"
-         id="stop30126" />
-      <stop
-         style="stop-color:#c1d4f2;stop-opacity:1;"
-         offset="1"
-         id="stop30128" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient15893">
-      <stop
-         style="stop-color:#2968c3;stop-opacity:1;"
-         offset="0"
-         id="stop15895" />
-      <stop
-         id="stop15897"
-         offset="0.37679368"
-         style="stop-color:#b5ccf0;stop-opacity:1;" />
-      <stop
-         style="stop-color:#b5ccf0;stop-opacity:1;"
-         offset="0.59786767"
-         id="stop15899" />
-      <stop
-         style="stop-color:#2968c3;stop-opacity:1;"
-         offset="1"
-         id="stop15901" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient32998">
-      <stop
-         style="stop-color:#2968c3;stop-opacity:1;"
-         offset="0"
-         id="stop33000" />
-      <stop
-         style="stop-color:#c1d7f8;stop-opacity:1;"
-         offset="1"
-         id="stop33002" />
-    </linearGradient>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask17570">
-      <path
-         sodipodi:nodetypes="cccc"
-         style="fill:#ffffff;fill-rule:evenodd;stroke:none"
-         d="m -44,358 0,14 14,-14 -14,0 z"
-         id="path17572" />
-    </mask>
-    <clipPath
-       clipPathUnits="userSpaceOnUse"
-       id="clipPath18524">
-      <path
-         inkscape:export-ydpi="90"
-         inkscape:export-xdpi="90"
-         inkscape:export-filename="C:\Documents and Settings\Tata\Pulpit\BLENDER ICONSET\blender-cvs-windows\.blender\.blender\icons\jendrzych's iconset.png"
-         transform="matrix(-1.1435655,0,0,1.1436475,512.11415,45.72091)"
-         d="m 262,78.5 a 3.5,3.5 0 1 1 -7,0 3.5,3.5 0 1 1 7,0 z"
-         sodipodi:ry="3.5"
-         sodipodi:rx="3.5"
-         sodipodi:cy="78.5"
-         sodipodi:cx="258.5"
-         id="path18526"
-         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.69954133;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;display:inline"
-         sodipodi:type="arc"
-         inkscape:transform-center-x="-6.3473305"
-         inkscape:transform-center-y="-6.3853012" />
-    </clipPath>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask18634">
-      <path
-         sodipodi:nodetypes="ccccscc"
-         style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.80000001;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
-         d="m 207,134 0,14 11,0 0,-7.5625 c -1.97252,-0.24738 -3.5,-1.89814 -3.5,-3.9375 0,-0.94675 0.35614,-1.81444 0.90625,-2.5 L 207,134 z"
-         id="path18636" />
-    </mask>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient1610"
-       id="linearGradient69009"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1.5466301,0,0,1.6489946,-293.01107,-16.485383)"
-       x1="582"
-       y1="49.294117"
-       x2="582"
-       y2="47.176472" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask69005">
-      <rect
-         style="fill:url(#linearGradient69009);fill-opacity:1;display:inline"
-         id="rect69007"
-         width="24.746082"
-         height="26.383913"
-         x="596.30127"
-         y="39.580433" />
-    </mask>
-    <linearGradient
-       id="linearGradient39155">
-      <stop
-         id="stop39157"
-         offset="0"
-         style="stop-color:white;stop-opacity:1;" />
-      <stop
-         id="stop39159"
-         offset="1"
-         style="stop-color:#dadada;stop-opacity:1;" />
-    </linearGradient>
-    <clipPath
-       clipPathUnits="userSpaceOnUse"
-       id="clipPath24168">
-      <path
-         style="fill:#808080;fill-rule:evenodd;stroke:none"
-         d="m 134.27489,222.11125 c -3.9249,-6.46418 -7.61892,6.46419 -11.54381,0 l 0,0 -1.61614,0 0,8.77283 14.77608,0 0,-8.77283 -1.61613,0 z"
-         id="path24170"
-         sodipodi:nodetypes="cccccccc" />
-    </clipPath>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient1610"
-       id="linearGradient25381"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(-1,21)"
-       x1="342"
-       y1="288.5"
-       x2="344.5"
-       y2="288.5" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient1610"
-       id="linearGradient25383"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(0,1,-1,0,638,-40)"
-       x1="342"
-       y1="288.5"
-       x2="344.5"
-       y2="288.5" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient1610"
-       id="linearGradient25385"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-1,0,0,-1,699,599)"
-       x1="342"
-       y1="288.5"
-       x2="344.5"
-       y2="288.5" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient1610"
-       id="linearGradient25387"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(0,-1,1,0,60,660)"
-       x1="342"
-       y1="288.5"
-       x2="344.5"
-       y2="288.5" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask25369">
-      <g
-         id="g25371"
-         transform="translate(-21,-21)">
-        <path
-           style="fill:url(#linearGradient25381);fill-rule:evenodd;stroke:none"
-           d="m 341,302 8,8 -8,8 0,-16 z"
-           id="path25373"
-           sodipodi:nodetypes="cccc"
-           inkscape:transform-center-x="4" />
-        <path
-           inkscape:transform-center-y="-4"
-           sodipodi:nodetypes="cccc"
-           id="path25375"
-           d="m 357,302 -8,8 -8,-8 16,0 z"
-           style="fill:url(#linearGradient25383);fill-rule:evenodd;stroke:none" />
-        <path
-           inkscape:transform-center-x="-4"
-           sodipodi:nodetypes="cccc"
-           id="path25377"
-           d="m 357,318 -8,-8 8,-8 0,16 z"
-           style="fill:url(#linearGradient25385);fill-rule:evenodd;stroke:none" />
-        <path
-           inkscape:transform-center-y="4"
-           sodipodi:nodetypes="cccc"
-           id="path25379"
-           d="m 341,318 8,-8 8,8 -16,0 z"
-           style="fill:url(#linearGradient25387);fill-rule:evenodd;stroke:none" />
-      </g>
-    </mask>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient1610"
-       id="linearGradient32298"
-       gradientUnits="userSpaceOnUse"
-       x1="-117.5"
-       y1="431.5"
-       x2="-119.5"
-       y2="429.5"
-       gradientTransform="translate(258,-96.99999)" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask32294">
-      <rect
-         y="323"
-         x="134"
-         height="16"
-         width="9"
-         id="rect32296"
-         style="fill:url(#linearGradient32298);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
-    </mask>
-    <linearGradient
-       id="linearGradient1610-7-6">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-4-1" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-0-4" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-4-2">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-8-3" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-8-2" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient35411-4-27">
-      <stop
-         id="stop35414-0-9"
-         offset="0"
-         style="stop-color:#2b5385;stop-opacity:1;" />
-      <stop
-         id="stop35416-9-5"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient35411-8-1-3">
-      <stop
-         id="stop35414-2-7-1"
-         offset="0"
-         style="stop-color:#2b5385;stop-opacity:1;" />
-      <stop
-         id="stop35416-4-1-2"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient23974-5-4">
-      <stop
-         id="stop23976-27-1"
-         offset="0"
-         style="stop-color:#2561b7;stop-opacity:1;" />
-      <stop
-         id="stop23978-6-1"
-         offset="1"
-         style="stop-color:#f9fbff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient1610-8">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-7" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-4" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-77">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-9" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-31" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient23974-4">
-      <stop
-         id="stop23976-20"
-         offset="0"
-         style="stop-color:#2561b7;stop-opacity:1;" />
-      <stop
-         id="stop23978-9"
-         offset="1"
-         style="stop-color:#f9fbff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-37">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-2" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-60" />
-    </linearGradient>
-    <clipPath
-       clipPathUnits="userSpaceOnUse"
-       id="clipPath42711">
-      <rect
-         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:3;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
-         id="rect42713"
-         width="8.7252884"
-         height="17.464855"
-         x="127.4093"
-         y="214.76154" />
-    </clipPath>
-    <linearGradient
-       id="linearGradient1610-7409">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-488" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-2" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient40578-4-8-5">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop40580-8-9-5" />
-      <stop
-         style="stop-color:black;stop-opacity:0;"
-         offset="1"
-         id="stop40582-6-8-17" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient58334-1">
-      <stop
-         id="stop58336-5"
-         offset="0.0000000"
-         style="stop-color:#ffffff;stop-opacity:0.87628865;" />
-      <stop
-         id="stop58338-27"
-         offset="1.0000000"
-         style="stop-color:#fffffe;stop-opacity:0.0000000;" />
-    </linearGradient>
-    <clipPath
-       clipPathUnits="userSpaceOnUse"
-       id="clipPath43368-7">
-      <rect
-         style="fill:#999999;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.79999995;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
-         id="rect43370-1"
-         width="16"
-         height="16"
-         x="-79"
-         y="26" />
-    </clipPath>
-    <linearGradient
-       id="linearGradient1610-6">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-18" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-92" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-9">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-5" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-43" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient21327-6">
-      <stop
-         style="stop-color:#1e3e70;stop-opacity:1;"
-         offset="0"
-         id="stop21329-3" />
-      <stop
-         style="stop-color:#1e3e70;stop-opacity:0;"
-         offset="1"
-         id="stop21331-4" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient20055-8-4">
-      <stop
-         id="stop20057-8-0"
-         offset="0"
-         style="stop-color:#0a2a5a;stop-opacity:1;" />
-      <stop
-         id="stop20059-2-0"
-         offset="1"
-         style="stop-color:#3771c8;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient39088">
-      <stop
-         id="stop39090"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop39092"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient1610-83">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-24" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-11" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-95">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-10" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-64" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-3">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-87" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-42" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient1610-83"
-       id="linearGradient38961"
-       gradientUnits="userSpaceOnUse"
-       x1="488.5"
-       y1="568"
-       x2="495"
-       y2="568" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask38956">
-      <rect
-         style="fill:url(#linearGradient38961);stroke:none;stroke-width:2.79999995;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
-         id="rect38958"
-         width="16"
-         height="12"
-         x="488"
-         y="560"
-         rx="0"
-         ry="0" />
-    </mask>
-    <linearGradient
-       id="linearGradient319-46">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-03" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-62" />
-    </linearGradient>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask40306">
-      <path
-         id="path40308"
-         d="m 195,11.00001 0,14 0.5,0 13.5,-13.5 0,-0.5 -14,0 z"
-         style="fill:#ffffff;fill-rule:evenodd;stroke:none"
-         sodipodi:nodetypes="cccccc" />
-    </mask>
-    <linearGradient
-       id="linearGradient1610-74-9-1">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-0-8-7" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-9-3-1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient58334-8-6-5">
-      <stop
-         id="stop58336-8-9-2"
-         offset="0.0000000"
-         style="stop-color:#ffffff;stop-opacity:0.87628865;" />
-      <stop
-         id="stop58338-24-8-7"
-         offset="1.0000000"
-         style="stop-color:#fffffe;stop-opacity:0.0000000;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-5-6-2">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-761-2-1" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-89-7-6" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient13973-3-7-8">
-      <stop
-         style="stop-color:#3c4c18;stop-opacity:1;"
-         offset="0"
-         id="stop13975-1-8-9" />
-      <stop
-         style="stop-color:#9aff31;stop-opacity:0;"
-         offset="1"
-         id="stop13977-2-0-2" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-3-0-7-6">
-      <stop
-         id="stop37544-1-6-6-5"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-2-1-7-0"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-34-8-7-0">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-11-9-8-0" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-38-3-1-6" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-7-6-7-4">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-81-3-2-4" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-6-7-5-6" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient44627">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop44629" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop44631" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient44627"
-       id="linearGradient43826"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(-1,0,0,1,1444.9824,-215)"
-       x1="689.47357"
-       y1="427"
-       x2="685.47357"
-       y2="427" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask43822">
-      <rect
-         y="208"
-         x="754"
-         height="9"
-         width="12"
-         id="rect43824"
-         style="opacity:0.93999993;fill:url(#linearGradient43826);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new" />
-    </mask>
-    <linearGradient
-       id="linearGradient37542-7">
-      <stop
-         id="stop37544-40"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-94"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-5">
-      <stop
-         id="stop37544-1"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-71"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-9-71">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-5-1" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-43-5" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient23974-2">
-      <stop
-         id="stop23976-2"
-         offset="0"
-         style="stop-color:#2561b7;stop-opacity:1;" />
-      <stop
-         id="stop23978-1"
-         offset="1"
-         style="stop-color:#f9fbff;stop-opacity:1" />
-    </linearGradient>
-    <clipPath
-       clipPathUnits="userSpaceOnUse"
-       id="clipPath28964">
-      <path
-         inkscape:export-ydpi="90"
-         inkscape:export-xdpi="90"
-         inkscape:export-filename="C:\Documents and Settings\Tata\Pulpit\4.png"
-         sodipodi:nodetypes="ccccc"
-         style="fill:url(#linearGradient28968);fill-opacity:1;fill-rule:evenodd;stroke:none;display:inline;enable-background:new"
-         d="m 117.50984,228.63415 0,-15.01646 11.71735,5.49383 0,15.38271 -11.71735,-5.86008 z"
-         id="path28966" />
-    </clipPath>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient23974-2"
-       id="linearGradient28968"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1.4646688,0,0,1.4650206,168.77325,-157.03253)"
-       x1="-38.103703"
-       y1="266.11719"
-       x2="-20.826464"
-       y2="253.23859" />
-    <linearGradient
-       id="linearGradient319-5">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-761" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-8" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient37542-7"
-       id="linearGradient29424"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1.4646688,0,0,1.4650206,168.77325,-157.03253)"
-       x1="-26.511335"
-       y1="257.99881"
-       x2="-30.075666"
-       y2="259.87677" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask29419">
-      <path
-         id="path29422"
-         d="m 117.50984,229.00041 0,-15.38272 11.71735,5.49383 0,15.74897 -11.71735,-5.86008 z"
-         style="opacity:0.5;fill:url(#linearGradient29424);fill-opacity:1;fill-rule:evenodd;stroke:none;display:inline;enable-background:new"
-         sodipodi:nodetypes="ccccc"
-         inkscape:export-filename="C:\Documents and Settings\Tata\Pulpit\4.png"
-         inkscape:export-xdpi="90"
-         inkscape:export-ydpi="90" />
-    </mask>
-    <linearGradient
-       id="linearGradient21327-6-8">
-      <stop
-         style="stop-color:#1e3e70;stop-opacity:1;"
-         offset="0"
-         id="stop21329-3-4" />
-      <stop
-         style="stop-color:#1e3e70;stop-opacity:0;"
-         offset="1"
-         id="stop21331-4-0" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient28526">
-      <stop
-         id="stop28528"
-         offset="0"
-         style="stop-color:#2561b7;stop-opacity:1;" />
-      <stop
-         id="stop28530"
-         offset="1"
-         style="stop-color:#f9fbff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-62">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-90" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-4" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient1610-52-2">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-32-8" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-46-8" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-62-8">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-90-6" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-4-0" />
-    </linearGradient>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient1610-52-2"
-       id="radialGradient29805"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(0.94105289,0.01178942,-0.01073736,0.8570756,238.4669,249.70522)"
-       cx="-30.028414"
-       cy="19.425121"
-       fx="-30.028414"
-       fy="19.425121"
-       r="7" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask29801">
-      <rect
-         style="opacity:0.35;color:#000000;fill:url(#radialGradient29805);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.71217775;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new"
-         id="rect29803"
-         width="15"
-         height="16"
-         x="204"
-         y="257" />
-    </mask>
-    <clipPath
-       clipPathUnits="userSpaceOnUse"
-       id="clipPath50172-0">
-      <path
-         id="path50174-8"
-         d="m -177.34375,498 a 1.001098,1.001098 0 1 0 0.0937,2 l 3.65625,0 -4.25,5.9375 a 1.0001,1.0001 0 0 0 -0.1875,0.59375 l 0,0.5 a 1.0001,1.0001 0 0 0 1,1 L -171.75,508 a 1.0001,1.0001 0 1 0 0,-2 l -3.6875,0.0312 4.25,-5.9375 A 1.0001,1.0001 0 0 0 -171,499.5 l 0,-0.5 a 1.0001,1.0001 0 0 0 -1,-1 l -5.25,0 a 1.0001,1.0001 0 0 0 -0.0937,0 z"
-         style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:#ff0000;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" />
-    </clipPath>
-    <radialGradient
-       id="radialGradient16142-7"
-       cx="20.892099"
-       cy="64.567902"
-       r="5.257"
-       fx="20.892099"
-       fy="64.567902"
-       gradientUnits="userSpaceOnUse">
-      <stop
-         offset="0"
-         style="stop-color:#F0F0F0"
-         id="stop16144-4" />
-      <stop
-         offset="1"
-         style="stop-color:#474747"
-         id="stop16146-0" />
+<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" width="602" height="640" id="svg2" sodipodi:version="0.32" inkscape:version="0.92.3 (2405546, 2018-03-11)" version="1.0" sodipodi:docname="blender_icons 2.81 - SMALL.svg" inkscape:output_extension="org.inkscape.output.svg.inkscape" style="display:inline;enable-background:new" inkscape:export-filename="C:\Users\Andrzej Ambro┼╝\Desktop\ICONS - no backdrop.png" inkscape:export-xdpi="96" inkscape:export-ydpi="96">
+  
+  <defs id="defs4">
+    
+    <linearGradient inkscape:collect="always" id="linearGradient11146">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop11142"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop11144"/>
+    </linearGradient>
+    <linearGradient id="linearGradient18495" inkscape:collect="always">
+      <stop id="stop18497" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop18499" offset="1" style="stop-color:#000000;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient17265">
+      <stop style="stop-color:#ffb769;stop-opacity:1;" offset="0" id="stop17267"/>
+      <stop style="stop-color:#ffeeaa;stop-opacity:0;" offset="1" id="stop17269"/>
+    </linearGradient>
+    <linearGradient id="linearGradient17073">
+      <stop style="stop-color:#2561b7;stop-opacity:1;" offset="0" id="stop17075"/>
+      <stop style="stop-color:#f9fbff;stop-opacity:1;" offset="1" id="stop17077"/>
+    </linearGradient>
+    <linearGradient inkscape:collect="always" id="linearGradient18134">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop18136"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop18138"/>
+    </linearGradient>
+    <linearGradient id="linearGradient16595">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop16597"/>
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="1" id="stop16599"/>
+    </linearGradient>
+    <linearGradient id="linearGradient16723">
+      <stop style="stop-color:#343434;stop-opacity:0.61960787;" offset="0" id="stop16725"/>
+      <stop style="stop-color:#3d3d3d;stop-opacity:1;" offset="1" id="stop16727"/>
+    </linearGradient>
+    <linearGradient id="linearGradient106427">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop106429"/>
+      <stop style="stop-color:#030303;stop-opacity:1" offset="1" id="stop106431"/>
+    </linearGradient>
+    <linearGradient id="linearGradient29304">
+      <stop style="stop-color:#11233f;stop-opacity:1;" offset="0" id="stop29306"/>
+      <stop style="stop-color:#162d50;stop-opacity:0;" offset="1" id="stop29308"/>
+    </linearGradient>
+    <linearGradient id="linearGradient24343">
+      <stop id="stop24345" offset="0" style="stop-color:#184990;stop-opacity:1;"/>
+      <stop id="stop24347" offset="1" style="stop-color:#c1d5f3;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient25417">
+      <stop id="stop25419" offset="0" style="stop-color:#60553b;stop-opacity:1;"/>
+      <stop id="stop25421" offset="1" style="stop-color:#b0a17f;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient25108">
+      <stop id="stop25110" offset="0" style="stop-color:white;stop-opacity:1;"/>
+      <stop id="stop25112" offset="1" style="stop-color:#c6c6c6;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient43807">
+      <stop style="stop-color:#e31b1b;stop-opacity:1;" offset="0" id="stop43809"/>
+      <stop style="stop-color:#930000;stop-opacity:1;" offset="1" id="stop43811"/>
+    </linearGradient>
+    <linearGradient id="linearGradient38256">
+      <stop id="stop38258" offset="0" style="stop-color:#e7e0c7;stop-opacity:1;"/>
+      <stop id="stop38260" offset="1" style="stop-color:#f1eddf;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient40703">
+      <stop style="stop-color:#143564;stop-opacity:1;" offset="0" id="stop40705"/>
+      <stop style="stop-color:#c1d7f8;stop-opacity:1;" offset="1" id="stop40707"/>
+    </linearGradient>
+    <linearGradient id="linearGradient35411">
+      <stop id="stop35414" offset="0" style="stop-color:#2b5385;stop-opacity:1;"/>
+      <stop id="stop35416" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient28887">
+      <stop style="stop-color:#2158a7;stop-opacity:1;" offset="0" id="stop28889"/>
+      <stop style="stop-color:#2f73d5;stop-opacity:0.19607843;" offset="1" id="stop28891"/>
+    </linearGradient>
+    <linearGradient id="linearGradient24144">
+      <stop id="stop24146" offset="0" style="stop-color:#3d361a;stop-opacity:1;"/>
+      <stop style="stop-color:#d1c595;stop-opacity:1;" offset="0.17958513" id="stop24148"/>
+      <stop id="stop24150" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient24727">
+      <stop style="stop-color:#3d361a;stop-opacity:1;" offset="0" id="stop24729"/>
+      <stop id="stop24731" offset="0.77520341" style="stop-color:#d1c595;stop-opacity:1;"/>
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="1" id="stop24733"/>
+    </linearGradient>
+    <linearGradient id="linearGradient24711">
+      <stop style="stop-color:#3d361a;stop-opacity:1;" offset="0" id="stop24713"/>
+      <stop id="stop24715" offset="0.21609697" style="stop-color:#d1c595;stop-opacity:1;"/>
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="1" id="stop24717"/>
+    </linearGradient>
+    <linearGradient id="linearGradient24687">
+      <stop style="stop-color:#3d361a;stop-opacity:1;" offset="0" id="stop24689"/>
+      <stop id="stop24691" offset="0.59630167" style="stop-color:#d1c595;stop-opacity:1;"/>
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="1" id="stop24693"/>
+    </linearGradient>
+    <linearGradient id="linearGradient42459">
+      <stop style="stop-color:#e7dfab;stop-opacity:1;" offset="0" id="stop42461"/>
+      <stop style="stop-color:#af9d33;stop-opacity:1;" offset="1" id="stop42463"/>
+    </linearGradient>
+    <linearGradient id="linearGradient24143">
+      <stop id="stop24145" offset="0" style="stop-color:#3d361a;stop-opacity:1;"/>
+      <stop style="stop-color:#d1c595;stop-opacity:1;" offset="0.5" id="stop24669"/>
+      <stop id="stop24147" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient24642">
+      <stop style="stop-color:#d0dbe8;stop-opacity:1;" offset="0" id="stop24644"/>
+      <stop style="stop-color:#6ca3e9;stop-opacity:0;" offset="1" id="stop24646"/>
+    </linearGradient>
+    <linearGradient id="linearGradient24632">
+      <stop style="stop-color:#28394f;stop-opacity:1;" offset="0" id="stop24634"/>
+      <stop id="stop24636" offset="0.17637014" style="stop-color:#0d386a;stop-opacity:0.78431374;"/>
+      <stop id="stop24638" offset="0.35274029" style="stop-color:#18437d;stop-opacity:0.47058824;"/>
+      <stop style="stop-color:#154e94;stop-opacity:0;" offset="1" id="stop24640"/>
+    </linearGradient>
+    <linearGradient id="linearGradient23974">
+      <stop id="stop23976" offset="0" style="stop-color:#2561b7;stop-opacity:1;"/>
+      <stop id="stop23978" offset="1" style="stop-color:#f9fbff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient40983">
+      <stop style="stop-color:#6a9ae0;stop-opacity:1;" offset="0" id="stop40985"/>
+      <stop style="stop-color:#5189db;stop-opacity:0;" offset="1" id="stop40987"/>
+    </linearGradient>
+    <linearGradient id="linearGradient8864">
+      <stop id="stop8866" offset="0" style="stop-color:#b43214;stop-opacity:1;"/>
+      <stop id="stop8868" offset="1" style="stop-color:#e86830;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient22562">
+      <stop style="stop-color:#001e50;stop-opacity:1;" offset="0" id="stop22564"/>
+      <stop style="stop-color:#1e3e70;stop-opacity:0;" offset="1" id="stop22566"/>
+    </linearGradient>
+    <linearGradient id="linearGradient22882">
+      <stop style="stop-color:#323232;stop-opacity:0;" offset="0" id="stop22884"/>
+      <stop id="stop22886" offset="0.21233012" style="stop-color:#323232;stop-opacity:0.49803922;"/>
+      <stop id="stop22888" offset="0.54086536" style="stop-color:#323232;stop-opacity:1;"/>
+      <stop style="stop-color:#323232;stop-opacity:0.49803922;" offset="0.83381736" id="stop22890"/>
+      <stop style="stop-color:#323232;stop-opacity:0;" offset="1" id="stop22892"/>
+    </linearGradient>
+    <linearGradient id="linearGradient21609">
+      <stop id="stop21611" offset="0" style="stop-color:black;stop-opacity:1"/>
+      <stop id="stop21613" offset="1" style="stop-color:white;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient21609" id="linearGradient20961" gradientUnits="userSpaceOnUse" x1="162" y1="103.71875" x2="165" y2="103.75"/>
+    
+    <linearGradient id="linearGradient18105">
+      <stop id="stop18107" offset="0" style="stop-color:#162d50;stop-opacity:1"/>
+      <stop id="stop18109" offset="1" style="stop-color:#1e3e70;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient21327">
+      <stop style="stop-color:#1e3e70;stop-opacity:1;" offset="0" id="stop21329"/>
+      <stop style="stop-color:#1e3e70;stop-opacity:0;" offset="1" id="stop21331"/>
+    </linearGradient>
+    <linearGradient id="linearGradient18821">
+      <stop style="stop-color:#fc6b58;stop-opacity:1;" offset="0" id="stop18823"/>
+      <stop style="stop-color:#fc6b58;stop-opacity:0;" offset="1" id="stop18825"/>
+    </linearGradient>
+    <linearGradient id="linearGradient29149">
+      <stop id="stop29151" offset="0" style="stop-color:#76adff;stop-opacity:1;"/>
+      <stop id="stop29153" offset="1" style="stop-color:#a5c9ff;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient15437">
+      <stop id="stop15439" offset="0" style="stop-color:#20529e;stop-opacity:1;"/>
+      <stop id="stop15441" offset="1" style="stop-color:#1d3f71;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient15425">
+      <stop style="stop-color:#8c0000;stop-opacity:1;" offset="0" id="stop15427"/>
+      <stop style="stop-color:#c80000;stop-opacity:0;" offset="1" id="stop15429"/>
+    </linearGradient>
+    <linearGradient id="linearGradient14262">
+      <stop id="stop14264" offset="0" style="stop-color:#2661b6;stop-opacity:1;"/>
+      <stop id="stop14266" offset="1" style="stop-color:#c1d7f8;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient5060">
+      <stop id="stop5062" offset="0" style="stop-color:black;stop-opacity:1;"/>
+      <stop id="stop5064" offset="1" style="stop-color:#000000;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient27957">
+      <stop id="stop27959" offset="0" style="stop-color:#ffffff;stop-opacity:0;"/>
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0.59290552" id="stop27963"/>
+      <stop id="stop27961" offset="1" style="stop-color:#ffffff;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient20756">
+      <stop style="stop-color:#932200;stop-opacity:1;" offset="0" id="stop20758"/>
+      <stop style="stop-color:#f8420a;stop-opacity:1;" offset="1" id="stop20760"/>
+    </linearGradient>
+    <linearGradient id="linearGradient47130">
+      <stop style="stop-color:#ed7b00;stop-opacity:1;" offset="0" id="stop47132"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop47134"/>
+    </linearGradient>
+    <linearGradient id="linearGradient32842">
+      <stop style="stop-color:#183e75;stop-opacity:1;" offset="0" id="stop32844"/>
+      <stop style="stop-color:#1d3f71;stop-opacity:0;" offset="1" id="stop32846"/>
+    </linearGradient>
+    <linearGradient id="linearGradient20973">
+      <stop id="stop20975" offset="0" style="stop-color:#15ff00;stop-opacity:1;"/>
+      <stop id="stop20977" offset="1" style="stop-color:#15ff00;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient20962">
+      <stop style="stop-color:#00a8ff;stop-opacity:1;" offset="0" id="stop20965"/>
+      <stop style="stop-color:#00a8ff;stop-opacity:0;" offset="1" id="stop20967"/>
+    </linearGradient>
+    <linearGradient id="linearGradient20036">
+      <stop style="stop-color:#ffb55e;stop-opacity:1;" offset="0" id="stop20038"/>
+      <stop style="stop-color:#ff8400;stop-opacity:0;" offset="1" id="stop20040"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10585">
+      <stop id="stop10587" offset="0.0000000" style="stop-color:#d7d7d7;stop-opacity:1.0000000;"/>
+      <stop id="stop10595" offset="1.0000000" style="stop-color:#000000;stop-opacity:1.0000000;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient31320">
+      <stop style="stop-color:white;stop-opacity:1;" offset="0" id="stop31322"/>
+      <stop style="stop-color:white;stop-opacity:0;" offset="1" id="stop31324"/>
+    </linearGradient>
+    <linearGradient id="linearGradient23178">
+      <stop style="stop-color:#ff992b;stop-opacity:1;" offset="0" id="stop23180"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop23182"/>
+    </linearGradient>
+    <linearGradient id="linearGradient13938">
+      <stop id="stop13940" offset="0" style="stop-color:#6e0c00;stop-opacity:1;"/>
+      <stop id="stop13942" offset="1" style="stop-color:#ee3800;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient14232">
+      <stop style="stop-color:#fff32a;stop-opacity:1;" offset="0" id="stop14234"/>
+      <stop style="stop-color:#fff551;stop-opacity:0;" offset="1" id="stop14236"/>
+    </linearGradient>
+    <linearGradient id="linearGradient14418">
+      <stop id="stop14420" offset="0" style="stop-color:#fa2509;stop-opacity:1;"/>
+      <stop id="stop14422" offset="1" style="stop-color:#fa2509;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient1610" id="linearGradient18670" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1.2078427,0,0,1.0516432,-357.40769,69.427229)" x1="362.28571" y1="-45.098213" x2="352.46426" y2="-54.124699"/>
+    
+    <linearGradient id="linearGradient31456">
+      <stop style="stop-color:#2b1600;stop-opacity:1;" offset="0" id="stop31458"/>
+      <stop style="stop-color:#6e3900;stop-opacity:0;" offset="1" id="stop31460"/>
+    </linearGradient>
+    <linearGradient id="linearGradient19425">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop19427"/>
+      <stop id="stop19431" offset="0.63109845" style="stop-color:#fffffe;stop-opacity:0.65789473;"/>
+      <stop style="stop-color:#fffffe;stop-opacity:0.0000000;" offset="1.0000000" id="stop19429"/>
+    </linearGradient>
+    <linearGradient id="linearGradient9030">
+      <stop style="stop-color:white;stop-opacity:1;" offset="0" id="stop9032"/>
+      <stop style="stop-color:white;stop-opacity:0;" offset="1" id="stop9034"/>
+    </linearGradient>
+    <linearGradient id="linearGradient1610">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542">
+      <stop id="stop37544" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient30124">
+      <stop style="stop-color:#1d4a8c;stop-opacity:1;" offset="0" id="stop30126"/>
+      <stop style="stop-color:#c1d4f2;stop-opacity:1;" offset="1" id="stop30128"/>
+    </linearGradient>
+    <linearGradient id="linearGradient15893">
+      <stop style="stop-color:#2968c3;stop-opacity:1;" offset="0" id="stop15895"/>
+      <stop id="stop15897" offset="0.37679368" style="stop-color:#b5ccf0;stop-opacity:1;"/>
+      <stop style="stop-color:#b5ccf0;stop-opacity:1;" offset="0.59786767" id="stop15899"/>
+      <stop style="stop-color:#2968c3;stop-opacity:1;" offset="1" id="stop15901"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073"/>
+    </linearGradient>
+    <linearGradient id="linearGradient32998">
+      <stop style="stop-color:#2968c3;stop-opacity:1;" offset="0" id="stop33000"/>
+      <stop style="stop-color:#c1d7f8;stop-opacity:1;" offset="1" id="stop33002"/>
+    </linearGradient>
+    
+    
+    
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient1610" id="linearGradient69009" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1.5466301,0,0,1.6489946,-293.01107,-16.485383)" x1="582" y1="49.294117" x2="582" y2="47.176472"/>
+    
+    <linearGradient id="linearGradient39155">
+      <stop id="stop39157" offset="0" style="stop-color:white;stop-opacity:1;"/>
+      <stop id="stop39159" offset="1" style="stop-color:#dadada;stop-opacity:1;"/>
+    </linearGradient>
+    
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient1610" id="linearGradient25381" gradientUnits="userSpaceOnUse" gradientTransform="translate(-1,21)" x1="342" y1="288.5" x2="344.5" y2="288.5"/>
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient1610" id="linearGradient25383" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0,1,-1,0,638,-40)" x1="342" y1="288.5" x2="344.5" y2="288.5"/>
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient1610" id="linearGradient25385" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-1,0,0,-1,699,599)" x1="342" y1="288.5" x2="344.5" y2="288.5"/>
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient1610" id="linearGradient25387" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0,-1,1,0,60,660)" x1="342" y1="288.5" x2="344.5" y2="288.5"/>
+    
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient1610" id="linearGradient32298" gradientUnits="userSpaceOnUse" x1="-117.5" y1="431.5" x2="-119.5" y2="429.5" gradientTransform="translate(258,-96.99999)"/>
+    
+    <linearGradient id="linearGradient1610-7-6">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-4-1"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-0-4"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-4-2">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-8-3"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-8-2"/>
+    </linearGradient>
+    <linearGradient id="linearGradient35411-4-27">
+      <stop id="stop35414-0-9" offset="0" style="stop-color:#2b5385;stop-opacity:1;"/>
+      <stop id="stop35416-9-5" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient35411-8-1-3">
+      <stop id="stop35414-2-7-1" offset="0" style="stop-color:#2b5385;stop-opacity:1;"/>
+      <stop id="stop35416-4-1-2" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient23974-5-4">
+      <stop id="stop23976-27-1" offset="0" style="stop-color:#2561b7;stop-opacity:1;"/>
+      <stop id="stop23978-6-1" offset="1" style="stop-color:#f9fbff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient1610-8">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-7"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-4"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-77">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-9"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-31"/>
+    </linearGradient>
+    <linearGradient id="linearGradient23974-4">
+      <stop id="stop23976-20" offset="0" style="stop-color:#2561b7;stop-opacity:1;"/>
+      <stop id="stop23978-9" offset="1" style="stop-color:#f9fbff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-37">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-2"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-60"/>
+    </linearGradient>
+    
+    <linearGradient id="linearGradient1610-7409">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-488"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-2"/>
+    </linearGradient>
+    <linearGradient id="linearGradient40578-4-8-5">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop40580-8-9-5"/>
+      <stop style="stop-color:black;stop-opacity:0;" offset="1" id="stop40582-6-8-17"/>
+    </linearGradient>
+    <linearGradient id="linearGradient58334-1">
+      <stop id="stop58336-5" offset="0.0000000" style="stop-color:#ffffff;stop-opacity:0.87628865;"/>
+      <stop id="stop58338-27" offset="1.0000000" style="stop-color:#fffffe;stop-opacity:0.0000000;"/>
+    </linearGradient>
+    
+    <linearGradient id="linearGradient1610-6">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-18"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-92"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-9">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-5"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-43"/>
+    </linearGradient>
+    <linearGradient id="linearGradient21327-6">
+      <stop style="stop-color:#1e3e70;stop-opacity:1;" offset="0" id="stop21329-3"/>
+      <stop style="stop-color:#1e3e70;stop-opacity:0;" offset="1" id="stop21331-4"/>
+    </linearGradient>
+    <linearGradient id="linearGradient20055-8-4">
+      <stop id="stop20057-8-0" offset="0" style="stop-color:#0a2a5a;stop-opacity:1;"/>
+      <stop id="stop20059-2-0" offset="1" style="stop-color:#3771c8;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient39088">
+      <stop id="stop39090" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop39092" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient1610-83">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-24"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-11"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-95">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-10"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-64"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-3">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-87"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-42"/>
+    </linearGradient>
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient1610-83" id="linearGradient38961" gradientUnits="userSpaceOnUse" x1="488.5" y1="568" x2="495" y2="568"/>
+    
+    <linearGradient id="linearGradient319-46">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-03"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-62"/>
+    </linearGradient>
+    
+    <linearGradient id="linearGradient1610-74-9-1">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-0-8-7"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-9-3-1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient58334-8-6-5">
+      <stop id="stop58336-8-9-2" offset="0.0000000" style="stop-color:#ffffff;stop-opacity:0.87628865;"/>
+      <stop id="stop58338-24-8-7" offset="1.0000000" style="stop-color:#fffffe;stop-opacity:0.0000000;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-5-6-2">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-761-2-1"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-89-7-6"/>
+    </linearGradient>
+    <linearGradient id="linearGradient13973-3-7-8">
+      <stop style="stop-color:#3c4c18;stop-opacity:1;" offset="0" id="stop13975-1-8-9"/>
+      <stop style="stop-color:#9aff31;stop-opacity:0;" offset="1" id="stop13977-2-0-2"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-3-0-7-6">
+      <stop id="stop37544-1-6-6-5" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-2-1-7-0" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-34-8-7-0">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-11-9-8-0"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-38-3-1-6"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-7-6-7-4">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-81-3-2-4"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-6-7-5-6"/>
+    </linearGradient>
+    <linearGradient id="linearGradient44627">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop44629"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop44631"/>
+    </linearGradient>
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient44627" id="linearGradient43826" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-1,0,0,1,1444.9824,-215)" x1="689.47357" y1="427" x2="685.47357" y2="427"/>
+    
+    <linearGradient id="linearGradient37542-7">
+      <stop id="stop37544-40" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-94" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-5">
+      <stop id="stop37544-1" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-71" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-9-71">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-5-1"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-43-5"/>
+    </linearGradient>
+    <linearGradient id="linearGradient23974-2">
+      <stop id="stop23976-2" offset="0" style="stop-color:#2561b7;stop-opacity:1;"/>
+      <stop id="stop23978-1" offset="1" style="stop-color:#f9fbff;stop-opacity:1"/>
+    </linearGradient>
+    
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient23974-2" id="linearGradient28968" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1.4646688,0,0,1.4650206,168.77325,-157.03253)" x1="-38.103703" y1="266.11719" x2="-20.826464" y2="253.23859"/>
+    <linearGradient id="linearGradient319-5">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-761"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-8"/>
+    </linearGradient>
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient37542-7" id="linearGradient29424" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1.4646688,0,0,1.4650206,168.77325,-157.03253)" x1="-26.511335" y1="257.99881" x2="-30.075666" y2="259.87677"/>
+    
+    <linearGradient id="linearGradient21327-6-8">
+      <stop style="stop-color:#1e3e70;stop-opacity:1;" offset="0" id="stop21329-3-4"/>
+      <stop style="stop-color:#1e3e70;stop-opacity:0;" offset="1" id="stop21331-4-0"/>
+    </linearGradient>
+    <linearGradient id="linearGradient28526">
+      <stop id="stop28528" offset="0" style="stop-color:#2561b7;stop-opacity:1;"/>
+      <stop id="stop28530" offset="1" style="stop-color:#f9fbff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-62">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-90"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-4"/>
+    </linearGradient>
+    <linearGradient id="linearGradient1610-52-2">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-32-8"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-46-8"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-62-8">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-90-6"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-4-0"/>
+    </linearGradient>
+    <radialGradient inkscape:collect="always" xlink:href="#linearGradient1610-52-2" id="radialGradient29805" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.94105289,0.01178942,-0.01073736,0.8570756,238.4669,249.70522)" cx="-30.028414" cy="19.425121" fx="-30.028414" fy="19.425121" r="7"/>
+    
+    
+    <radialGradient id="radialGradient16142-7" cx="20.892099" cy="64.567902" r="5.257" fx="20.892099" fy="64.567902" gradientUnits="userSpaceOnUse">
+      <stop offset="0" style="stop-color:#F0F0F0" id="stop16144-4"/>
+      <stop offset="1" style="stop-color:#474747" id="stop16146-0"/>
     </radialGradient>
-    <linearGradient
-       id="linearGradient37542-78">
-      <stop
-         id="stop37544-2"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-78"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient9030-2">
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="0"
-         id="stop9032-0" />
-      <stop
-         style="stop-color:white;stop-opacity:0;"
-         offset="1"
-         id="stop9034-89" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-04-82">
-      <stop
-         id="stop37544-9-0"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-4-5"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient9030-38-2">
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="0"
-         id="stop9032-6-7" />
-      <stop
-         style="stop-color:white;stop-opacity:0;"
-         offset="1"
-         id="stop9034-9-6" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient30752-0">
-      <stop
-         style="stop-color:#0c1b63;stop-opacity:1;"
-         offset="0"
-         id="stop30754-9" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1"
-         offset="1"
-         id="stop30756-5" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-7409-7-7-19-1">
-      <stop
-         id="stop37544-48-6-1-8-9"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-82-1-0-6-8"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient44939-8-4-7-8-3-0-3">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop44941-8-5-40-2-4-2-4" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop44943-2-5-9-4-9-8-0" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-9-7-5-4-6-5-0-3">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-5-4-58-5-9-1-2-1" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-43-0-4-0-8-0-4-9" />
-    </linearGradient>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask52637-8-8">
-      <rect
-         mask="none"
-         style="fill:url(#radialGradient52641-2-8);fill-opacity:1;stroke:none;stroke-width:2.79999995000000010;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
-         id="rect52639-8-9"
-         width="7.9918551"
-         height="8.9366941"
-         x="-354"
-         y="458"
-         rx="0"
-         ry="0" />
-    </mask>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient37542-7409-7-7-0-9-9"
-       id="radialGradient52641-2-8"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(0.39420438,-0.08239205,0.27256031,1.3040635,-361.27885,-161.73915)"
-       cx="-302.79681"
-       cy="462.0358"
-       fx="-302.79681"
-       fy="462.0358"
-       r="8" />
-    <linearGradient
-       id="linearGradient37542-7409-7-7-0-9-9">
-      <stop
-         id="stop37544-48-6-1-4-1-1"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-82-1-0-9-3-3"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-31-8-9-1">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-23-2-8-4" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-34-4-4-2" />
-    </linearGradient>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask52879-0-5">
-      <rect
-         mask="none"
-         style="fill:url(#radialGradient52883-6-8);fill-opacity:1;stroke:none;stroke-width:2.79999995000000010;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
-         id="rect52881-7-3"
-         width="7.9918551"
-         height="8.9366941"
-         x="-354.95001"
-         y="458"
-         rx="0"
-         ry="0" />
-    </mask>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient37542-7409-7-7-0-9-9"
-       id="radialGradient52883-6-8"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(0.39420438,-0.08239205,0.27256031,1.3040635,-362.22886,-161.73912)"
-       cx="-302.79681"
-       cy="462.0358"
-       fx="-302.79681"
-       fy="462.0358"
-       r="8" />
-    <linearGradient
-       id="linearGradient34488-1-8">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop34490-0-5-7" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop34492-4-0" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient32877-9-6-8">
-      <stop
-         style="stop-color:#b3b3b3;stop-opacity:1;"
-         offset="0"
-         id="stop32879-8-1-1" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="1"
-         id="stop32881-4-3-9" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient33058-4-9-5">
-      <stop
-         style="stop-color:#e5250b;stop-opacity:1;"
-         offset="0"
-         id="stop33060-3-3-9" />
-      <stop
-         style="stop-color:#460000;stop-opacity:1;"
-         offset="1"
-         id="stop33062-9-4-7" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient44939-8-4-8-6-8">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop44941-8-5-0-0-0" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop44943-2-5-8-6-1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient33058-2-7-1-7">
-      <stop
-         style="stop-color:#e5250b;stop-opacity:1;"
-         offset="0"
-         id="stop33060-1-8-8-5" />
-      <stop
-         style="stop-color:#460000;stop-opacity:1;"
-         offset="1"
-         id="stop33062-4-3-4-5" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient4671-6-4-1-7">
-      <stop
-         id="stop4673-7-6-4-1"
-         offset="0"
-         style="stop-color:#ffd43b;stop-opacity:1;" />
-      <stop
-         id="stop4675-8-0-8-1"
-         offset="1"
-         style="stop-color:#ffe873;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient4689-1-6-4-2">
-      <stop
-         id="stop4691-6-2-6-7"
-         offset="0"
-         style="stop-color:#5a9fd4;stop-opacity:1;" />
-      <stop
-         id="stop4693-0-4-8-6"
-         offset="1"
-         style="stop-color:#306998;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-12-5">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-34-1" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-81-9" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient15425-8-7">
-      <stop
-         style="stop-color:#8c0000;stop-opacity:1;"
-         offset="0"
-         id="stop15427-5-9" />
-      <stop
-         style="stop-color:#c80000;stop-opacity:0;"
-         offset="1"
-         id="stop15429-7-2" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-35-31-8">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-38-14-4" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-94-6-3" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-35-08-1">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-38-1-0" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-94-1-0" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-35-0">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-38-15" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-94-19" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient18105-2-9">
-      <stop
-         id="stop18107-8-4"
-         offset="0"
-         style="stop-color:#162d50;stop-opacity:1" />
-      <stop
-         id="stop18109-1-4"
-         offset="1"
-         style="stop-color:#1e3e70;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient15531-9-5">
-      <stop
-         style="stop-color:#20539d;stop-opacity:1"
-         offset="0"
-         id="stop15534-1-3" />
-      <stop
-         style="stop-color:#bdc9df;stop-opacity:1"
-         offset="1"
-         id="stop15537-7-5" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient23974-27-5">
-      <stop
-         id="stop23976-25-8"
-         offset="0"
-         style="stop-color:#2561b7;stop-opacity:1;" />
-      <stop
-         id="stop23978-48-3"
-         offset="1"
-         style="stop-color:#f9fbff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient27277-1-8">
-      <stop
-         id="stop27279-5-2"
-         offset="0"
-         style="stop-color:#444444;stop-opacity:1;" />
-      <stop
-         id="stop27281-4-1"
-         offset="1"
-         style="stop-color:#adadad;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient21327-63-5">
-      <stop
-         style="stop-color:#1e3e70;stop-opacity:1;"
-         offset="0"
-         id="stop21329-9-2" />
-      <stop
-         style="stop-color:#1e3e70;stop-opacity:0;"
-         offset="1"
-         id="stop21331-6-4" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-40-9">
-      <stop
-         id="stop37544-6-0"
-         offset="0"
-         style="stop-color:#2561b7;stop-opacity:1" />
-      <stop
-         id="stop37546-3-3"
-         offset="1"
-         style="stop-color:#f9fbff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-84-1">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-78-7" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-30-96" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-84-3-2">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-78-3-8" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-30-9-8" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient15482-65">
-      <stop
-         id="stop15484-4"
-         offset="0"
-         style="stop-color:#2869ab;stop-opacity:1" />
-      <stop
-         id="stop15486-2"
-         offset="1"
-         style="stop-color:#a7c8f0;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-6-11">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-73-0" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-51-9" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient15595-7">
-      <stop
-         style="stop-color:#1b4685;stop-opacity:1;"
-         offset="0"
-         id="stop15597-5" />
-      <stop
-         style="stop-color:#183e75;stop-opacity:0;"
-         offset="1"
-         id="stop15599-3" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-6-1-5">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-73-4-5" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-51-8-0" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient1610-64-7">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-8-1" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-29-4" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient15275-9">
-      <stop
-         id="stop15277-2"
-         offset="0"
-         style="stop-color:black;stop-opacity:1;" />
-      <stop
-         id="stop15279-1"
-         offset="1"
-         style="stop-color:white;stop-opacity:1;" />
-    </linearGradient>
-    <clipPath
-       clipPathUnits="userSpaceOnUse"
-       id="clipPath42711-8-1">
-      <rect
-         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:3;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
-         id="rect42713-4-3"
-         width="8.7252884"
-         height="17.464855"
-         x="127.4093"
-         y="214.76154" />
-    </clipPath>
-    <linearGradient
-       id="linearGradient15361-7">
-      <stop
-         style="stop-color:#2766a6;stop-opacity:1;"
-         offset="0"
-         id="stop15363-7" />
-      <stop
-         style="stop-color:#6ba2e5;stop-opacity:1;"
-         offset="1"
-         id="stop15365-9" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient15320-0">
-      <stop
-         style="stop-color:#0868f5;stop-opacity:1;"
-         offset="0"
-         id="stop15322-3" />
-      <stop
-         style="stop-color:#fbfdfe;stop-opacity:1;"
-         offset="1"
-         id="stop15324-8" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient23974-0-2">
-      <stop
-         id="stop23976-22-8"
-         offset="0"
-         style="stop-color:#2561b7;stop-opacity:1;" />
-      <stop
-         id="stop23978-4-5"
-         offset="1"
-         style="stop-color:#f9fbff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient31320-4-3">
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="0"
-         id="stop31322-9-2" />
-      <stop
-         style="stop-color:white;stop-opacity:0;"
-         offset="1"
-         id="stop31324-3-5" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient14262-95-2">
-      <stop
-         id="stop14264-2-2"
-         offset="0"
-         style="stop-color:#2661b6;stop-opacity:1;" />
-      <stop
-         id="stop14266-7-2"
-         offset="1"
-         style="stop-color:#c1d7f8;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-40-7">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-95-9" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-16-1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient23974-28-0-5">
-      <stop
-         id="stop23976-64-2-3"
-         offset="0"
-         style="stop-color:#2561b7;stop-opacity:1;" />
-      <stop
-         id="stop23978-5-3-7"
-         offset="1"
-         style="stop-color:#f9fbff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-23-4">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-65-0" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-3-5" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient23974-48-9">
-      <stop
-         id="stop23976-13-7"
-         offset="0"
-         style="stop-color:#2561b7;stop-opacity:1;" />
-      <stop
-         id="stop23978-28-3"
-         offset="1"
-         style="stop-color:#f9fbff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient20756-2-0">
-      <stop
-         style="stop-color:#2968c3;stop-opacity:1;"
-         offset="0"
-         id="stop20758-7-2" />
-      <stop
-         style="stop-color:#b5ccf0;stop-opacity:1;"
-         offset="1"
-         id="stop20760-0-0" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient23974-1-2">
-      <stop
-         id="stop23976-3-3"
-         offset="0"
-         style="stop-color:#3e7dd7;stop-opacity:0" />
-      <stop
-         style="stop-color:#8faedb;stop-opacity:1"
-         offset="0.48394433"
-         id="stop28407-8" />
-      <stop
-         id="stop23978-26-7"
-         offset="1"
-         style="stop-color:#f9fbff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient31320-0-3">
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="0"
-         id="stop31322-4-5" />
-      <stop
-         style="stop-color:white;stop-opacity:0;"
-         offset="1"
-         id="stop31324-9-8" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient14262-97-5">
-      <stop
-         id="stop14264-0-6"
-         offset="0"
-         style="stop-color:#2661b6;stop-opacity:1;" />
-      <stop
-         id="stop14266-6-3"
-         offset="1"
-         style="stop-color:#c1d7f8;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-406-5">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0"
-         offset="0"
-         id="stop320-76-8" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1"
-         offset="1"
-         id="stop321-36-7" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient38363-7">
-      <stop
-         id="stop38365-1"
-         offset="0"
-         style="stop-color:#1d4d91;stop-opacity:1" />
-      <stop
-         style="stop-color:#658fd4;stop-opacity:1;"
-         offset="0.44217443"
-         id="stop15519-3" />
-      <stop
-         id="stop38367-1"
-         offset="1"
-         style="stop-color:#c3d7ff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-56-4">
-      <stop
-         id="stop37544-88-5"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-9-2"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-528-2">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-68-7" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-86-7" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-24-4">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-3-2" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-4-8" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient1610-67-6">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-75-5" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-31-3" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient9030-41-5">
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="0"
-         id="stop9032-2-0" />
-      <stop
-         style="stop-color:white;stop-opacity:0;"
-         offset="1"
-         id="stop9034-10-1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-76-2">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-3-9" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-18-2" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient24679-9-1">
-      <stop
-         style="stop-color:#3d361a;stop-opacity:1;"
-         offset="0"
-         id="stop24681-7-0" />
-      <stop
-         id="stop24683-6-7"
-         offset="0.45537567"
-         style="stop-color:#d1c595;stop-opacity:1;" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="1"
-         id="stop24685-4-8" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient24671-1-3">
-      <stop
-         style="stop-color:#3d361a;stop-opacity:1;"
-         offset="0"
-         id="stop24673-7-4" />
-      <stop
-         id="stop24675-7-4"
-         offset="0.29527253"
-         style="stop-color:#d1c595;stop-opacity:1;" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="1"
-         id="stop24677-5-5" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-16-6">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-683-4" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-08-2" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-86-8">
-      <stop
-         id="stop37544-39-4"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-7-6"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-0-3">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-15-31" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-26-3" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-86-0-1">
-      <stop
-         id="stop37544-39-8-4"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-7-1-1"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-0-2-5">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-15-0-3" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-26-9-3" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-86-2-7">
-      <stop
-         id="stop37544-39-5-3"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-7-2-9"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-0-4-4">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-15-3-2" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-26-2-9" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-86-0-6-8">
-      <stop
-         id="stop37544-39-8-7-4"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-7-1-5-6"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-0-2-3-8">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-15-0-0-4" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-26-9-5-3" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-5-1-4-8">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-9-18-9-9" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-8-252-1-7" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient36273-9-4-2-3">
-      <stop
-         id="stop36275-9-0-3-3"
-         offset="0"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-      <stop
-         id="stop36277-1-3-5-2"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient36273-9-4-22-0">
-      <stop
-         id="stop36275-9-0-6-7"
-         offset="0"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-      <stop
-         id="stop36277-1-3-6-9"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-5-1-8">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-9-18-3" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-8-252-2" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient36273-9-4-8">
-      <stop
-         id="stop36275-9-0-0"
-         offset="0"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-      <stop
-         id="stop36277-1-3-8"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-5-12">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-9-7" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-8-4" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient36273-9-9">
-      <stop
-         id="stop36275-9-8"
-         offset="0"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-      <stop
-         id="stop36277-1-35"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient15859-1-3">
-      <stop
-         style="stop-color:#ff992b;stop-opacity:1"
-         offset="0"
-         id="stop15861-1-4" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="1"
-         id="stop15863-7-73" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-95">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-242" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-44" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-1">
-      <stop
-         id="stop37544-62"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-4"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-75">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-8" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-39" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient1610-36-6-5">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-1-9-6" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-5-9-8" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-96">
-      <stop
-         id="stop37544-7-1"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-0"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-37">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-0" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-2" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient81143-4">
-      <stop
-         style="stop-color:#2561b7;stop-opacity:1"
-         offset="0"
-         id="stop81145-0" />
-      <stop
-         style="stop-color:#f9fbff;stop-opacity:1"
-         offset="1"
-         id="stop81147-7" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-7-8-6-0">
-      <stop
-         id="stop37544-40-1-3-9"
-         offset="0"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-      <stop
-         id="stop37546-94-7-0-7"
-         offset="1"
-         style="stop-color:#030303;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-488-8-2">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-13-8-8" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-67-2-2" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-7-8-6-0-8">
-      <stop
-         id="stop37544-40-1-3-9-3"
-         offset="0"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-      <stop
-         id="stop37546-94-7-0-7-1"
-         offset="1"
-         style="stop-color:#030303;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient106427-3">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop106429-1" />
-      <stop
-         style="stop-color:#030303;stop-opacity:1"
-         offset="1"
-         id="stop106431-0" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-488-8-2-0">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-13-8-8-7" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-67-2-2-9" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient1610-36-6-7-9">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-1-9-4-5" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-5-9-87-3" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient1610-36-6-7-9-4">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-1-9-4-5-0" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-5-9-87-3-7" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient15097-0-8">
-      <stop
-         style="stop-color:#c4c4c4;stop-opacity:1"
-         offset="0"
-         id="stop15099-1-83" />
-      <stop
-         style="stop-color:#868686;stop-opacity:1"
-         offset="1"
-         id="stop15101-9-3" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient23974-5-2-6-6">
-      <stop
-         id="stop23976-9-2-7-6"
-         offset="0"
-         style="stop-color:#2561b7;stop-opacity:1;" />
-      <stop
-         id="stop23978-3-1-6-0"
-         offset="1"
-         style="stop-color:#f9fbff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient31320-5-2-6-7">
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="0"
-         id="stop31322-5-4-5-8" />
-      <stop
-         style="stop-color:white;stop-opacity:0;"
-         offset="1"
-         id="stop31324-0-8-5-8" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient14262-9-5-9-4">
-      <stop
-         id="stop14264-5-2-9-0"
-         offset="0"
-         style="stop-color:#2661b6;stop-opacity:1;" />
-      <stop
-         id="stop14266-0-4-4-2"
-         offset="1"
-         style="stop-color:#c1d7f8;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-92-8-5-0">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-40-7-9-3" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-93-7-0-5" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient1610-36-6-7-9-4-3">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-1-9-4-5-0-6" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-5-9-87-3-7-8" />
-    </linearGradient>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask43050-6">
-      <rect
-         y="-122"
-         x="-24"
-         height="14"
-         width="16"
-         id="rect43052-3"
-         style="opacity:0.5;fill:url(#linearGradient43054-6);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.79999995;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
-    </mask>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient44627-7"
-       id="linearGradient43054-6"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1.3333333,0,0,1.2727273,2.6666667,29.454545)"
-       x1="-4.2231579"
-       y1="-92.440941"
-       x2="-18.697306"
-       y2="-115.04018" />
-    <linearGradient
-       id="linearGradient44627-7">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop44629-4" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop44631-0" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-9-5-1-8-2-5">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-5-43-3-0-0-4" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-43-1-8-2-5-2" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-9-7-4-74-1">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-5-4-5-0-5" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-43-0-5-9-2" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient44939-8-5">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop44941-8-1" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop44943-2-7" />
-    </linearGradient>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask48816-8">
-      <rect
-         y="-84"
-         x="-44"
-         height="14"
-         width="13"
-         id="rect48818-4"
-         style="opacity:0.85;fill:url(#radialGradient48820-9);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89999998;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new" />
-    </mask>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient44627-7"
-       id="radialGradient48820-9"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1,0,0,1.0769231,0,5.9230769)"
-       cx="-31"
-       cy="-83.5"
-       fx="-31"
-       fy="-83.5"
-       r="6.5" />
-    <linearGradient
-       id="linearGradient10069-9-7-4-4">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-5-4-5-8" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-43-0-5-6" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient44939-09">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop44941-0" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop44943-0" />
-    </linearGradient>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask28585-8">
-      <rect
-         style="opacity:0.85;fill:url(#radialGradient28589-9);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89999998;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new"
-         id="rect28587-2"
-         width="13"
-         height="14"
-         x="-44"
-         y="-84" />
-    </mask>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient44627-7"
-       id="radialGradient28589-9"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1,0,0,1.0769231,0,5.9230769)"
-       cx="-30.28125"
-       cy="-84.341515"
-       fx="-30.28125"
-       fy="-84.341515"
-       r="6.5" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask43040-7">
-      <rect
-         style="opacity:0.5;fill:url(#linearGradient43044-5);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.79999995;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
-         id="rect43042-9"
-         width="15"
-         height="16"
-         x="-45.04018"
-         y="-24"
-         rx="0"
-         ry="0" />
-    </mask>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient43760-6-4"
-       id="linearGradient43044-5"
-       gradientUnits="userSpaceOnUse"
-       x1="-44.709698"
-       y1="-8.4836445"
-       x2="-37.784756"
-       y2="-18.517523"
-       gradientTransform="translate(-0.04018164,0)" />
-    <linearGradient
-       id="linearGradient43760-6-4">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop43762-7-3" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop43764-8-1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient9030-71-3">
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="0"
-         id="stop9032-15-3" />
-      <stop
-         style="stop-color:white;stop-opacity:0;"
-         offset="1"
-         id="stop9034-276-4" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-9-5-1-1">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-5-43-3-3" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-43-1-8-8" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient44939-2-8">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop44941-7-4" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop44943-7-0" />
-    </linearGradient>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask45865-7">
-      <g
-         id="g45867-3"
-         transform="translate(-14,0)">
-        <path
-           inkscape:connector-curvature="0"
-           sodipodi:nodetypes="cssssssc"
-           id="path45869-7"
-           d="m -25.801826,-135.3217 c -0.907684,-0.32824 -0.906457,-1.55361 -0.440107,-2.23642 0.834186,-1.22138 2.593738,-1.15244 3.63669,-0.26277 1.530569,1.30563 1.388406,3.6923 0.08107,5.09763 -1.742467,1.8731 -4.73519,1.65156 -6.47424,-0.0993 -2.188413,-2.20322 -1.889457,-5.85971 0.277965,-7.95885 2.625036,-2.54234 6.931515,-2.199 9.311783,0.46129 2.764074,3.08924 2.372937,7.82808 -0.06591,10.77438"
-           style="fill:none;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline;enable-background:new"
-           mask="none" />
-        <path
-           inkscape:connector-curvature="0"
-           sodipodi:nodetypes="cc"
-           id="path45871-2"
-           d="m -19.40866,-140.32008 c 2.764074,3.08924 2.372937,7.82808 -0.06591,10.77438"
-           style="fill:none;stroke:url(#linearGradient45875-0);stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline;enable-background:new" />
-        <path
-           inkscape:connector-curvature="0"
-           mask="none"
-           style="fill:none;stroke:url(#radialGradient45877-1);stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline;enable-background:new"
-           d="m -25.801826,-135.3217 c -0.907684,-0.32824 -0.906457,-1.55361 -0.440107,-2.23642 0.834186,-1.22138 2.593738,-1.15244 3.63669,-0.26277"
-           id="path45873-6"
-           sodipodi:nodetypes="css" />
-      </g>
-    </mask>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient43760-7"
-       id="linearGradient45875-0"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(14,0)"
-       x1="-34.051685"
-       y1="-129.32457"
-       x2="-32.542458"
-       y2="-139.90228" />
-    <linearGradient
-       id="linearGradient43760-7">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop43762-79" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop43764-3" />
-    </linearGradient>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient43760-7"
-       id="radialGradient45877-1"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(0.1099414,-0.9422316,0.4519816,0.05273803,38.220416,-152.21215)"
-       cx="-25.452209"
-       cy="-136.46503"
-       fx="-25.452209"
-       fy="-136.46503"
-       r="8.0066185" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask45447-7">
-      <rect
-         ry="0"
-         style="opacity:0.8;fill:url(#radialGradient45451-2);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.80000001;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
-         id="rect45449-4"
-         width="15"
-         height="15"
-         x="216"
-         y="366" />
-    </mask>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient43760-7"
-       id="radialGradient45451-2"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1,0,0,0.9952162,167.99999,-60.91415)"
-       cx="59.000011"
-       cy="440.0191"
-       fx="59.000011"
-       fy="440.0191"
-       r="6.5080619" />
-    <linearGradient
-       id="linearGradient319-42-9">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-32-8" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-21-6" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-9-7-0">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-5-4-2" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-43-0-8" />
-    </linearGradient>
-    <clipPath
-       clipPathUnits="userSpaceOnUse"
-       id="clipPath43135-6">
-      <path
-         inkscape:connector-curvature="0"
-         id="path43137-1"
-         d="m -46,52 16,-16 -16,0 0,16 z"
-         style="opacity:0.5;fill:#ffff00;fill-rule:evenodd;stroke:none" />
-    </clipPath>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask43188-4">
-      <path
-         inkscape:connector-curvature="0"
-         style="opacity:0.5;fill:url(#linearGradient43192-3);fill-rule:evenodd;stroke:none"
-         d="m -46,52 16,-16 -16,0 0,16 z"
-         id="path43190-2" />
-    </mask>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient1610-5-2"
-       id="linearGradient43192-3"
-       gradientUnits="userSpaceOnUse"
-       x1="-47"
-       y1="44"
-       x2="-43"
-       y2="44" />
-    <linearGradient
-       id="linearGradient1610-5-2">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-17-2" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-115-1" />
-    </linearGradient>
-    <clipPath
-       clipPathUnits="userSpaceOnUse"
-       id="clipPath43178-6">
-      <path
-         inkscape:connector-curvature="0"
-         style="opacity:0.5;fill:#ffff00;fill-rule:evenodd;stroke:none"
-         d="m -30,36 -1,0 -15,15 0,1 16,0 0,-16 z"
-         id="path43180-8"
-         sodipodi:nodetypes="cccccc" />
-    </clipPath>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask43182-5">
-      <path
-         inkscape:connector-curvature="0"
-         id="path43184-7"
-         d="m -46,52 0,-1 15,-15 1,0 0,16 -16,0 z"
-         style="opacity:0.5;fill:url(#linearGradient43186-6);fill-rule:evenodd;stroke:none"
-         sodipodi:nodetypes="cccccc" />
-    </mask>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient1610-5-2"
-       id="linearGradient43186-6"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(0,-1,-1,0,6,6)"
-       x1="-47"
-       y1="44"
-       x2="-43"
-       y2="44" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask25021-4">
-      <rect
-         style="fill:url(#radialGradient25025-8);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.70000005;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
-         id="rect25023-8"
-         width="13"
-         height="14"
-         x="26"
-         y="243" />
-    </mask>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient44627-7"
-       id="radialGradient25025-8"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(0.8918342,0,0,0.8918344,-15.699877,27.900732)"
-       cx="49"
-       cy="254.64285"
-       fx="49"
-       fy="254.64285"
-       r="6.5" />
-    <linearGradient
-       id="linearGradient10069-9-7-5-5">
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0"
-         id="stop10071-5-4-58-7" />
-      <stop
-         style="stop-color:#000000;stop-opacity:0;"
-         offset="1"
-         id="stop10073-43-0-4-5" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-76-2-0">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-142-0" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-32-0" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient29761">
-      <stop
-         style="stop-color:#b74125;stop-opacity:1;"
-         offset="0"
-         id="stop29763" />
-      <stop
-         style="stop-color:#f9fbff;stop-opacity:1"
-         offset="1"
-         id="stop29765" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient8864-1">
-      <stop
-         id="stop8866-0"
-         offset="0"
-         style="stop-color:#b43214;stop-opacity:1;" />
-      <stop
-         id="stop8868-1"
-         offset="1"
-         style="stop-color:#e86830;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient1610-8-8">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-7-7" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-4-6" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-77-0">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-9-0" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-31-9" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient1610-4">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-64" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-20" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient1610-4-3">
-      <stop
-         style="stop-color:black;stop-opacity:1;"
-         offset="0"
-         id="stop1611-64-0" />
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="1"
-         id="stop1612-20-3" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient16719">
-      <stop
-         id="stop16721"
-         offset="0"
-         style="stop-color:#84d458;stop-opacity:1" />
-      <stop
-         style="stop-color:#5894d4;stop-opacity:1"
-         offset="0.30000001"
-         id="stop5079" />
-      <stop
-         id="stop16723"
-         offset="1"
-         style="stop-color:#afd1f5;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient11820">
-      <stop
-         style="stop-color:#afd1f5;stop-opacity:1"
-         offset="0"
-         id="stop11822" />
-      <stop
-         id="stop11824"
-         offset="0.44444144"
-         style="stop-color:#5894d4;stop-opacity:1" />
-      <stop
-         style="stop-color:#5894d4;stop-opacity:1"
-         offset="0.55555254"
-         id="stop11826" />
-      <stop
-         style="stop-color:#ef79ef;stop-opacity:1"
-         offset="1"
-         id="stop11828" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient28147-1-4">
-      <stop
-         id="stop28149-4-1"
-         offset="0"
-         style="stop-color:#afd1f5;stop-opacity:1" />
-      <stop
-         style="stop-color:#5894d4;stop-opacity:1"
-         offset="0.18750006"
-         id="stop5469" />
-      <stop
-         style="stop-color:#505050;stop-opacity:1"
-         offset="0.40000001"
-         id="stop28151-7-6" />
-      <stop
-         id="stop28153-8-4"
-         offset="0.60000002"
-         style="stop-color:#505050;stop-opacity:1" />
-      <stop
-         style="stop-color:#5894d4;stop-opacity:1"
-         offset="0.81250006"
-         id="stop5471" />
-      <stop
-         id="stop28155-2-6"
-         offset="1"
-         style="stop-color:#afd1f5;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-65-4-8-7">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-14-9-5-9" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-49-3-6-8" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient44939-8-53">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop44941-8-7" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop44943-2-5" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient44939-8-53-7">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop44941-8-7-6" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop44943-2-5-2" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-0">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-22" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-19" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-29">
-      <stop
-         id="stop37544-67"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-45"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-36">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-18" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-390" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-29-1">
-      <stop
-         id="stop37544-67-8"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-45-9"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-29-7">
-      <stop
-         id="stop37544-67-3"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-45-0"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-36-40">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-18-7" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-390-4" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient37542-29-7-8">
-      <stop
-         id="stop37544-67-3-0"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-45-0-9"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-36-40-2">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-18-7-8" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-390-4-6" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-36-40-2-4">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-18-7-8-5" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-390-4-6-6" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient23974-39">
-      <stop
-         id="stop23976-8"
-         offset="0"
-         style="stop-color:#2561b7;stop-opacity:1;" />
-      <stop
-         id="stop23978-23"
-         offset="1"
-         style="stop-color:#f9fbff;stop-opacity:1" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient31320-9">
-      <stop
-         style="stop-color:white;stop-opacity:1;"
-         offset="0"
-         id="stop31322-6" />
-      <stop
-         style="stop-color:white;stop-opacity:0;"
-         offset="1"
-         id="stop31324-2" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient14262-6">
-      <stop
-         id="stop14264-29"
-         offset="0"
-         style="stop-color:#2661b6;stop-opacity:1;" />
-      <stop
-         id="stop14266-9"
-         offset="1"
-         style="stop-color:#c1d7f8;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-61">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-47" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-45" />
-    </linearGradient>
-    <clipPath
-       clipPathUnits="userSpaceOnUse"
-       id="clipPath15455">
-      <rect
-         style="color:#000000;fill:#d8d8d8;fill-opacity:1;stroke:none;stroke-width:1.20000005;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new"
-         id="rect15457"
-         width="16"
-         height="16"
-         x="301.96045"
-         y="236.91833" />
-    </clipPath>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask15700">
-      <path
-         style="color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.20000005;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter15613);enable-background:new"
-         d="m 302.9292,245.91834 -2.4375,-1.125 -0.53125,-9.84375 19.95312,-0.0469 0.0156,9.95313 -2.9375,1.09375 0,5.96875 -14,0 z"
-         id="path15702"
-         inkscape:connector-curvature="0"
-         sodipodi:nodetypes="ccccccccc" />
-    </mask>
-    <filter
-       color-interpolation-filters="sRGB"
-       inkscape:collect="always"
-       id="filter15613"
-       x="-0.092011765"
-       width="1.1840235"
-       y="-0.097762503"
-       height="1.1955251">
-      <feGaussianBlur
-         inkscape:collect="always"
-         stdDeviation="0.65175"
-         id="feGaussianBlur15615" />
+    <linearGradient id="linearGradient37542-78">
+      <stop id="stop37544-2" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-78" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient9030-2">
+      <stop style="stop-color:white;stop-opacity:1;" offset="0" id="stop9032-0"/>
+      <stop style="stop-color:white;stop-opacity:0;" offset="1" id="stop9034-89"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-04-82">
+      <stop id="stop37544-9-0" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-4-5" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient9030-38-2">
+      <stop style="stop-color:white;stop-opacity:1;" offset="0" id="stop9032-6-7"/>
+      <stop style="stop-color:white;stop-opacity:0;" offset="1" id="stop9034-9-6"/>
+    </linearGradient>
+    <linearGradient id="linearGradient30752-0">
+      <stop style="stop-color:#0c1b63;stop-opacity:1;" offset="0" id="stop30754-9"/>
+      <stop style="stop-color:#ffffff;stop-opacity:1" offset="1" id="stop30756-5"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-7409-7-7-19-1">
+      <stop id="stop37544-48-6-1-8-9" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-82-1-0-6-8" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient44939-8-4-7-8-3-0-3">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop44941-8-5-40-2-4-2-4"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop44943-2-5-9-4-9-8-0"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-9-7-5-4-6-5-0-3">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-5-4-58-5-9-1-2-1"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-43-0-4-0-8-0-4-9"/>
+    </linearGradient>
+    
+    <radialGradient inkscape:collect="always" xlink:href="#linearGradient37542-7409-7-7-0-9-9" id="radialGradient52641-2-8" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.39420438,-0.08239205,0.27256031,1.3040635,-361.27885,-161.73915)" cx="-302.79681" cy="462.0358" fx="-302.79681" fy="462.0358" r="8"/>
+    <linearGradient id="linearGradient37542-7409-7-7-0-9-9">
+      <stop id="stop37544-48-6-1-4-1-1" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-82-1-0-9-3-3" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-31-8-9-1">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-23-2-8-4"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-34-4-4-2"/>
+    </linearGradient>
+    
+    <radialGradient inkscape:collect="always" xlink:href="#linearGradient37542-7409-7-7-0-9-9" id="radialGradient52883-6-8" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.39420438,-0.08239205,0.27256031,1.3040635,-362.22886,-161.73912)" cx="-302.79681" cy="462.0358" fx="-302.79681" fy="462.0358" r="8"/>
+    <linearGradient id="linearGradient34488-1-8">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop34490-0-5-7"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop34492-4-0"/>
+    </linearGradient>
+    <linearGradient id="linearGradient32877-9-6-8">
+      <stop style="stop-color:#b3b3b3;stop-opacity:1;" offset="0" id="stop32879-8-1-1"/>
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="1" id="stop32881-4-3-9"/>
+    </linearGradient>
+    <linearGradient id="linearGradient33058-4-9-5">
+      <stop style="stop-color:#e5250b;stop-opacity:1;" offset="0" id="stop33060-3-3-9"/>
+      <stop style="stop-color:#460000;stop-opacity:1;" offset="1" id="stop33062-9-4-7"/>
+    </linearGradient>
+    <linearGradient id="linearGradient44939-8-4-8-6-8">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop44941-8-5-0-0-0"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop44943-2-5-8-6-1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient33058-2-7-1-7">
+      <stop style="stop-color:#e5250b;stop-opacity:1;" offset="0" id="stop33060-1-8-8-5"/>
+      <stop style="stop-color:#460000;stop-opacity:1;" offset="1" id="stop33062-4-3-4-5"/>
+    </linearGradient>
+    <linearGradient id="linearGradient4671-6-4-1-7">
+      <stop id="stop4673-7-6-4-1" offset="0" style="stop-color:#ffd43b;stop-opacity:1;"/>
+      <stop id="stop4675-8-0-8-1" offset="1" style="stop-color:#ffe873;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient4689-1-6-4-2">
+      <stop id="stop4691-6-2-6-7" offset="0" style="stop-color:#5a9fd4;stop-opacity:1;"/>
+      <stop id="stop4693-0-4-8-6" offset="1" style="stop-color:#306998;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-12-5">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-34-1"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-81-9"/>
+    </linearGradient>
+    <linearGradient id="linearGradient15425-8-7">
+      <stop style="stop-color:#8c0000;stop-opacity:1;" offset="0" id="stop15427-5-9"/>
+      <stop style="stop-color:#c80000;stop-opacity:0;" offset="1" id="stop15429-7-2"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-35-31-8">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-38-14-4"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-94-6-3"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-35-08-1">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-38-1-0"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-94-1-0"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-35-0">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-38-15"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-94-19"/>
+    </linearGradient>
+    <linearGradient id="linearGradient18105-2-9">
+      <stop id="stop18107-8-4" offset="0" style="stop-color:#162d50;stop-opacity:1"/>
+      <stop id="stop18109-1-4" offset="1" style="stop-color:#1e3e70;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient15531-9-5">
+      <stop style="stop-color:#20539d;stop-opacity:1" offset="0" id="stop15534-1-3"/>
+      <stop style="stop-color:#bdc9df;stop-opacity:1" offset="1" id="stop15537-7-5"/>
+    </linearGradient>
+    <linearGradient id="linearGradient23974-27-5">
+      <stop id="stop23976-25-8" offset="0" style="stop-color:#2561b7;stop-opacity:1;"/>
+      <stop id="stop23978-48-3" offset="1" style="stop-color:#f9fbff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient27277-1-8">
+      <stop id="stop27279-5-2" offset="0" style="stop-color:#444444;stop-opacity:1;"/>
+      <stop id="stop27281-4-1" offset="1" style="stop-color:#adadad;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient21327-63-5">
+      <stop style="stop-color:#1e3e70;stop-opacity:1;" offset="0" id="stop21329-9-2"/>
+      <stop style="stop-color:#1e3e70;stop-opacity:0;" offset="1" id="stop21331-6-4"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-40-9">
+      <stop id="stop37544-6-0" offset="0" style="stop-color:#2561b7;stop-opacity:1"/>
+      <stop id="stop37546-3-3" offset="1" style="stop-color:#f9fbff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-84-1">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-78-7"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-30-96"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-84-3-2">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-78-3-8"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-30-9-8"/>
+    </linearGradient>
+    <linearGradient id="linearGradient15482-65">
+      <stop id="stop15484-4" offset="0" style="stop-color:#2869ab;stop-opacity:1"/>
+      <stop id="stop15486-2" offset="1" style="stop-color:#a7c8f0;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-6-11">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-73-0"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-51-9"/>
+    </linearGradient>
+    <linearGradient id="linearGradient15595-7">
+      <stop style="stop-color:#1b4685;stop-opacity:1;" offset="0" id="stop15597-5"/>
+      <stop style="stop-color:#183e75;stop-opacity:0;" offset="1" id="stop15599-3"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-6-1-5">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-73-4-5"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-51-8-0"/>
+    </linearGradient>
+    <linearGradient id="linearGradient1610-64-7">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-8-1"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-29-4"/>
+    </linearGradient>
+    <linearGradient id="linearGradient15275-9">
+      <stop id="stop15277-2" offset="0" style="stop-color:black;stop-opacity:1;"/>
+      <stop id="stop15279-1" offset="1" style="stop-color:white;stop-opacity:1;"/>
+    </linearGradient>
+    
+    <linearGradient id="linearGradient15361-7">
+      <stop style="stop-color:#2766a6;stop-opacity:1;" offset="0" id="stop15363-7"/>
+      <stop style="stop-color:#6ba2e5;stop-opacity:1;" offset="1" id="stop15365-9"/>
+    </linearGradient>
+    <linearGradient id="linearGradient15320-0">
+      <stop style="stop-color:#0868f5;stop-opacity:1;" offset="0" id="stop15322-3"/>
+      <stop style="stop-color:#fbfdfe;stop-opacity:1;" offset="1" id="stop15324-8"/>
+    </linearGradient>
+    <linearGradient id="linearGradient23974-0-2">
+      <stop id="stop23976-22-8" offset="0" style="stop-color:#2561b7;stop-opacity:1;"/>
+      <stop id="stop23978-4-5" offset="1" style="stop-color:#f9fbff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient31320-4-3">
+      <stop style="stop-color:white;stop-opacity:1;" offset="0" id="stop31322-9-2"/>
+      <stop style="stop-color:white;stop-opacity:0;" offset="1" id="stop31324-3-5"/>
+    </linearGradient>
+    <linearGradient id="linearGradient14262-95-2">
+      <stop id="stop14264-2-2" offset="0" style="stop-color:#2661b6;stop-opacity:1;"/>
+      <stop id="stop14266-7-2" offset="1" style="stop-color:#c1d7f8;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-40-7">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-95-9"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-16-1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient23974-28-0-5">
+      <stop id="stop23976-64-2-3" offset="0" style="stop-color:#2561b7;stop-opacity:1;"/>
+      <stop id="stop23978-5-3-7" offset="1" style="stop-color:#f9fbff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-23-4">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-65-0"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-3-5"/>
+    </linearGradient>
+    <linearGradient id="linearGradient23974-48-9">
+      <stop id="stop23976-13-7" offset="0" style="stop-color:#2561b7;stop-opacity:1;"/>
+      <stop id="stop23978-28-3" offset="1" style="stop-color:#f9fbff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient20756-2-0">
+      <stop style="stop-color:#2968c3;stop-opacity:1;" offset="0" id="stop20758-7-2"/>
+      <stop style="stop-color:#b5ccf0;stop-opacity:1;" offset="1" id="stop20760-0-0"/>
+    </linearGradient>
+    <linearGradient id="linearGradient23974-1-2">
+      <stop id="stop23976-3-3" offset="0" style="stop-color:#3e7dd7;stop-opacity:0"/>
+      <stop style="stop-color:#8faedb;stop-opacity:1" offset="0.48394433" id="stop28407-8"/>
+      <stop id="stop23978-26-7" offset="1" style="stop-color:#f9fbff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient31320-0-3">
+      <stop style="stop-color:white;stop-opacity:1;" offset="0" id="stop31322-4-5"/>
+      <stop style="stop-color:white;stop-opacity:0;" offset="1" id="stop31324-9-8"/>
+    </linearGradient>
+    <linearGradient id="linearGradient14262-97-5">
+      <stop id="stop14264-0-6" offset="0" style="stop-color:#2661b6;stop-opacity:1;"/>
+      <stop id="stop14266-6-3" offset="1" style="stop-color:#c1d7f8;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-406-5">
+      <stop style="stop-color:#ffffff;stop-opacity:0" offset="0" id="stop320-76-8"/>
+      <stop style="stop-color:#ffffff;stop-opacity:1" offset="1" id="stop321-36-7"/>
+    </linearGradient>
+    <linearGradient id="linearGradient38363-7">
+      <stop id="stop38365-1" offset="0" style="stop-color:#1d4d91;stop-opacity:1"/>
+      <stop style="stop-color:#658fd4;stop-opacity:1;" offset="0.44217443" id="stop15519-3"/>
+      <stop id="stop38367-1" offset="1" style="stop-color:#c3d7ff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-56-4">
+      <stop id="stop37544-88-5" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-9-2" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-528-2">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-68-7"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-86-7"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-24-4">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-3-2"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-4-8"/>
+    </linearGradient>
+    <linearGradient id="linearGradient1610-67-6">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-75-5"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-31-3"/>
+    </linearGradient>
+    <linearGradient id="linearGradient9030-41-5">
+      <stop style="stop-color:white;stop-opacity:1;" offset="0" id="stop9032-2-0"/>
+      <stop style="stop-color:white;stop-opacity:0;" offset="1" id="stop9034-10-1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-76-2">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-3-9"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-18-2"/>
+    </linearGradient>
+    <linearGradient id="linearGradient24679-9-1">
+      <stop style="stop-color:#3d361a;stop-opacity:1;" offset="0" id="stop24681-7-0"/>
+      <stop id="stop24683-6-7" offset="0.45537567" style="stop-color:#d1c595;stop-opacity:1;"/>
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="1" id="stop24685-4-8"/>
+    </linearGradient>
+    <linearGradient id="linearGradient24671-1-3">
+      <stop style="stop-color:#3d361a;stop-opacity:1;" offset="0" id="stop24673-7-4"/>
+      <stop id="stop24675-7-4" offset="0.29527253" style="stop-color:#d1c595;stop-opacity:1;"/>
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="1" id="stop24677-5-5"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-16-6">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-683-4"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-08-2"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-86-8">
+      <stop id="stop37544-39-4" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-7-6" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-0-3">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-15-31"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-26-3"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-86-0-1">
+      <stop id="stop37544-39-8-4" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-7-1-1" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-0-2-5">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-15-0-3"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-26-9-3"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-86-2-7">
+      <stop id="stop37544-39-5-3" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-7-2-9" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-0-4-4">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-15-3-2"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-26-2-9"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-86-0-6-8">
+      <stop id="stop37544-39-8-7-4" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-7-1-5-6" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-0-2-3-8">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-15-0-0-4"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-26-9-5-3"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-5-1-4-8">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-9-18-9-9"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-8-252-1-7"/>
+    </linearGradient>
+    <linearGradient id="linearGradient36273-9-4-2-3">
+      <stop id="stop36275-9-0-3-3" offset="0" style="stop-color:#ffffff;stop-opacity:1;"/>
+      <stop id="stop36277-1-3-5-2" offset="1" style="stop-color:#ffffff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient36273-9-4-22-0">
+      <stop id="stop36275-9-0-6-7" offset="0" style="stop-color:#ffffff;stop-opacity:1;"/>
+      <stop id="stop36277-1-3-6-9" offset="1" style="stop-color:#ffffff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-5-1-8">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-9-18-3"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-8-252-2"/>
+    </linearGradient>
+    <linearGradient id="linearGradient36273-9-4-8">
+      <stop id="stop36275-9-0-0" offset="0" style="stop-color:#ffffff;stop-opacity:1;"/>
+      <stop id="stop36277-1-3-8" offset="1" style="stop-color:#ffffff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-5-12">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-9-7"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-8-4"/>
+    </linearGradient>
+    <linearGradient id="linearGradient36273-9-9">
+      <stop id="stop36275-9-8" offset="0" style="stop-color:#ffffff;stop-opacity:1;"/>
+      <stop id="stop36277-1-35" offset="1" style="stop-color:#ffffff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient15859-1-3">
+      <stop style="stop-color:#ff992b;stop-opacity:1" offset="0" id="stop15861-1-4"/>
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="1" id="stop15863-7-73"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-95">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-242"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-44"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-1">
+      <stop id="stop37544-62" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-4" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-75">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-8"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-39"/>
+    </linearGradient>
+    <linearGradient id="linearGradient1610-36-6-5">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-1-9-6"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-5-9-8"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-96">
+      <stop id="stop37544-7-1" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-0" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-37">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-0"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-2"/>
+    </linearGradient>
+    <linearGradient id="linearGradient81143-4">
+      <stop style="stop-color:#2561b7;stop-opacity:1" offset="0" id="stop81145-0"/>
+      <stop style="stop-color:#f9fbff;stop-opacity:1" offset="1" id="stop81147-7"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-7-8-6-0">
+      <stop id="stop37544-40-1-3-9" offset="0" style="stop-color:#ffffff;stop-opacity:1;"/>
+      <stop id="stop37546-94-7-0-7" offset="1" style="stop-color:#030303;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-488-8-2">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-13-8-8"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-67-2-2"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-7-8-6-0-8">
+      <stop id="stop37544-40-1-3-9-3" offset="0" style="stop-color:#ffffff;stop-opacity:1;"/>
+      <stop id="stop37546-94-7-0-7-1" offset="1" style="stop-color:#030303;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient106427-3">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop106429-1"/>
+      <stop style="stop-color:#030303;stop-opacity:1" offset="1" id="stop106431-0"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-488-8-2-0">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-13-8-8-7"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-67-2-2-9"/>
+    </linearGradient>
+    <linearGradient id="linearGradient1610-36-6-7-9">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-1-9-4-5"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-5-9-87-3"/>
+    </linearGradient>
+    <linearGradient id="linearGradient1610-36-6-7-9-4">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-1-9-4-5-0"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-5-9-87-3-7"/>
+    </linearGradient>
+    <linearGradient id="linearGradient15097-0-8">
+      <stop style="stop-color:#c4c4c4;stop-opacity:1" offset="0" id="stop15099-1-83"/>
+      <stop style="stop-color:#868686;stop-opacity:1" offset="1" id="stop15101-9-3"/>
+    </linearGradient>
+    <linearGradient id="linearGradient23974-5-2-6-6">
+      <stop id="stop23976-9-2-7-6" offset="0" style="stop-color:#2561b7;stop-opacity:1;"/>
+      <stop id="stop23978-3-1-6-0" offset="1" style="stop-color:#f9fbff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient31320-5-2-6-7">
+      <stop style="stop-color:white;stop-opacity:1;" offset="0" id="stop31322-5-4-5-8"/>
+      <stop style="stop-color:white;stop-opacity:0;" offset="1" id="stop31324-0-8-5-8"/>
+    </linearGradient>
+    <linearGradient id="linearGradient14262-9-5-9-4">
+      <stop id="stop14264-5-2-9-0" offset="0" style="stop-color:#2661b6;stop-opacity:1;"/>
+      <stop id="stop14266-0-4-4-2" offset="1" style="stop-color:#c1d7f8;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-92-8-5-0">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-40-7-9-3"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-93-7-0-5"/>
+    </linearGradient>
+    <linearGradient id="linearGradient1610-36-6-7-9-4-3">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-1-9-4-5-0-6"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-5-9-87-3-7-8"/>
+    </linearGradient>
+    
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient44627-7" id="linearGradient43054-6" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1.3333333,0,0,1.2727273,2.6666667,29.454545)" x1="-4.2231579" y1="-92.440941" x2="-18.697306" y2="-115.04018"/>
+    <linearGradient id="linearGradient44627-7">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop44629-4"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop44631-0"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-9-5-1-8-2-5">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-5-43-3-0-0-4"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-43-1-8-2-5-2"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-9-7-4-74-1">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-5-4-5-0-5"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-43-0-5-9-2"/>
+    </linearGradient>
+    <linearGradient id="linearGradient44939-8-5">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop44941-8-1"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop44943-2-7"/>
+    </linearGradient>
+    
+    <radialGradient inkscape:collect="always" xlink:href="#linearGradient44627-7" id="radialGradient48820-9" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1,0,0,1.0769231,0,5.9230769)" cx="-31" cy="-83.5" fx="-31" fy="-83.5" r="6.5"/>
+    <linearGradient id="linearGradient10069-9-7-4-4">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-5-4-5-8"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-43-0-5-6"/>
+    </linearGradient>
+    <linearGradient id="linearGradient44939-09">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop44941-0"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop44943-0"/>
+    </linearGradient>
+    
+    <radialGradient inkscape:collect="always" xlink:href="#linearGradient44627-7" id="radialGradient28589-9" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1,0,0,1.0769231,0,5.9230769)" cx="-30.28125" cy="-84.341515" fx="-30.28125" fy="-84.341515" r="6.5"/>
+    
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient43760-6-4" id="linearGradient43044-5" gradientUnits="userSpaceOnUse" x1="-44.709698" y1="-8.4836445" x2="-37.784756" y2="-18.517523" gradientTransform="translate(-0.04018164,0)"/>
+    <linearGradient id="linearGradient43760-6-4">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop43762-7-3"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop43764-8-1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient9030-71-3">
+      <stop style="stop-color:white;stop-opacity:1;" offset="0" id="stop9032-15-3"/>
+      <stop style="stop-color:white;stop-opacity:0;" offset="1" id="stop9034-276-4"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-9-5-1-1">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-5-43-3-3"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-43-1-8-8"/>
+    </linearGradient>
+    <linearGradient id="linearGradient44939-2-8">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop44941-7-4"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop44943-7-0"/>
+    </linearGradient>
+    
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient43760-7" id="linearGradient45875-0" gradientUnits="userSpaceOnUse" gradientTransform="translate(14,0)" x1="-34.051685" y1="-129.32457" x2="-32.542458" y2="-139.90228"/>
+    <linearGradient id="linearGradient43760-7">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop43762-79"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop43764-3"/>
+    </linearGradient>
+    <radialGradient inkscape:collect="always" xlink:href="#linearGradient43760-7" id="radialGradient45877-1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.1099414,-0.9422316,0.4519816,0.05273803,38.220416,-152.21215)" cx="-25.452209" cy="-136.46503" fx="-25.452209" fy="-136.46503" r="8.0066185"/>
+    
+    <radialGradient inkscape:collect="always" xlink:href="#linearGradient43760-7" id="radialGradient45451-2" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1,0,0,0.9952162,167.99999,-60.91415)" cx="59.000011" cy="440.0191" fx="59.000011" fy="440.0191" r="6.5080619"/>
+    <linearGradient id="linearGradient319-42-9">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-32-8"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-21-6"/>
+    </linearGradient>
+    <linearGradient id="linearGradient10069-9-7-0">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-5-4-2"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-43-0-8"/>
+    </linearGradient>
+    
+    
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient1610-5-2" id="linearGradient43192-3" gradientUnits="userSpaceOnUse" x1="-47" y1="44" x2="-43" y2="44"/>
+    <linearGradient id="linearGradient1610-5-2">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-17-2"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-115-1"/>
+    </linearGradient>
+    
+    
+    <linearGradient inkscape:collect="always" xlink:href="#linearGradient1610-5-2" id="linearGradient43186-6" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0,-1,-1,0,6,6)" x1="-47" y1="44" x2="-43" y2="44"/>
+    
+    <radialGradient inkscape:collect="always" xlink:href="#linearGradient44627-7" id="radialGradient25025-8" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.8918342,0,0,0.8918344,-15.699877,27.900732)" cx="49" cy="254.64285" fx="49" fy="254.64285" r="6.5"/>
+    <linearGradient id="linearGradient10069-9-7-5-5">
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop10071-5-4-58-7"/>
+      <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop10073-43-0-4-5"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-76-2-0">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-142-0"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-32-0"/>
+    </linearGradient>
+    <linearGradient id="linearGradient29761">
+      <stop style="stop-color:#b74125;stop-opacity:1;" offset="0" id="stop29763"/>
+      <stop style="stop-color:#f9fbff;stop-opacity:1" offset="1" id="stop29765"/>
+    </linearGradient>
+    <linearGradient id="linearGradient8864-1">
+      <stop id="stop8866-0" offset="0" style="stop-color:#b43214;stop-opacity:1;"/>
+      <stop id="stop8868-1" offset="1" style="stop-color:#e86830;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient1610-8-8">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-7-7"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-4-6"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-77-0">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-9-0"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-31-9"/>
+    </linearGradient>
+    <linearGradient id="linearGradient1610-4">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-64"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-20"/>
+    </linearGradient>
+    <linearGradient id="linearGradient1610-4-3">
+      <stop style="stop-color:black;stop-opacity:1;" offset="0" id="stop1611-64-0"/>
+      <stop style="stop-color:white;stop-opacity:1;" offset="1" id="stop1612-20-3"/>
+    </linearGradient>
+    <linearGradient id="linearGradient16719">
+      <stop id="stop16721" offset="0" style="stop-color:#84d458;stop-opacity:1"/>
+      <stop style="stop-color:#5894d4;stop-opacity:1" offset="0.30000001" id="stop5079"/>
+      <stop id="stop16723" offset="1" style="stop-color:#afd1f5;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient11820">
+      <stop style="stop-color:#afd1f5;stop-opacity:1" offset="0" id="stop11822"/>
+      <stop id="stop11824" offset="0.44444144" style="stop-color:#5894d4;stop-opacity:1"/>
+      <stop style="stop-color:#5894d4;stop-opacity:1" offset="0.55555254" id="stop11826"/>
+      <stop style="stop-color:#ef79ef;stop-opacity:1" offset="1" id="stop11828"/>
+    </linearGradient>
+    <linearGradient id="linearGradient28147-1-4">
+      <stop id="stop28149-4-1" offset="0" style="stop-color:#afd1f5;stop-opacity:1"/>
+      <stop style="stop-color:#5894d4;stop-opacity:1" offset="0.18750006" id="stop5469"/>
+      <stop style="stop-color:#505050;stop-opacity:1" offset="0.40000001" id="stop28151-7-6"/>
+      <stop id="stop28153-8-4" offset="0.60000002" style="stop-color:#505050;stop-opacity:1"/>
+      <stop style="stop-color:#5894d4;stop-opacity:1" offset="0.81250006" id="stop5471"/>
+      <stop id="stop28155-2-6" offset="1" style="stop-color:#afd1f5;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-65-4-8-7">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-14-9-5-9"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-49-3-6-8"/>
+    </linearGradient>
+    <linearGradient id="linearGradient44939-8-53">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop44941-8-7"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop44943-2-5"/>
+    </linearGradient>
+    <linearGradient id="linearGradient44939-8-53-7">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop44941-8-7-6"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop44943-2-5-2"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-0">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-22"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-19"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-29">
+      <stop id="stop37544-67" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-45" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-36">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-18"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-390"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-29-1">
+      <stop id="stop37544-67-8" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-45-9" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-29-7">
+      <stop id="stop37544-67-3" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-45-0" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-36-40">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-18-7"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-390-4"/>
+    </linearGradient>
+    <linearGradient id="linearGradient37542-29-7-8">
+      <stop id="stop37544-67-3-0" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-45-0-9" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-36-40-2">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-18-7-8"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-390-4-6"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-36-40-2-4">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-18-7-8-5"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-390-4-6-6"/>
+    </linearGradient>
+    <linearGradient id="linearGradient23974-39">
+      <stop id="stop23976-8" offset="0" style="stop-color:#2561b7;stop-opacity:1;"/>
+      <stop id="stop23978-23" offset="1" style="stop-color:#f9fbff;stop-opacity:1"/>
+    </linearGradient>
+    <linearGradient id="linearGradient31320-9">
+      <stop style="stop-color:white;stop-opacity:1;" offset="0" id="stop31322-6"/>
+      <stop style="stop-color:white;stop-opacity:0;" offset="1" id="stop31324-2"/>
+    </linearGradient>
+    <linearGradient id="linearGradient14262-6">
+      <stop id="stop14264-29" offset="0" style="stop-color:#2661b6;stop-opacity:1;"/>
+      <stop id="stop14266-9" offset="1" style="stop-color:#c1d7f8;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-61">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-47"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-45"/>
+    </linearGradient>
+    
+    
+    <filter color-interpolation-filters="sRGB" inkscape:collect="always" id="filter15613" x="-0.092011765" width="1.1840235" y="-0.097762503" height="1.1955251">
+      <feGaussianBlur inkscape:collect="always" stdDeviation="0.65175" id="feGaussianBlur15615"/>
     </filter>
-    <linearGradient
-       id="linearGradient37542-55">
-      <stop
-         id="stop37544-61"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-03"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-74">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-42" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-67" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient21609-6">
-      <stop
-         id="stop21611-3"
-         offset="0"
-         style="stop-color:black;stop-opacity:1" />
-      <stop
-         id="stop21613-0"
-         offset="1"
-         style="stop-color:white;stop-opacity:1;" />
-    </linearGradient>
-    <clipPath
-       clipPathUnits="userSpaceOnUse"
-       id="clipPath15455-9">
-      <rect
-         style="color:#000000;fill:#d8d8d8;fill-opacity:1;stroke:none;stroke-width:1.20000005;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new"
-         id="rect15457-6"
-         width="16"
-         height="16"
-         x="301.96045"
-         y="236.91833" />
-    </clipPath>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask15700-4">
-      <path
-         style="color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.20000005000000010;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter15613-8);enable-background:new"
-         d="m 302.9292,245.91834 -2.4375,-1.125 -0.53125,-9.84375 19.95312,-0.0469 0.0156,9.95313 -2.9375,1.09375 0,5.96875 -14,0 z"
-         id="path15702-5"
-         inkscape:connector-curvature="0"
-         sodipodi:nodetypes="ccccccccc" />
-    </mask>
-    <filter
-       color-interpolation-filters="sRGB"
-       inkscape:collect="always"
-       id="filter15613-8"
-       x="-0.092011765"
-       width="1.1840235"
-       y="-0.097762503"
-       height="1.1955251">
-      <feGaussianBlur
-         inkscape:collect="always"
-         stdDeviation="0.65175"
-         id="feGaussianBlur15615-1" />
+    <linearGradient id="linearGradient37542-55">
+      <stop id="stop37544-61" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-03" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-74">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-42"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-67"/>
+    </linearGradient>
+    <linearGradient id="linearGradient21609-6">
+      <stop id="stop21611-3" offset="0" style="stop-color:black;stop-opacity:1"/>
+      <stop id="stop21613-0" offset="1" style="stop-color:white;stop-opacity:1;"/>
+    </linearGradient>
+    
+    
+    <filter color-interpolation-filters="sRGB" inkscape:collect="always" id="filter15613-8" x="-0.092011765" width="1.1840235" y="-0.097762503" height="1.1955251">
+      <feGaussianBlur inkscape:collect="always" stdDeviation="0.65175" id="feGaussianBlur15615-1"/>
     </filter>
-    <filter
-       color-interpolation-filters="sRGB"
-       inkscape:label="Greyscale"
-       id="filter15388">
-      <feColorMatrix
-         values="0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0 0 0 1 0 "
-         id="feColorMatrix15390"
-         result="fbSourceGraphic" />
-      <feColorMatrix
-         result="fbSourceGraphicAlpha"
-         in="fbSourceGraphic"
-         values="0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 0"
-         id="feColorMatrix15392" />
-      <feColorMatrix
-         id="feColorMatrix15394"
-         values="0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0 0 0 1 0 "
-         in="fbSourceGraphic" />
+    <filter color-interpolation-filters="sRGB" inkscape:label="Greyscale" id="filter15388">
+      
+      
+      
     </filter>
-    <linearGradient
-       id="linearGradient37542-91">
-      <stop
-         id="stop37544-81"
-         offset="0"
-         style="stop-color:#000000;stop-opacity:1;" />
-      <stop
-         id="stop37546-75"
-         offset="1"
-         style="stop-color:#ffffff;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient319-223">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-84" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-34" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient21609-3">
-      <stop
-         id="stop21611-9"
-         offset="0"
-         style="stop-color:black;stop-opacity:1" />
-      <stop
-         id="stop21613-8"
-         offset="1"
-         style="stop-color:white;stop-opacity:1;" />
-    </linearGradient>
-    <filter
-       inkscape:label="Opacity"
-       style="color-interpolation-filters:sRGB"
-       id="filter17385">
-      <feColorMatrix
-         values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 5 -1 "
-         result="colormatrix"
-         id="feColorMatrix17387" />
-      <feComposite
-         k4="0"
-         k3="0"
-         k1="0"
-         in2="colormatrix"
-         operator="arithmetic"
-         k2="0.24"
-         result="composite"
-         id="feComposite17389" />
+    <linearGradient id="linearGradient37542-91">
+      <stop id="stop37544-81" offset="0" style="stop-color:#000000;stop-opacity:1;"/>
+      <stop id="stop37546-75" offset="1" style="stop-color:#ffffff;stop-opacity:1;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient319-223">
+      <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop320-84"/>
+      <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop321-34"/>
+    </linearGradient>
+    <linearGradient id="linearGradient21609-3">
+      <stop id="stop21611-9" offset="0" style="stop-color:black;stop-opacity:1"/>
+      <stop id="stop21613-8" offset="1" style="stop-color:white;stop-opacity:1;"/>
+    </linearGradient>
+    <filter inkscape:label="Opacity" style="color-interpolation-filters:sRGB" id="filter17385">
+      
+      
     </filter>
-    <linearGradient
-       id="linearGradient1610-2">
-      <stop
-         id="stop1611-8-9"
-         offset="0"
-         style="stop-color:black;stop-opacity:1;" />
-      <stop
-         style="stop-color:#000000;stop-opacity:1;"
-         offset="0.5"
-         id="stop6596" />
-      <stop
-         id="stop1612-0-6"
-         offset="1"
-         style="stop-color:#c8c8c8;stop-opacity:1;" />
-    </linearGradient>
-    <clipPath
-       id="clipPath13106-5"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         inkscape:export-ydpi="90"
-         inkscape:export-xdpi="90"
-         inkscape:export-filename="C:\Documents and Settings\Tata\Pulpit\BLENDER ICONSET\Kopia blender\.blender\icons\jendrzych's iconset.png"
-         sodipodi:nodetypes="cccccc"
-         id="path34850-6-6"
-         d="m 125.5,433.5 23,0 0,41 -33,0 0,-31 10,-10 z"
-         style="display:inline;fill:url(#linearGradient13110);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;marker:none" />
-    </clipPath>
-    <linearGradient
-       id="linearGradient18821-1-16">
-      <stop
-         id="stop20589"
-         offset="0"
-         style="stop-color:#e3604f;stop-opacity:1;" />
-      <stop
-         id="stop20591"
-         offset="1"
-         style="stop-color:#e3604f;stop-opacity:0;" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient39155-0-813">
-      <stop
-         style="stop-color:#e6e6e6;stop-opacity:1;"
-         offset="0"
-         id="stop20595" />
-      <stop
-         style="stop-color:#c4c4c4;stop-opacity:1;"
-         offset="1"
-         id="stop20597" />
-    </linearGradient>
-    <clipPath
-       id="clipPath13106-9-2-9-9-4"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:export-ydpi="90"
-         inkscape:export-xdpi="90"
-         inkscape:export-filename="C:\Documents and Settings\Tata\Pulpit\BLENDER ICONSET\Kopia blender\.blender\icons\jendrzych's iconset.png"
-         sodipodi:nodetypes="cccccc"
-         id="path34850-4-7-0-4-0"
-         d="m 125.5,433.5 23,0 0,41 -33,0 0,-31 10,-10 z"
-         style="display:inline;fill:url(#linearGradient13110);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;marker:none"
-         inkscape:connector-curvature="0" />
-    </clipPath>
-    <filter
-       style="color-interpolation-filters:sRGB"
-       inkscape:label="Drop Shadow"
-       id="filter6146"
-       x="-0.30000001"
-       width="1.35"
-       y="-0.15000001"
-       height="1.4">
-      <feFlood
-         flood-opacity="0.40000000000000002"
-         flood-color="rgb(0,0,0)"
-         result="flood"
-         id="feFlood6148" />
-      <feComposite
-         in="flood"
-         in2="SourceGraphic"
-         operator="in"
-         result="composite1"
-         id="feComposite6150" />
-      <feGaussianBlur
-         in="composite1"
-         stdDeviation="1.5"
-         result="blur"
-         id="feGaussianBlur6152" />
-      <feOffset
-         dx="-2"
-         dy="2"
-         result="offset"
-         id="feOffset6154" />
-      <feComposite
-         in="SourceGraphic"
-         in2="offset"
-         operator="over"
-         result="composite2"
-         id="feComposite6156" />
+    <linearGradient id="linearGradient1610-2">
+      <stop id="stop1611-8-9" offset="0" style="stop-color:black;stop-opacity:1;"/>
+      <stop style="stop-color:#000000;stop-opacity:1;" offset="0.5" id="stop6596"/>
+      <stop id="stop1612-0-6" offset="1" style="stop-color:#c8c8c8;stop-opacity:1;"/>
+    </linearGradient>
+    
+    <linearGradient id="linearGradient18821-1-16">
+      <stop id="stop20589" offset="0" style="stop-color:#e3604f;stop-opacity:1;"/>
+      <stop id="stop20591" offset="1" style="stop-color:#e3604f;stop-opacity:0;"/>
+    </linearGradient>
+    <linearGradient id="linearGradient39155-0-813">
+      <stop style="stop-color:#e6e6e6;stop-opacity:1;" offset="0" id="stop20595"/>
+      <stop style="stop-color:#c4c4c4;stop-opacity:1;" offset="1" id="stop20597"/>
+    </linearGradient>
+    
+    <filter style="color-interpolation-filters:sRGB" inkscape:label="Drop Shadow" id="filter6146" x="-0.30000001" width="1.35" y="-0.15000001" height="1.4">
+      
+      
+      <feGaussianBlur in="composite1" stdDeviation="1.5" result="blur" id="feGaussianBlur6152"/>
+      
+      
     </filter>
-    <filter
-       style="color-interpolation-filters:sRGB"
-       inkscape:label="Drop Shadow"
-       id="filter6078"
-       x="-0.30000001"
-       width="1.35"
-       height="1.4"
-       y="-0.15000001">
-      <feFlood
-         flood-opacity="0.40000000000000002"
-         flood-color="rgb(0,0,0)"
-         result="flood"
-         id="feFlood6080" />
-      <feComposite
-         in="flood"
-         in2="SourceGraphic"
-         operator="in"
-         result="composite1"
-         id="feComposite6082" />
-      <feGaussianBlur
-         in="composite1"
-         stdDeviation="1.5"
-         result="blur"
-         id="feGaussianBlur6084" />
-      <feOffset
-         dx="-2"
-         dy="2"
-         result="offset"
-         id="feOffset6086" />
-      <feComposite
-         in="SourceGraphic"
-         in2="offset"
-         operator="over"
-         result="composite2"
-         id="feComposite6088" />
+    <filter style="color-interpolation-filters:sRGB" inkscape:label="Drop Shadow" id="filter6078" x="-0.30000001" width="1.35" height="1.4" y="-0.15000001">
+      
+      
+      <feGaussianBlur in="composite1" stdDeviation="1.5" result="blur" id="feGaussianBlur6084"/>
+      
+      
     </filter>
-    <clipPath
-       id="clipPath13106-7"
-       clipPathUnits="userSpaceOnUse">
-      <path
-         inkscape:connector-curvature="0"
-         inkscape:export-ydpi="90"
-         inkscape:export-xdpi="90"
-         inkscape:export-filename="C:\Documents and Settings\Tata\Pulpit\BLENDER ICONSET\Kopia blender\.blender\icons\jendrzych's iconset.png"
-         sodipodi:nodetypes="cccccc"
-         id="path34850-1"
-         d="m 125.5,433.5 23,0 0,41 -33,0 0,-31 10,-10 z"
-         style="display:inline;fill:url(#linearGradient13110);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;marker:none" />
-    </clipPath>
-    <clipPath
-       id="clipPath23877-4"
-       clipPathUnits="userSpaceOnUse">
-      <rect
-         style="display:inline;overflow:visible;visibility:visible;fill:#ff0000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.80000001;marker:none;enable-background:accumulate"
-         id="rect23879-6"
-         width="15"
-         height="6"
-         x="952"
-         y="-540"
-         transform="scale(1,-1)" />
-    </clipPath>
-    <clipPath
-       id="clipPath20586-3"
-       clipPathUnits="userSpaceOnUse">
-      <ellipse
-         ry="2.25"
-         rx="4.5"
-         cy="554"
-         cx="53"
-         transform="matrix(1.870472,0.1894819,-0.6587894,2.4281336,319.59052,-798.11661)"
-         id="path34889-5"
-         style="display:inline;overflow:visible;visibility:visible;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1px;marker:none;enable-background:accumulate" />
-    </clipPath>
-    <radialGradient
-       gradientUnits="userSpaceOnUse"
-       fy="114.5684"
-       fx="20.892099"
-       r="5.256"
-       cy="114.5684"
-       cx="20.892099"
-       id="aigrd2-3">
-      <stop
-         id="stop15566-9"
-         style="stop-color:#F0F0F0"
-         offset="0" />
-      <stop
-         id="stop15568-7"
-         style="stop-color:#9a9a9a;stop-opacity:1.0000000;"
-         offset="1.0000000" />
+    
+    
+    
+    <radialGradient gradientUnits="userSpaceOnUse" fy="114.5684" fx="20.892099" r="5.256" cy="114.5684" cx="20.892099" id="aigrd2-3">
+      <stop id="stop15566-9" style="stop-color:#F0F0F0" offset="0"/>
+      <stop id="stop15568-7" style="stop-color:#9a9a9a;stop-opacity:1.0000000;" offset="1.0000000"/>
     </radialGradient>
-    <linearGradient
-       id="linearGradient319-367">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop320-53" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop321-562" />
-    </linearGradient>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask43822-1">
-      <rect
-         y="208"
-         x="754"
-         height="9"
-         width="12"
-         id="rect43824-2"
-         style="display:inline;overflow:visible;visibility:visible;opacity:0.93999993;fill:url(#linearGradient43826);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;enable-background:new" />
-    </mask>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient18134"
-       id="linearGradient12353"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(21,-39)"
-       x1="19"
-       y1="550"
-       x2="-1.8890873"
-       y2="529.28772" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask12349-3">
-      <rect
-         y="498"
-         x="27"
-         height="14"
-         width="14.25"
-         id="rect12351-8"
-         style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:url(#linearGradient12353);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
-    </mask>
-    <linearGradient
-       id="linearGradient319-95-2-7-1-2">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0.75675678;"
-         offset="0"
-         id="stop320-43-7-3-3-3" />
-      <stop
-         style="stop-color:#915515;stop-opacity:0;"
-         offset="1"
-         id="stop321-12-7-4-1-9" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient10069-8-3-3-0-3">
-      <stop
-         style="stop-color:#764511;stop-opacity:1;"
-         offset="0"
-         id="stop10071-9-8-7-1-8" />
-      <stop
-         style="stop-color:#915515;stop-opacity:0;"
-         offset="1"
-         id="stop10073-2-7-1-0-5" />
-    </linearGradient>
-    <linearGradient
-       id="linearGradient13998-7-0">
-      <stop
-         id="stop14000-1-1"
-         offset="0"
-         style="stop-color:#f57d07;stop-opacity:1;" />
-      <stop
-         id="stop14002-0-0"
-         offset="1"
-         style="stop-color:white;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient11146"
-       id="linearGradient11162"
-       gradientUnits="userSpaceOnUse"
-       x1="16.5"
-       y1="686.50714"
-       x2="6"
-       y2="697" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient11146"
-       id="linearGradient11184"
-       gradientUnits="userSpaceOnUse"
-       x1="16.5"
-       y1="686.50714"
-       x2="6"
-       y2="697"
-       gradientTransform="translate(231,-399.00712)" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask11180">
-      <rect
-         style="opacity:1;vector-effect:none;fill:url(#linearGradient11184);fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke"
-         id="rect11182"
-         width="16"
-         height="16"
-         x="236"
-         y="282.99289" />
-    </mask>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient11146"
-       id="linearGradient11190"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(21)"
-       x1="16.5"
-       y1="686.50714"
-       x2="6"
-       y2="697" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask11186">
-      <rect
-         y="682"
-         x="26"
-         height="16"
-         width="16"
-         id="rect11188"
-         style="opacity:1;vector-effect:none;fill:url(#linearGradient11190);fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke" />
-    </mask>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient11146"
-       id="linearGradient11196"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="translate(42)"
-       x1="16.5"
-       y1="686.50714"
-       x2="6"
-       y2="697" />
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask11192">
-      <rect
-         style="opacity:1;vector-effect:none;fill:url(#linearGradient11196);fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke"
-         id="rect11194"
-         width="16"
-         height="16"
-         x="47"
-         y="682" />
-    </mask>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask11186-8">
-      <rect
-         y="682"
-         x="26"
-         height="16"
-         width="16"
-         id="rect11188-6"
-         style="opacity:1;vector-effect:none;fill:url(#linearGradient11190);fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke" />
-    </mask>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask11192-0">
-      <rect
-         style="opacity:1;vector-effect:none;fill:url(#linearGradient11196);fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke"
-         id="rect11194-8"
-         width="16"
-         height="16"
-         x="47"
-         y="682" />
-    </mask>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask11180-3">
-      <rect
-         style="opacity:1;vector-effect:none;fill:url(#linearGradient11184);fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:fill markers stroke"
-         id="rect11182-3"
-         width="16"
-         height="16"
-         x="236"
-         y="282.99289" />
-    </mask>
-    <mask
-       maskUnits="userSpaceOnUse"
-       id="mask12349-3-2">
-      <rect
-         y="498"
-         x="27"
-         height="14"
-         width="14.25"
-         id="rect12351-8-5"
-         style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:url(#linearGradient12353);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
-    </mask>
-    <pattern
-       y="0"
-       x="0"
-       height="6"
-       width="6"
-       patternUnits="userSpaceOnUse"
-       id="EMFhbasepattern" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient16595"
-       id="radialGradient21517-3"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(0.891843,0,0,0.909224,-173.10957,172.3592)"
-       cx="350.5"
-       cy="14.5"
-       fx="350.5"
-       fy="14.5"
-       r="6.9000001" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient11146"
-       id="linearGradient31019"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="rotate(-45,271.82331,-251.06972)"
-       x1="85.548706"
-       y1="100.22395"
-       x2="85.347076"
-       y2="113.09817" />
-    <linearGradient
-       id="linearGradient30958">
-      <stop
-         id="stop30960"
-         offset="0"
-         style="stop-color:#fff9cf;stop-opacity:1;" />
-      <stop
-         id="stop30962"
-         offset="1"
-         style="stop-color:#c7bc52;stop-opacity:1;" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient18495"
-       id="linearGradient14207"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(0,-0.9569715,-1,0,322,353.18743)"
-       x1="347.6467"
-       y1="216.75188"
-       x2="345.98633"
-       y2="243.92201" />
-    <linearGradient
-       gradientTransform="matrix(-1,0,0,1,194,-21)"
-       inkscape:collect="always"
-       xlink:href="#linearGradient35411"
-       id="linearGradient35446-0"
-       gradientUnits="userSpaceOnUse"
-       x1="31"
-       y1="60.000004"
-       x2="34"
-       y2="54.000004" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient11146"
-       id="linearGradient14238"
-&nb