diff options
author | Weblate <noreply@weblate.org> | 2017-11-14 00:04:49 +0000 |
---|---|---|
committer | Weblate <noreply@weblate.org> | 2017-11-14 00:04:49 +0000 |
commit | dc40a01ae695b47f87daff7ee08f3519d79b12ae (patch) | |
tree | 6e1d58f23d4537f8f501ba7e531f9ed90f269dda | |
parent | Translated using Weblate (German) (diff) | |
parent | Add a special rule for Ubuntu Linux: (diff) | |
download | lumina-dc40a01ae695b47f87daff7ee08f3519d79b12ae.tar.gz lumina-dc40a01ae695b47f87daff7ee08f3519d79b12ae.tar.bz2 lumina-dc40a01ae695b47f87daff7ee08f3519d79b12ae.zip |
Merge remote-tracking branch 'origin/master'
237 files changed, 5698 insertions, 7956 deletions
diff --git a/Artwork/InsightFileManager_256x256px.png b/Artwork/InsightFileManager_256x256px.png Binary files differdeleted file mode 100644 index 895267e2..00000000 --- a/Artwork/InsightFileManager_256x256px.png +++ /dev/null diff --git a/Artwork/InsightFileManager_64x64px.png b/Artwork/InsightFileManager_64x64px.png Binary files differdeleted file mode 100644 index 46cfaad7..00000000 --- a/Artwork/InsightFileManager_64x64px.png +++ /dev/null diff --git a/Artwork/LuminaDesktop_WP_1920x1080_gold.jpg b/Artwork/LuminaDesktop_WP_1920x1080_gold.jpg Binary files differdeleted file mode 100644 index e7b01b93..00000000 --- a/Artwork/LuminaDesktop_WP_1920x1080_gold.jpg +++ /dev/null diff --git a/Artwork/LuminaDesktop_WP_1920x1080_green.jpg b/Artwork/LuminaDesktop_WP_1920x1080_green.jpg Binary files differdeleted file mode 100644 index 56bdd128..00000000 --- a/Artwork/LuminaDesktop_WP_1920x1080_green.jpg +++ /dev/null diff --git a/Artwork/LuminaDesktop_WP_1920x1080_purple.jpg b/Artwork/LuminaDesktop_WP_1920x1080_purple.jpg Binary files differdeleted file mode 100644 index b62946b7..00000000 --- a/Artwork/LuminaDesktop_WP_1920x1080_purple.jpg +++ /dev/null diff --git a/Artwork/LuminaDesktop_WP_1920x1080_red.jpg b/Artwork/LuminaDesktop_WP_1920x1080_red.jpg Binary files differdeleted file mode 100644 index 456de652..00000000 --- a/Artwork/LuminaDesktop_WP_1920x1080_red.jpg +++ /dev/null diff --git a/Artwork/Lumina_WP_Gold_4Kresolution.jpg b/Artwork/Lumina_WP_Gold_4Kresolution.jpg Binary files differdeleted file mode 100644 index cba03cee..00000000 --- a/Artwork/Lumina_WP_Gold_4Kresolution.jpg +++ /dev/null diff --git a/Artwork/Lumina_WP_Green_4Kresolution.jpg b/Artwork/Lumina_WP_Green_4Kresolution.jpg Binary files differdeleted file mode 100644 index 80b0d3e3..00000000 --- a/Artwork/Lumina_WP_Green_4Kresolution.jpg +++ /dev/null diff --git a/Artwork/Lumina_WP_Purple_4Kresolution.jpg b/Artwork/Lumina_WP_Purple_4Kresolution.jpg Binary files differdeleted file mode 100644 index e4c3d7a8..00000000 --- a/Artwork/Lumina_WP_Purple_4Kresolution.jpg +++ /dev/null diff --git a/Artwork/Lumina_WP_Red_4Kresolution.jpg b/Artwork/Lumina_WP_Red_4Kresolution.jpg Binary files differdeleted file mode 100644 index a092f636..00000000 --- a/Artwork/Lumina_WP_Red_4Kresolution.jpg +++ /dev/null diff --git a/Artwork/Lumina_Wisp_256x256px.png b/Artwork/Lumina_Wisp_256x256px.png Binary files differdeleted file mode 100644 index 26b80646..00000000 --- a/Artwork/Lumina_Wisp_256x256px.png +++ /dev/null diff --git a/Artwork/Lumina_Wisp_64x64px.png b/Artwork/Lumina_Wisp_64x64px.png Binary files differdeleted file mode 100644 index ce88a252..00000000 --- a/Artwork/Lumina_Wisp_64x64px.png +++ /dev/null diff --git a/Artwork/Web_Print/PRINT/CMYK_InsightFileManager_Logo.eps b/Artwork/Web_Print/PRINT/CMYK_InsightFileManager_Logo.eps Binary files differdeleted file mode 100644 index bf369267..00000000 --- a/Artwork/Web_Print/PRINT/CMYK_InsightFileManager_Logo.eps +++ /dev/null diff --git a/Artwork/Web_Print/PRINT/CMYK_InsightFileManager_Logo.tif b/Artwork/Web_Print/PRINT/CMYK_InsightFileManager_Logo.tif Binary files differdeleted file mode 100644 index bf63cae3..00000000 --- a/Artwork/Web_Print/PRINT/CMYK_InsightFileManager_Logo.tif +++ /dev/null diff --git a/Artwork/Web_Print/PRINT/CMYK_LuminaDesktopEnvironment_Logo.eps b/Artwork/Web_Print/PRINT/CMYK_LuminaDesktopEnvironment_Logo.eps Binary files differdeleted file mode 100644 index 7b66d839..00000000 --- a/Artwork/Web_Print/PRINT/CMYK_LuminaDesktopEnvironment_Logo.eps +++ /dev/null diff --git a/Artwork/Web_Print/PRINT/CMYK_LuminaDesktopEnvironment_Logo.jpg b/Artwork/Web_Print/PRINT/CMYK_LuminaDesktopEnvironment_Logo.jpg Binary files differdeleted file mode 100644 index 796b4cf3..00000000 --- a/Artwork/Web_Print/PRINT/CMYK_LuminaDesktopEnvironment_Logo.jpg +++ /dev/null diff --git a/Artwork/Web_Print/PRINT/CMYK_Lumina_Logotype.eps b/Artwork/Web_Print/PRINT/CMYK_Lumina_Logotype.eps Binary files differdeleted file mode 100644 index b01c7ddb..00000000 --- a/Artwork/Web_Print/PRINT/CMYK_Lumina_Logotype.eps +++ /dev/null diff --git a/Artwork/Web_Print/PRINT/CMYK_Lumina_Logotype.tif b/Artwork/Web_Print/PRINT/CMYK_Lumina_Logotype.tif Binary files differdeleted file mode 100644 index 3021a7bf..00000000 --- a/Artwork/Web_Print/PRINT/CMYK_Lumina_Logotype.tif +++ /dev/null diff --git a/Artwork/Web_Print/PRINT/CMYK_Wispy.tif b/Artwork/Web_Print/PRINT/CMYK_Wispy.tif Binary files differdeleted file mode 100644 index 4c015b65..00000000 --- a/Artwork/Web_Print/PRINT/CMYK_Wispy.tif +++ /dev/null diff --git a/Artwork/Web_Print/SVG/Lumina_Horizontal_Banner_Gold_941px173px.svg b/Artwork/Web_Print/SVG/Lumina_Horizontal_Banner_Gold_941px173px.svg deleted file mode 100644 index f64d9136..00000000 --- a/Artwork/Web_Print/SVG/Lumina_Horizontal_Banner_Gold_941px173px.svg +++ /dev/null @@ -1,1854 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
- width="941px" height="173px" viewBox="0 0 941 173" enable-background="new 0 0 941 173" xml:space="preserve">
-<pattern width="124.415" height="124.416" patternUnits="userSpaceOnUse" id="Cheetah" viewBox="8.5 -146.097 124.415 124.416" overflow="visible">
- <g>
- <polygon fill="none" points="132.915,-21.681 8.5,-21.681 8.5,-146.097 132.915,-146.097 "/>
- <polygon fill="#F1BA7B" points="132.915,-21.681 8.5,-21.681 8.5,-146.097 132.915,-146.097 "/>
- <g>
- <g>
- <path fill="#864428" d="M4.914-44.978C3.271-44.644-0.15-41.429,0-39.312c0.15,2.115,0.439,3.689,3.625,6.123
- c3.186,2.432,7.504,5.846,11.095,3.996c3.59-1.85,2.748-6.221,1.301-9.131S12.95-46.612,4.914-44.978z"/>
- <path fill="#82472C" d="M4.998-44.752C3.393-44.43,0.053-41.33,0.2-39.288c0.147,2.04,0.429,3.559,3.54,5.905
- c3.11,2.346,7.327,5.639,10.833,3.854c3.505-1.784,2.684-5.999,1.27-8.807C14.429-41.141,12.844-46.329,4.998-44.752z"/>
- <path fill="#7D4930" d="M5.081-44.527c-1.565,0.311-4.825,3.297-4.682,5.264c0.143,1.965,0.418,3.427,3.454,5.688
- c3.035,2.259,7.15,5.43,10.571,3.712c3.42-1.718,2.618-5.778,1.239-8.481C14.285-41.049,12.738-46.045,5.081-44.527z"/>
- <path fill="#794B34" d="M5.165-44.302c-1.527,0.299-4.706,3.171-4.566,5.062c0.14,1.89,0.409,3.296,3.368,5.47
- c2.96,2.173,6.973,5.223,10.309,3.57s2.554-5.557,1.209-8.156C14.14-40.957,12.632-45.762,5.165-44.302z"/>
- <path fill="#754C37" d="M5.249-44.076c-1.488,0.287-4.586,3.045-4.45,4.86c0.136,1.814,0.398,3.165,3.283,5.252
- s6.795,5.015,10.047,3.428c3.251-1.587,2.488-5.336,1.178-7.832S12.526-45.479,5.249-44.076z"/>
- <path fill="#704C3A" d="M5.333-43.851c-1.45,0.275-4.467,2.918-4.334,4.659c0.133,1.739,0.388,3.033,3.197,5.034
- c2.809,2,6.618,4.806,9.785,3.285c3.166-1.521,2.423-5.114,1.147-7.507C13.851-40.772,12.42-45.194,5.333-43.851z"/>
- <path fill="#6B4C3C" d="M5.416-43.625c-1.411,0.263-4.347,2.792-4.218,4.457c0.129,1.664,0.377,2.902,3.112,4.816
- c2.734,1.914,6.44,4.599,9.522,3.144c3.082-1.455,2.359-4.894,1.116-7.183C13.707-40.681,12.313-44.911,5.416-43.625z"/>
- <path fill="#664C3E" d="M5.5-43.399c-1.372,0.251-4.228,2.665-4.102,4.256c0.125,1.588,0.367,2.771,3.026,4.598
- c2.659,1.828,6.264,4.392,9.261,3.002c2.997-1.39,2.293-4.672,1.085-6.857C13.563-40.588,12.208-44.628,5.5-43.399z"/>
- <path fill="#614B3F" d="M5.583-43.175c-1.333,0.239-4.108,2.54-3.986,4.055c0.122,1.514,0.356,2.64,2.94,4.381
- s6.086,4.183,8.999,2.859c2.912-1.323,2.229-4.451,1.055-6.533C13.418-40.496,12.102-44.345,5.583-43.175z"/>
- <path fill="#5B4940" d="M5.667-42.949c-1.294,0.228-3.988,2.414-3.87,3.854c0.119,1.438,0.346,2.508,2.855,4.162
- c2.509,1.655,5.909,3.976,8.737,2.718c2.827-1.258,2.164-4.229,1.024-6.208C13.273-40.403,11.996-44.062,5.667-42.949z"/>
- <path fill="#54463F" d="M5.75-42.724c-1.255,0.216-3.869,2.287-3.754,3.651c0.115,1.363,0.336,2.377,2.77,3.945
- s5.732,3.768,8.475,2.575c2.742-1.192,2.099-4.009,0.994-5.884C13.129-40.312,11.89-43.777,5.75-42.724z"/>
- <path fill="#4D423D" d="M5.834-42.498c-1.217,0.203-3.749,2.161-3.638,3.45c0.112,1.287,0.326,2.246,2.684,3.727
- c2.358,1.482,5.555,3.56,8.213,2.434s2.034-3.787,0.963-5.559C12.985-40.22,11.784-43.494,5.834-42.498z"/>
- <path fill="#443D39" d="M5.918-42.272c-1.178,0.191-3.629,2.034-3.522,3.248c0.108,1.213,0.315,2.115,2.599,3.51
- c2.283,1.396,5.378,3.352,7.951,2.291s1.969-3.566,0.932-5.234C12.84-40.127,11.678-43.211,5.918-42.272z"/>
- <path fill="#3A3534" d="M6.001-42.048C4.862-41.867,2.492-40.139,2.596-39c0.105,1.137,0.305,1.983,2.513,3.291
- c2.208,1.31,5.201,3.145,7.689,2.149c2.488-0.995,1.904-3.345,0.901-4.909C12.696-40.035,11.571-42.927,6.001-42.048z"/>
- <path fill="#252423" d="M6.085-41.822c-1.101,0.168-3.39,1.782-3.29,2.846c0.101,1.063,0.294,1.853,2.427,3.074
- c2.133,1.223,5.024,2.936,7.427,2.007c2.403-0.929,1.839-3.124,0.871-4.585C12.552-39.942,11.465-42.644,6.085-41.822z"/>
- <path d="M6.169-41.597c-1.062,0.156-3.271,1.656-3.174,2.645c0.098,0.986,0.284,1.721,2.342,2.855
- c2.058,1.137,4.847,2.729,7.165,1.865s1.774-2.902,0.84-4.26C12.407-39.851,11.359-42.36,6.169-41.597z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M129.373-44.978c-1.646,0.334-5.064,3.549-4.914,5.666c0.15,2.115,0.438,3.689,3.625,6.123
- c3.185,2.432,7.504,5.846,11.093,3.996c3.591-1.85,2.749-6.221,1.301-9.131C139.031-41.233,137.408-46.612,129.373-44.978z"/>
- <path fill="#82472C" d="M129.457-44.752c-1.607,0.322-4.945,3.422-4.798,5.464c0.146,2.04,0.428,3.559,3.539,5.905
- c3.109,2.346,7.326,5.639,10.83,3.854c3.507-1.784,2.685-5.999,1.271-8.807C138.887-41.141,137.303-46.329,129.457-44.752z"/>
- <path fill="#7D4930" d="M129.54-44.527c-1.567,0.311-4.825,3.297-4.682,5.264c0.143,1.965,0.418,3.427,3.454,5.688
- c3.034,2.259,7.149,5.43,10.569,3.712c3.421-1.718,2.618-5.778,1.238-8.481C138.742-41.049,137.196-46.045,129.54-44.527z"/>
- <path fill="#794B34" d="M129.624-44.302c-1.529,0.299-4.706,3.171-4.565,5.062c0.14,1.89,0.407,3.296,3.367,5.47
- c2.959,2.173,6.974,5.223,10.308,3.57c3.337-1.652,2.555-5.557,1.209-8.156C138.598-40.957,137.09-45.762,129.624-44.302z"/>
- <path fill="#754C37" d="M129.707-44.076c-1.489,0.287-4.586,3.045-4.449,4.86c0.136,1.814,0.397,3.165,3.282,5.252
- c2.884,2.087,6.796,5.015,10.046,3.428c3.251-1.587,2.489-5.336,1.178-7.832C138.454-40.864,136.984-45.479,129.707-44.076z"/>
- <path fill="#704C3A" d="M129.791-43.851c-1.451,0.275-4.467,2.918-4.333,4.659c0.132,1.739,0.387,3.033,3.196,5.034
- c2.809,2,6.618,4.806,9.783,3.285c3.167-1.521,2.425-5.114,1.147-7.507C138.31-40.772,136.879-45.194,129.791-43.851z"/>
- <path fill="#6B4C3C" d="M129.875-43.625c-1.412,0.263-4.347,2.792-4.218,4.457c0.129,1.664,0.377,2.902,3.111,4.816
- c2.733,1.914,6.441,4.599,9.521,3.144c3.082-1.455,2.359-4.894,1.117-7.183C138.165-40.681,136.772-44.911,129.875-43.625z"/>
- <path fill="#664C3E" d="M129.958-43.399c-1.373,0.251-4.227,2.665-4.101,4.256c0.124,1.588,0.366,2.771,3.024,4.598
- c2.659,1.828,6.265,4.392,9.261,3.002c2.997-1.39,2.294-4.672,1.086-6.857C138.021-40.588,136.666-44.628,129.958-43.399z"/>
- <path fill="#614B3F" d="M130.042-43.175c-1.334,0.239-4.108,2.54-3.985,4.055c0.121,1.514,0.356,2.64,2.939,4.381
- s6.088,4.183,8.998,2.859c2.913-1.323,2.229-4.451,1.056-6.533C137.876-40.496,136.561-44.345,130.042-43.175z"/>
- <path fill="#5B4940" d="M130.125-42.949c-1.295,0.228-3.987,2.414-3.868,3.854c0.117,1.438,0.346,2.508,2.854,4.162
- c2.508,1.655,5.91,3.976,8.736,2.718c2.828-1.258,2.164-4.229,1.024-6.208C137.731-40.403,136.454-44.062,130.125-42.949z"/>
- <path fill="#54463F" d="M130.209-42.724c-1.256,0.216-3.868,2.287-3.753,3.651c0.114,1.363,0.335,2.377,2.768,3.945
- c2.434,1.568,5.734,3.768,8.476,2.575c2.743-1.192,2.099-4.009,0.994-5.884C137.587-40.312,136.349-43.777,130.209-42.724z"/>
- <path fill="#4D423D" d="M130.293-42.498c-1.218,0.203-3.749,2.161-3.637,3.45c0.11,1.287,0.324,2.246,2.682,3.727
- c2.358,1.482,5.557,3.56,8.213,2.434c2.659-1.126,2.035-3.787,0.964-5.559C137.442-40.22,136.242-43.494,130.293-42.498z"/>
- <path fill="#443D39" d="M130.376-42.272c-1.178,0.191-3.629,2.034-3.521,3.248c0.107,1.213,0.314,2.115,2.597,3.51
- c2.283,1.396,5.38,3.352,7.951,2.291c2.573-1.061,1.97-3.566,0.933-5.234C137.298-40.127,136.137-43.211,130.376-42.272z"/>
- <path fill="#3A3534" d="M130.46-42.048c-1.14,0.181-3.51,1.909-3.404,3.048c0.103,1.137,0.304,1.983,2.511,3.291
- c2.207,1.31,5.202,3.145,7.689,2.149c2.488-0.995,1.904-3.345,0.902-4.909C137.153-40.035,136.03-42.927,130.46-42.048z"/>
- <path fill="#252423" d="M130.543-41.822c-1.1,0.168-3.39,1.782-3.288,2.846c0.1,1.063,0.294,1.853,2.425,3.074
- c2.133,1.223,5.026,2.936,7.428,2.007c2.404-0.929,1.84-3.124,0.872-4.585C137.009-39.942,135.925-42.644,130.543-41.822z"/>
- <path d="M130.627-41.597c-1.062,0.156-3.271,1.656-3.172,2.645c0.096,0.986,0.283,1.721,2.339,2.855
- c2.058,1.137,4.849,2.729,7.166,1.865c2.319-0.863,1.774-2.902,0.841-4.26C136.864-39.851,135.818-42.36,130.627-41.597z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M130.125-134.889c-2.75,2-8.001,9.25-1.5,14.5c6.5,5.25,8.5,8,13.25,5s8.75-10.75,4.5-14.75
- S135.625-138.889,130.125-134.889z"/>
- <path fill="#82472C" d="M130.32-134.646c-2.668,1.943-7.763,8.985-1.455,14.085c6.307,5.1,8.247,7.771,12.856,4.857
- c4.608-2.914,8.489-10.443,4.365-14.329C141.964-133.918,135.657-138.532,130.32-134.646z"/>
- <path fill="#7D4930" d="M130.517-134.404c-2.587,1.886-7.525,8.722-1.411,13.672c6.113,4.95,7.995,7.542,12.462,4.714
- c4.468-2.829,8.229-10.136,4.233-13.907C141.803-133.696,135.689-138.175,130.517-134.404z"/>
- <path fill="#794B34" d="M130.712-134.161c-2.505,1.829-7.287,8.457-1.365,13.257c5.919,4.8,7.741,7.314,12.067,4.571
- s7.97-9.829,4.099-13.486C141.642-133.475,135.722-137.818,130.712-134.161z"/>
- <path fill="#754C37" d="M130.908-133.917c-2.424,1.771-7.05,8.193-1.321,12.843c5.727,4.65,7.489,7.086,11.673,4.428
- c4.186-2.657,7.71-9.521,3.966-13.064C141.48-133.253,135.754-137.46,130.908-133.917z"/>
- <path fill="#704C3A" d="M131.104-133.675c-2.342,1.714-6.812,7.929-1.276,12.429c5.533,4.5,7.236,6.857,11.279,4.285
- c4.045-2.571,7.449-9.214,3.832-12.642C141.32-133.032,135.785-137.104,131.104-133.675z"/>
- <path fill="#6B4C3C" d="M131.3-133.432c-2.26,1.657-6.574,7.664-1.232,12.015c5.34,4.35,6.983,6.628,10.886,4.143
- s7.189-8.907,3.698-12.221C141.158-132.811,135.817-136.746,131.3-133.432z"/>
- <path fill="#664C3E" d="M131.495-133.189c-2.179,1.6-6.336,7.4-1.188,11.6c5.146,4.2,6.73,6.4,10.491,4
- c3.762-2.4,6.93-8.6,3.564-11.8C140.997-132.589,135.85-136.389,131.495-133.189z"/>
- <path fill="#614B3F" d="M131.69-132.946c-2.096,1.543-6.098,7.136-1.143,11.186c4.953,4.05,6.479,6.172,10.098,3.857
- c3.62-2.314,6.669-8.293,3.431-11.378C140.837-132.368,135.882-136.032,131.69-132.946z"/>
- <path fill="#5B4940" d="M131.887-132.703c-2.015,1.485-5.86,6.871-1.099,10.771c4.761,3.9,6.226,5.943,9.704,3.714
- c3.479-2.229,6.409-7.985,3.297-10.957C140.676-132.146,135.914-135.675,131.887-132.703z"/>
- <path fill="#54463F" d="M132.082-132.46c-1.933,1.428-5.622,6.607-1.054,10.357c4.567,3.75,5.973,5.714,9.31,3.571
- c3.339-2.143,6.149-7.678,3.163-10.535C140.515-131.925,135.946-135.317,132.082-132.46z"/>
- <path fill="#4D423D" d="M132.277-132.217c-1.851,1.371-5.384,6.342-1.008,9.942c4.373,3.6,5.72,5.486,8.915,3.429
- c3.197-2.058,5.889-7.372,3.029-10.114C140.354-131.704,135.978-134.96,132.277-132.217z"/>
- <path fill="#443D39" d="M132.474-131.975c-1.77,1.314-5.146,6.079-0.964,9.528c4.18,3.45,5.467,5.257,8.521,3.286
- c3.057-1.972,5.629-7.064,2.896-9.693C140.192-131.482,136.01-134.604,132.474-131.975z"/>
- <path fill="#3A3534" d="M132.669-131.732c-1.688,1.257-4.908,5.814-0.919,9.114c3.987,3.3,5.214,5.028,8.127,3.143
- c2.915-1.886,5.368-6.757,2.763-9.271C140.031-131.261,136.042-134.246,132.669-131.732z"/>
- <path fill="#252423" d="M132.865-131.489c-1.606,1.2-4.671,5.55-0.875,8.7c3.794,3.15,4.962,4.8,7.732,3
- c2.774-1.8,5.109-6.45,2.629-8.85C139.87-131.039,136.074-133.889,132.865-131.489z"/>
- <path d="M133.061-131.246c-1.524,1.143-4.433,5.286-0.83,8.286c3.601,3,4.709,4.571,7.339,2.857
- c2.633-1.714,4.849-6.143,2.495-8.428C139.709-130.818,136.106-133.532,133.061-131.246z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M133.625-108.889c-4.402,1.321-8.75,5.5-5.25,12.25s9.75,11.75,15,10.25s6.422-7.045,2.75-11
- C142.875-100.889,141.125-111.139,133.625-108.889z"/>
- <path fill="#82472C" d="M133.751-108.595c-4.287,1.286-8.521,5.356-5.112,11.93c3.408,6.574,9.495,11.443,14.607,9.982
- c5.113-1.46,6.254-6.861,2.679-10.712C142.76-100.804,141.055-110.787,133.751-108.595z"/>
- <path fill="#7D4930" d="M133.878-108.301c-4.173,1.252-8.293,5.213-4.977,11.61c3.317,6.397,9.241,11.136,14.217,9.715
- c4.976-1.422,6.086-6.678,2.605-10.426C142.645-100.719,140.986-110.434,133.878-108.301z"/>
- <path fill="#794B34" d="M134.004-108.008c-4.058,1.217-8.064,5.069-4.839,11.291c3.227,6.221,8.986,10.829,13.824,9.446
- c4.839-1.382,5.919-6.493,2.534-10.138C142.528-100.634,140.916-110.081,134.004-108.008z"/>
- <path fill="#754C37" d="M134.13-107.713c-3.942,1.183-7.836,4.925-4.701,10.97s8.731,10.522,13.432,9.179
- c4.702-1.343,5.751-6.309,2.463-9.85C142.413-100.55,140.847-109.729,134.13-107.713z"/>
- <path fill="#704C3A" d="M134.256-107.419c-3.826,1.148-7.606,4.781-4.563,10.649s8.477,10.215,13.04,8.911
- c4.564-1.304,5.583-6.125,2.391-9.563C142.298-100.464,140.776-109.375,134.256-107.419z"/>
- <path fill="#6B4C3C" d="M134.383-107.125c-3.713,1.114-7.379,4.638-4.428,10.33c2.952,5.692,8.223,9.908,12.648,8.644
- c4.428-1.265,5.416-5.941,2.319-9.276C142.183-100.38,140.707-109.023,134.383-107.125z"/>
- <path fill="#664C3E" d="M134.509-106.832c-3.598,1.079-7.149,4.494-4.29,10.009c2.86,5.516,7.968,9.602,12.257,8.376
- c4.29-1.226,5.247-5.757,2.246-8.988C142.066-100.295,140.638-108.67,134.509-106.832z"/>
- <path fill="#614B3F" d="M134.635-106.538c-3.482,1.044-6.921,4.35-4.152,9.689s7.713,9.294,11.864,8.108
- c4.152-1.187,5.08-5.573,2.175-8.701C141.951-100.21,140.567-108.317,134.635-106.538z"/>
- <path fill="#5B4940" d="M134.761-106.244c-3.366,1.01-6.692,4.207-4.015,9.37c2.677,5.163,7.458,8.987,11.473,7.84
- c4.015-1.147,4.911-5.389,2.103-8.414C141.836-100.125,140.498-107.965,134.761-106.244z"/>
- <path fill="#54463F" d="M134.888-105.95c-3.252,0.976-6.465,4.063-3.879,9.049c2.586,4.987,7.203,8.681,11.081,7.573
- c3.878-1.108,4.744-5.205,2.03-8.126C141.721-100.04,140.429-107.612,134.888-105.95z"/>
- <path fill="#4D423D" d="M135.014-105.656c-3.137,0.941-6.235,3.919-3.741,8.729c2.494,4.811,6.948,8.374,10.688,7.305
- c3.741-1.069,4.577-5.021,1.959-7.839C141.605-99.955,140.358-107.259,135.014-105.656z"/>
- <path fill="#443D39" d="M135.14-105.362c-3.021,0.907-6.007,3.776-3.604,8.41s6.693,8.066,10.297,7.037s4.408-4.837,1.887-7.552
- C141.49-99.871,140.289-106.907,135.14-105.362z"/>
- <path fill="#3A3534" d="M135.266-105.068c-2.906,0.872-5.778,3.632-3.467,8.089c2.313,4.458,6.439,7.759,9.905,6.769
- c3.467-0.991,4.241-4.653,1.815-7.264C141.374-99.786,140.22-106.554,135.266-105.068z"/>
- <path fill="#252423" d="M135.393-104.774c-2.792,0.838-5.55,3.488-3.33,7.77c2.221,4.281,6.185,7.452,9.514,6.501
- s4.072-4.469,1.742-6.977C141.259-99.701,140.149-106.201,135.393-104.774z"/>
- <path d="M135.519-104.48c-2.677,0.803-5.321,3.345-3.192,7.449c2.129,4.105,5.93,7.146,9.121,6.233
- c3.192-0.912,3.905-4.285,1.671-6.689C141.144-99.616,140.08-105.849,135.519-104.48z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M131.125-59.389c-3.604,6.007-1.5,9.75,4.75,11c6.25,1.25,11.5-1,14.5-5.25c3-4.25-2-14.25-8.25-14
- S135.625-66.889,131.125-59.389z"/>
- <path fill="#82472C" d="M131.415-59.326c-3.503,5.838-1.459,9.477,4.616,10.691s11.178-0.972,14.094-5.103
- c2.916-4.131-1.944-13.851-8.019-13.607C136.031-67.102,135.788-66.616,131.415-59.326z"/>
- <path fill="#7D4930" d="M131.704-59.263c-3.401,5.67-1.416,9.203,4.483,10.383s10.855-0.944,13.688-4.956
- c2.832-4.012-1.888-13.451-7.788-13.215C136.188-66.815,135.952-66.342,131.704-59.263z"/>
- <path fill="#794B34" d="M131.994-59.2c-3.301,5.502-1.374,8.931,4.351,10.075c5.724,1.145,10.532-0.917,13.28-4.809
- c2.748-3.893-1.832-13.051-7.557-12.823C136.345-66.527,136.115-66.069,131.994-59.2z"/>
- <path fill="#754C37" d="M132.283-59.137c-3.199,5.333-1.332,8.657,4.218,9.766c5.549,1.11,10.21-0.887,12.874-4.661
- s-1.775-12.652-7.325-12.43C136.501-66.24,136.279-65.796,132.283-59.137z"/>
- <path fill="#704C3A" d="M132.573-59.074c-3.099,5.165-1.29,8.383,4.084,9.458s9.889-0.86,12.469-4.514
- c2.579-3.655-1.721-12.253-7.095-12.038S136.442-65.522,132.573-59.074z"/>
- <path fill="#6B4C3C" d="M132.862-59.011c-2.997,4.997-1.248,8.11,3.951,9.15s9.566-0.832,12.063-4.367
- c2.494-3.535-1.664-11.853-6.863-11.645S136.605-65.25,132.862-59.011z"/>
- <path fill="#664C3E" d="M133.152-58.947c-2.896,4.828-1.206,7.836,3.818,8.841c5.023,1.005,9.243-0.804,11.655-4.22
- c2.41-3.416-1.608-11.453-6.632-11.252S136.77-64.976,133.152-58.947z"/>
- <path fill="#614B3F" d="M133.441-58.885c-2.795,4.66-1.164,7.564,3.686,8.534c4.848,0.969,8.921-0.776,11.249-4.073
- c2.327-3.296-1.552-11.054-6.401-10.86C137.127-65.091,136.933-64.703,133.441-58.885z"/>
- <path fill="#5B4940" d="M133.731-58.821c-2.694,4.491-1.122,7.29,3.552,8.225c4.673,0.935,8.599-0.748,10.843-3.925
- c2.242-3.178-1.496-10.655-6.17-10.468C137.283-64.803,137.097-64.43,133.731-58.821z"/>
- <path fill="#54463F" d="M134.021-58.758c-2.593,4.322-1.08,7.017,3.42,7.917c4.497,0.9,8.275-0.72,10.436-3.778
- c2.158-3.059-1.439-10.255-5.938-10.076C137.44-64.516,137.26-64.156,134.021-58.758z"/>
- <path fill="#4D423D" d="M134.311-58.695c-2.492,4.154-1.038,6.744,3.286,7.608c4.322,0.865,7.953-0.692,10.029-3.631
- c2.074-2.939-1.384-9.856-5.707-9.683C137.597-64.229,137.423-63.883,134.311-58.695z"/>
- <path fill="#443D39" d="M134.6-58.632c-2.391,3.986-0.996,6.471,3.153,7.3c4.147,0.83,7.631-0.665,9.624-3.484
- c1.989-2.82-1.328-9.457-5.477-9.291C137.753-63.941,137.587-63.609,134.6-58.632z"/>
- <path fill="#3A3534" d="M134.89-58.569c-2.29,3.817-0.954,6.197,3.02,6.991c3.972,0.795,7.309-0.636,9.218-3.337
- c1.905-2.701-1.272-9.057-5.246-8.898C137.909-63.654,137.75-63.336,134.89-58.569z"/>
- <path fill="#252423" d="M135.179-58.506c-2.188,3.649-0.912,5.923,2.888,6.683c3.796,0.76,6.985-0.608,8.811-3.19
- c1.821-2.582-1.216-8.657-5.015-8.506C138.066-63.367,137.914-63.063,135.179-58.506z"/>
- <path d="M135.469-58.443c-2.088,3.48-0.87,5.65,2.754,6.375c3.621,0.725,6.663-0.58,8.404-3.043
- c1.737-2.463-1.16-8.258-4.783-8.113C138.223-63.08,138.077-62.79,135.469-58.443z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M5.708-134.889c-2.75,2-8,9.25-1.5,14.5s8.5,8,13.25,5s8.75-10.75,4.5-14.75
- S11.208-138.889,5.708-134.889z"/>
- <path fill="#82472C" d="M5.904-134.646c-2.668,1.943-7.763,8.985-1.456,14.085c6.307,5.1,8.247,7.771,12.856,4.857
- c4.609-2.914,8.49-10.443,4.367-14.329C17.547-133.918,11.24-138.532,5.904-134.646z"/>
- <path fill="#7D4930" d="M6.099-134.404c-2.586,1.886-7.524,8.722-1.41,13.672c6.113,4.95,7.994,7.542,12.462,4.714
- c4.468-2.829,8.23-10.136,4.232-13.907C17.386-133.696,11.272-138.175,6.099-134.404z"/>
- <path fill="#794B34" d="M6.295-134.161c-2.505,1.829-7.287,8.457-1.366,13.257c5.92,4.8,7.742,7.314,12.068,4.571
- c4.326-2.743,7.969-9.829,4.099-13.486C17.225-133.475,11.305-137.818,6.295-134.161z"/>
- <path fill="#754C37" d="M6.491-133.917c-2.423,1.771-7.049,8.193-1.322,12.843s7.489,7.086,11.674,4.428
- c4.185-2.657,7.709-9.521,3.965-13.064S11.337-137.46,6.491-133.917z"/>
- <path fill="#704C3A" d="M6.687-133.675c-2.341,1.714-6.811,7.929-1.277,12.429c5.534,4.5,7.236,6.857,11.281,4.285
- c4.043-2.571,7.449-9.214,3.831-12.642C16.903-133.032,11.369-137.104,6.687-133.675z"/>
- <path fill="#6B4C3C" d="M6.882-133.432c-2.259,1.657-6.573,7.664-1.232,12.015c5.34,4.35,6.983,6.628,10.886,4.143
- c3.902-2.486,7.189-8.907,3.697-12.221C16.742-132.811,11.401-136.746,6.882-133.432z"/>
- <path fill="#664C3E" d="M7.078-133.189c-2.177,1.6-6.335,7.4-1.188,11.6c5.147,4.2,6.73,6.4,10.493,4
- c3.761-2.4,6.929-8.6,3.563-11.8C16.581-132.589,11.434-136.389,7.078-133.189z"/>
- <path fill="#614B3F" d="M7.274-132.946c-2.096,1.543-6.097,7.136-1.143,11.186c4.954,4.05,6.478,6.172,10.099,3.857
- c3.62-2.314,6.668-8.293,3.43-11.378C16.42-132.368,11.466-136.032,7.274-132.946z"/>
- <path fill="#5B4940" d="M7.47-132.703c-2.014,1.485-5.86,6.871-1.099,10.771c4.761,3.9,6.226,5.943,9.705,3.714
- s6.409-7.985,3.296-10.957S11.498-135.675,7.47-132.703z"/>
- <path fill="#54463F" d="M7.666-132.46c-1.932,1.428-5.622,6.607-1.054,10.357c4.567,3.75,5.972,5.714,9.311,3.571
- c3.338-2.143,6.148-7.678,3.162-10.535C16.098-131.925,11.53-135.317,7.666-132.46z"/>
- <path fill="#4D423D" d="M7.861-132.217c-1.85,1.371-5.384,6.342-1.009,9.942s5.72,5.486,8.917,3.429
- c3.197-2.058,5.888-7.372,3.028-10.114C15.937-131.704,11.563-134.96,7.861-132.217z"/>
- <path fill="#443D39" d="M8.057-131.975c-1.769,1.314-5.146,6.079-0.965,9.528c4.181,3.45,5.467,5.257,8.523,3.286
- c3.055-1.972,5.628-7.064,2.895-9.693C15.776-131.482,11.595-134.604,8.057-131.975z"/>
- <path fill="#3A3534" d="M8.253-131.732c-1.687,1.257-4.908,5.814-0.92,9.114c3.988,3.3,5.215,5.028,8.129,3.143
- c2.915-1.886,5.368-6.757,2.761-9.271C15.615-131.261,11.627-134.246,8.253-131.732z"/>
- <path fill="#252423" d="M8.449-131.489c-1.605,1.2-4.67,5.55-0.875,8.7c3.794,3.15,4.961,4.8,7.735,3
- c2.773-1.8,5.107-6.45,2.627-8.85C15.454-131.039,11.659-133.889,8.449-131.489z"/>
- <path d="M8.645-131.246c-1.523,1.143-4.433,5.286-0.831,8.286s4.709,4.571,7.341,2.857s4.848-6.143,2.493-8.428
- C15.293-130.818,11.691-133.532,8.645-131.246z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M9.208-108.889c-4.402,1.321-8.75,5.5-5.25,12.25s9.75,11.75,15,10.25s6.423-7.045,2.75-11
- C18.458-100.889,16.708-111.139,9.208-108.889z"/>
- <path fill="#82472C" d="M9.334-108.595c-4.287,1.286-8.521,5.356-5.113,11.93c3.409,6.574,9.496,11.443,14.608,9.982
- c5.113-1.46,6.255-6.861,2.678-10.712C18.342-100.804,16.638-110.787,9.334-108.595z"/>
- <path fill="#7D4930" d="M9.461-108.301c-4.172,1.252-8.293,5.213-4.976,11.61c3.317,6.397,9.241,11.136,14.216,9.715
- c4.976-1.422,6.087-6.678,2.606-10.426C18.228-100.719,16.569-110.434,9.461-108.301z"/>
- <path fill="#794B34" d="M9.587-108.008c-4.057,1.217-8.064,5.069-4.839,11.291c3.226,6.221,8.986,10.829,13.824,9.446
- c4.839-1.382,5.92-6.493,2.535-10.138C18.112-100.634,16.499-110.081,9.587-108.008z"/>
- <path fill="#754C37" d="M9.713-107.713c-3.942,1.183-7.835,4.925-4.701,10.97c3.134,6.045,8.731,10.522,13.432,9.179
- s5.752-6.309,2.463-9.85C17.997-100.55,16.429-109.729,9.713-107.713z"/>
- <path fill="#704C3A" d="M9.84-107.419c-3.828,1.148-7.607,4.781-4.564,10.649c3.042,5.868,8.477,10.215,13.041,8.911
- c4.564-1.304,5.584-6.125,2.391-9.563C17.881-100.464,16.36-109.375,9.84-107.419z"/>
- <path fill="#6B4C3C" d="M9.966-107.125c-3.712,1.114-7.378,4.638-4.427,10.33c2.951,5.692,8.222,9.908,12.648,8.644
- c4.427-1.265,5.416-5.941,2.319-9.276C17.766-100.38,16.29-109.023,9.966-107.125z"/>
- <path fill="#664C3E" d="M10.092-106.832c-3.597,1.079-7.149,4.494-4.29,10.009c2.86,5.516,7.967,9.602,12.257,8.376
- c4.29-1.226,5.248-5.757,2.247-8.988C17.65-100.295,16.22-108.67,10.092-106.832z"/>
- <path fill="#614B3F" d="M10.218-106.538c-3.482,1.044-6.921,4.35-4.152,9.689c2.768,5.339,7.712,9.294,11.864,8.108
- c4.153-1.187,5.081-5.573,2.176-8.701C17.535-100.21,16.15-108.317,10.218-106.538z"/>
- <path fill="#5B4940" d="M10.345-106.244c-3.367,1.01-6.693,4.207-4.016,9.37c2.677,5.163,7.458,8.987,11.473,7.84
- c4.016-1.147,4.913-5.389,2.104-8.414C17.419-100.125,16.081-107.965,10.345-106.244z"/>
- <path fill="#54463F" d="M10.471-105.95c-3.252,0.976-6.464,4.063-3.878,9.049c2.585,4.987,7.203,8.681,11.081,7.573
- c3.879-1.108,4.745-5.205,2.032-8.126C17.304-100.04,16.011-107.612,10.471-105.95z"/>
- <path fill="#4D423D" d="M10.597-105.656c-3.137,0.941-6.235,3.919-3.741,8.729c2.494,4.811,6.948,8.374,10.688,7.305
- c3.742-1.069,4.577-5.021,1.96-7.839C17.189-99.955,15.941-107.259,10.597-105.656z"/>
- <path fill="#443D39" d="M10.724-105.362c-3.022,0.907-6.007,3.776-3.604,8.41c2.402,4.634,6.693,8.066,10.297,7.037
- c3.605-1.03,4.41-4.837,1.888-7.552C17.074-99.871,15.872-106.907,10.724-105.362z"/>
- <path fill="#3A3534" d="M10.85-105.068c-2.907,0.872-5.779,3.632-3.467,8.089c2.311,4.458,6.438,7.759,9.905,6.769
- c3.468-0.991,4.242-4.653,1.816-7.264C16.958-99.786,15.802-106.554,10.85-105.068z"/>
- <path fill="#252423" d="M10.976-104.774c-2.792,0.838-5.55,3.488-3.33,7.77c2.22,4.281,6.184,7.452,9.513,6.501
- c3.331-0.951,4.074-4.469,1.745-6.977C16.843-99.701,15.733-106.201,10.976-104.774z"/>
- <path d="M11.103-104.48c-2.677,0.803-5.321,3.345-3.192,7.449c2.128,4.105,5.929,7.146,9.121,6.233
- c3.193-0.912,3.906-4.285,1.673-6.689C16.728-99.616,15.663-105.849,11.103-104.48z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M6.708-59.389c-3.604,6.007-1.5,9.75,4.75,11c6.25,1.25,11.5-1,14.5-5.25c3-4.25-2-14.25-8.25-14
- S11.208-66.889,6.708-59.389z"/>
- <path fill="#82472C" d="M6.998-59.326c-3.503,5.838-1.458,9.477,4.616,10.691c6.075,1.215,11.178-0.972,14.094-5.103
- c2.916-4.131-1.944-13.851-8.019-13.607C11.614-67.102,11.372-66.616,6.998-59.326z"/>
- <path fill="#7D4930" d="M7.287-59.263c-3.401,5.67-1.416,9.203,4.484,10.383c5.9,1.18,10.855-0.944,13.687-4.956
- c2.832-4.012-1.888-13.451-7.787-13.215C11.771-66.815,11.535-66.342,7.287-59.263z"/>
- <path fill="#794B34" d="M7.577-59.2c-3.301,5.502-1.374,8.931,4.35,10.075c5.725,1.145,10.533-0.917,13.281-4.809
- c2.748-3.893-1.832-13.051-7.556-12.823C11.927-66.527,11.699-66.069,7.577-59.2z"/>
- <path fill="#754C37" d="M7.867-59.137c-3.2,5.333-1.333,8.657,4.217,9.766c5.549,1.11,10.21-0.887,12.874-4.661
- s-1.776-12.652-7.325-12.43C12.084-66.24,11.862-65.796,7.867-59.137z"/>
- <path fill="#704C3A" d="M8.156-59.074c-3.099,5.165-1.29,8.383,4.084,9.458c5.374,1.075,9.888-0.86,12.468-4.514
- c2.58-3.655-1.72-12.253-7.094-12.038S12.025-65.522,8.156-59.074z"/>
- <path fill="#6B4C3C" d="M8.446-59.011c-2.998,4.997-1.248,8.11,3.951,9.15c5.199,1.04,9.566-0.832,12.061-4.367
- c2.496-3.535-1.663-11.853-6.862-11.645S12.189-65.25,8.446-59.011z"/>
- <path fill="#664C3E" d="M8.736-58.947c-2.897,4.828-1.207,7.836,3.817,8.841c5.024,1.005,9.244-0.804,11.655-4.22
- c2.412-3.416-1.607-11.453-6.631-11.252C12.554-65.378,12.353-64.976,8.736-58.947z"/>
- <path fill="#614B3F" d="M9.026-58.885c-2.796,4.66-1.165,7.564,3.684,8.534c4.849,0.969,8.921-0.776,11.249-4.073
- c2.328-3.296-1.551-11.054-6.4-10.86C12.71-65.091,12.516-64.703,9.026-58.885z"/>
- <path fill="#5B4940" d="M9.315-58.821c-2.695,4.491-1.122,7.29,3.551,8.225c4.673,0.935,8.599-0.748,10.842-3.925
- c2.244-3.178-1.495-10.655-6.169-10.468C12.867-64.803,12.68-64.43,9.315-58.821z"/>
- <path fill="#54463F" d="M9.605-58.758c-2.594,4.322-1.08,7.017,3.418,7.917c4.498,0.9,8.277-0.72,10.436-3.778
- c2.16-3.059-1.439-10.255-5.938-10.076C13.023-64.516,12.843-64.156,9.605-58.758z"/>
- <path fill="#4D423D" d="M9.895-58.695c-2.493,4.154-1.038,6.744,3.285,7.608s7.954-0.692,10.029-3.631
- c2.075-2.939-1.383-9.856-5.707-9.683C13.18-64.229,13.007-63.883,9.895-58.695z"/>
- <path fill="#443D39" d="M10.185-58.632c-2.392,3.986-0.996,6.471,3.151,7.3c4.148,0.83,7.632-0.665,9.623-3.484
- c1.991-2.82-1.327-9.457-5.475-9.291C13.336-63.941,13.17-63.609,10.185-58.632z"/>
- <path fill="#3A3534" d="M10.474-58.569c-2.291,3.817-0.954,6.197,3.019,6.991c3.973,0.795,7.31-0.636,9.216-3.337
- c1.907-2.701-1.271-9.057-5.244-8.898C13.493-63.654,13.334-63.336,10.474-58.569z"/>
- <path fill="#252423" d="M10.764-58.506c-2.19,3.649-0.912,5.923,2.885,6.683c3.797,0.76,6.988-0.608,8.81-3.19
- c1.823-2.582-1.214-8.657-5.013-8.506C13.649-63.367,13.498-63.063,10.764-58.506z"/>
- <path d="M11.054-58.443c-2.089,3.48-0.87,5.65,2.752,6.375s6.665-0.58,8.403-3.043c1.739-2.463-1.158-8.258-4.781-8.113
- C13.806-63.08,13.661-62.79,11.054-58.443z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M40.208-149.889c-3.956,3.108-6.75,1.5-8.25,7.25s-5.5,8.25-0.25,12s6.25,9,13.75,4.5
- s10-10.75,5.5-16.25S43.708-152.639,40.208-149.889z"/>
- <path fill="#82472C" d="M40.19-149.44c-3.816,2.997-6.513,1.446-7.96,6.99s-5.306,7.954-0.241,11.569
- c5.065,3.616,6.03,8.677,13.267,4.339c7.236-4.339,9.648-10.364,5.307-15.667C46.221-147.512,43.567-152.092,40.19-149.44z"/>
- <path fill="#7D4930" d="M40.173-148.992c-3.678,2.885-6.274,1.393-7.67,6.729c-1.394,5.337-5.113,7.658-0.231,11.139
- c4.88,3.48,5.81,8.354,12.782,4.177c6.972-4.177,9.296-9.979,5.112-15.083C45.983-147.135,43.427-151.544,40.173-148.992z"/>
- <path fill="#794B34" d="M40.155-148.543c-3.538,2.774-6.037,1.338-7.379,6.469s-4.92,7.361-0.224,10.708
- c4.695,3.346,5.59,8.031,12.299,4.016c6.708-4.016,8.944-9.592,4.919-14.5S43.286-150.997,40.155-148.543z"/>
- <path fill="#754C37" d="M40.138-148.094c-3.399,2.662-5.8,1.284-7.089,6.209c-1.289,4.924-4.726,7.065-0.215,10.277
- c4.511,3.212,5.37,7.708,11.814,3.854c6.444-3.854,8.593-9.207,4.727-13.917C45.508-146.382,43.146-150.449,40.138-148.094z"/>
- <path fill="#704C3A" d="M40.12-147.646c-3.26,2.55-5.563,1.23-6.799,5.949s-4.532,6.769-0.205,9.846
- c4.326,3.077,5.149,7.384,11.33,3.692c6.181-3.692,8.241-8.82,4.532-13.333C45.271-146.004,43.005-149.902,40.12-147.646z"/>
- <path fill="#6B4C3C" d="M40.103-147.197c-3.121,2.439-5.325,1.177-6.508,5.688c-1.184,4.511-4.339,6.473-0.197,9.415
- c4.141,2.942,4.93,7.062,10.847,3.531c5.917-3.531,7.889-8.435,4.339-12.75C45.033-145.627,42.863-149.354,40.103-147.197z"/>
- <path fill="#664C3E" d="M40.085-146.748c-2.981,2.327-5.087,1.123-6.218,5.428s-4.146,6.177-0.188,8.984
- c3.957,2.808,4.71,6.738,10.363,3.37c5.652-3.37,7.537-8.049,4.145-12.167C44.795-145.251,42.723-148.807,40.085-146.748z"/>
- <path fill="#614B3F" d="M40.067-146.299c-2.843,2.216-4.85,1.069-5.928,5.168c-1.078,4.099-3.952,5.881-0.18,8.554
- s4.491,6.416,9.88,3.208c5.389-3.208,7.185-7.663,3.951-11.583S42.582-148.26,40.067-146.299z"/>
- <path fill="#5B4940" d="M40.05-145.851c-2.703,2.104-4.612,1.015-5.637,4.908c-1.026,3.892-3.759,5.584-0.172,8.123
- c3.588,2.539,4.271,6.093,9.396,3.046c5.124-3.046,6.833-7.277,3.758-11S42.441-147.712,40.05-145.851z"/>
- <path fill="#54463F" d="M40.032-145.402c-2.564,1.992-4.375,0.961-5.347,4.647c-0.973,3.686-3.565,5.289-0.162,7.692
- c3.402,2.404,4.051,5.77,8.912,2.885c4.86-2.885,6.48-6.891,3.564-10.417C44.083-144.12,42.301-147.165,40.032-145.402z"/>
- <path fill="#4D423D" d="M40.015-144.953c-2.425,1.881-4.138,0.907-5.057,4.387c-0.92,3.479-3.372,4.992-0.153,7.261
- c3.218,2.27,3.831,5.446,8.429,2.723c4.597-2.723,6.129-6.505,3.37-9.833C43.846-143.743,42.16-146.618,40.015-144.953z"/>
- <path fill="#443D39" d="M39.997-144.504c-2.286,1.77-3.9,0.854-4.767,4.127c-0.867,3.273-3.178,4.696-0.145,6.831
- c3.033,2.135,3.611,5.123,7.944,2.562s5.777-6.119,3.178-9.25S42.019-146.07,39.997-144.504z"/>
- <path fill="#3A3534" d="M39.979-144.056c-2.146,1.658-3.662,0.8-4.477,3.867c-0.814,3.066-2.984,4.4-0.136,6.4
- s3.392,4.8,7.461,2.4s5.426-5.733,2.984-8.667C43.37-142.989,41.878-145.522,39.979-144.056z"/>
- <path fill="#252423" d="M39.962-143.607c-2.008,1.546-3.425,0.746-4.186,3.606c-0.762,2.86-2.791,4.104-0.127,5.969
- c2.663,1.866,3.171,4.477,6.977,2.239c3.805-2.239,5.073-5.347,2.79-8.083C43.133-142.612,41.737-144.975,39.962-143.607z"/>
- <path d="M39.944-143.158c-1.868,1.435-3.188,0.692-3.896,3.346c-0.709,2.654-2.598,3.808-0.118,5.538
- c2.479,1.731,2.951,4.154,6.493,2.077c3.541-2.077,4.722-4.961,2.597-7.5S41.597-144.428,39.944-143.158z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M40.208-25.473c-3.956,3.108-6.75,1.5-8.25,7.25s-5.5,8.25-0.25,12s6.25,9,13.75,4.5s10-10.75,5.5-16.25
- S43.708-28.223,40.208-25.473z"/>
- <path fill="#82472C" d="M40.19-25.024c-3.816,2.997-6.513,1.447-7.96,6.99s-5.306,7.953-0.241,11.568
- c5.065,3.616,6.03,8.678,13.267,4.34c7.236-4.34,9.648-10.365,5.307-15.667C46.221-23.096,43.567-27.675,40.19-25.024z"/>
- <path fill="#7D4930" d="M40.173-24.575c-3.678,2.885-6.274,1.393-7.67,6.729c-1.394,5.337-5.113,7.657-0.231,11.139
- c4.88,3.48,5.81,8.354,12.782,4.177c6.972-4.177,9.296-9.979,5.112-15.084C45.983-22.719,43.427-27.128,40.173-24.575z"/>
- <path fill="#794B34" d="M40.155-24.126c-3.538,2.773-6.037,1.338-7.379,6.469s-4.92,7.361-0.224,10.707
- c4.695,3.347,5.59,8.031,12.299,4.016c6.708-4.016,8.944-9.592,4.919-14.5C45.745-22.342,43.286-26.581,40.155-24.126z"/>
- <path fill="#754C37" d="M40.138-23.678c-3.399,2.662-5.8,1.284-7.089,6.209s-4.726,7.065-0.215,10.276
- c4.511,3.213,5.37,7.708,11.814,3.854c6.444-3.854,8.593-9.206,4.727-13.917C45.508-21.966,43.146-26.032,40.138-23.678z"/>
- <path fill="#704C3A" d="M40.12-23.229c-3.26,2.551-5.563,1.23-6.799,5.949s-4.532,6.77-0.205,9.846
- c4.326,3.077,5.149,7.385,11.33,3.693c6.181-3.693,8.241-8.82,4.532-13.334C45.271-21.588,43.005-25.485,40.12-23.229z"/>
- <path fill="#6B4C3C" d="M40.103-22.78c-3.121,2.439-5.325,1.177-6.508,5.688c-1.184,4.511-4.339,6.473-0.197,9.415
- c4.141,2.942,4.93,7.063,10.847,3.531s7.889-8.436,4.339-12.75C45.033-21.211,42.863-24.938,40.103-22.78z"/>
- <path fill="#664C3E" d="M40.085-22.331c-2.981,2.326-5.087,1.123-6.218,5.428s-4.146,6.177-0.188,8.984
- c3.957,2.809,4.71,6.738,10.363,3.369c5.652-3.369,7.537-8.049,4.145-12.166C44.795-20.835,42.723-24.391,40.085-22.331z"/>
- <path fill="#614B3F" d="M40.067-21.883c-2.843,2.216-4.85,1.069-5.928,5.168s-3.952,5.881-0.18,8.554s4.491,6.416,9.88,3.207
- c5.389-3.207,7.185-7.662,3.951-11.582C44.558-20.457,42.582-23.843,40.067-21.883z"/>
- <path fill="#5B4940" d="M40.05-21.435c-2.703,2.104-4.612,1.016-5.637,4.908c-1.026,3.893-3.759,5.584-0.172,8.123
- c3.588,2.538,4.271,6.092,9.396,3.046c5.124-3.046,6.833-7.276,3.758-11S42.441-23.296,40.05-21.435z"/>
- <path fill="#54463F" d="M40.032-20.985c-2.564,1.992-4.375,0.961-5.347,4.647c-0.973,3.687-3.565,5.288-0.162,7.692
- c3.402,2.404,4.051,5.77,8.912,2.885c4.86-2.885,6.48-6.891,3.564-10.417C44.083-19.704,42.301-22.749,40.032-20.985z"/>
- <path fill="#4D423D" d="M40.015-20.536c-2.425,1.881-4.138,0.906-5.057,4.387c-0.92,3.479-3.372,4.992-0.153,7.262
- c3.218,2.27,3.831,5.445,8.429,2.723c4.597-2.723,6.129-6.505,3.37-9.833C43.846-19.327,42.16-22.201,40.015-20.536z"/>
- <path fill="#443D39" d="M39.997-20.088c-2.286,1.77-3.9,0.854-4.767,4.127c-0.867,3.272-3.178,4.696-0.145,6.831
- s3.611,5.123,7.944,2.561c4.333-2.561,5.777-6.119,3.178-9.25S42.019-21.653,39.997-20.088z"/>
- <path fill="#3A3534" d="M39.979-19.64c-2.146,1.658-3.662,0.801-4.477,3.867s-2.984,4.4-0.136,6.4s3.392,4.799,7.461,2.399
- s5.426-5.733,2.984-8.667C43.37-18.573,41.878-21.106,39.979-19.64z"/>
- <path fill="#252423" d="M39.962-19.19c-2.008,1.547-3.425,0.746-4.186,3.606c-0.762,2.86-2.791,4.104-0.127,5.969
- c2.663,1.866,3.171,4.478,6.977,2.239c3.805-2.239,5.073-5.348,2.79-8.084S41.737-20.559,39.962-19.19z"/>
- <path d="M39.944-18.741c-1.868,1.434-3.188,0.691-3.896,3.346c-0.709,2.654-2.598,3.808-0.118,5.538
- c2.479,1.731,2.951,4.153,6.493,2.077c3.541-2.077,4.722-4.961,2.597-7.5S41.597-20.011,39.944-18.741z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M24.708-85.389c-2.704,3.605-4.25,8.25-1.75,12s5.75,10.25,11.5,7.5s7.5-7.5,6.25-10.75
- S28.458-90.389,24.708-85.389z"/>
- <path fill="#82472C" d="M24.913-85.125c-2.625,3.5-4.125,8.008-1.698,11.648c2.427,3.64,5.581,9.949,11.162,7.28
- c5.582-2.669,7.28-7.28,6.067-10.435C39.23-79.787,28.553-89.979,24.913-85.125z"/>
- <path fill="#7D4930" d="M25.119-84.861c-2.545,3.394-4,7.766-1.647,11.296c2.353,3.53,5.413,9.648,10.825,7.06
- c5.412-2.588,7.06-7.06,5.883-10.119C39.003-79.684,28.649-89.567,25.119-84.861z"/>
- <path fill="#794B34" d="M25.324-84.597c-2.466,3.288-3.876,7.524-1.596,10.944c2.28,3.419,5.244,9.347,10.487,6.839
- c5.244-2.508,6.84-6.839,5.7-9.804C38.776-79.581,28.744-89.157,25.324-84.597z"/>
- <path fill="#754C37" d="M25.529-84.333c-2.386,3.183-3.751,7.282-1.544,10.591c2.207,3.31,5.075,9.047,10.15,6.62
- c5.075-2.427,6.62-6.62,5.517-9.488C38.549-79.479,28.839-88.746,25.529-84.333z"/>
- <path fill="#704C3A" d="M25.735-84.069c-2.307,3.077-3.626,7.04-1.493,10.239c2.133,3.2,4.907,8.747,9.813,6.399
- c4.906-2.346,6.399-6.399,5.333-9.172S28.935-88.335,25.735-84.069z"/>
- <path fill="#6B4C3C" d="M25.94-83.804c-2.228,2.97-3.501,6.797-1.442,9.887c2.06,3.089,4.738,8.445,9.475,6.179
- c4.738-2.265,6.18-6.179,5.15-8.856C38.094-79.273,29.03-87.924,25.94-83.804z"/>
- <path fill="#664C3E" d="M26.146-83.541c-2.148,2.865-3.376,6.555-1.39,9.535c1.987,2.979,4.569,8.145,9.138,5.959
- c4.568-2.185,5.959-5.959,4.966-8.542S29.125-87.513,26.146-83.541z"/>
- <path fill="#614B3F" d="M26.351-83.276c-2.069,2.759-3.252,6.313-1.339,9.183c1.913,2.869,4.4,7.844,8.8,5.739
- s5.739-5.739,4.783-8.226C37.639-79.068,29.221-87.103,26.351-83.276z"/>
- <path fill="#5B4940" d="M26.557-83.012c-1.99,2.653-3.127,6.071-1.288,8.831c1.839,2.759,4.231,7.542,8.463,5.519
- c4.23-2.024,5.519-5.519,4.6-7.911C37.411-78.965,29.316-86.692,26.557-83.012z"/>
- <path fill="#54463F" d="M26.762-82.749c-1.91,2.547-3.002,5.829-1.236,8.479c1.766,2.649,4.063,7.242,8.125,5.299
- c4.063-1.942,5.299-5.299,4.416-7.595C37.184-78.862,29.412-86.281,26.762-82.749z"/>
- <path fill="#4D423D" d="M26.967-82.484c-1.831,2.441-2.878,5.587-1.185,8.126c1.693,2.539,3.894,6.941,7.788,5.079
- c3.895-1.862,5.079-5.079,4.233-7.279C36.956-78.76,29.507-85.87,26.967-82.484z"/>
- <path fill="#443D39" d="M27.173-82.22c-1.752,2.336-2.753,5.345-1.134,7.775c1.62,2.429,3.725,6.641,7.451,4.858
- c3.725-1.781,4.858-4.858,4.049-6.964C36.729-78.657,29.603-85.459,27.173-82.22z"/>
- <path fill="#3A3534" d="M27.378-81.956c-1.672,2.23-2.628,5.103-1.083,7.423c1.546,2.318,3.557,6.34,7.113,4.638
- c3.557-1.701,4.639-4.638,3.866-6.648C36.502-78.555,29.698-85.049,27.378-81.956z"/>
- <path fill="#252423" d="M27.583-81.692c-1.593,2.124-2.503,4.861-1.031,7.07c1.473,2.209,3.388,6.039,6.776,4.418
- c3.387-1.62,4.418-4.418,3.682-6.333C36.274-78.452,29.793-84.638,27.583-81.692z"/>
- <path d="M27.789-81.428c-1.514,2.018-2.379,4.619-0.979,6.718c1.399,2.099,3.219,5.738,6.438,4.198
- c3.219-1.539,4.198-4.198,3.499-6.018C36.047-78.349,29.889-84.227,27.789-81.428z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M40.208-116.389c-0.276,1.219-3.75,4-3,6.25s9.25,5.75,12,5.25s8.5-4.75,8.75-9s1.75-7-1.25-8
- S41.458-121.889,40.208-116.389z"/>
- <path fill="#82472C" d="M40.399-116.332c-0.27,1.187-3.66,3.898-2.928,6.09c0.731,2.192,9.028,5.603,11.712,5.116
- c2.685-0.487,8.297-4.629,8.541-8.771c0.244-4.141,1.708-6.821-1.221-7.795C53.576-122.666,41.619-121.691,40.399-116.332z"/>
- <path fill="#7D4930" d="M40.592-116.274c-0.264,1.156-3.57,3.795-2.856,5.93s8.807,5.457,11.425,4.981
- c2.618-0.474,8.093-4.507,8.331-8.54c0.237-4.033,1.666-6.643-1.19-7.591S41.781-121.493,40.592-116.274z"/>
- <path fill="#794B34" d="M40.783-116.217c-0.257,1.125-3.48,3.693-2.784,5.771c0.695,2.078,8.585,5.309,11.137,4.848
- c2.553-0.462,7.89-4.386,8.121-8.311c0.232-3.924,1.625-6.463-1.16-7.386C53.313-122.218,41.943-121.295,40.783-116.217z"/>
- <path fill="#754C37" d="M40.975-116.159c-0.25,1.094-3.391,3.591-2.712,5.611c0.678,2.02,8.363,5.162,10.85,4.713
- s7.686-4.265,7.911-8.08c0.227-3.816,1.583-6.285-1.13-7.183C53.181-121.995,42.105-121.097,40.975-116.159z"/>
- <path fill="#704C3A" d="M41.166-116.102c-0.242,1.063-3.301,3.489-2.641,5.451s8.143,5.016,10.563,4.579
- c2.421-0.436,7.482-4.143,7.702-7.85c0.22-3.707,1.54-6.105-1.101-6.978C53.049-121.771,42.267-120.899,41.166-116.102z"/>
- <path fill="#6B4C3C" d="M41.358-116.044c-0.237,1.032-3.211,3.386-2.569,5.292c0.643,1.905,7.921,4.868,10.275,4.445
- c2.354-0.423,7.278-4.021,7.492-7.62c0.214-3.599,1.498-5.927-1.07-6.774C52.918-121.547,42.429-120.701,41.358-116.044z"/>
- <path fill="#664C3E" d="M41.55-115.986c-0.229,1-3.121,3.284-2.497,5.131c0.624,1.848,7.698,4.722,9.987,4.311
- c2.289-0.41,7.074-3.9,7.282-7.39s1.457-5.748-1.04-6.569S42.59-120.503,41.55-115.986z"/>
- <path fill="#614B3F" d="M41.741-115.929c-0.223,0.97-3.031,3.182-2.425,4.972s7.477,4.575,9.7,4.177
- c2.223-0.397,6.87-3.779,7.072-7.16c0.202-3.381,1.415-5.569-1.01-6.364C52.654-121.101,42.752-120.305,41.741-115.929z"/>
- <path fill="#5B4940" d="M41.933-115.872c-0.216,0.939-2.941,3.081-2.353,4.813c0.588,1.732,7.255,4.427,9.412,4.042
- s6.667-3.658,6.863-6.93s1.373-5.39-0.98-6.16C52.522-120.877,42.913-120.107,41.933-115.872z"/>
- <path fill="#54463F" d="M42.125-115.814c-0.21,0.908-2.852,2.978-2.281,4.653s7.033,4.281,9.125,3.908
- c2.091-0.372,6.463-3.536,6.653-6.7s1.331-5.211-0.95-5.956S43.075-119.909,42.125-115.814z"/>
- <path fill="#4D423D" d="M42.316-115.757c-0.203,0.876-2.762,2.876-2.209,4.493c0.552,1.618,6.812,4.134,8.837,3.774
- s6.26-3.415,6.444-6.47c0.184-3.055,1.289-5.032-0.921-5.751C52.259-120.43,43.237-119.71,42.316-115.757z"/>
- <path fill="#443D39" d="M42.508-115.699c-0.196,0.845-2.672,2.773-2.138,4.333c0.535,1.56,6.591,3.987,8.551,3.64
- c1.959-0.346,6.056-3.293,6.234-6.24c0.178-2.947,1.246-4.854-0.891-5.547C52.127-120.206,43.398-119.513,42.508-115.699z"/>
- <path fill="#3A3534" d="M42.7-115.642c-0.19,0.814-2.582,2.671-2.066,4.174c0.517,1.502,6.369,3.84,8.263,3.505
- c1.894-0.333,5.853-3.172,6.024-6.01c0.173-2.838,1.205-4.675-0.86-5.342C51.995-119.982,43.561-119.314,42.7-115.642z"/>
- <path fill="#252423" d="M42.892-115.584c-0.184,0.783-2.492,2.569-1.994,4.014c0.499,1.445,6.147,3.693,7.976,3.372
- c1.827-0.321,5.648-3.051,5.814-5.78c0.166-2.729,1.163-4.496-0.83-5.138C51.863-119.759,43.722-119.117,42.892-115.584z"/>
- <path d="M43.083-115.527c-0.177,0.752-2.402,2.467-1.922,3.854c0.48,1.387,5.926,3.546,7.688,3.237
- c1.762-0.308,5.445-2.929,5.605-5.55c0.16-2.621,1.121-4.317-0.801-4.934S43.884-118.918,43.083-115.527z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M59.208-134.139c-1.641,1.887-4,5.5,0.25,8s8,7.75,12.5,6.25c4.501-1.5,10.501-7,7.751-14.75
- S64.208-139.889,59.208-134.139z"/>
- <path fill="#82472C" d="M59.527-134.02c-1.588,1.827-3.872,5.324,0.242,7.745s7.744,7.502,12.101,6.05
- c4.357-1.452,10.165-6.776,7.504-14.279C76.711-142.006,64.368-139.586,59.527-134.02z"/>
- <path fill="#7D4930" d="M59.847-133.899c-1.536,1.766-3.744,5.148,0.234,7.489c3.979,2.34,7.489,7.255,11.701,5.851
- c4.214-1.404,9.83-6.553,7.256-13.808S64.527-139.282,59.847-133.899z"/>
- <path fill="#794B34" d="M60.166-133.78c-1.483,1.706-3.616,4.973,0.227,7.233s7.233,7.007,11.302,5.651
- c4.069-1.356,9.494-6.329,7.009-13.336C76.216-141.239,64.688-138.979,60.166-133.78z"/>
- <path fill="#754C37" d="M60.486-133.66c-1.432,1.646-3.489,4.797,0.218,6.978s6.978,6.759,10.902,5.452
- c3.926-1.309,9.159-6.105,6.761-12.866C75.969-140.855,64.847-138.675,60.486-133.66z"/>
- <path fill="#704C3A" d="M60.806-133.541c-1.379,1.585-3.361,4.622,0.21,6.723s6.722,6.512,10.503,5.251
- c3.782-1.26,8.824-5.882,6.513-12.394C75.721-140.473,65.007-138.372,60.806-133.541z"/>
- <path fill="#6B4C3C" d="M61.125-133.42c-1.326,1.525-3.233,4.446,0.202,6.467c3.436,2.021,6.467,6.264,10.104,5.052
- c3.639-1.212,8.488-5.658,6.266-11.923S65.167-138.068,61.125-133.42z"/>
- <path fill="#664C3E" d="M61.444-133.301c-1.273,1.465-3.105,4.27,0.194,6.211c3.3,1.941,6.211,6.017,9.704,4.853
- c3.494-1.165,8.153-5.435,6.018-11.452C75.226-139.706,65.326-137.765,61.444-133.301z"/>
- <path fill="#614B3F" d="M61.764-133.181c-1.222,1.404-2.978,4.094,0.187,5.956c3.163,1.861,5.955,5.77,9.306,4.653
- c3.35-1.117,7.816-5.211,5.77-10.981C74.979-139.322,65.486-137.461,61.764-133.181z"/>
- <path fill="#5B4940" d="M62.083-133.061c-1.169,1.344-2.851,3.919,0.179,5.7c3.027,1.781,5.699,5.522,8.906,4.453
- c3.206-1.069,7.481-4.988,5.521-10.51C74.73-138.939,65.646-137.158,62.083-133.061z"/>
- <path fill="#54463F" d="M62.402-132.941c-1.116,1.284-2.723,3.743,0.17,5.445c2.893,1.701,5.445,5.274,8.508,4.253
- c3.063-1.021,7.146-4.763,5.274-10.038C74.483-138.556,65.806-136.854,62.402-132.941z"/>
- <path fill="#4D423D" d="M62.723-132.821c-1.064,1.224-2.596,3.567,0.161,5.189s5.189,5.026,8.108,4.054
- c2.919-0.973,6.811-4.54,5.026-9.567C74.235-138.172,65.966-136.551,62.723-132.821z"/>
- <path fill="#443D39" d="M63.042-132.702c-1.012,1.163-2.468,3.392,0.153,4.934c2.621,1.542,4.934,4.779,7.709,3.854
- c2.775-0.925,6.475-4.316,4.779-9.096C73.988-137.789,66.125-136.248,63.042-132.702z"/>
- <path fill="#3A3534" d="M63.361-132.582c-0.96,1.103-2.34,3.216,0.146,4.678c2.485,1.461,4.678,4.531,7.31,3.654
- c2.631-0.877,6.14-4.093,4.531-8.625C73.74-137.406,66.285-135.944,63.361-132.582z"/>
- <path fill="#252423" d="M63.681-132.462c-0.907,1.042-2.212,3.04,0.138,4.422c2.35,1.382,4.423,4.284,6.91,3.455
- s5.804-3.869,4.284-8.154C73.493-137.022,66.444-135.641,63.681-132.462z"/>
- <path d="M64-132.342c-0.854,0.982-2.084,2.865,0.13,4.167c2.214,1.302,4.167,4.036,6.511,3.255s5.469-3.646,4.036-7.683
- C73.245-136.639,66.604-135.337,64-132.342z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M50.458-82.389c-3.844,4.165-5.75,5.5-5,11.25s-0.75,10.25,8.25,10.5s15.25-1.75,15.25-9.25
- S56.458-88.889,50.458-82.389z"/>
- <path fill="#82472C" d="M50.592-82.118c-3.74,4.054-5.596,5.354-4.865,10.952c0.729,5.598-0.73,9.979,8.028,10.222
- c8.759,0.243,14.841-1.704,14.841-9.005S56.431-88.446,50.592-82.118z"/>
- <path fill="#7D4930" d="M50.727-81.847c-3.638,3.945-5.441,5.209-4.731,10.655s-0.71,9.708,7.807,9.945
- c8.518,0.237,14.432-1.658,14.432-8.761S56.404-88.003,50.727-81.847z"/>
- <path fill="#794B34" d="M50.86-81.576c-3.534,3.834-5.286,5.063-4.597,10.357c0.689,5.294-0.689,9.437,7.586,9.667
- c8.274,0.23,14.021-1.611,14.021-8.516S56.377-87.56,50.86-81.576z"/>
- <path fill="#754C37" d="M50.995-81.304c-3.431,3.724-5.132,4.917-4.463,10.059s-0.669,9.166,7.363,9.389
- c8.034,0.224,13.612-1.564,13.612-8.271C67.508-76.833,56.351-87.117,50.995-81.304z"/>
- <path fill="#704C3A" d="M51.13-81.034c-3.328,3.614-4.979,4.773-4.329,9.762c0.649,4.99-0.649,8.895,7.143,9.111
- c7.791,0.217,13.202-1.518,13.202-8.026C67.146-76.695,56.324-86.673,51.13-81.034z"/>
- <path fill="#6B4C3C" d="M51.264-80.762c-3.225,3.504-4.824,4.627-4.194,9.464c0.629,4.838-0.63,8.624,6.921,8.833
- c7.55,0.21,12.793-1.472,12.793-7.781C66.783-76.556,56.297-86.23,51.264-80.762z"/>
- <path fill="#664C3E" d="M51.397-80.491c-3.121,3.393-4.669,4.481-4.06,9.166c0.608,4.686-0.609,8.352,6.699,8.556
- c7.309,0.204,12.383-1.426,12.383-7.537C66.42-76.417,56.271-85.788,51.397-80.491z"/>
- <path fill="#614B3F" d="M51.532-80.22c-3.019,3.283-4.515,4.336-3.926,8.869c0.589,4.533-0.589,8.081,6.478,8.278
- c7.066,0.197,11.974-1.379,11.974-7.292C66.058-76.278,56.243-85.344,51.532-80.22z"/>
- <path fill="#5B4940" d="M51.666-79.949c-2.915,3.173-4.36,4.19-3.791,8.571c0.568,4.381-0.569,7.81,6.256,8
- c6.825,0.19,11.564-1.333,11.564-7.047S56.217-84.901,51.666-79.949z"/>
- <path fill="#54463F" d="M51.801-79.678c-2.813,3.063-4.206,4.045-3.657,8.273c0.548,4.229-0.549,7.539,6.034,7.723
- c6.584,0.184,11.155-1.287,11.155-6.803C65.333-76,56.189-84.458,51.801-79.678z"/>
- <path fill="#4D423D" d="M51.935-79.406c-2.709,2.953-4.051,3.899-3.522,7.976c0.528,4.077-0.528,7.268,5.813,7.445
- c6.342,0.177,10.746-1.241,10.746-6.558C64.971-75.862,56.163-84.015,51.935-79.406z"/>
- <path fill="#443D39" d="M52.069-79.135c-2.605,2.842-3.897,3.754-3.389,7.678c0.508,3.925-0.509,6.997,5.592,7.167
- c6.1,0.17,10.336-1.194,10.336-6.313C64.608-75.723,56.136-83.572,52.069-79.135z"/>
- <path fill="#3A3534" d="M52.203-78.864c-2.502,2.732-3.742,3.608-3.254,7.381c0.487,3.772-0.488,6.726,5.37,6.889
- s9.926-1.148,9.926-6.068C64.245-75.584,56.109-83.129,52.203-78.864z"/>
- <path fill="#252423" d="M52.338-78.593c-2.399,2.622-3.589,3.463-3.12,7.083c0.468,3.621-0.469,6.455,5.148,6.612
- c5.616,0.157,9.517-1.102,9.517-5.824C63.883-75.445,56.082-82.686,52.338-78.593z"/>
- <path d="M52.472-78.322c-2.296,2.512-3.434,3.317-2.985,6.785c0.447,3.469-0.448,6.184,4.927,6.334s9.107-1.056,9.107-5.579
- C63.521-75.306,56.056-82.243,52.472-78.322z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M32.708-60.639c-1.63,1.358-4.5,3.75-4.25,8.5c0.25,4.75-3.25,7,2,9.25s7.25,4,12,2.5
- s8.25-4.75,8.5-7.25C51.208-50.139,40.208-66.889,32.708-60.639z"/>
- <path fill="#82472C" d="M32.913-60.506c-1.581,1.339-4.364,3.696-4.122,8.378c0.243,4.681-3.151,6.898,1.939,9.115
- c5.091,2.218,7.03,3.942,11.637,2.464c4.605-1.479,8-4.681,8.242-7.146C50.852-50.158,40.186-66.666,32.913-60.506z"/>
- <path fill="#7D4930" d="M33.117-60.372c-1.531,1.319-4.228,3.642-3.993,8.254c0.235,4.613-3.053,6.797,1.879,8.982
- c4.932,2.186,6.811,3.885,11.273,2.429c4.462-1.457,7.75-4.613,7.984-7.041C50.496-50.175,40.163-66.441,33.117-60.372z"/>
- <path fill="#794B34" d="M33.321-60.238c-1.481,1.299-4.09,3.587-3.863,8.132c0.228,4.544-2.955,6.696,1.818,8.849
- c4.772,2.152,6.591,3.827,10.909,2.392c4.318-1.435,7.5-4.544,7.727-6.936C50.14-50.193,40.14-66.218,33.321-60.238z"/>
- <path fill="#754C37" d="M33.526-60.105c-1.433,1.28-3.955,3.533-3.735,8.009c0.22,4.476-2.856,6.595,1.758,8.715
- c4.614,2.12,6.372,3.77,10.546,2.355c4.174-1.412,7.25-4.476,7.469-6.831C49.784-50.211,40.117-65.993,33.526-60.105z"/>
- <path fill="#704C3A" d="M33.73-59.971c-1.382,1.26-3.818,3.479-3.606,7.887c0.212,4.407-2.757,6.494,1.697,8.581
- c4.455,2.088,6.152,3.712,10.183,2.32s7-4.407,7.212-6.727S40.095-65.77,33.73-59.971z"/>
- <path fill="#6B4C3C" d="M33.936-59.838c-1.334,1.241-3.682,3.425-3.478,7.764c0.205,4.338-2.659,6.394,1.637,8.448
- c4.295,2.056,5.932,3.653,9.818,2.283c3.886-1.369,6.75-4.338,6.954-6.622C49.072-50.247,40.072-65.546,33.936-59.838z"/>
- <path fill="#664C3E" d="M34.14-59.704c-1.284,1.221-3.545,3.371-3.349,7.641c0.198,4.269-2.56,6.292,1.576,8.314
- c4.137,2.022,5.712,3.597,9.454,2.247c3.743-1.348,6.5-4.27,6.697-6.517S40.049-65.322,34.14-59.704z"/>
- <path fill="#614B3F" d="M34.345-59.57c-1.235,1.201-3.409,3.316-3.22,7.518c0.19,4.201-2.462,6.191,1.515,8.18
- c3.978,1.99,5.493,3.539,9.092,2.212c3.598-1.326,6.249-4.201,6.438-6.413C48.359-50.284,40.026-65.098,34.345-59.57z"/>
- <path fill="#5B4940" d="M34.549-59.437c-1.185,1.182-3.272,3.263-3.091,7.396c0.182,4.132-2.364,6.09,1.454,8.046
- c3.819,1.959,5.273,3.481,8.728,2.176c3.455-1.305,6.001-4.132,6.182-6.308C48.004-50.302,40.004-64.874,34.549-59.437z"/>
- <path fill="#54463F" d="M34.754-59.303c-1.136,1.162-3.137,3.208-2.963,7.273c0.175,4.063-2.265,5.988,1.395,7.913
- c3.659,1.926,5.053,3.423,8.363,2.139c3.311-1.282,5.75-4.063,5.924-6.203C47.647-50.32,39.98-64.65,34.754-59.303z"/>
- <path fill="#4D423D" d="M34.958-59.17c-1.086,1.143-3,3.154-2.833,7.15c0.167,3.995-2.167,5.888,1.333,7.779
- c3.5,1.894,4.834,3.365,8,2.104c3.167-1.261,5.5-3.995,5.666-6.099C47.292-50.337,39.958-64.426,34.958-59.17z"/>
- <path fill="#443D39" d="M35.163-59.036c-1.037,1.123-2.863,3.1-2.705,7.027c0.159,3.927-2.068,5.786,1.272,7.646
- c3.342,1.861,4.614,3.308,7.637,2.067c3.022-1.239,5.25-3.927,5.409-5.994C46.936-50.355,39.936-64.203,35.163-59.036z"/>
- <path fill="#3A3534" d="M35.367-58.902c-0.987,1.103-2.727,3.046-2.576,6.905c0.152,3.858-1.969,5.685,1.212,7.512
- c3.183,1.828,4.395,3.25,7.273,2.03c2.879-1.217,5-3.857,5.151-5.889C46.579-50.374,39.913-63.979,35.367-58.902z"/>
- <path fill="#252423" d="M35.572-58.769c-0.938,1.083-2.591,2.992-2.447,6.782c0.144,3.79-1.871,5.583,1.151,7.378
- c3.023,1.796,4.175,3.192,6.909,1.995c2.734-1.196,4.75-3.79,4.894-5.785C46.224-50.392,39.89-63.755,35.572-58.769z"/>
- <path d="M35.776-58.635c-0.889,1.063-2.454,2.938-2.318,6.659c0.137,3.721-1.772,5.483,1.091,7.245
- c2.864,1.764,3.955,3.135,6.546,1.959c2.591-1.174,4.5-3.721,4.636-5.68C45.867-50.41,39.867-63.531,35.776-58.635z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M126.959-136.639c0.775-0.155,4.5-5,4.5-5s1.25-8,0-9.25s-9-7.5-12.25-6s-5.75,10-5.25,14.5
- S118.209-134.889,126.959-136.639z"/>
- <path fill="#82472C" d="M126.847-136.883c0.756-0.151,4.388-4.872,4.388-4.872s1.218-7.794,0-9.012
- c-1.219-1.218-8.775-7.307-11.944-5.846s-5.605,9.743-5.119,14.127C114.659-138.102,118.315-135.178,126.847-136.883z"/>
- <path fill="#7D4930" d="M126.734-137.128c0.736-0.147,4.274-4.743,4.274-4.743s1.188-7.588,0-8.774
- c-1.188-1.186-8.55-7.114-11.638-5.691c-3.087,1.423-5.462,9.486-4.987,13.754C114.859-138.313,118.421-135.468,126.734-137.128
- z"/>
- <path fill="#794B34" d="M126.621-137.372c0.718-0.144,4.163-4.614,4.163-4.614s1.156-7.383,0-8.536
- c-1.156-1.154-8.325-6.921-11.331-5.538c-3.007,1.385-5.319,9.229-4.856,13.382
- C115.059-138.525,118.527-135.757,126.621-137.372z"/>
- <path fill="#754C37" d="M126.509-137.616c0.698-0.14,4.05-4.486,4.05-4.486s1.125-7.177,0-8.298
- c-1.125-1.122-8.1-6.729-11.025-5.383c-2.924,1.345-5.175,8.971-4.725,13.008S118.634-136.046,126.509-137.616z"/>
- <path fill="#704C3A" d="M126.396-137.86c0.679-0.136,3.938-4.357,3.938-4.357s1.094-6.971,0-8.061s-7.875-6.536-10.719-5.229
- s-5.031,8.714-4.594,12.635S118.74-136.336,126.396-137.86z"/>
- <path fill="#6B4C3C" d="M126.284-138.104c0.659-0.132,3.825-4.229,3.825-4.229s1.062-6.766,0-7.823
- c-1.063-1.057-7.65-6.343-10.413-5.075c-2.762,1.269-4.887,8.457-4.462,12.263S118.846-136.625,126.284-138.104z"/>
- <path fill="#664C3E" d="M126.172-138.349c0.64-0.127,3.712-4.1,3.712-4.1s1.031-6.56,0-7.585
- c-1.031-1.025-7.425-6.15-10.106-4.92c-2.681,1.23-4.743,8.2-4.331,11.89C115.858-139.374,118.952-136.914,126.172-138.349z"/>
- <path fill="#614B3F" d="M126.059-138.593c0.621-0.124,3.601-3.972,3.601-3.972s0.999-6.354,0-7.347
- c-1.001-0.993-7.2-5.957-9.801-4.766c-2.6,1.191-4.6,7.943-4.199,11.517C116.059-139.586,119.059-137.204,126.059-138.593z"/>
- <path fill="#5B4940" d="M125.946-138.837c0.602-0.12,3.487-3.843,3.487-3.843s0.969-6.148,0-7.109
- c-0.969-0.96-6.975-5.764-9.494-4.611c-2.518,1.153-4.455,7.686-4.068,11.145C116.259-139.798,119.165-137.493,125.946-138.837z
- "/>
- <path fill="#54463F" d="M125.834-139.082c0.581-0.115,3.375-3.714,3.375-3.714s0.937-5.943,0-6.872
- c-0.938-0.928-6.75-5.571-9.188-4.457c-2.437,1.114-4.312,7.428-3.937,10.771C116.459-140.011,119.271-137.782,125.834-139.082z
- "/>
- <path fill="#4D423D" d="M125.722-139.326c0.562-0.111,3.263-3.586,3.263-3.586s0.905-5.737,0-6.634
- c-0.907-0.896-6.525-5.378-8.882-4.302c-2.356,1.075-4.169,7.171-3.806,10.398C116.659-140.223,119.377-138.071,125.722-139.326
- z"/>
- <path fill="#443D39" d="M125.609-139.57c0.542-0.108,3.149-3.458,3.149-3.458s0.874-5.531,0-6.396
- c-0.876-0.864-6.3-5.186-8.575-4.148c-2.274,1.037-4.024,6.914-3.675,10.025C116.859-140.435,119.483-138.361,125.609-139.57z"
- />
- <path fill="#3A3534" d="M125.496-139.815c0.523-0.104,3.038-3.329,3.038-3.329s0.843-5.326,0-6.158
- c-0.845-0.832-6.075-4.993-8.27-3.994c-2.193,0.999-3.881,6.657-3.543,9.653C117.059-140.647,119.589-138.65,125.496-139.815z"
- />
- <path fill="#252423" d="M125.384-140.059c0.504-0.1,2.925-3.2,2.925-3.2s0.812-5.12,0-5.92c-0.813-0.8-5.85-4.8-7.963-3.84
- c-2.111,0.96-3.736,6.399-3.412,9.28C117.259-140.859,119.695-138.939,125.384-140.059z"/>
- <path d="M125.271-140.303c0.484-0.096,2.813-3.072,2.813-3.072s0.78-4.914,0-5.682c-0.782-0.768-5.625-4.607-7.657-3.686
- c-2.03,0.921-3.593,6.143-3.28,8.907C117.459-141.071,119.802-139.229,125.271-140.303z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M95.809-126.989c-2.319,1.987-2.802,11.8,1.198,14.2s5.802,3,8.802,0.2c3-2.8,6.198-8.6,1.198-12.6
- S97.209-128.189,95.809-126.989z"/>
- <path fill="#82472C" d="M95.961-126.752c-2.253,1.92-2.722,11.407,1.165,13.727c3.887,2.32,5.638,2.9,8.552,0.193
- c2.916-2.707,6.023-8.313,1.165-12.18S97.322-127.912,95.961-126.752z"/>
- <path fill="#7D4930" d="M96.114-126.516c-2.188,1.855-2.643,11.014,1.131,13.254c3.773,2.24,5.473,2.8,8.303,0.186
- c2.83-2.613,5.848-8.026,1.131-11.759C101.962-128.569,97.436-127.636,96.114-126.516z"/>
- <path fill="#794B34" d="M96.268-126.279c-2.122,1.788-2.563,10.621,1.097,12.78c3.66,2.16,5.309,2.7,8.053,0.18
- c2.745-2.52,5.672-7.74,1.098-11.339C101.939-128.259,97.549-127.359,96.268-126.279z"/>
- <path fill="#754C37" d="M96.42-126.042c-2.055,1.722-2.483,10.227,1.063,12.307s5.144,2.6,7.804,0.173s5.496-7.453,1.063-10.92
- C101.917-127.949,97.662-127.083,96.42-126.042z"/>
- <path fill="#704C3A" d="M96.573-125.806c-1.989,1.656-2.404,9.834,1.029,11.833c3.434,2,4.979,2.5,7.555,0.167
- c2.574-2.333,5.32-7.166,1.028-10.5S97.775-126.806,96.573-125.806z"/>
- <path fill="#6B4C3C" d="M96.727-125.569c-1.924,1.59-2.325,9.44,0.995,11.36c3.319,1.92,4.814,2.4,7.305,0.16
- c2.489-2.24,5.145-6.879,0.995-10.08C101.871-127.329,97.889-126.529,96.727-125.569z"/>
- <path fill="#664C3E" d="M96.879-125.333c-1.857,1.523-2.245,9.047,0.962,10.887c3.206,1.84,4.65,2.3,7.055,0.153
- c2.405-2.146,4.97-6.593,0.962-9.66C101.849-127.019,98.002-126.252,96.879-125.333z"/>
- <path fill="#614B3F" d="M97.032-125.096c-1.792,1.457-2.166,8.653,0.928,10.413c3.094,1.76,4.485,2.2,6.806,0.146
- c2.319-2.053,4.794-6.306,0.928-9.24C101.826-126.709,98.114-125.976,97.032-125.096z"/>
- <path fill="#5B4940" d="M97.185-124.859c-1.726,1.391-2.086,8.26,0.895,9.94c2.979,1.68,4.321,2.1,6.556,0.14
- c2.235-1.96,4.619-6.02,0.894-8.82C101.804-126.399,98.228-125.699,97.185-124.859z"/>
- <path fill="#54463F" d="M97.338-124.623c-1.66,1.325-2.007,7.867,0.859,9.466c2.867,1.601,4.157,2,6.308,0.134
- c2.149-1.867,4.442-5.733,0.859-8.4S98.341-125.422,97.338-124.623z"/>
- <path fill="#4D423D" d="M97.491-124.386c-1.595,1.258-1.928,7.474,0.825,8.993c2.754,1.52,3.993,1.9,6.058,0.126
- c2.064-1.773,4.268-5.446,0.826-7.979C101.758-125.779,98.454-125.146,97.491-124.386z"/>
- <path fill="#443D39" d="M97.644-124.149c-1.528,1.192-1.848,7.08,0.792,8.52c2.641,1.44,3.828,1.8,5.809,0.12
- c1.979-1.68,4.092-5.16,0.792-7.56C101.735-125.469,98.567-124.869,97.644-124.149z"/>
- <path fill="#3A3534" d="M97.797-123.913c-1.463,1.126-1.769,6.687,0.758,8.046c2.527,1.36,3.664,1.7,5.559,0.114
- c1.895-1.587,3.917-4.873,0.758-7.14C101.713-125.159,98.681-124.592,97.797-123.913z"/>
- <path fill="#252423" d="M97.949-123.676c-1.396,1.06-1.688,6.293,0.725,7.573c2.414,1.28,3.499,1.6,5.31,0.106
- c1.81-1.493,3.74-4.586,0.724-6.72S98.794-124.316,97.949-123.676z"/>
- <path d="M98.103-123.439c-1.331,0.993-1.609,5.9,0.69,7.1c2.301,1.2,3.335,1.5,5.06,0.1s3.565-4.3,0.69-6.3
- S98.907-124.039,98.103-123.439z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M66.208-153.389c-3.488,2.415-2.75,8.25-1.25,9.5s5.25,4,10,2.25c4.751-1.75,10.001-4,10.751-7.75
- s0.5-6.25-4-7.75S69.458-155.639,66.208-153.389z"/>
- <path fill="#82472C" d="M66.411-153.261c-3.414,2.338-2.692,7.986-1.224,9.196c1.468,1.21,5.138,3.873,9.786,2.179
- c4.65-1.694,9.788-3.873,10.521-7.503c0.734-3.63,0.489-6.05-3.914-7.502C77.177-158.344,69.591-155.44,66.411-153.261z"/>
- <path fill="#7D4930" d="M66.613-153.134c-3.34,2.261-2.633,7.724-1.196,8.895c1.436,1.17,5.025,3.745,9.573,2.106
- s9.574-3.745,10.292-7.256s0.479-5.852-3.829-7.256C77.145-158.049,69.725-155.241,66.613-153.134z"/>
- <path fill="#794B34" d="M66.816-153.006c-3.266,2.184-2.574,7.46-1.17,8.591c1.403,1.13,4.913,3.618,9.359,2.035
- c4.447-1.583,9.36-3.618,10.063-7.009c0.702-3.392,0.468-5.652-3.743-7.008C77.113-157.754,69.858-155.042,66.816-153.006z"/>
- <path fill="#754C37" d="M67.019-152.879c-3.19,2.107-2.515,7.198-1.144,8.289c1.372,1.09,4.802,3.489,9.147,1.963
- c4.345-1.527,9.146-3.49,9.833-6.762c0.687-3.271,0.457-5.453-3.658-6.762C77.081-157.459,69.991-154.842,67.019-152.879z"/>
- <path fill="#704C3A" d="M67.222-152.751c-3.116,2.03-2.457,6.935-1.117,7.985c1.34,1.051,4.69,3.363,8.934,1.891
- c4.244-1.471,8.934-3.362,9.604-6.514c0.671-3.152,0.447-5.253-3.572-6.514C77.049-157.165,70.125-154.643,67.222-152.751z"/>
- <path fill="#6B4C3C" d="M67.424-152.624c-3.042,1.953-2.398,6.672-1.09,7.683c1.309,1.011,4.578,3.235,8.721,1.82
- c4.142-1.416,8.72-3.235,9.373-6.268c0.655-3.033,0.437-5.055-3.486-6.268C77.017-156.87,70.258-154.444,67.424-152.624z"/>
- <path fill="#664C3E" d="M67.627-152.496c-2.968,1.876-2.34,6.408-1.063,7.379s4.466,3.107,8.507,1.748
- c4.041-1.36,8.507-3.107,9.145-6.021c0.639-2.913,0.426-4.855-3.401-6.02C76.984-156.575,70.392-154.244,67.627-152.496z"/>
- <path fill="#614B3F" d="M67.829-152.369c-2.893,1.799-2.28,6.146-1.036,7.077s4.354,2.979,8.293,1.676s8.294-2.979,8.915-5.773
- c0.623-2.793,0.415-4.656-3.315-5.773C76.952-156.28,70.524-154.045,67.829-152.369z"/>
- <path fill="#5B4940" d="M68.032-152.241c-2.818,1.722-2.223,5.882-1.01,6.774c1.212,0.891,4.241,2.852,8.08,1.604
- c3.838-1.248,8.08-2.852,8.686-5.526c0.606-2.674,0.404-4.457-3.23-5.526C76.92-155.985,70.658-153.846,68.032-152.241z"/>
- <path fill="#54463F" d="M68.234-152.114c-2.744,1.645-2.163,5.62-0.982,6.471c1.18,0.852,4.129,2.725,7.866,1.533
- c3.736-1.192,7.867-2.725,8.456-5.279c0.591-2.554,0.394-4.257-3.146-5.279C76.888-155.69,70.791-153.646,68.234-152.114z"/>
- <path fill="#4D423D" d="M68.438-151.986c-2.67,1.568-2.104,5.356-0.957,6.168c1.148,0.812,4.019,2.597,7.653,1.461
- c3.636-1.136,7.654-2.597,8.227-5.032c0.575-2.435,0.384-4.058-3.06-5.032C76.856-155.395,70.925-153.447,68.438-151.986z"/>
- <path fill="#443D39" d="M68.64-151.859c-2.595,1.491-2.046,5.093-0.93,5.865s3.906,2.47,7.44,1.389
- c3.533-1.081,7.439-2.469,7.997-4.785c0.56-2.315,0.372-3.858-2.975-4.785C76.824-155.1,71.058-153.248,68.64-151.859z"/>
- <path fill="#3A3534" d="M68.843-151.731c-2.521,1.414-1.987,4.83-0.903,5.562c1.084,0.732,3.794,2.342,7.227,1.317
- s7.227-2.342,7.768-4.538c0.544-2.196,0.362-3.659-2.889-4.538C76.792-154.805,71.191-153.048,68.843-151.731z"/>
- <path fill="#252423" d="M69.045-151.604c-2.446,1.337-1.929,4.567-0.876,5.259c1.052,0.692,3.682,2.214,7.014,1.246
- c3.33-0.969,7.013-2.214,7.538-4.291c0.527-2.076,0.351-3.46-2.804-4.291C76.76-154.51,71.324-152.849,69.045-151.604z"/>
- <path d="M69.248-151.476c-2.372,1.26-1.87,4.304-0.85,4.957c1.02,0.652,3.569,2.087,6.8,1.174
- c3.229-0.913,6.8-2.087,7.309-4.043c0.512-1.957,0.341-3.261-2.718-4.043C76.728-154.215,71.458-152.65,69.248-151.476z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M96.459-153.639c-1.636,1.718-5.25,3.25-5.75,5.75s-1,6.75,3.25,9s7.5,9.25,13.75,6s4-9.25,4-11.5
- S106.209-163.889,96.459-153.639z"/>
- <path fill="#82472C" d="M96.638-153.406c-1.585,1.675-5.087,3.168-5.571,5.605c-0.484,2.437-0.969,6.58,3.149,8.773
- s7.267,9.017,13.322,5.849c6.055-3.168,3.876-9.017,3.876-11.21S106.084-163.398,96.638-153.406z"/>
- <path fill="#7D4930" d="M96.816-153.173c-1.534,1.631-4.923,3.086-5.392,5.46c-0.469,2.375-0.938,6.41,3.048,8.547
- c3.985,2.136,7.033,8.784,12.894,5.697c5.861-3.086,3.752-8.784,3.752-10.92S105.96-162.906,96.816-153.173z"/>
- <path fill="#794B34" d="M96.996-152.94c-1.483,1.588-4.761,3.004-5.214,5.315s-0.907,6.24,2.946,8.319
- c3.854,2.08,6.801,8.551,12.467,5.546c5.667-3.004,3.627-8.55,3.627-10.63C110.822-146.469,105.835-162.415,96.996-152.94z"/>
- <path fill="#754C37" d="M97.175-152.707c-1.433,1.545-4.597,2.922-5.034,5.17c-0.438,2.248-0.877,6.07,2.845,8.093
- c3.722,2.023,6.566,8.317,12.039,5.395c5.472-2.922,3.502-8.317,3.502-10.34S105.711-161.923,97.175-152.707z"/>
- <path fill="#704C3A" d="M97.354-152.474c-1.382,1.501-4.434,2.841-4.855,5.025c-0.423,2.185-0.846,5.899,2.744,7.866
- c3.59,1.966,6.333,8.084,11.611,5.244c5.277-2.84,3.378-8.084,3.378-10.051C110.231-146.355,105.587-161.432,97.354-152.474z"/>
- <path fill="#6B4C3C" d="M97.532-152.24c-1.331,1.458-4.27,2.759-4.677,4.88c-0.406,2.122-0.813,5.729,2.644,7.639
- s6.1,7.851,11.184,5.093c5.082-2.759,3.253-7.852,3.253-9.761S105.462-160.94,97.532-152.24z"/>
- <path fill="#664C3E" d="M97.712-152.007c-1.281,1.415-4.107,2.677-4.498,4.735c-0.392,2.059-0.783,5.56,2.542,7.413
- c3.324,1.853,5.866,7.618,10.756,4.941c4.888-2.677,3.128-7.618,3.128-9.471S105.338-160.449,97.712-152.007z"/>
- <path fill="#614B3F" d="M97.891-151.774c-1.229,1.372-3.944,2.595-4.319,4.591c-0.376,1.996-0.753,5.389,2.44,7.185
- s5.634,7.385,10.328,4.79c4.693-2.595,3.005-7.385,3.005-9.181S105.213-159.958,97.891-151.774z"/>
- <path fill="#5B4940" d="M98.069-151.541c-1.179,1.328-3.78,2.513-4.14,4.446c-0.361,1.933-0.722,5.219,2.339,6.958
- s5.4,7.152,9.9,4.639c4.499-2.513,2.88-7.152,2.88-8.892S105.089-159.466,98.069-151.541z"/>
- <path fill="#54463F" d="M98.248-151.308c-1.128,1.285-3.617,2.431-3.961,4.301c-0.345,1.87-0.69,5.049,2.238,6.731
- c2.929,1.683,5.167,6.918,9.473,4.488c4.304-2.431,2.755-6.918,2.755-8.602S104.964-158.975,98.248-151.308z"/>
- <path fill="#4D423D" d="M98.427-151.075c-1.077,1.242-3.454,2.349-3.782,4.156c-0.329,1.807-0.659,4.879,2.138,6.505
- c2.796,1.626,4.934,6.685,9.045,4.336c4.109-2.349,2.631-6.685,2.631-8.312C108.458-146.015,104.84-158.483,98.427-151.075z"/>
- <path fill="#443D39" d="M98.605-150.841c-1.026,1.198-3.29,2.267-3.603,4.011c-0.314,1.744-0.629,4.708,2.036,6.278
- c2.664,1.57,4.699,6.453,8.617,4.186c3.914-2.267,2.506-6.453,2.506-8.022S104.715-157.992,98.605-150.841z"/>
- <path fill="#3A3534" d="M98.785-150.608c-0.976,1.155-3.128,2.186-3.425,3.866c-0.299,1.681-0.598,4.538,1.935,6.051
- c2.532,1.513,4.467,6.219,8.189,4.034c3.721-2.185,2.382-6.219,2.382-7.732S104.591-157.5,98.785-150.608z"/>
- <path fill="#252423" d="M98.964-150.375c-0.925,1.111-2.964,2.103-3.245,3.721c-0.283,1.618-0.567,4.369,1.833,5.825
- s4.233,5.986,7.762,3.883c3.525-2.104,2.258-5.986,2.258-7.442S104.466-157.009,98.964-150.375z"/>
- <path d="M99.143-150.142c-0.874,1.068-2.801,2.021-3.066,3.576c-0.268,1.555-0.536,4.198,1.732,5.598
- c2.268,1.399,4,5.753,7.334,3.731c3.331-2.021,2.133-5.753,2.133-7.152S104.342-156.517,99.143-150.142z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M126.959-12.223c0.775-0.155,4.5-5,4.5-5s1.25-8,0-9.25s-9-7.5-12.25-6s-5.75,10-5.25,14.5
- S118.209-10.473,126.959-12.223z"/>
- <path fill="#82472C" d="M126.847-12.467c0.756-0.151,4.388-4.872,4.388-4.872s1.218-7.793,0-9.012
- c-1.219-1.218-8.775-7.307-11.944-5.846s-5.605,9.742-5.119,14.127C114.659-13.685,118.315-10.762,126.847-12.467z"/>
- <path fill="#7D4930" d="M126.734-12.712c0.736-0.146,4.274-4.742,4.274-4.742s1.188-7.588,0-8.774
- c-1.188-1.186-8.55-7.114-11.638-5.691c-3.087,1.423-5.462,9.485-4.987,13.755C114.859-13.896,118.421-11.052,126.734-12.712z"
- />
- <path fill="#794B34" d="M126.621-12.956c0.718-0.143,4.163-4.613,4.163-4.613s1.156-7.383,0-8.537
- c-1.156-1.153-8.325-6.921-11.331-5.537c-3.007,1.385-5.319,9.229-4.856,13.382C115.059-14.108,118.527-11.341,126.621-12.956z"
- />
- <path fill="#754C37" d="M126.509-13.2c0.698-0.139,4.05-4.485,4.05-4.485s1.125-7.177,0-8.298
- c-1.125-1.122-8.1-6.729-11.025-5.383c-2.924,1.345-5.175,8.971-4.725,13.008S118.634-11.63,126.509-13.2z"/>
- <path fill="#704C3A" d="M126.396-13.444c0.679-0.135,3.938-4.357,3.938-4.357s1.094-6.971,0-8.061
- c-1.094-1.089-7.875-6.535-10.719-5.229c-2.844,1.308-5.031,8.715-4.594,12.636S118.74-11.919,126.396-13.444z"/>
- <path fill="#6B4C3C" d="M126.284-13.688c0.659-0.131,3.825-4.229,3.825-4.229s1.062-6.766,0-7.822
- c-1.063-1.058-7.65-6.344-10.413-5.075c-2.762,1.269-4.887,8.457-4.462,12.263C115.659-14.745,118.846-12.208,126.284-13.688z"
- />
- <path fill="#664C3E" d="M126.172-13.933c0.64-0.127,3.712-4.1,3.712-4.1s1.031-6.561,0-7.586
- c-1.031-1.024-7.425-6.149-10.106-4.92c-2.681,1.23-4.743,8.2-4.331,11.891C115.858-14.958,118.952-12.497,126.172-13.933z"/>
- <path fill="#614B3F" d="M126.059-14.177c0.621-0.123,3.601-3.972,3.601-3.972s0.999-6.354,0-7.347
- c-1.001-0.993-7.2-5.957-9.801-4.766c-2.6,1.191-4.6,7.942-4.199,11.517C116.059-15.17,119.059-12.787,126.059-14.177z"/>
- <path fill="#5B4940" d="M125.946-14.421c0.602-0.119,3.487-3.844,3.487-3.844s0.969-6.148,0-7.109
- c-0.969-0.96-6.975-5.764-9.494-4.611c-2.518,1.153-4.455,7.686-4.068,11.145C116.259-15.382,119.165-13.076,125.946-14.421z"/>
- <path fill="#54463F" d="M125.834-14.665c0.581-0.115,3.375-3.715,3.375-3.715s0.937-5.943,0-6.871
- c-0.938-0.929-6.75-5.572-9.188-4.457c-2.437,1.113-4.312,7.428-3.937,10.771C116.459-15.595,119.271-13.366,125.834-14.665z"/>
- <path fill="#4D423D" d="M125.722-14.909c0.562-0.111,3.263-3.586,3.263-3.586s0.905-5.737,0-6.635
- c-0.907-0.896-6.525-5.378-8.882-4.302c-2.356,1.075-4.169,7.171-3.806,10.398C116.659-15.806,119.377-13.655,125.722-14.909z"
- />
- <path fill="#443D39" d="M125.609-15.153c0.542-0.108,3.149-3.458,3.149-3.458s0.874-5.531,0-6.396
- c-0.876-0.864-6.3-5.186-8.575-4.148c-2.274,1.037-4.024,6.914-3.675,10.025C116.859-16.019,119.483-13.944,125.609-15.153z"/>
- <path fill="#3A3534" d="M125.496-15.398c0.523-0.104,3.038-3.329,3.038-3.329s0.843-5.325,0-6.157
- c-0.845-0.832-6.075-4.993-8.27-3.994c-2.193,0.999-3.881,6.657-3.543,9.653C117.059-16.23,119.589-14.233,125.496-15.398z"/>
- <path fill="#252423" d="M125.384-15.643c0.504-0.1,2.925-3.2,2.925-3.2s0.812-5.119,0-5.92c-0.813-0.8-5.85-4.8-7.963-3.84
- c-2.111,0.96-3.736,6.399-3.412,9.28C117.259-16.442,119.695-14.522,125.384-15.643z"/>
- <path d="M125.271-15.887c0.484-0.096,2.813-3.071,2.813-3.071s0.78-4.914,0-5.683c-0.782-0.768-5.625-4.606-7.657-3.686
- c-2.03,0.921-3.593,6.143-3.28,8.907C117.459-16.655,119.802-14.812,125.271-15.887z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M66.208-28.973c-3.488,2.415-2.75,8.25-1.25,9.5s5.25,4,10,2.25c4.751-1.75,10.001-4,10.751-7.75
- s0.5-6.25-4-7.75S69.458-31.223,66.208-28.973z"/>
- <path fill="#82472C" d="M66.411-28.845c-3.414,2.338-2.692,7.986-1.224,9.196c1.468,1.21,5.138,3.872,9.786,2.179
- c4.65-1.694,9.788-3.873,10.521-7.504c0.734-3.63,0.489-6.05-3.914-7.502C77.177-33.928,69.591-31.023,66.411-28.845z"/>
- <path fill="#7D4930" d="M66.613-28.718c-3.34,2.262-2.633,7.725-1.196,8.895c1.436,1.17,5.025,3.745,9.573,2.106
- s9.574-3.745,10.292-7.256s0.479-5.852-3.829-7.256C77.145-33.633,69.725-30.824,66.613-28.718z"/>
- <path fill="#794B34" d="M66.816-28.59c-3.266,2.184-2.574,7.46-1.17,8.591c1.403,1.131,4.913,3.617,9.359,2.035
- c4.447-1.582,9.36-3.617,10.063-7.009s0.468-5.652-3.743-7.009C77.113-33.338,69.858-30.625,66.816-28.59z"/>
- <path fill="#754C37" d="M67.019-28.462c-3.19,2.106-2.515,7.197-1.144,8.288c1.372,1.091,4.802,3.489,9.147,1.963
- c4.345-1.526,9.146-3.489,9.833-6.762c0.687-3.271,0.457-5.452-3.658-6.762C77.081-33.043,69.991-30.425,67.019-28.462z"/>
- <path fill="#704C3A" d="M67.222-28.335c-3.116,2.029-2.457,6.936-1.117,7.985c1.34,1.051,4.69,3.362,8.934,1.892
- c4.244-1.471,8.934-3.362,9.604-6.515c0.671-3.152,0.447-5.253-3.572-6.515C77.049-32.748,70.125-30.226,67.222-28.335z"/>
- <path fill="#6B4C3C" d="M67.424-28.208c-3.042,1.953-2.398,6.672-1.09,7.684c1.309,1.011,4.578,3.234,8.721,1.819
- c4.142-1.415,8.72-3.235,9.373-6.268c0.655-3.032,0.437-5.055-3.486-6.268C77.017-32.453,70.258-30.027,67.424-28.208z"/>
- <path fill="#664C3E" d="M67.627-28.079c-2.968,1.875-2.34,6.408-1.063,7.379s4.466,3.107,8.507,1.748s8.507-3.107,9.145-6.021
- c0.639-2.913,0.426-4.854-3.401-6.021C76.984-32.158,70.392-29.827,67.627-28.079z"/>
- <path fill="#614B3F" d="M67.829-27.952c-2.893,1.799-2.28,6.146-1.036,7.076c1.244,0.932,4.354,2.98,8.293,1.676
- c3.939-1.303,8.294-2.979,8.915-5.772c0.623-2.794,0.415-4.655-3.315-5.772C76.952-31.863,70.524-29.628,67.829-27.952z"/>
- <path fill="#5B4940" d="M68.032-27.825c-2.818,1.723-2.223,5.883-1.01,6.774c1.212,0.892,4.241,2.853,8.08,1.604
- c3.838-1.248,8.08-2.853,8.686-5.526c0.606-2.674,0.404-4.456-3.23-5.526C76.92-31.568,70.658-29.429,68.032-27.825z"/>
- <path fill="#54463F" d="M68.234-27.697c-2.744,1.646-2.163,5.62-0.982,6.471c1.18,0.853,4.129,2.726,7.866,1.532
- c3.736-1.191,7.867-2.725,8.456-5.278c0.591-2.554,0.394-4.257-3.146-5.278C76.888-31.273,70.791-29.229,68.234-27.697z"/>
- <path fill="#4D423D" d="M68.438-27.569c-2.67,1.567-2.104,5.355-0.957,6.168c1.148,0.812,4.019,2.597,7.653,1.461
- c3.636-1.137,7.654-2.598,8.227-5.032c0.575-2.435,0.384-4.058-3.06-5.032C76.856-30.979,70.925-29.03,68.438-27.569z"/>
- <path fill="#443D39" d="M68.64-27.442c-2.595,1.49-2.046,5.094-0.93,5.865s3.906,2.47,7.44,1.389
- c3.533-1.08,7.439-2.469,7.997-4.784c0.56-2.315,0.372-3.858-2.975-4.784C76.824-30.684,71.058-28.831,68.64-27.442z"/>
- <path fill="#3A3534" d="M68.843-27.314c-2.521,1.413-1.987,4.83-0.903,5.562c1.084,0.732,3.794,2.343,7.227,1.318
- c3.433-1.025,7.227-2.342,7.768-4.538c0.544-2.196,0.362-3.659-2.889-4.538C76.792-30.389,71.191-28.632,68.843-27.314z"/>
- <path fill="#252423" d="M69.045-27.187c-2.446,1.336-1.929,4.566-0.876,5.259c1.052,0.692,3.682,2.214,7.014,1.245
- c3.33-0.969,7.013-2.214,7.538-4.29c0.527-2.076,0.351-3.46-2.804-4.29C76.76-30.094,71.324-28.433,69.045-27.187z"/>
- <path d="M69.248-27.06c-2.372,1.26-1.87,4.305-0.85,4.957c1.02,0.652,3.569,2.086,6.8,1.174c3.229-0.914,6.8-2.088,7.309-4.044
- c0.512-1.956,0.341-3.261-2.718-4.044C76.728-29.799,71.458-28.233,69.248-27.06z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M96.459-29.223c-1.636,1.718-5.25,3.25-5.75,5.75s-1,6.75,3.25,9s7.5,9.25,13.75,6s4-9.25,4-11.5
- S106.209-39.473,96.459-29.223z"/>
- <path fill="#82472C" d="M96.638-28.989c-1.585,1.675-5.087,3.168-5.571,5.605c-0.484,2.436-0.969,6.579,3.149,8.772
- s7.267,9.017,13.322,5.849c6.055-3.168,3.876-9.017,3.876-11.21S106.084-38.981,96.638-28.989z"/>
- <path fill="#7D4930" d="M96.816-28.757c-1.534,1.632-4.923,3.087-5.392,5.461s-0.938,6.41,3.048,8.547
- c3.985,2.136,7.033,8.783,12.894,5.697c5.861-3.086,3.752-8.784,3.752-10.921S105.96-38.489,96.816-28.757z"/>
- <path fill="#794B34" d="M96.996-28.523c-1.483,1.589-4.761,3.005-5.214,5.315s-0.907,6.24,2.946,8.319
- c3.854,2.08,6.801,8.551,12.467,5.546c5.667-3.004,3.627-8.55,3.627-10.63C110.822-22.052,105.835-37.999,96.996-28.523z"/>
- <path fill="#754C37" d="M97.175-28.29c-1.433,1.545-4.597,2.922-5.034,5.17c-0.438,2.248-0.877,6.07,2.845,8.093
- c3.722,2.023,6.566,8.317,12.039,5.396c5.472-2.923,3.502-8.318,3.502-10.341S105.711-37.507,97.175-28.29z"/>
- <path fill="#704C3A" d="M97.354-28.058c-1.382,1.502-4.434,2.842-4.855,5.025c-0.423,2.186-0.846,5.9,2.744,7.867
- c3.59,1.966,6.333,8.084,11.611,5.243c5.277-2.841,3.378-8.084,3.378-10.051C110.231-21.938,105.587-37.015,97.354-28.058z"/>
- <path fill="#6B4C3C" d="M97.532-27.823c-1.331,1.457-4.27,2.758-4.677,4.88c-0.406,2.122-0.813,5.729,2.644,7.64
- c3.457,1.909,6.1,7.851,11.184,5.092c5.082-2.758,3.253-7.852,3.253-9.761S105.462-36.524,97.532-27.823z"/>
- <path fill="#664C3E" d="M97.712-27.591c-1.281,1.415-4.107,2.678-4.498,4.735c-0.392,2.06-0.783,5.56,2.542,7.413
- c3.324,1.853,5.866,7.617,10.756,4.941c4.888-2.678,3.128-7.619,3.128-9.472S105.338-36.032,97.712-27.591z"/>
- <path fill="#614B3F" d="M97.891-27.357c-1.229,1.372-3.944,2.595-4.319,4.591c-0.376,1.996-0.753,5.389,2.44,7.186
- c3.193,1.796,5.634,7.385,10.328,4.789c4.693-2.594,3.005-7.385,3.005-9.181S105.213-35.541,97.891-27.357z"/>
- <path fill="#5B4940" d="M98.069-27.124c-1.179,1.328-3.78,2.513-4.14,4.445c-0.361,1.933-0.722,5.219,2.339,6.959
- c3.061,1.739,5.4,7.151,9.9,4.639c4.499-2.514,2.88-7.152,2.88-8.892S105.089-35.05,98.069-27.124z"/>
- <path fill="#54463F" d="M98.248-26.892c-1.128,1.285-3.617,2.432-3.961,4.301c-0.345,1.87-0.69,5.049,2.238,6.732
- c2.929,1.683,5.167,6.918,9.473,4.487c4.304-2.431,2.755-6.919,2.755-8.602S104.964-34.558,98.248-26.892z"/>
- <path fill="#4D423D" d="M98.427-26.658c-1.077,1.241-3.454,2.349-3.782,4.155c-0.329,1.808-0.659,4.879,2.138,6.506
- c2.796,1.626,4.934,6.686,9.045,4.336c4.109-2.35,2.631-6.686,2.631-8.312S104.84-34.066,98.427-26.658z"/>
- <path fill="#443D39" d="M98.605-26.425c-1.026,1.198-3.29,2.268-3.603,4.011c-0.314,1.743-0.629,4.708,2.036,6.278
- c2.664,1.569,4.699,6.452,8.617,4.186c3.914-2.268,2.506-6.453,2.506-8.022S104.715-33.575,98.605-26.425z"/>
- <path fill="#3A3534" d="M98.785-26.192c-0.976,1.155-3.128,2.186-3.425,3.867c-0.299,1.68-0.598,4.537,1.935,6.051
- c2.532,1.513,4.467,6.219,8.189,4.033c3.721-2.185,2.382-6.219,2.382-7.731S104.591-33.083,98.785-26.192z"/>
- <path fill="#252423" d="M98.964-25.958c-0.925,1.111-2.964,2.103-3.245,3.721c-0.283,1.617-0.567,4.368,1.833,5.824
- s4.233,5.986,7.762,3.883c3.525-2.104,2.258-5.986,2.258-7.442S104.466-32.593,98.964-25.958z"/>
- <path d="M99.143-25.726c-0.874,1.068-2.801,2.021-3.066,3.576c-0.268,1.555-0.536,4.198,1.732,5.598
- c2.268,1.399,4,5.753,7.334,3.731c3.331-2.021,2.133-5.753,2.133-7.152S104.342-32.101,99.143-25.726z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M80.959-120.139c-0.778,2.111-4,1.25-5.501,4c-1.5,2.75-5.25,7.25-2.75,11.75s-0.25,5,7.251,7
- c7.5,2,11.25,2.75,12.5-2.75S86.209-134.389,80.959-120.139z"/>
- <path fill="#82472C" d="M80.996-119.778c-0.759,2.047-3.897,1.211-5.36,3.878c-1.461,2.666-5.115,7.029-2.68,11.391
- c2.437,4.363-0.243,4.848,7.065,6.787s10.963,2.666,12.182-2.666C93.42-105.721,86.112-133.594,80.996-119.778z"/>
- <path fill="#7D4930" d="M81.033-119.418c-0.738,1.982-3.795,1.173-5.22,3.756c-1.423,2.582-4.981,6.808-2.609,11.033
- c2.372,4.225-0.237,4.694,6.881,6.573c7.116,1.878,10.675,2.582,11.861-2.583C93.132-105.803,86.016-132.798,81.033-119.418z"/>
- <path fill="#794B34" d="M81.071-119.058c-0.719,1.918-3.693,1.136-5.079,3.634c-1.386,2.498-4.848,6.586-2.54,10.674
- c2.309,4.088-0.23,4.542,6.695,6.359c6.925,1.817,10.388,2.499,11.542-2.499C92.844-105.885,85.918-132.003,81.071-119.058z"/>
- <path fill="#754C37" d="M81.108-118.697c-0.698,1.854-3.592,1.098-4.938,3.512c-1.347,2.415-4.714,6.365-2.469,10.316
- c2.244,3.951-0.225,4.39,6.51,6.146c6.732,1.756,10.101,2.415,11.223-2.414C92.556-105.966,85.822-131.208,81.108-118.697z"/>
- <path fill="#704C3A" d="M81.146-118.336c-0.679,1.79-3.489,1.06-4.798,3.39c-1.309,2.331-4.579,6.145-2.398,9.958
- s-0.218,4.237,6.324,5.932c6.541,1.695,9.813,2.331,10.903-2.331S85.726-130.413,81.146-118.336z"/>
- <path fill="#6B4C3C" d="M81.183-117.976c-0.658,1.725-3.387,1.021-4.657,3.268c-1.27,2.247-4.444,5.923-2.328,9.599
- c2.117,3.676-0.211,4.084,6.14,5.719c6.35,1.634,9.525,2.247,10.584-2.247C91.979-106.13,85.628-129.618,81.183-117.976z"/>
- <path fill="#664C3E" d="M81.221-117.615c-0.64,1.66-3.285,0.982-4.518,3.146c-1.231,2.162-4.311,5.702-2.258,9.241
- c2.053,3.539-0.205,3.932,5.954,5.505c6.157,1.573,9.238,2.163,10.265-2.163C91.689-106.212,85.531-128.822,81.221-117.615z"/>
- <path fill="#614B3F" d="M81.258-117.254c-0.619,1.596-3.183,0.945-4.376,3.023s-4.177,5.48-2.188,8.882
- c1.989,3.402-0.198,3.78,5.769,5.292c5.966,1.512,8.951,2.079,9.946-2.079C91.401-106.293,85.435-128.027,81.258-117.254z"/>
- <path fill="#5B4940" d="M81.295-116.894c-0.599,1.532-3.08,0.907-4.235,2.902c-1.155,1.995-4.043,5.259-2.117,8.523
- c1.925,3.265-0.192,3.627,5.583,5.078c5.774,1.451,8.663,1.995,9.626-1.995C91.112-106.375,85.338-127.231,81.295-116.894z"/>
- <path fill="#54463F" d="M81.332-116.533c-0.579,1.467-2.978,0.868-4.095,2.779c-1.116,1.911-3.908,5.038-2.047,8.166
- c1.86,3.127-0.187,3.474,5.397,4.864c5.583,1.39,8.376,1.911,9.308-1.911C90.824-106.458,85.241-126.436,81.332-116.533z"/>
- <path fill="#4D423D" d="M81.369-116.173c-0.559,1.403-2.876,0.831-3.954,2.658c-1.078,1.827-3.773,4.817-1.977,7.807
- s-0.18,3.322,5.212,4.651c5.392,1.329,8.089,1.827,8.988-1.827C90.536-106.539,85.145-125.641,81.369-116.173z"/>
- <path fill="#443D39" d="M81.406-115.813c-0.539,1.338-2.773,0.792-3.813,2.536c-1.039,1.743-3.64,4.596-1.906,7.449
- c1.733,2.852-0.173,3.169,5.027,4.437c5.199,1.268,7.802,1.743,8.669-1.744C90.247-106.621,85.047-124.845,81.406-115.813z"/>
- <path fill="#3A3534" d="M81.444-115.452c-0.52,1.274-2.672,0.754-3.673,2.414c-1.002,1.659-3.506,4.375-1.836,7.09
- c1.669,2.715-0.167,3.017,4.841,4.224c5.008,1.207,7.515,1.659,8.35-1.66C89.959-106.703,84.95-124.05,81.444-115.452z"/>
- <path fill="#252423" d="M81.481-115.091c-0.5,1.209-2.569,0.716-3.532,2.292c-0.963,1.575-3.372,4.153-1.766,6.731
- c1.604,2.578-0.161,2.864,4.656,4.01c4.815,1.146,7.227,1.576,8.03-1.576C89.67-106.785,84.854-123.255,81.481-115.091z"/>
- <path d="M81.519-114.73c-0.479,1.145-2.467,0.678-3.392,2.169c-0.925,1.491-3.237,3.932-1.695,6.373
- c1.541,2.44-0.154,2.711,4.471,3.796c4.624,1.084,6.939,1.492,7.711-1.492C89.382-106.866,84.757-122.459,81.519-114.73z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M120.459-103.389c-2.15,0.072-5.5-8.5-11.25-4.75s-8,2.5-9,7.75s0,8.75,5,11.75s6.5,6.25,11.5,2.75
- S127.959-103.639,120.459-103.389z"/>
- <path fill="#82472C" d="M120.177-103.215c-2.079,0.069-5.317-8.218-10.877-4.593c-5.559,3.625-7.734,2.417-8.701,7.493
- c-0.967,5.076,0,8.46,4.834,11.36c4.834,2.9,6.285,6.043,11.119,2.659C121.386-89.68,127.428-103.457,120.177-103.215z"/>
- <path fill="#7D4930" d="M119.895-103.041c-2.008,0.067-5.135-7.936-10.503-4.435c-5.368,3.501-7.47,2.334-8.403,7.236
- c-0.934,4.901,0,8.169,4.669,10.97c4.668,2.801,6.068,5.835,10.736,2.567S126.897-103.274,119.895-103.041z"/>
- <path fill="#794B34" d="M119.613-102.866c-1.938,0.064-4.953-7.654-10.131-4.278c-5.177,3.377-7.204,2.251-8.104,6.979
- c-0.899,4.727,0,7.879,4.503,10.58c4.502,2.702,5.854,5.628,10.355,2.477C120.738-90.26,126.366-103.092,119.613-102.866z"/>
- <path fill="#754C37" d="M119.33-102.693c-1.864,0.063-4.77-7.371-9.757-4.119c-4.986,3.252-6.938,2.167-7.805,6.721
- c-0.867,4.553,0,7.588,4.336,10.19c4.337,2.602,5.638,5.42,9.974,2.385C120.415-90.55,125.835-102.909,119.33-102.693z"/>
- <path fill="#704C3A" d="M119.049-102.519c-1.794,0.06-4.588-7.089-9.384-3.961s-6.673,2.085-7.507,6.464s0,7.298,4.171,9.801
- s5.422,5.213,9.592,2.294C120.091-90.841,125.304-102.727,119.049-102.519z"/>
- <path fill="#6B4C3C" d="M118.767-102.344c-1.723,0.058-4.405-6.808-9.011-3.804c-4.604,3.003-6.407,2.002-7.208,6.208
- c-0.801,4.205,0,7.008,4.005,9.411c4.005,2.402,5.206,5.005,9.21,2.202C119.768-91.131,124.772-102.544,118.767-102.344z"/>
- <path fill="#664C3E" d="M118.484-102.17c-1.651,0.055-4.223-6.525-8.637-3.646s-6.143,1.919-6.91,5.95
- c-0.768,4.03,0,6.717,3.839,9.021s4.991,4.798,8.829,2.111S124.241-102.362,118.484-102.17z"/>
- <path fill="#614B3F" d="M118.202-101.996c-1.58,0.053-4.04-6.244-8.264-3.489c-4.224,2.755-5.876,1.836-6.611,5.693
- c-0.733,3.856,0,6.427,3.674,8.631c3.673,2.204,4.774,4.591,8.446,2.02C119.12-91.712,123.711-102.179,118.202-101.996z"/>
- <path fill="#5B4940" d="M117.92-101.821c-1.508,0.05-3.858-5.962-7.89-3.332c-4.033,2.63-5.611,1.753-6.313,5.436
- c-0.7,3.682,0,6.137,3.508,8.241c3.507,2.104,4.56,4.384,8.065,1.929C118.797-92.002,123.18-101.997,117.92-101.821z"/>
- <path fill="#54463F" d="M117.638-101.647c-1.437,0.048-3.676-5.679-7.517-3.174c-3.842,2.506-5.346,1.67-6.015,5.179
- c-0.667,3.508,0,5.847,3.342,7.852c3.342,2.004,4.344,4.176,7.684,1.837C118.474-92.292,122.648-101.814,117.638-101.647z"/>
- <path fill="#4D423D" d="M117.355-101.473c-1.365,0.045-3.493-5.397-7.144-3.016s-5.08,1.587-5.715,4.921
- c-0.635,3.333,0,5.556,3.176,7.461c3.175,1.905,4.128,3.969,7.302,1.746C118.149-92.583,122.117-101.632,117.355-101.473z"/>
- <path fill="#443D39" d="M117.074-101.299c-1.295,0.043-3.312-5.115-6.771-2.859c-3.46,2.257-4.815,1.505-5.417,4.665
- c-0.602,3.159,0,5.266,3.01,7.072c3.01,1.805,3.912,3.761,6.92,1.654C117.826-92.873,121.586-101.449,117.074-101.299z"/>
- <path fill="#3A3534" d="M116.792-101.125c-1.223,0.041-3.129-4.833-6.397-2.701c-3.27,2.133-4.549,1.422-5.118,4.407
- c-0.567,2.985,0,4.975,2.844,6.682c2.844,1.706,3.697,3.554,6.539,1.563C117.503-93.164,121.056-101.267,116.792-101.125z"/>
- <path fill="#252423" d="M116.51-100.951c-1.151,0.039-2.946-4.551-6.023-2.543c-3.079,2.008-4.284,1.339-4.82,4.15
- c-0.534,2.811,0,4.685,2.679,6.292c2.678,1.606,3.48,3.346,6.156,1.472C117.179-93.454,120.524-101.084,116.51-100.951z"/>
- <path d="M116.228-100.776c-1.08,0.036-2.764-4.269-5.65-2.386c-2.888,1.884-4.019,1.256-4.521,3.893
- c-0.501,2.637,0,4.395,2.513,5.902c2.512,1.507,3.266,3.139,5.775,1.381C116.855-93.744,119.993-100.902,116.228-100.776z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M105.621-77.87c0.447-1.55-1.041-6.809-2.772-7.561c-1.73-0.751-2.913-2.122-9.393-1.308
- c-6.479,0.814-5.552-4.192-10.908-2.451c-5.357,1.741-7.417,8.981-6.272,11.351c1.143,2.369,6.643,14.606,12.956,6.14
- C95.547-80.167,103.613-70.907,105.621-77.87z"/>
- <path fill="#82472C" d="M105.226-77.924c0.438-1.517-1.019-6.661-2.713-7.396c-1.692-0.735-2.85-2.075-9.188-1.279
- s-5.431-4.101-10.67-2.398c-5.241,1.703-7.256,8.786-6.137,11.103c1.118,2.317,6.498,14.288,12.674,6.006
- C95.37-80.172,103.261-71.113,105.226-77.924z"/>
- <path fill="#7D4930" d="M104.829-77.979c0.428-1.482-0.995-6.512-2.651-7.231c-1.655-0.719-2.786-2.029-8.983-1.251
- c-6.196,0.778-5.31-4.009-10.433-2.345c-5.124,1.665-7.094,8.59-5.999,10.856c1.093,2.266,6.354,13.97,12.392,5.872
- C95.194-80.177,102.909-71.32,104.829-77.979z"/>
- <path fill="#794B34" d="M104.433-78.034c0.418-1.448-0.973-6.363-2.591-7.066c-1.617-0.703-2.723-1.983-8.778-1.223
- s-5.188-3.918-10.194-2.291c-5.008,1.627-6.933,8.394-5.862,10.608c1.067,2.214,6.208,13.651,12.108,5.738
- C95.018-80.182,102.557-71.527,104.433-78.034z"/>
- <path fill="#754C37" d="M104.037-78.09c0.408-1.414-0.95-6.214-2.53-6.901s-2.659-1.937-8.574-1.194
- c-5.914,0.743-5.067-3.827-9.956-2.237c-4.891,1.589-6.771,8.198-5.727,10.361s6.063,13.333,11.827,5.604
- C94.842-80.187,102.204-71.733,104.037-78.09z"/>
- <path fill="#704C3A" d="M103.642-78.145c0.397-1.38-0.928-6.066-2.471-6.736c-1.541-0.67-2.596-1.891-8.369-1.166
- c-5.772,0.725-4.946-3.735-9.719-2.184c-4.773,1.551-6.608,8.002-5.589,10.113c1.019,2.111,5.918,13.015,11.544,5.471
- C94.665-80.191,101.853-71.94,103.642-78.145z"/>
- <path fill="#6B4C3C" d="M103.245-78.199c0.389-1.347-0.905-5.918-2.409-6.572c-1.505-0.654-2.532-1.844-8.165-1.137
- c-5.631,0.707-4.825-3.644-9.48-2.131c-4.657,1.513-6.447,7.807-5.453,9.866S83.512-65.477,89-72.836
- C94.488-80.196,101.5-72.147,103.245-78.199z"/>
- <path fill="#664C3E" d="M102.849-78.254c0.379-1.313-0.882-5.77-2.349-6.407c-1.466-0.637-2.469-1.798-7.96-1.108
- c-5.49,0.689-4.704-3.552-9.242-2.078c-4.541,1.476-6.286,7.611-5.316,9.619c0.969,2.008,5.629,12.377,10.979,5.203
- C94.313-80.201,101.147-72.354,102.849-78.254z"/>
- <path fill="#614B3F" d="M102.453-78.309c0.369-1.279-0.859-5.621-2.289-6.242c-1.428-0.621-2.404-1.751-7.755-1.08
- c-5.349,0.672-4.583-3.461-9.005-2.024c-4.424,1.438-6.124,7.416-5.18,9.371c0.944,1.956,5.484,12.059,10.697,5.069
- C94.136-80.206,100.796-72.561,102.453-78.309z"/>
- <path fill="#5B4940" d="M102.057-78.364c0.359-1.245-0.836-5.473-2.228-6.077c-1.391-0.604-2.342-1.706-7.551-1.051
- c-5.207,0.654-4.463-3.37-8.767-1.97c-4.307,1.399-5.963,7.219-5.043,9.123c0.919,1.905,5.339,11.741,10.415,4.935
- C93.96-80.211,100.443-72.767,102.057-78.364z"/>
- <path fill="#54463F" d="M101.661-78.419c0.35-1.211-0.814-5.324-2.168-5.913c-1.353-0.588-2.277-1.659-7.346-1.023
- c-5.065,0.636-4.342-3.278-8.528-1.917c-4.19,1.361-5.802,7.024-4.907,8.876c0.895,1.853,5.195,11.422,10.133,4.801
- C93.783-80.216,100.091-72.974,101.661-78.419z"/>
- <path fill="#4D423D" d="M101.265-78.474c0.34-1.177-0.791-5.176-2.107-5.747c-1.314-0.572-2.214-1.613-7.141-0.995
- c-4.924,0.619-4.221-3.187-8.291-1.864c-4.073,1.323-5.639,6.828-4.77,8.628c0.87,1.801,5.05,11.104,9.85,4.667
- C93.606-80.221,99.739-73.18,101.265-78.474z"/>
- <path fill="#443D39" d="M100.869-78.529c0.33-1.144-0.769-5.027-2.047-5.583c-1.277-0.556-2.15-1.567-6.937-0.966
- c-4.782,0.601-4.1-3.095-8.053-1.81c-3.957,1.285-5.478,6.632-4.634,8.381c0.846,1.75,4.905,10.786,9.568,4.534
- S99.387-73.387,100.869-78.529z"/>
- <path fill="#3A3534" d="M100.473-78.584c0.32-1.11-0.745-4.879-1.986-5.417c-1.239-0.539-2.087-1.521-6.731-0.938
- c-4.642,0.583-3.979-3.004-7.814-1.757c-3.84,1.248-5.316,6.437-4.497,8.134c0.82,1.698,4.76,10.467,9.285,4.399
- S99.034-73.594,100.473-78.584z"/>
- <path fill="#252423" d="M100.077-78.639c0.311-1.076-0.724-4.731-1.926-5.253c-1.202-0.523-2.023-1.475-6.527-0.909
- c-4.5,0.565-3.857-2.913-7.577-1.703c-3.723,1.209-5.154,6.241-4.36,7.886c0.796,1.646,4.616,10.148,9.004,4.266
- S98.683-73.801,100.077-78.639z"/>
- <path d="M99.681-78.694c0.301-1.042-0.7-4.582-1.865-5.088c-1.164-0.506-1.96-1.428-6.322-0.88
- c-4.358,0.547-3.736-2.821-7.339-1.65c-3.606,1.171-4.993,6.045-4.224,7.639c0.771,1.595,4.471,9.83,8.721,4.132
- S98.33-74.007,99.681-78.694z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M72.208-64.639c-2.728,1.784-10.25,7.75-8,11.25s2.5,5.5,5.75,6.75s4.5,4.5,10.501,1.5
- c6-3,10.75-9.25,9.75-13S78.709-68.889,72.208-64.639z"/>
- <path fill="#82472C" d="M72.337-64.323c-2.661,1.725-9.999,7.492-7.805,10.875c2.195,3.383,2.439,5.316,5.609,6.525
- c3.17,1.208,4.39,4.35,10.244,1.45c5.853-2.9,10.486-8.941,9.511-12.566C88.922-61.664,78.678-68.431,72.337-64.323z"/>
- <path fill="#7D4930" d="M72.465-64.006c-2.594,1.665-9.748,7.233-7.607,10.5c2.14,3.267,2.377,5.133,5.468,6.3
- c3.091,1.166,4.28,4.2,9.986,1.4c5.706-2.801,10.224-8.634,9.273-12.134C88.634-61.439,78.647-67.973,72.465-64.006z"/>
- <path fill="#794B34" d="M72.594-63.689c-2.527,1.605-9.497,6.975-7.412,10.125c2.084,3.15,2.316,4.95,5.327,6.075
- c3.012,1.125,4.17,4.05,9.729,1.35s9.96-8.325,9.034-11.7C88.346-61.214,78.617-67.514,72.594-63.689z"/>
- <path fill="#754C37" d="M72.723-63.373c-2.46,1.546-9.246,6.717-7.217,9.75s2.256,4.766,5.187,5.85
- c2.933,1.083,4.06,3.899,9.473,1.3c5.412-2.601,9.697-8.017,8.795-11.267S78.587-67.056,72.723-63.373z"/>
- <path fill="#704C3A" d="M72.852-63.056c-2.394,1.486-8.995,6.458-7.021,9.375c1.975,2.917,2.194,4.583,5.047,5.624
- c2.852,1.042,3.949,3.75,9.214,1.25c5.266-2.5,9.435-7.708,8.557-10.833C87.771-60.764,78.556-66.598,72.852-63.056z"/>
- <path fill="#6B4C3C" d="M72.979-62.739c-2.326,1.427-8.744,6.2-6.824,9c1.919,2.8,2.133,4.399,4.905,5.399
- s3.839,3.601,8.957,1.2c5.118-2.4,9.171-7.4,8.318-10.4C87.482-60.54,78.525-66.139,72.979-62.739z"/>
- <path fill="#664C3E" d="M73.108-62.423c-2.26,1.368-8.493,5.942-6.629,8.625c1.864,2.684,2.071,4.217,4.765,5.175
- c2.692,0.959,3.729,3.45,8.699,1.15c4.972-2.3,8.908-7.092,8.08-9.967C87.194-60.314,78.494-65.681,73.108-62.423z"/>
- <path fill="#614B3F" d="M73.236-62.106c-2.192,1.309-8.241,5.684-6.433,8.25c1.81,2.567,2.011,4.033,4.624,4.95
- c2.613,0.917,3.618,3.3,8.442,1.101c4.825-2.201,8.645-6.783,7.841-9.533S78.464-65.223,73.236-62.106z"/>
- <path fill="#5B4940" d="M73.365-61.789c-2.126,1.249-7.99,5.425-6.237,7.875c1.755,2.45,1.949,3.85,4.483,4.725
- s3.509,3.149,8.186,1.05c4.678-2.1,8.381-6.475,7.602-9.1S78.433-64.764,73.365-61.789z"/>
- <path fill="#54463F" d="M73.494-61.473c-2.06,1.189-7.74,5.167-6.041,7.5s1.888,3.667,4.342,4.5c2.454,0.833,3.398,3,7.929,1
- s8.117-6.167,7.363-8.667C86.331-59.639,78.402-64.306,73.494-61.473z"/>
- <path fill="#4D423D" d="M73.622-61.156c-1.992,1.129-7.488,4.908-5.845,7.125c1.645,2.216,1.827,3.483,4.201,4.275
- c2.375,0.792,3.288,2.85,7.671,0.95c4.384-1.9,7.854-5.858,7.125-8.233C86.044-59.414,78.372-63.848,73.622-61.156z"/>
- <path fill="#443D39" d="M73.751-60.839c-1.926,1.07-7.237,4.65-5.649,6.75c1.589,2.1,1.766,3.3,4.061,4.05
- s3.178,2.699,7.414,0.899s7.592-5.549,6.886-7.799S78.341-63.389,73.751-60.839z"/>
- <path fill="#3A3534" d="M73.88-60.522c-1.859,1.011-6.987,4.392-5.454,6.375c1.534,1.983,1.705,3.117,3.92,3.825
- c2.216,0.708,3.068,2.549,7.157,0.85c4.09-1.7,7.328-5.242,6.646-7.367S78.311-62.931,73.88-60.522z"/>
- <path fill="#252423" d="M74.008-60.206c-1.792,0.951-6.735,4.133-5.257,6s1.643,2.934,3.778,3.6
- c2.136,0.667,2.958,2.4,6.899,0.8c3.943-1.6,7.065-4.934,6.409-6.934C85.181-58.739,78.279-62.473,74.008-60.206z"/>
- <path d="M74.137-59.889c-1.726,0.892-6.484,3.875-5.062,5.625c1.424,1.75,1.582,2.75,3.638,3.375
- c2.057,0.625,2.848,2.25,6.643,0.75c3.796-1.5,6.802-4.625,6.17-6.5C84.893-58.514,78.249-62.014,74.137-59.889z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M114.959-70.889c-3.36,2.352-5.25,6.75-4,9.5s5.5,10.5,9.75,7.75s12.5-7.5,8.5-11.75
- S122.459-76.139,114.959-70.889z"/>
- <path fill="#82472C" d="M115.041-70.639c-3.308,2.273-5.167,6.525-3.937,9.183c1.229,2.659,5.413,10.15,9.597,7.492
- c4.183-2.658,12.304-7.25,8.366-11.358C125.13-69.431,122.424-75.714,115.041-70.639z"/>
- <path fill="#7D4930" d="M115.124-70.389c-3.256,2.195-5.086,6.3-3.875,8.867s5.327,9.8,9.443,7.233
- c4.117-2.566,12.108-7,8.233-10.967C125.052-69.222,122.389-75.289,115.124-70.389z"/>
- <path fill="#794B34" d="M115.206-70.139c-3.202,2.116-5.003,6.075-3.812,8.55c1.19,2.475,5.24,9.45,9.29,6.975
- s11.913-6.75,8.101-10.575C124.974-69.014,122.353-74.864,115.206-70.139z"/>
- <path fill="#754C37" d="M115.288-69.889c-3.149,2.038-4.921,5.85-3.749,8.233c1.171,2.383,5.154,9.1,9.138,6.716
- s11.717-6.5,7.967-10.183C124.895-68.806,122.317-74.439,115.288-69.889z"/>
- <path fill="#704C3A" d="M115.37-69.639c-3.097,1.959-4.838,5.625-3.686,7.917c1.151,2.292,5.067,8.75,8.984,6.458
- s11.521-6.25,7.833-9.792C124.816-68.598,122.282-74.014,115.37-69.639z"/>
- <path fill="#6B4C3C" d="M115.453-69.389c-3.044,1.881-4.756,5.4-3.624,7.6s4.981,8.4,8.832,6.2c3.85-2.2,11.324-6,7.7-9.399
- C124.738-68.389,122.247-73.589,115.453-69.389z"/>
- <path fill="#664C3E" d="M115.535-69.139c-2.991,1.803-4.673,5.175-3.561,7.283c1.111,2.108,4.895,8.05,8.679,5.941
- c3.783-2.108,11.128-5.75,7.566-9.008C124.659-68.181,122.212-73.165,115.535-69.139z"/>
- <path fill="#614B3F" d="M115.617-68.889c-2.938,1.724-4.591,4.95-3.498,6.966c1.093,2.017,4.81,7.7,8.525,5.684
- c3.717-2.017,10.934-5.5,7.434-8.617C124.581-67.973,122.177-72.739,115.617-68.889z"/>
- <path fill="#5B4940" d="M115.699-68.639c-2.886,1.646-4.508,4.725-3.435,6.65c1.072,1.925,4.723,7.35,8.372,5.425
- c3.65-1.925,10.737-5.25,7.301-8.225C124.502-67.764,122.142-72.314,115.699-68.639z"/>
- <path fill="#54463F" d="M115.782-68.389c-2.833,1.567-4.426,4.5-3.373,6.333c1.053,1.833,4.637,7,8.22,5.167
- c3.583-1.833,10.541-5,7.167-7.833C124.424-67.556,122.106-71.889,115.782-68.389z"/>
- <path fill="#4D423D" d="M115.864-68.139c-2.78,1.489-4.344,4.275-3.31,6.017c1.033,1.742,4.55,6.65,8.066,4.908
- c3.517-1.741,10.345-4.75,7.033-7.441C124.346-67.348,122.071-71.464,115.864-68.139z"/>
- <path fill="#443D39" d="M115.946-67.889c-2.728,1.411-4.261,4.05-3.247,5.7c1.014,1.65,4.464,6.3,7.914,4.65
- c3.449-1.65,10.148-4.5,6.899-7.05C124.267-67.139,122.035-71.039,115.946-67.889z"/>
- <path fill="#3A3534" d="M116.029-67.639c-2.676,1.333-4.179,3.825-3.185,5.383c0.993,1.559,4.377,5.95,7.76,4.392
- c3.384-1.558,9.954-4.25,6.767-6.658C124.188-66.931,122-70.614,116.029-67.639z"/>
- <path fill="#252423" d="M116.111-67.389c-2.622,1.254-4.097,3.6-3.122,5.066c0.975,1.467,4.291,5.6,7.607,4.134
- c3.316-1.467,9.758-4,6.634-6.267C124.109-66.723,121.965-70.189,116.111-67.389z"/>
- <path d="M116.193-67.139c-2.569,1.176-4.014,3.375-3.059,4.75c0.954,1.375,4.204,5.25,7.454,3.875s9.562-3.75,6.5-5.875
- C124.031-66.514,121.93-69.764,116.193-67.139z"/>
- </g>
- </g>
- <g>
- <path fill="#71462C" d="M26.708-113.473c6.911,0.216,9,8.25,4.75,10.5s-8.75,2.75-8-0.75S18.708-113.723,26.708-113.473z"/>
- <path fill="#71462C" d="M17.993-41.927c-0.065-2.148,1.359-5.311,3.79-4.465c-1.736-0.605,6.823-0.789,3.685,3.672
- C23.84-40.405,18.153-36.626,17.993-41.927z"/>
- <path fill="#71462C" d="M138.125-82.473c-2.361-0.858-11,4-8.75,7.5s1.25,5.75,5,6s4.75-3.25,7-5S140.875-81.473,138.125-82.473z
- "/>
- <path fill="#71462C" d="M13.708-82.473c-2.361-0.858-11,4-8.75,7.5s1.25,5.75,5,6s4.75-3.25,7-5S16.458-81.473,13.708-82.473z"/>
- <path fill="#71462C" d="M15.458-147.973c-2.665,3.635-3.25,7.25-0.5,8.75s4.5,3,7.75,2.75s5.25-3,5.25-6s0.5-8-3.5-8.75
- S18.208-151.723,15.458-147.973z"/>
- <path fill="#71462C" d="M29.708-122.973c-0.901,1.803-2.5,5.5-0.5,6.25s6.5,0.25,7.5-0.75S32.208-127.973,29.708-122.973z"/>
- <path fill="#71462C" d="M54.646-148.348c-1.63,1.63-1.5,7.25,0.25,7.5s4.25-0.5,6.25-2S57.396-151.098,54.646-148.348z"/>
- <path fill="#71462C" d="M37.608-99.422c-3.018,3.42-6,4-5.2,6.4s6.8,6.8,9.6,6.4c2.801-0.4,6.4-0.4,7.4-4.6c1-4.2,1.2-6.2-1-8.4
- C46.208-101.822,40.608-102.822,37.608-99.422z"/>
- <path fill="#71462C" d="M66.208-115.973c3.593,2.053,5,5,1,6.5s-5.5,2.5-5.25-0.5S62.708-117.973,66.208-115.973z"/>
- <path fill="#71462C" d="M59.958-102.723c3.215-0.989,3.5,5.75,2.5,7s-6,8.25-6,6S56.708-101.723,59.958-102.723z"/>
- <path fill="#71462C" d="M54.208-56.222c2.025-1.013,5.5-1,6,2.75s1,5.25-1.25,5.75S49.708-53.972,54.208-56.222z"/>
- <path fill="#71462C" d="M27.958-39.722c4.72,0.539,10,2.5,10.5,5.5s1.25,4.75-0.75,6.75s-4.75,4.75-7.5,2.75
- S19.208-40.722,27.958-39.722z"/>
- <path fill="#71462C" d="M119.709-131.973c0,0,4.75,1.25,4.75,2.25s1.25,3-0.5,4.75s-2.25,5.5-5.5,4.5s-7.5-8.5-5.25-10.75
- S117.709-135.473,119.709-131.973z"/>
- <path fill="#71462C" d="M125.459-116.723c2.559,0.512,6.5,2.5,6.25,4s-0.5,2-2.25,3.25s-3.25,4.25-6,1.25
- S121.709-117.473,125.459-116.723z"/>
- <path fill="#71462C" d="M84.209-141.973c-1.342,0.447-2.75,4-1.5,6.5s2.75,4.5,5.5,4.25S91.709-144.473,84.209-141.973z"/>
- <path fill="#71462C" d="M15.458-23.577c-2.665,3.635-3.25,7.25-0.5,8.75s4.5,3,7.75,2.75s5.25-3,5.25-6s0.5-8-3.5-8.75
- S18.208-27.327,15.458-23.577z"/>
- <path fill="#71462C" d="M54.646-23.952c-1.63,1.631-1.5,7.25,0.25,7.5s4.25-0.5,6.25-2S57.396-26.702,54.646-23.952z"/>
- <path fill="#71462C" d="M125.209-86.973c0.647-0.375,4.5-0.75,2.5,3.75c-2,4.5-3.25,5.5-4.5,6.5s-3.75,1.75-4.25,0.5
- S118.709-83.223,125.209-86.973z"/>
- <path fill="#71462C" d="M69.646-94.535c3.325,2.138,6.751,2.25,6,5c-0.75,2.75-1.5,6-4,7s-7.25-3.5-6-5.25
- S66.146-96.785,69.646-94.535z"/>
- <path fill="#71462C" d="M50.346-36.593c-0.342,2.254-2.35,6.092,0.132,7.777c2.481,1.688,5.082,2.486,7.725,0.945
- s3.934-5.791,7.198-8.602c3.264-2.813,2.581-8.498-1.71-7.449C59.398-42.87,51.123-41.724,50.346-36.593z"/>
- <path fill="#71462C" d="M78.209-40.222c-3.634,2.422-1.25,5.75,0.5,6s5,0.25,7.25-1.25s6.5-5.5,2.5-6.25
- S79.709-41.222,78.209-40.222z"/>
- <path fill="#71462C" d="M95.947-66.035c-2.694,3.203,0.145,7.988,3.88,9.568c3.737,1.58,4.466,5.142,8.021,5.223
- c3.558,0.082,2.765-3.168,1.36-8.979C107.805-66.034,101.536-72.681,95.947-66.035z"/>
- <path fill="#71462C" d="M94.959-95.473c-1.765,0.378-4,3.5-2.25,4.75s2.5,4,4.5,1S98.459-96.223,94.959-95.473z"/>
- <path fill="#71462C" d="M117.459-41.972c-1.273,2.727-3.5,4.75-2.5,5.5s1.75,3,4,1.25s1.75-4.75,2.75-6.25s3-4.75,3.25-5.5
- S120.959-49.472,117.459-41.972z"/>
- <path fill="#71462C" d="M94.823-45.63c-0.574,1.602,0.032,7.521,1.699,8.91s2.671,2.66,5.587,0.854
- c2.917-1.805,4.07-2.146,6.067-4.934c1.999-2.789,6.08-8.076,1.379-6.998C104.855-46.72,96.717-50.897,94.823-45.63z"/>
- </g>
- <g>
- <path fill="#201B1B" d="M25.708-114.139c6.911,0.216,9,8.25,4.75,10.5s-8.75,2.75-8-0.75S17.708-114.389,25.708-114.139z"/>
- <path fill="#201B1B" d="M16.993-42.593c-0.065-2.15,1.359-5.313,3.79-4.467c-1.736-0.604,6.823-0.787,3.685,3.674
- C22.84-41.073,17.153-37.292,16.993-42.593z"/>
- <path fill="#201B1B" d="M137.125-83.139c-2.361-0.858-11,4-8.75,7.5s1.25,5.75,5,6s4.75-3.25,7-5S139.875-82.139,137.125-83.139z
- "/>
- <path fill="#201B1B" d="M12.708-83.139c-2.361-0.858-11,4-8.75,7.5s1.25,5.75,5,6s4.75-3.25,7-5S15.458-82.139,12.708-83.139z"/>
- <path fill="#201B1B" d="M14.458-148.639c-2.665,3.634-3.25,7.25-0.5,8.75s4.5,3,7.75,2.75s5.25-3,5.25-6s0.5-8-3.5-8.75
- S17.208-152.389,14.458-148.639z"/>
- <path fill="#201B1B" d="M28.708-123.639c-0.901,1.803-2.5,5.5-0.5,6.25s6.5,0.25,7.5-0.75S31.208-128.639,28.708-123.639z"/>
- <path fill="#201B1B" d="M53.646-149.014c-1.63,1.63-1.5,7.25,0.25,7.5s4.25-0.5,6.25-2S56.396-151.764,53.646-149.014z"/>
- <path fill="#201B1B" d="M36.608-100.089c-3.018,3.42-6,4-5.2,6.4c0.8,2.4,6.8,6.8,9.6,6.4c2.801-0.4,6.4-0.4,7.4-4.6
- s1.2-6.2-1-8.4C45.208-102.489,39.608-103.489,36.608-100.089z"/>
- <path fill="#201B1B" d="M65.208-116.639c3.593,2.053,5,5,1,6.5s-5.5,2.5-5.25-0.5S61.708-118.639,65.208-116.639z"/>
- <path fill="#201B1B" d="M58.958-103.389c3.215-0.989,3.5,5.75,2.5,7s-6,8.25-6,6S55.708-102.389,58.958-103.389z"/>
- <path fill="#201B1B" d="M53.208-56.889c2.025-1.013,5.5-1,6,2.75s1,5.25-1.25,5.75S48.708-54.639,53.208-56.889z"/>
- <path fill="#201B1B" d="M26.958-40.39c4.72,0.539,10,2.5,10.5,5.5s1.25,4.75-0.75,6.75s-4.75,4.75-7.5,2.75
- S18.208-41.39,26.958-40.39z"/>
- <path fill="#201B1B" d="M118.709-132.639c0,0,4.75,1.25,4.75,2.25s1.25,3-0.5,4.75s-2.25,5.5-5.5,4.5s-7.5-8.5-5.25-10.75
- S116.709-136.139,118.709-132.639z"/>
- <path fill="#201B1B" d="M124.459-117.389c2.559,0.512,6.5,2.5,6.25,4s-0.5,2-2.25,3.25s-3.25,4.25-6,1.25
- S120.709-118.139,124.459-117.389z"/>
- <path fill="#201B1B" d="M83.209-142.639c-1.342,0.447-2.75,4-1.5,6.5s2.75,4.5,5.5,4.25S90.709-145.139,83.209-142.639z"/>
- <path fill="#201B1B" d="M14.458-24.243c-2.665,3.635-3.25,7.25-0.5,8.75s4.5,3,7.75,2.75s5.25-3,5.25-6s0.5-8-3.5-8.75
- S17.208-27.993,14.458-24.243z"/>
- <path fill="#201B1B" d="M53.646-24.618c-1.63,1.629-1.5,7.25,0.25,7.5s4.25-0.5,6.25-2S56.396-27.368,53.646-24.618z"/>
- <path fill="#201B1B" d="M124.209-87.639c0.647-0.375,4.5-0.75,2.5,3.75s-3.25,5.5-4.5,6.5s-3.75,1.75-4.25,0.5
- S117.709-83.889,124.209-87.639z"/>
- <path fill="#201B1B" d="M68.646-95.202c3.325,2.138,6.75,2.25,6,5s-1.5,6-4,7s-7.25-3.5-6-5.25S65.146-97.452,68.646-95.202z"/>
- <path fill="#201B1B" d="M49.346-37.259c-0.342,2.254-2.35,6.092,0.132,7.777s5.082,2.484,7.725,0.943s3.934-5.789,7.198-8.602
- c3.264-2.811,2.581-8.498-1.71-7.447C58.398-43.538,50.123-42.39,49.346-37.259z"/>
- <path fill="#201B1B" d="M77.209-40.89c-3.634,2.422-1.251,5.75,0.5,6c1.75,0.25,5,0.25,7.25-1.25s6.5-5.5,2.5-6.25
- S78.709-41.89,77.209-40.89z"/>
- <path fill="#201B1B" d="M94.947-66.701c-2.694,3.203,0.145,7.988,3.88,9.568c3.737,1.58,4.466,5.141,8.021,5.223
- c3.558,0.081,2.765-3.168,1.36-8.979S100.536-73.349,94.947-66.701z"/>
- <path fill="#201B1B" d="M93.959-96.139c-1.765,0.378-4,3.5-2.25,4.75s2.5,4,4.5,1S97.459-96.889,93.959-96.139z"/>
- <path fill="#201B1B" d="M116.459-42.64c-1.273,2.729-3.5,4.75-2.5,5.5s1.75,3,4,1.25s1.75-4.75,2.75-6.25s3-4.75,3.25-5.5
- S119.959-50.139,116.459-42.64z"/>
- <path fill="#201B1B" d="M93.823-46.296c-0.574,1.602,0.032,7.52,1.699,8.908s2.671,2.66,5.587,0.855
- c2.917-1.805,4.07-2.146,6.067-4.936c1.999-2.787,6.08-8.076,1.379-6.996C103.855-47.386,95.717-51.564,93.823-46.296z"/>
- </g>
- </g>
-</pattern>
-<rect fill="none" width="941" height="173"/>
-<g>
- <defs>
- <rect id="SVGID_1_" width="941" height="173"/>
- </defs>
- <clipPath id="SVGID_2_">
- <use xlink:href="#SVGID_1_" overflow="visible"/>
- </clipPath>
- <g clip-path="url(#SVGID_2_)">
- <radialGradient id="SVGID_3_" cx="456.1348" cy="-161.7441" r="151.7585" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#FAE8AC"/>
- <stop offset="0.061" style="stop-color:#EFDFA7"/>
- <stop offset="0.0989" style="stop-color:#E3D4A1"/>
- <stop offset="0.3736" style="stop-color:#8F894F"/>
- <stop offset="0.4108" style="stop-color:#A1995F"/>
- <stop offset="0.4743" style="stop-color:#B9AF77"/>
- <stop offset="0.5332" style="stop-color:#C9BD86"/>
- <stop offset="0.5824" style="stop-color:#CFC28C"/>
- <stop offset="0.7088" style="stop-color:#5F5E40"/>
- <stop offset="0.8352" style="stop-color:#000000"/>
- </radialGradient>
- <path fill="url(#SVGID_3_)" d="M429.13-226.121c0,0,56.817-7.521,55.981,72.692c-0.835,80.212,0,101.937,0,101.937v10.862
- c0,0-30.079,7.521-32.586-18.382C450.019-84.914,429.13-226.121,429.13-226.121z"/>
-
- <radialGradient id="SVGID_4_" cx="-4930.5962" cy="-114.6528" r="35.407" gradientTransform="matrix(-5.1091 -3.9384 -1.0452 0.8661 -24817.3945 -19370.1719)" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#CFC8CA"/>
- <stop offset="0.1024" style="stop-color:#B0A8A9"/>
- <stop offset="0.294" style="stop-color:#645B59"/>
- <stop offset="0.4757" style="stop-color:#362E2C"/>
- <stop offset="0.6422" style="stop-color:#120B08"/>
- <stop offset="0.7903" style="stop-color:#000000"/>
- <stop offset="0.9146" style="stop-color:#000000"/>
- <stop offset="1" style="stop-color:#000000"/>
- </radialGradient>
- <path opacity="0.85" fill="url(#SVGID_4_)" d="M312.45-190.259c-20.439,16.937,43.981,93.099,143.888,170.112
- c99.906,77.014,197.465,125.716,217.902,108.78c20.44-16.937-43.981-93.1-143.887-170.112
- C430.449-158.492,332.888-207.194,312.45-190.259z"/>
-
- <radialGradient id="SVGID_5_" cx="-5085.9014" cy="1844.0254" r="35.407" gradientTransform="matrix(-7.2115 5.9258 -1.1796 -0.9195 -34068.2148 31749.6973)" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#CFC8CA"/>
- <stop offset="0.1024" style="stop-color:#B0A8A9"/>
- <stop offset="0.294" style="stop-color:#645B59"/>
- <stop offset="0.4757" style="stop-color:#362E2C"/>
- <stop offset="0.6422" style="stop-color:#120B08"/>
- <stop offset="0.7903" style="stop-color:#000000"/>
- <stop offset="0.9146" style="stop-color:#000000"/>
- <stop offset="1" style="stop-color:#000000"/>
- </radialGradient>
- <path opacity="0.85" fill="url(#SVGID_5_)" d="M178.217,125.893c-23.068-17.98,72.55-126.495,213.568-242.371
- c141.019-115.875,274.034-195.236,297.101-177.256c23.068,17.981-72.551,126.496-213.568,242.371
- C334.301,64.512,201.284,143.873,178.217,125.893z"/>
-
- <radialGradient id="SVGID_6_" cx="-4247.9287" cy="-8072.7451" r="35.4076" gradientTransform="matrix(0 -4.4361 -0.4354 0 -3058.656 -18912.1953)" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#CFC8CA"/>
- <stop offset="0.1024" style="stop-color:#B0A8A9"/>
- <stop offset="0.294" style="stop-color:#645B59"/>
- <stop offset="0.4757" style="stop-color:#362E2C"/>
- <stop offset="0.6422" style="stop-color:#120B08"/>
- <stop offset="0.7903" style="stop-color:#000000"/>
- <stop offset="0.9146" style="stop-color:#000000"/>
- <stop offset="1" style="stop-color:#000000"/>
- </radialGradient>
- <ellipse opacity="0.85" fill="url(#SVGID_6_)" cx="456.218" cy="-67.958" rx="15.418" ry="157.065"/>
-
- <radialGradient id="SVGID_7_" cx="-5042.0669" cy="5105.0938" r="35.4049" gradientTransform="matrix(-11.8599 0.0066 -0.2721 -0.8384 -57970.2695 4429.6875)" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#CFC8CA"/>
- <stop offset="0.1024" style="stop-color:#B0A8A9"/>
- <stop offset="0.294" style="stop-color:#645B59"/>
- <stop offset="0.4757" style="stop-color:#362E2C"/>
- <stop offset="0.6422" style="stop-color:#120B08"/>
- <stop offset="0.7903" style="stop-color:#000000"/>
- <stop offset="0.9146" style="stop-color:#000000"/>
- <stop offset="1" style="stop-color:#000000"/>
- </radialGradient>
- <path opacity="0.85" fill="url(#SVGID_7_)" d="M19.118,116.534c-5.321-16.395,178.371-29.789,410.284-29.917
- c231.914-0.129,424.231,13.054,429.551,29.449c5.321,16.395-178.371,29.789-410.284,29.916
- C216.756,146.112,24.438,132.928,19.118,116.534z"/>
- <radialGradient id="SVGID_8_" cx="467.1953" cy="-74.4102" r="104.4582" gradientUnits="userSpaceOnUse">
- <stop offset="0" style="stop-color:#FFFFFF"/>
- <stop offset="0.0745" style="stop-color:#BAB4B3"/>
- <stop offset="0.1949" style="stop-color:#726A68"/>
- <stop offset="0.3157" style="stop-color:#443C3A"/>
- <stop offset="0.4344" style="stop-color:#231D1B"/>
- <stop offset="0.5504" style="stop-color:#030000"/>
- <stop offset="0.663" style="stop-color:#000000"/>
- <stop offset="0.7706" style="stop-color:#000000"/>
- <stop offset="0.8681" style="stop-color:#000000"/>
- </radialGradient>
- <circle opacity="0.75" fill="url(#SVGID_8_)" cx="467.195" cy="-74.41" r="104.458"/>
- <g>
-
- <image overflow="visible" width="1422" height="1618" xlink:href="B3E893FA.png" transform="matrix(0.24 0 0 0.24 323.7607 -327.749)">
- </image>
- <g>
-
- <image overflow="visible" width="888" height="1084" xlink:href="B3E893FD.png" transform="matrix(0.24 0 0 0.24 388.3208 -264.1489)">
- </image>
- </g>
- </g>
- <linearGradient id="SVGID_9_" gradientUnits="userSpaceOnUse" x1="423.9619" y1="-133.0176" x2="469.3818" y2="-133.0176">
- <stop offset="0" style="stop-color:#000000"/>
- <stop offset="0.1913" style="stop-color:#79794E"/>
- <stop offset="0.6648" style="stop-color:#1B2321"/>
- </linearGradient>
- <path fill="url(#SVGID_9_)" stroke="#FFFFFF" stroke-width="4" d="M423.962-227.073c0,0,45.42,1.156,45.42,48.018
- c0,46.86,0,140.087,0,140.087s-45.283,1.528-45.283-47.879L423.962-227.073z"/>
- <g>
- <g>
- <linearGradient id="SVGID_10_" gradientUnits="userSpaceOnUse" x1="520.6523" y1="-37.0288" x2="520.6523" y2="-81.2568">
- <stop offset="0" style="stop-color:#000000"/>
- <stop offset="0.1099" style="stop-color:#88855E"/>
- <stop offset="0.2054" style="stop-color:#84815B"/>
- <stop offset="0.3077" style="stop-color:#787654"/>
- <stop offset="0.4132" style="stop-color:#666349"/>
- <stop offset="0.5209" style="stop-color:#504D3B"/>
- <stop offset="0.6293" style="stop-color:#37362A"/>
- <stop offset="0.6758" style="stop-color:#2B2B23"/>
- </linearGradient>
- <path fill="url(#SVGID_10_)" d="M474.073-37.029v-44.228h93.157l-0.169,2.157c-0.338,4.306-4.623,42.071-50.351,42.071H474.073z
- "/>
- <path fill="#FFFFFF" d="M565.067-79.257c-0.37,4.714-4.604,40.228-48.356,40.228c-28.663,0-37.835,0-40.638,0v-40.228H565.067
- M569.394-83.257h-4.326h-88.994h-4v4v40.228v4h4h40.638c47.524,0,51.991-39.42,52.344-43.915L569.394-83.257L569.394-83.257z"
- />
- </g>
- </g>
- <g>
- <g opacity="0.44">
-
- <linearGradient id="SVGID_11_" gradientUnits="userSpaceOnUse" x1="422.1611" y1="1874.1074" x2="422.1611" y2="1905.3025" gradientTransform="matrix(1 0 0 -1 0 1860.416)">
- <stop offset="0.044" style="stop-color:#FFFFFF"/>
- <stop offset="0.0527" style="stop-color:#ECEAE9"/>
- <stop offset="0.1339" style="stop-color:#8E8784"/>
- <stop offset="0.214" style="stop-color:#524B48"/>
- <stop offset="0.2908" style="stop-color:#2C2624"/>
- <stop offset="0.364" style="stop-color:#0B0401"/>
- <stop offset="0.4324" style="stop-color:#000000"/>
- <stop offset="0.4943" style="stop-color:#000000"/>
- <stop offset="0.544" style="stop-color:#000000"/>
- </linearGradient>
- <path fill="url(#SVGID_11_)" d="M399.451-206.462c0,0,45.42,1.157,45.42,48.018c0,46.86,0,140.087,0,140.087
- s-45.283,1.529-45.283-47.878L399.451-206.462z"/>
- <g>
-
- <linearGradient id="SVGID_12_" gradientUnits="userSpaceOnUse" x1="496.0605" y1="1874.1064" x2="496.0605" y2="1905.3015" gradientTransform="matrix(1 0 0 -1 0 1860.416)">
- <stop offset="0.044" style="stop-color:#FFFFFF"/>
- <stop offset="0.0527" style="stop-color:#ECEAE9"/>
- <stop offset="0.1339" style="stop-color:#8E8784"/>
- <stop offset="0.214" style="stop-color:#524B48"/>
- <stop offset="0.2908" style="stop-color:#2C2624"/>
- <stop offset="0.364" style="stop-color:#0B0401"/>
- <stop offset="0.4324" style="stop-color:#000000"/>
- <stop offset="0.4943" style="stop-color:#000000"/>
- <stop offset="0.544" style="stop-color:#000000"/>
- </linearGradient>
- <path fill="url(#SVGID_12_)" d="M451.563-18.417c2.803,0,11.975,0,40.637,0c43.752,0,47.986-35.514,48.356-40.228h-88.993
- V-18.417z"/>
- </g>
- </g>
- <g opacity="0.16">
-
- <linearGradient id="SVGID_13_" gradientUnits="userSpaceOnUse" x1="404.3354" y1="1850.7109" x2="404.3354" y2="1881.906" gradientTransform="matrix(1 0 0 -1 0 1860.416)">
- <stop offset="0.044" style="stop-color:#FFFFFF"/>
- <stop offset="0.0527" style="stop-color:#ECEAE9"/>
- <stop offset="0.1339" style="stop-color:#8E8784"/>
- <stop offset="0.214" style="stop-color:#524B48"/>
- <stop offset="0.2908" style="stop-color:#2C2624"/>
- <stop offset="0.364" style="stop-color:#0B0401"/>
- <stop offset="0.4324" style="stop-color:#000000"/>
- <stop offset="0.4943" style="stop-color:#000000"/>
- <stop offset="0.544" style="stop-color:#000000"/>
- </linearGradient>
- <path fill="url(#SVGID_13_)" d="M381.625-183.065c0,0,45.42,1.157,45.42,48.018c0,46.86,0,140.087,0,140.087
- s-45.283,1.529-45.283-47.878L381.625-183.065z"/>
- <g>
-
- <linearGradient id="SVGID_14_" gradientUnits="userSpaceOnUse" x1="478.2344" y1="1850.7109" x2="478.2344" y2="1881.9052" gradientTransform="matrix(1 0 0 -1 0 1860.416)">
- <stop offset="0.044" style="stop-color:#FFFFFF"/>
- <stop offset="0.0527" style="stop-color:#ECEAE9"/>
- <stop offset="0.1339" style="stop-color:#8E8784"/>
- <stop offset="0.214" style="stop-color:#524B48"/>
- <stop offset="0.2908" style="stop-color:#2C2624"/>
- <stop offset="0.364" style="stop-color:#0B0401"/>
- <stop offset="0.4324" style="stop-color:#000000"/>
- <stop offset="0.4943" style="stop-color:#000000"/>
- <stop offset="0.544" style="stop-color:#000000"/>
- </linearGradient>
- <path fill="url(#SVGID_14_)" d="M433.738,4.979c2.803,0,11.974,0,40.636,0c43.752,0,47.986-35.513,48.356-40.228h-88.993V4.979
- z"/>
- </g>
- </g>
- </g>
- <g opacity="0.81">
- <linearGradient id="SVGID_15_" gradientUnits="userSpaceOnUse" x1="524.6953" y1="-19.3047" x2="514.6387" y2="-56.1791">
- <stop offset="0.3956" style="stop-color:#FFFFFF"/>
- <stop offset="0.455" style="stop-color:#D7D4D2"/>
- <stop offset="0.577" style="stop-color:#908986"/>
- <stop offset="0.7513" style="stop-color:#3D3734"/>
- <stop offset="0.9396" style="stop-color:#000000"/>
- </linearGradient>
- <path fill="url(#SVGID_15_)" d="M476.401-41.983c2.354,0.048,10.057,0.206,34.125,0.698c36.738,0.75,40.904-28.999,41.296-32.952
- l-75.754-1.383L476.401-41.983z"/>
- </g>
- <g opacity="0.64">
-
- <image overflow="visible" width="1562" height="646" xlink:href="B3E893FF.png" transform="matrix(0.24 0 0 0.24 284.9849 -0.2886)">
- </image>
- </g>
- <g>
- <g>
- <g>
- <path fill="#FFFFFF" d="M330.184,41.271c0,0,8.171,0.314,8.171,8.106l0.084,45.958c0,0.445,0.083,0.835,0.25,1.17
- c0.167,0.334,0.445,0.501,0.836,0.501h7.353l9.024-0.034c0,6.846-6.342,6.803-6.342,6.803h-13.884
- c-6.126,0-5.51-8.272-5.51-8.272L330.184,41.271z M341.196,41.271"/>
- <path fill="#FFFFFF" d="M504.078,41.354c0,0,8.364,0.652,8.245,8.022v46.292c0,0,0.212,8.105-8.312,8.105L504.078,41.354z"/>
- <path fill="#FFFFFF" d="M537.896,103.773l-0.005-8.021V48.625l-0.021-7.313l6.622-0.041c0.67,0,1.17,0.155,1.505,0.46
- c0.334,0.307,0.585,0.739,0.752,1.295c0,0.112,0.277,1.059,0.836,2.84c0.556,1.785,1.253,3.999,2.089,6.644
- c0.836,2.646,1.739,5.543,2.716,8.69c0.974,3.147,1.893,6.156,2.757,9.025c0.862,2.869,1.63,5.389,2.298,7.562
- c0.669,2.173,1.114,3.622,1.337,4.346c0.055,0.112,0.125,0.223,0.209,0.334c0.084,0.112,0.125,0.083,0.125-0.084V49.292
- c0,0-0.41-8.022,7.403-8.022l-0.049,7.938v52.392c0,0.558-0.168,1.059-0.502,1.503c-0.334,0.447-0.836,0.67-1.505,0.67h-4.846
- c-0.725,0-1.24-0.307-1.546-0.92c-0.308-0.612-0.6-1.391-0.877-2.339c-0.112-0.278-0.475-1.38-1.087-3.301
- c-0.614-1.922-1.352-4.232-2.215-6.935s-1.783-5.585-2.757-8.649c-0.976-3.063-1.88-5.905-2.716-8.523
- c-0.835-2.618-1.532-4.805-2.089-6.56c-0.558-1.754-0.835-2.659-0.835-2.716c-0.057-0.111-0.112-0.194-0.168-0.25
- c-0.056-0.054-0.084,0.084-0.084,0.418v31.669C545.243,95.668,545.579,103.773,537.896,103.773z"/>
- <g>
- <path fill="#FFFFFF" d="M621.383,95.752c-1.108-6.102-2.146-11.73-3.114-16.902c0.038-0.025,0.074-0.054,0.114-0.08
- c-0.473-2.691-0.928-5.279-1.361-7.752c-0.558-3.119-1.101-6.183-1.629-9.191c-0.531-3.008-1.003-5.724-1.421-8.147
- l-2.287-12.409h-0.579h-10.128h-0.578l-2.287,12.409c-0.418,2.423-0.891,5.139-1.42,8.147s-1.072,6.072-1.63,9.191
- c-0.946,5.394-1.985,11.305-3.114,17.73c0.01,0.004,0.02,0.01,0.029,0.014c-0.416,2.261-0.84,4.585-1.277,6.99l-1.526,8.021
- c8.62,0,9.163-7.219,9.163-7.219l0.612-3.59c0.042,0.033,0.085,0.061,0.127,0.094c0.111-0.772,0.222-1.504,0.331-2.195
- c0.112-0.695,0.167-1.184,0.167-1.463c0.113-0.668,0.335-1.113,0.669-1.337c0.334-0.222,0.752-0.334,1.254-0.334h8.003h1.522
- c0.892,0,1.393,0.558,1.503,1.671l1.221,7.154c0,0,0.543,7.219,9.165,7.219L621.383,95.752z M602.165,80.794
- c-0.389,0-0.695-0.138-0.92-0.417c-0.222-0.279-0.305-0.585-0.25-0.919c0-0.055,0.084-0.529,0.25-1.421
- c0.168-0.89,0.363-2.033,0.586-3.425s0.474-2.967,0.751-4.722c0.28-1.754,0.586-3.551,0.92-5.389l2.507-14.539h0.066
- l2.507,14.539c0.335,1.838,0.64,3.635,0.919,5.389c0.278,1.755,0.529,3.329,0.752,4.722c0.222,1.393,0.418,2.535,0.585,3.425
- c0.168,0.892,0.251,1.366,0.251,1.421c0.055,0.334-0.028,0.641-0.251,0.919c-0.223,0.279-0.529,0.417-0.919,0.417H602.165z"/>
- </g>
- </g>
- <g>
- <path fill="#FFFFFF" d="M473.218,41.271c-0.447,0-0.836,0.084-1.17,0.251c-0.335,0.167-0.613,0.501-0.835,1.002l-7.521,14.373
- c-0.949,1.783-1.88,3.538-2.8,5.264c-0.919,1.728-1.728,3.288-2.423,4.68c-0.697,1.394-1.282,2.507-1.755,3.342
- c-0.474,0.835-0.711,1.283-0.711,1.337c-0.112,0.167-0.237,0.279-0.376,0.334c-0.14,0.057-0.266-0.055-0.376-0.334
- c-0.111-0.111-0.488-0.779-1.128-2.005c-0.642-1.225-1.449-2.758-2.423-4.596c-0.976-1.839-2.034-3.857-3.175-6.058
- c-1.143-2.2-2.243-4.358-3.301-6.476c-1.059-2.116-2.005-4.053-2.84-5.808c-0.836-1.755-1.449-3.104-1.839-4.053
- c-0.167-0.388-0.433-0.695-0.794-0.918c-0.363-0.222-0.71-0.335-1.044-0.335h-5.542v62.513
- c1.454,0.016,7.881-0.348,7.881-8.031v-0.084V61.492c0-0.222,0.042-0.334,0.125-0.334c0.084,0,0.153,0.056,0.209,0.167
- c2.006,3.678,3.815,7.048,5.431,10.111c0.669,1.283,1.351,2.563,2.048,3.844c0.695,1.282,1.322,2.438,1.88,3.468
- c0.556,1.031,1.016,1.909,1.379,2.632c0.361,0.725,0.598,1.17,0.71,1.337c0.167,0.334,0.515,0.6,1.045,0.794
- c0.528,0.196,1.113,0.292,1.754,0.292c0.64,0,1.225-0.097,1.755-0.292c0.529-0.195,0.878-0.487,1.045-0.878
- c0.055-0.167,0.277-0.611,0.669-1.336c0.389-0.724,0.861-1.616,1.42-2.674c0.556-1.058,1.169-2.214,1.839-3.468
- c0.668-1.253,1.363-2.52,2.089-3.802c1.614-3.007,3.452-6.35,5.515-10.027c0.111-0.277,0.235-0.375,0.376-0.292
- c0.138,0.083,0.208,0.181,0.208,0.292v34.176c0,0-0.313,8.083,7.74,8.265V41.271H473.218z"/>
- </g>
- </g>
- <g>
- <path fill="#FFFFFF" d="M399.186,49.376v41.696c0,2.172-0.669,3.773-2.005,4.805c-1.337,1.031-2.757,1.545-4.262,1.545
- c-1.56,0-3.022-0.514-4.387-1.545c-1.366-1.031-2.047-2.633-2.047-4.805v-41.78c0-7.011-7.195-7.916-8.242-8.011v51.417
- c0.098,1.722,0.462,3.257,1.098,4.599c0.752,1.588,1.797,2.898,3.133,3.928c1.337,1.031,2.896,1.797,4.68,2.297
- c1.782,0.502,3.704,0.754,5.765,0.754c2.06,0,3.969-0.252,5.724-0.754c1.754-0.5,3.286-1.266,4.596-2.297
- c1.308-1.029,2.34-2.34,3.091-3.928c0.58-1.224,0.933-2.605,1.066-4.144v-51.88C398.814,41.314,399.186,49.376,399.186,49.376z"
- />
- </g>
- </g>
- <radialGradient id="SVGID_16_" cx="565.0684" cy="-62.292" r="45.9551" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#5A521E"/>
- <stop offset="0.0495" style="stop-color:#58511E"/>
- <stop offset="0.2066" style="stop-color:#373008"/>
- <stop offset="0.3615" style="stop-color:#1C1600"/>
- <stop offset="0.5102" style="stop-color:#060100"/>
- <stop offset="0.6517" style="stop-color:#000000"/>
- <stop offset="0.7841" style="stop-color:#000000"/>
- <stop offset="0.9039" style="stop-color:#000000"/>
- <stop offset="1" style="stop-color:#000000"/>
- </radialGradient>
- <circle fill="url(#SVGID_16_)" cx="565.069" cy="-62.292" r="45.955"/>
- <radialGradient id="SVGID_17_" cx="588.1465" cy="-28.3154" r="87.4622" gradientUnits="userSpaceOnUse">
- <stop offset="0.3077" style="stop-color:#593B49"/>
- <stop offset="0.3117" style="stop-color:#583948"/>
- <stop offset="0.4255" style="stop-color:#381E28"/>
- <stop offset="0.5376" style="stop-color:#1F040E"/>
- <stop offset="0.6453" style="stop-color:#090000"/>
- <stop offset="0.7478" style="stop-color:#000000"/>
- <stop offset="0.8436" style="stop-color:#000000"/>
- <stop offset="0.9304" style="stop-color:#000000"/>
- <stop offset="1" style="stop-color:#000000"/>
- </radialGradient>
- <circle opacity="0.64" fill="url(#SVGID_17_)" cx="588.146" cy="-28.315" r="87.462"/>
- <radialGradient id="SVGID_18_" cx="706.4883" cy="43.5674" r="27.0444" gradientUnits="userSpaceOnUse">
- <stop offset="0.6648" style="stop-color:#000000"/>
- <stop offset="0.6665" style="stop-color:#000000"/>
- <stop offset="0.6713" style="stop-color:#000109"/>
- <stop offset="0.6766" style="stop-color:#001D28"/>
- <stop offset="0.6824" style="stop-color:#002E3E"/>
- <stop offset="0.6888" style="stop-color:#003D52"/>
- <stop offset="0.6961" style="stop-color:#004965"/>
- <stop offset="0.7046" style="stop-color:#005274"/>
- <stop offset="0.715" style="stop-color:#005A7F"/>
- <stop offset="0.7297" style="stop-color:#005E86"/>
- <stop offset="0.7705" style="stop-color:#005F88"/>
- <stop offset="0.7741" style="stop-color:#005578"/>
- <stop offset="0.7845" style="stop-color:#003E54"/>
- <stop offset="0.7961" style="stop-color:#002A38"/>
- <stop offset="0.8087" style="stop-color:#001822"/>
- <stop offset="0.8226" style="stop-color:#00040B"/>
- <stop offset="0.8384" style="stop-color:#000000"/>
- <stop offset="0.8568" style="stop-color:#000000"/>
- <stop offset="0.8795" style="stop-color:#000000"/>
- <stop offset="0.9114" style="stop-color:#000000"/>
- <stop offset="1" style="stop-color:#000000"/>
- </radialGradient>
- <circle opacity="0.28" fill="url(#SVGID_18_)" cx="706.488" cy="43.567" r="27.044"/>
- <linearGradient id="SVGID_19_" gradientUnits="userSpaceOnUse" x1="446.2148" y1="-50.0981" x2="446.2148" y2="-88.3027">
- <stop offset="0.044" style="stop-color:#FFFFFF"/>
- <stop offset="0.0607" style="stop-color:#ECEAE9"/>
- <stop offset="0.2159" style="stop-color:#8E8784"/>
- <stop offset="0.369" style="stop-color:#524B48"/>
- <stop offset="0.516" style="stop-color:#2C2624"/>
- <stop offset="0.6558" style="stop-color:#0B0401"/>
- <stop offset="0.7867" style="stop-color:#000000"/>
- <stop offset="0.905" style="stop-color:#000000"/>
- <stop offset="1" style="stop-color:#000000"/>
- </linearGradient>
- <path fill="url(#SVGID_19_)" d="M427.537-109.737c0,0-7.799,56.82,36.766,66.847l1.114-82.444
- C465.417-125.334,436.45-186.611,427.537-109.737z"/>
- <linearGradient id="SVGID_20_" gradientUnits="userSpaceOnUse" x1="423.9619" y1="-133.0205" x2="469.3818" y2="-133.0205">
- <stop offset="0.044" style="stop-color:#FFFFFF"/>
- <stop offset="0.0607" style="stop-color:#ECEAE9"/>
- <stop offset="0.2159" style="stop-color:#8E8784"/>
- <stop offset="0.369" style="stop-color:#524B48"/>
- <stop offset="0.516" style="stop-color:#2C2624"/>
- <stop offset="0.6558" style="stop-color:#0B0401"/>
- <stop offset="0.7867" style="stop-color:#000000"/>
- <stop offset="0.905" style="stop-color:#000000"/>
- <stop offset="1" style="stop-color:#000000"/>
- </linearGradient>
- <path opacity="0.47" fill="url(#SVGID_20_)" d="M423.962-227.073l2.711,125.793c0,0-4.947,56.949,42.708,62.312
- c0,0-48.479-0.023-43.654-62.318L423.962-227.073z"/>
- <linearGradient id="SVGID_21_" gradientUnits="userSpaceOnUse" x1="465.5078" y1="-115.0781" x2="468.5723" y2="-115.0781">
- <stop offset="0.3956" style="stop-color:#FFFFFF"/>
- <stop offset="0.4489" style="stop-color:#E3E1E0"/>
- <stop offset="0.5458" style="stop-color:#B2ACAA"/>
- <stop offset="0.6754" style="stop-color:#716966"/>
- <stop offset="0.833" style="stop-color:#2E2926"/>
- <stop offset="1" style="stop-color:#000000"/>
- </linearGradient>
- <path opacity="0.47" fill="url(#SVGID_21_)" d="M465.508-191.922c0,0,2.169,3.718,2.789,15.183s0,138.506,0,138.506
- l-2.479-138.506L465.508-191.922z"/>
- <linearGradient id="SVGID_22_" gradientUnits="userSpaceOnUse" x1="542.1064" y1="-36.209" x2="524.0189" y2="-54.2967">
- <stop offset="0.044" style="stop-color:#FFFFFF"/>
- <stop offset="0.0607" style="stop-color:#EDECEB"/>
- <stop offset="0.2159" style="stop-color:#9A918F"/>
- <stop offset="0.369" style="stop-color:#635A56"/>
- <stop offset="0.516" style="stop-color:#3F3835"/>
- <stop offset="0.6558" style="stop-color:#25201E"/>
- <stop offset="0.7867" style="stop-color:#120E0D"/>
- <stop offset="0.905" style="stop-color:#030102"/>
- <stop offset="1" style="stop-color:#000000"/>
- </linearGradient>
- <path opacity="0.73" fill="url(#SVGID_22_)" d="M478.264-39.458c0,0,15.838-43.249,48.519-14.703
- c8.32,7.267,17.213,8.965,17.213,8.965s15.222-9.394,17.374-32.345l-83.105,0.133V-39.458z"/>
- <linearGradient id="SVGID_23_" gradientUnits="userSpaceOnUse" x1="560.1406" y1="-60.6167" x2="550.1568" y2="-61.9659">
- <stop offset="0.044" style="stop-color:#FFFFFF"/>
- <stop offset="0.0607" style="stop-color:#ECEAE9"/>
- <stop offset="0.2159" style="stop-color:#8E8784"/>
- <stop offset="0.369" style="stop-color:#524B48"/>
- <stop offset="0.516" style="stop-color:#2C2624"/>
- <stop offset="0.6558" style="stop-color:#0B0401"/>
- <stop offset="0.7867" style="stop-color:#000000"/>
- <stop offset="0.905" style="stop-color:#000000"/>
- <stop offset="1" style="stop-color:#000000"/>
- </linearGradient>
- <path fill="url(#SVGID_23_)" d="M560.408-76.737c0,0,1.841,16.726-16.483,30.084l-25.88-12.545L560.408-76.737z"/>
-
- <radialGradient id="SVGID_24_" cx="-3625.5645" cy="-1608.3467" r="35.4038" gradientTransform="matrix(5.0343 0 0 0.3491 18747.7949 671.2212)" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#CFC8CA"/>
- <stop offset="0.1024" style="stop-color:#B0A8A9"/>
- <stop offset="0.294" style="stop-color:#645B59"/>
- <stop offset="0.4757" style="stop-color:#362E2C"/>
- <stop offset="0.6422" style="stop-color:#120B08"/>
- <stop offset="0.7903" style="stop-color:#000000"/>
- <stop offset="0.9146" style="stop-color:#000000"/>
- <stop offset="1" style="stop-color:#000000"/>
- </radialGradient>
- <ellipse opacity="0.85" fill="url(#SVGID_24_)" cx="495.617" cy="109.748" rx="178.246" ry="12.357"/>
-
- <radialGradient id="SVGID_25_" cx="-3467.3057" cy="-2072.7041" r="35.4038" gradientTransform="matrix(4.4361 0 0 0.3491 15978.1953 671.2212)" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#CFC8CA"/>
- <stop offset="0.1024" style="stop-color:#B0A8A9"/>
- <stop offset="0.294" style="stop-color:#645B59"/>
- <stop offset="0.4757" style="stop-color:#362E2C"/>
- <stop offset="0.6422" style="stop-color:#120B08"/>
- <stop offset="0.7903" style="stop-color:#000000"/>
- <stop offset="0.9146" style="stop-color:#000000"/>
- <stop offset="1" style="stop-color:#000000"/>
- </radialGradient>
- <ellipse opacity="0.85" fill="url(#SVGID_25_)" cx="596.882" cy="-52.36" rx="157.065" ry="12.359"/>
-
- <radialGradient id="SVGID_26_" cx="-5052.6079" cy="-10556.3291" r="35.4038" gradientTransform="matrix(0 4.4361 -0.3491 0 -3253.2212 22202.1953)" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#CFC8CA"/>
- <stop offset="0.1024" style="stop-color:#B0A8A9"/>
- <stop offset="0.294" style="stop-color:#645B59"/>
- <stop offset="0.4757" style="stop-color:#362E2C"/>
- <stop offset="0.6422" style="stop-color:#120B08"/>
- <stop offset="0.7903" style="stop-color:#000000"/>
- <stop offset="0.9146" style="stop-color:#000000"/>
- <stop offset="1" style="stop-color:#000000"/>
- </radialGradient>
- <ellipse opacity="0.85" fill="url(#SVGID_26_)" cx="431.994" cy="-211.679" rx="12.359" ry="157.065"/>
- <rect x="348.174" y="137.869" fill="none" width="320.85" height="60.159"/>
-
- <text transform="matrix(1 0 0 1 348.1738 147.8828)" fill="#FFFFFF" font-family="'GearedSlab-Regular'" font-size="13.3694" letter-spacing="8">DESKTOP ENVIRONMENT</text>
- <g>
- <path fill="#FFFFFF" d="M616.919,45.799v-4.005h-1.496v-0.535h3.6v0.535h-1.503v4.005H616.919z"/>
- <path fill="#FFFFFF" d="M620.166,45.799v-4.541h0.905l1.073,3.215c0.1,0.3,0.172,0.524,0.218,0.672
- c0.051-0.165,0.132-0.408,0.241-0.728l1.087-3.16h0.809v4.541h-0.579v-3.8l-1.319,3.8h-0.542l-1.314-3.866v3.866H620.166z"/>
- </g>
- <g>
- <radialGradient id="SVGID_27_" cx="725.4199" cy="53.6172" r="45.9551" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#C7BB2D"/>
- <stop offset="0.2227" style="stop-color:#8A7F28"/>
- <stop offset="0.7633" style="stop-color:#0F0B00"/>
- <stop offset="1" style="stop-color:#000000"/>
- </radialGradient>
- <circle fill="url(#SVGID_27_)" cx="725.42" cy="53.617" r="45.955"/>
- <radialGradient id="SVGID_28_" cx="800.6162" cy="97.0605" r="92.7519" gradientUnits="userSpaceOnUse">
- <stop offset="0.6648" style="stop-color:#000000"/>
- <stop offset="0.7612" style="stop-color:#000000"/>
- <stop offset="0.7959" style="stop-color:#000000"/>
- <stop offset="0.8207" style="stop-color:#000000"/>
- <stop offset="0.8407" style="stop-color:#000000"/>
- <stop offset="0.8579" style="stop-color:#101100"/>
- <stop offset="0.8731" style="stop-color:#252610"/>
- <stop offset="0.8868" style="stop-color:#3C3C1F"/>
- <stop offset="0.8994" style="stop-color:#595A2E"/>
- <stop offset="0.9112" style="stop-color:#81833F"/>
- <stop offset="0.9216" style="stop-color:#B3B952"/>
- <stop offset="0.9235" style="stop-color:#C1C857"/>
- <stop offset="0.9241" style="stop-color:#B3B952"/>
- <stop offset="0.9271" style="stop-color:#81843F"/>
- <stop offset="0.9306" style="stop-color:#595A2E"/>
- <stop offset="0.9344" style="stop-color:#3C3D1F"/>
- <stop offset="0.9384" style="stop-color:#252611"/>
- <stop offset="0.9429" style="stop-color:#101100"/>
- <stop offset="0.948" style="stop-color:#000000"/>
- <stop offset="0.9539" style="stop-color:#000000"/>
- <stop offset="0.9612" style="stop-color:#000000"/>
- <stop offset="0.9715" style="stop-color:#000000"/>
- <stop offset="1" style="stop-color:#000000"/>
- </radialGradient>
- <circle opacity="0.28" fill="url(#SVGID_28_)" cx="800.616" cy="97.061" r="92.752"/>
- </g>
- <radialGradient id="SVGID_29_" cx="456.1348" cy="-161.7441" r="151.7585" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#FAE8AC"/>
- <stop offset="0.061" style="stop-color:#EFDFA7"/>
- <stop offset="0.0989" style="stop-color:#E3D4A1"/>
- <stop offset="0.3736" style="stop-color:#8F894F"/>
- <stop offset="0.4108" style="stop-color:#A1995F"/>
- <stop offset="0.4743" style="stop-color:#B9AF77"/>
- <stop offset="0.5332" style="stop-color:#C9BD86"/>
- <stop offset="0.5824" style="stop-color:#CFC28C"/>
- <stop offset="0.7088" style="stop-color:#5F5E40"/>
- <stop offset="0.8352" style="stop-color:#000000"/>
- </radialGradient>
- <path fill="url(#SVGID_29_)" d="M429.13-226.121c0,0,56.817-7.521,55.981,72.692c-0.835,80.212,0,101.937,0,101.937v10.862
- c0,0-30.079,7.521-32.586-18.382C450.019-84.914,429.13-226.121,429.13-226.121z"/>
-
- <radialGradient id="SVGID_30_" cx="-318.2793" cy="-30.1743" r="752.7704" gradientTransform="matrix(1.1782 0 0 1.1139 842.376 -222.1572)" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#FAE8AC"/>
- <stop offset="0.061" style="stop-color:#EFDFA7"/>
- <stop offset="0.0989" style="stop-color:#E3D4A1"/>
- <stop offset="0.3736" style="stop-color:#8F894F"/>
- <stop offset="0.4108" style="stop-color:#A1995F"/>
- <stop offset="0.4743" style="stop-color:#B9AF77"/>
- <stop offset="0.5332" style="stop-color:#C9BD86"/>
- <stop offset="0.5824" style="stop-color:#CFC28C"/>
- <stop offset="0.7088" style="stop-color:#5F5E40"/>
- <stop offset="0.8352" style="stop-color:#000000"/>
- </radialGradient>
- <rect x="-99.78" y="-456.728" fill="url(#SVGID_30_)" width="1134.32" height="719.23"/>
- <rect x="-96.437" y="-456.009" opacity="0.07" fill="url(#Cheetah)" width="1134.321" height="719.229"/>
- <g>
- <g>
- <g>
- <path stroke="#EFEDC9" stroke-width="2" d="M323.881,41.271c0,0,8.171,0.314,8.171,8.106l0.084,45.958
- c0,0.445,0.083,0.835,0.25,1.17c0.167,0.334,0.445,0.501,0.836,0.501h7.353l9.024-0.034c0,6.846-6.342,6.803-6.342,6.803
- h-13.884c-6.126,0-5.51-8.272-5.51-8.272L323.881,41.271z M334.894,41.271"/>
- <path stroke="#EFEDC9" stroke-width="2" d="M497.775,41.354c0,0,8.365,0.652,8.245,8.022v46.292c0,0,0.213,8.105-8.311,8.105
- L497.775,41.354z"/>
- <path stroke="#EFEDC9" stroke-width="2" d="M531.593,103.773l-0.004-8.021V48.625l-0.022-7.313l6.624-0.041
- c0.668,0,1.169,0.155,1.503,0.46c0.334,0.307,0.586,0.739,0.752,1.295c0,0.112,0.278,1.059,0.836,2.84
- c0.557,1.785,1.253,3.999,2.089,6.644c0.836,2.646,1.74,5.543,2.716,8.69c0.975,3.147,1.893,6.156,2.757,9.025
- c0.863,2.869,1.63,5.389,2.299,7.562c0.668,2.173,1.113,3.622,1.337,4.346c0.055,0.112,0.124,0.223,0.209,0.334
- c0.083,0.112,0.125,0.083,0.125-0.084V49.292c0,0-0.411-8.022,7.403-8.022l-0.051,7.938v52.392
- c0,0.558-0.166,1.059-0.501,1.503c-0.334,0.447-0.836,0.67-1.504,0.67h-4.846c-0.725,0-1.24-0.307-1.547-0.92
- c-0.306-0.612-0.599-1.391-0.877-2.339c-0.112-0.278-0.474-1.38-1.086-3.301c-0.614-1.922-1.352-4.232-2.216-6.935
- c-0.863-2.702-1.781-5.585-2.757-8.649c-0.975-3.063-1.88-5.905-2.716-8.523c-0.835-2.618-1.531-4.805-2.089-6.56
- c-0.557-1.754-0.835-2.659-0.835-2.716c-0.056-0.111-0.112-0.194-0.167-0.25c-0.057-0.054-0.084,0.084-0.084,0.418v31.669
- C538.941,95.668,539.276,103.773,531.593,103.773z"/>
- <g>
- <path stroke="#EFEDC9" stroke-width="2" d="M615.081,95.752c-1.108-6.102-2.146-11.73-3.114-16.902
- c0.038-0.025,0.075-0.054,0.112-0.08c-0.472-2.691-0.927-5.279-1.359-7.752c-0.559-3.119-1.102-6.183-1.63-9.191
- c-0.53-3.008-1.002-5.724-1.42-8.147l-2.288-12.409h-0.578h-10.128h-0.579l-2.287,12.409c-0.417,2.423-0.89,5.139-1.42,8.147
- c-0.529,3.008-1.072,6.072-1.629,9.191c-0.947,5.394-1.984,11.305-3.114,17.73c0.009,0.004,0.02,0.01,0.029,0.014
- c-0.415,2.261-0.841,4.585-1.277,6.99l-1.527,8.021c8.621,0,9.164-7.219,9.164-7.219l0.612-3.59
- c0.041,0.033,0.085,0.061,0.127,0.094c0.11-0.772,0.221-1.504,0.33-2.195c0.113-0.695,0.168-1.184,0.168-1.463
- c0.112-0.668,0.334-1.113,0.668-1.337c0.335-0.222,0.753-0.334,1.253-0.334h8.005h1.522c0.891,0,1.393,0.558,1.503,1.671
- l1.221,7.154c0,0,0.543,7.219,9.164,7.219L615.081,95.752z M595.863,80.794c-0.39,0-0.696-0.138-0.92-0.417
- c-0.222-0.279-0.306-0.585-0.25-0.919c0-0.055,0.083-0.529,0.25-1.421c0.168-0.89,0.363-2.033,0.586-3.425
- s0.473-2.967,0.751-4.722c0.28-1.754,0.585-3.551,0.92-5.389l2.507-14.539h0.066L602.28,64.5
- c0.334,1.838,0.64,3.635,0.919,5.389c0.277,1.755,0.529,3.329,0.752,4.722c0.222,1.393,0.418,2.535,0.585,3.425
- c0.167,0.892,0.251,1.366,0.251,1.421c0.054,0.334-0.028,0.641-0.251,0.919c-0.224,0.279-0.53,0.417-0.919,0.417H595.863z"/>
- </g>
- </g>
- <g>
- <path stroke="#EFEDC9" stroke-width="2" d="M466.915,41.271c-0.446,0-0.836,0.084-1.17,0.251
- c-0.334,0.167-0.613,0.501-0.835,1.002l-7.521,14.373c-0.948,1.783-1.88,3.538-2.8,5.264c-0.919,1.728-1.727,3.288-2.423,4.68
- c-0.697,1.394-1.282,2.507-1.755,3.342c-0.474,0.835-0.71,1.283-0.71,1.337c-0.112,0.167-0.237,0.279-0.376,0.334
- c-0.14,0.057-0.265-0.055-0.376-0.334c-0.112-0.111-0.489-0.779-1.128-2.005c-0.641-1.225-1.449-2.758-2.423-4.596
- c-0.976-1.839-2.034-3.857-3.175-6.058c-1.143-2.2-2.243-4.358-3.301-6.476c-1.059-2.116-2.005-4.053-2.841-5.808
- c-0.835-1.755-1.449-3.104-1.838-4.053c-0.167-0.388-0.432-0.695-0.794-0.918c-0.363-0.222-0.71-0.335-1.044-0.335h-5.542
- v62.513c1.454,0.016,7.881-0.348,7.881-8.031v-0.084V61.492c0-0.222,0.042-0.334,0.125-0.334c0.084,0,0.153,0.056,0.209,0.167
- c2.006,3.678,3.815,7.048,5.431,10.111c0.669,1.283,1.351,2.563,2.048,3.844c0.696,1.282,1.322,2.438,1.88,3.468
- c0.556,1.031,1.016,1.909,1.378,2.632c0.362,0.725,0.598,1.17,0.711,1.337c0.167,0.334,0.513,0.6,1.044,0.794
- c0.529,0.196,1.113,0.292,1.754,0.292c0.639,0,1.225-0.097,1.755-0.292c0.528-0.195,0.877-0.487,1.044-0.878
- c0.056-0.167,0.278-0.611,0.669-1.336c0.389-0.724,0.863-1.616,1.421-2.674c0.556-1.058,1.169-2.214,1.838-3.468
- c0.668-1.253,1.364-2.52,2.089-3.802c1.615-3.007,3.453-6.35,5.515-10.027c0.111-0.277,0.236-0.375,0.377-0.292
- c0.137,0.083,0.208,0.181,0.208,0.292v34.176c0,0-0.314,8.083,7.74,8.265V41.271H466.915z"/>
- </g>
- </g>
- <g>
- <path stroke="#EFEDC9" stroke-width="2" d="M392.883,49.376v41.696c0,2.172-0.669,3.773-2.005,4.805
- c-1.337,1.031-2.758,1.545-4.262,1.545c-1.56,0-3.022-0.514-4.387-1.545c-1.366-1.031-2.047-2.633-2.047-4.805v-41.78
- c0-7.011-7.195-7.916-8.242-8.011v51.417c0.098,1.722,0.462,3.257,1.098,4.599c0.752,1.588,1.797,2.898,3.133,3.928
- c1.337,1.031,2.896,1.797,4.68,2.297c1.782,0.502,3.704,0.754,5.765,0.754c2.06,0,3.969-0.252,5.724-0.754
- c1.754-0.5,3.286-1.266,4.596-2.297c1.308-1.029,2.339-2.34,3.091-3.928c0.58-1.224,0.933-2.605,1.066-4.144v-51.88
- C392.512,41.314,392.883,49.376,392.883,49.376z"/>
- </g>
- </g>
- <g>
- <path d="M347.578,137.883c0.383,0,0.708,0.052,0.976,0.154c0.267,0.102,0.488,0.246,0.661,0.434
- c0.174,0.188,0.301,0.414,0.381,0.682c0.08,0.268,0.121,0.566,0.121,0.896v5.654c0,0.66-0.167,1.189-0.502,1.585
- c-0.334,0.397-0.88,0.595-1.637,0.595h-2.875v-0.361c0-0.195,0.026-0.345,0.081-0.447c0.053-0.103,0.125-0.176,0.213-0.221
- c0.107-0.063,0.161-0.156,0.161-0.28v-7.38c0-0.08-0.019-0.146-0.054-0.194c-0.036-0.049-0.076-0.082-0.12-0.101
- c-0.089-0.044-0.159-0.115-0.208-0.213c-0.049-0.099-0.073-0.236-0.073-0.415v-0.388H347.578z M348.393,140.022
- c0-0.313-0.065-0.562-0.194-0.749c-0.129-0.188-0.336-0.281-0.621-0.281h-0.923c-0.063,0-0.109,0.021-0.14,0.061
- c-0.032,0.039-0.047,0.082-0.047,0.127v7.42c0,0.045,0.013,0.086,0.04,0.127c0.027,0.04,0.063,0.061,0.107,0.061h0.963
- c0.285,0,0.492-0.094,0.621-0.281c0.129-0.188,0.194-0.437,0.194-0.748V140.022z"/>
- <path d="M360.338,139.053c-0.041,0.039-0.061,0.086-0.061,0.141v2.794c0,0.125,0.067,0.187,0.201,0.187h1.591
- c0.044,0,0.091,0.016,0.14,0.047s0.074,0.083,0.074,0.154v0.748c0,0.125-0.067,0.188-0.201,0.188h-1.604
- c-0.134,0-0.201,0.063-0.201,0.188v3.115c0,0.125,0.054,0.187,0.161,0.187h1.336c0.098,0,0.147-0.058,0.147-0.173
- c0-0.143,0.061-0.254,0.181-0.335c0.12-0.08,0.283-0.12,0.488-0.12h0.508v1.377c0,0.098-0.034,0.179-0.1,0.24
- c-0.067,0.063-0.15,0.094-0.248,0.094h-0.829h-2.607h-0.802v-0.348c0-0.195,0.024-0.346,0.074-0.447
- c0.049-0.103,0.118-0.176,0.207-0.221c0.116-0.063,0.174-0.156,0.174-0.281v-7.393c0-0.08-0.018-0.143-0.053-0.188
- c-0.036-0.045-0.076-0.08-0.121-0.107c-0.089-0.044-0.158-0.115-0.207-0.213c-0.049-0.099-0.074-0.236-0.074-0.415v-0.388h4.238
- c0.107,0,0.191,0.031,0.254,0.094c0.062,0.063,0.094,0.129,0.094,0.2v1.417h-0.495c-0.187,0-0.346-0.023-0.475-0.073
- c-0.129-0.049-0.193-0.149-0.193-0.301c0-0.054-0.014-0.104-0.041-0.153c-0.026-0.049-0.075-0.074-0.146-0.074h-1.284
- C360.42,138.992,360.378,139.013,360.338,139.053z"/>
- <path d="M373.42,140.851c0,0.179,0.084,0.348,0.254,0.509c0.169,0.16,0.379,0.322,0.628,0.487
- c0.249,0.165,0.523,0.339,0.822,0.521c0.299,0.183,0.573,0.386,0.823,0.608c0.249,0.223,0.458,0.473,0.628,0.748
- c0.169,0.277,0.254,0.594,0.254,0.949v1.311c0,0.339-0.067,0.636-0.201,0.89c-0.134,0.253-0.313,0.464-0.535,0.628
- c-0.223,0.165-0.481,0.287-0.776,0.367c-0.294,0.081-0.606,0.121-0.936,0.121s-0.642-0.04-0.936-0.121
- c-0.294-0.08-0.55-0.202-0.769-0.367c-0.219-0.164-0.392-0.375-0.521-0.628c-0.129-0.254-0.194-0.551-0.194-0.89v-1.002h0.642
- c0.24,0,0.421,0.056,0.541,0.166c0.121,0.111,0.181,0.271,0.181,0.476v0.574c0,0.116,0.033,0.219,0.1,0.308
- c0.067,0.09,0.152,0.165,0.254,0.227c0.103,0.063,0.216,0.113,0.341,0.148c0.125,0.035,0.245,0.053,0.361,0.053
- c0.116,0,0.236-0.02,0.361-0.06c0.125-0.04,0.24-0.095,0.347-0.161s0.194-0.146,0.261-0.24s0.1-0.198,0.1-0.314v-1.417
- c0-0.294-0.083-0.546-0.247-0.755c-0.165-0.21-0.373-0.399-0.622-0.568c-0.25-0.17-0.52-0.337-0.809-0.502
- c-0.29-0.164-0.559-0.346-0.809-0.541c-0.25-0.196-0.457-0.426-0.622-0.688s-0.247-0.581-0.247-0.956v-0.949
- c0-0.356,0.058-0.662,0.174-0.916c0.116-0.254,0.276-0.463,0.481-0.629c0.205-0.164,0.445-0.285,0.722-0.36
- s0.58-0.114,0.909-0.114s0.635,0.043,0.916,0.127c0.281,0.086,0.525,0.211,0.735,0.375c0.209,0.165,0.372,0.375,0.488,0.629
- c0.116,0.254,0.174,0.55,0.174,0.889v0.99h-0.602c-0.223,0-0.41-0.072-0.562-0.215c-0.152-0.143-0.228-0.32-0.228-0.534v-0.495
- c0-0.107-0.031-0.201-0.093-0.281c-0.063-0.08-0.141-0.145-0.234-0.193c-0.094-0.049-0.197-0.085-0.308-0.107
- c-0.111-0.021-0.211-0.033-0.3-0.033c-0.099,0-0.201,0.014-0.308,0.04c-0.106,0.026-0.209,0.067-0.307,0.12
- c-0.098,0.055-0.178,0.119-0.241,0.194s-0.093,0.163-0.093,0.261V140.851z"/>
- <path d="M390.546,146.746c0.098,0.045,0.179,0.109,0.241,0.194c0.062,0.085,0.094,0.229,0.094,0.435v0.508h-0.268h-0.615
- c-0.107,0-0.198-0.006-0.274-0.02s-0.143-0.038-0.201-0.074c-0.058-0.035-0.113-0.089-0.167-0.16
- c-0.053-0.071-0.112-0.16-0.174-0.268c-0.027-0.053-0.074-0.143-0.14-0.268c-0.067-0.124-0.143-0.273-0.228-0.447
- c-0.085-0.174-0.176-0.359-0.274-0.555c-0.098-0.195-0.196-0.396-0.294-0.602c-0.232-0.473-0.49-0.994-0.775-1.564l-0.213,0.414
- v2.287c0,0.07,0.011,0.124,0.033,0.16c0.022,0.035,0.055,0.07,0.1,0.106c0.072,0.054,0.143,0.13,0.214,0.228
- c0.071,0.098,0.107,0.223,0.107,0.374v0.388h-2.219v-0.388c0-0.151,0.036-0.276,0.107-0.374s0.143-0.174,0.214-0.228
- c0.036-0.036,0.064-0.068,0.087-0.101c0.022-0.031,0.038-0.086,0.047-0.166v-7.475c-0.009-0.07-0.024-0.124-0.047-0.16
- c-0.022-0.035-0.051-0.066-0.087-0.094c-0.071-0.053-0.143-0.129-0.214-0.227s-0.107-0.223-0.107-0.375v-0.4h2.206v0.4
- c0,0.152-0.036,0.277-0.107,0.375s-0.143,0.174-0.214,0.227c-0.045,0.027-0.079,0.059-0.1,0.094
- c-0.023,0.036-0.034,0.094-0.034,0.174v2.514l1.778-3.209c0.044-0.098,0.106-0.191,0.187-0.281
- c0.062-0.07,0.143-0.137,0.24-0.199c0.098-0.063,0.218-0.094,0.361-0.094h0.842v0.521c0,0.195-0.052,0.343-0.154,0.44
- c-0.102,0.099-0.202,0.17-0.3,0.214c-0.072,0.036-0.123,0.08-0.154,0.134s-0.069,0.116-0.114,0.188
- c-0.018,0.026-0.064,0.109-0.14,0.247c-0.076,0.139-0.167,0.308-0.274,0.508c-0.106,0.201-0.223,0.42-0.348,0.656
- c-0.125,0.235-0.245,0.463-0.36,0.682c-0.117,0.218-0.219,0.414-0.308,0.588s-0.151,0.297-0.187,0.367
- c-0.018,0.045-0.031,0.085-0.04,0.121c-0.009,0.035,0,0.094,0.027,0.174c0,0.018,0.029,0.082,0.087,0.193
- c0.058,0.111,0.131,0.256,0.22,0.436c0.088,0.178,0.191,0.378,0.307,0.601c0.116,0.224,0.232,0.45,0.348,0.683
- c0.276,0.543,0.588,1.154,0.937,1.831c0.044,0.071,0.088,0.124,0.133,0.16C390.377,146.676,390.448,146.711,390.546,146.746z"/>
- <path d="M404.892,137.996c0.08,0.094,0.121,0.252,0.121,0.475v0.414v0.736h-0.722c-0.125,0-0.223-0.043-0.294-0.127
- c-0.071-0.085-0.107-0.199-0.107-0.342c0-0.115-0.049-0.174-0.147-0.174h-0.655c-0.054,0-0.101,0.018-0.14,0.055
- c-0.041,0.035-0.061,0.094-0.061,0.173v7.394c0,0.09,0.014,0.151,0.04,0.188c0.027,0.035,0.062,0.07,0.107,0.106
- c0.072,0.054,0.14,0.13,0.208,0.228c0.066,0.098,0.1,0.223,0.1,0.374v0.388h-2.219v-0.388c0-0.151,0.036-0.276,0.107-0.374
- s0.143-0.174,0.214-0.228c0.035-0.036,0.067-0.071,0.094-0.106c0.026-0.036,0.04-0.098,0.04-0.188v-7.434
- c0-0.063-0.022-0.109-0.067-0.141s-0.089-0.047-0.134-0.047h-0.588c-0.036,0-0.079,0.014-0.127,0.041
- c-0.049,0.026-0.073,0.076-0.073,0.146c0,0.152-0.04,0.266-0.121,0.341c-0.081,0.076-0.227,0.114-0.441,0.114h-0.615v-0.816
- v-0.387c0-0.205,0.055-0.35,0.167-0.436c0.111-0.084,0.283-0.127,0.515-0.127h4.358
- C404.665,137.855,404.812,137.902,404.892,137.996z"/>
- <path d="M416.028,148.004c-0.33,0-0.638-0.041-0.923-0.121s-0.535-0.205-0.749-0.374s-0.381-0.382-0.501-0.635
- c-0.12-0.254-0.18-0.551-0.18-0.89v-6.203c0-0.339,0.06-0.635,0.18-0.889c0.121-0.254,0.288-0.464,0.501-0.629
- c0.214-0.164,0.463-0.287,0.749-0.367s0.593-0.121,0.923-0.121s0.637,0.041,0.922,0.121c0.285,0.08,0.533,0.203,0.742,0.367
- c0.209,0.165,0.374,0.375,0.495,0.629c0.12,0.254,0.181,0.55,0.181,0.889v6.203c0,0.339-0.061,0.636-0.181,0.89
- c-0.121,0.253-0.286,0.466-0.495,0.635c-0.209,0.169-0.457,0.294-0.742,0.374C416.665,147.963,416.358,148.004,416.028,148.004z
- M417.058,139.834c0-0.178-0.031-0.327-0.094-0.447c-0.062-0.12-0.143-0.219-0.24-0.295c-0.098-0.074-0.208-0.131-0.328-0.166
- s-0.243-0.054-0.368-0.054c-0.125,0-0.25,0.019-0.375,0.054c-0.125,0.035-0.236,0.092-0.334,0.166
- c-0.098,0.076-0.178,0.175-0.241,0.295s-0.094,0.27-0.094,0.447v6.098c0,0.178,0.031,0.327,0.094,0.447s0.143,0.219,0.241,0.295
- c0.098,0.075,0.209,0.131,0.334,0.166c0.125,0.036,0.25,0.054,0.375,0.054c0.125,0,0.248-0.018,0.368-0.054
- c0.12-0.035,0.229-0.091,0.328-0.166c0.098-0.076,0.178-0.175,0.24-0.295c0.063-0.12,0.094-0.27,0.094-0.447V139.834z"/>
- <path d="M430.04,137.883c0.757,0,1.301,0.196,1.631,0.588c0.33,0.393,0.495,0.923,0.495,1.592v1.457
- c0,0.668-0.165,1.191-0.495,1.57s-0.874,0.568-1.631,0.568h-0.87c-0.125,0-0.187,0.053-0.187,0.16v2.781
- c0,0.09,0.011,0.151,0.034,0.188c0.022,0.035,0.056,0.07,0.1,0.106c0.071,0.054,0.143,0.13,0.214,0.228s0.107,0.223,0.107,0.374
- v0.388h-2.233v-0.388c0-0.151,0.036-0.276,0.107-0.374s0.143-0.174,0.214-0.228c0.044-0.036,0.078-0.071,0.101-0.106
- c0.021-0.036,0.033-0.098,0.033-0.188v-7.42c0-0.134-0.059-0.232-0.174-0.295c-0.089-0.053-0.166-0.133-0.227-0.24
- c-0.063-0.107-0.094-0.25-0.094-0.428v-0.334H430.04z M430.841,140.035c0-0.312-0.065-0.561-0.194-0.748
- c-0.129-0.188-0.332-0.281-0.608-0.281h-0.843c-0.053,0-0.102,0.016-0.147,0.047c-0.044,0.031-0.067,0.078-0.067,0.141v3.154
- c0,0.125,0.058,0.188,0.174,0.188h0.882c0.276,0,0.479-0.094,0.608-0.28c0.129-0.188,0.194-0.437,0.194-0.749V140.035z"/>
- <path d="M453.95,139.053c-0.04,0.039-0.06,0.086-0.06,0.141v2.794c0,0.125,0.066,0.187,0.2,0.187h1.591
- c0.045,0,0.091,0.016,0.141,0.047c0.049,0.031,0.073,0.083,0.073,0.154v0.748c0,0.125-0.067,0.188-0.2,0.188h-1.604
- c-0.134,0-0.2,0.063-0.2,0.188v3.115c0,0.125,0.053,0.187,0.16,0.187h1.337c0.098,0,0.146-0.058,0.146-0.173
- c0-0.143,0.061-0.254,0.181-0.335c0.121-0.08,0.283-0.12,0.488-0.12h0.508v1.377c0,0.098-0.033,0.179-0.101,0.24
- c-0.066,0.063-0.148,0.094-0.247,0.094h-0.829h-2.606h-0.803v-0.348c0-0.195,0.024-0.346,0.074-0.447
- c0.049-0.103,0.118-0.176,0.207-0.221c0.116-0.063,0.174-0.156,0.174-0.281v-7.393c0-0.08-0.018-0.143-0.054-0.188
- s-0.075-0.08-0.12-0.107c-0.089-0.044-0.158-0.115-0.207-0.213c-0.05-0.099-0.074-0.236-0.074-0.415v-0.388h4.238
- c0.107,0,0.192,0.031,0.254,0.094c0.063,0.063,0.094,0.129,0.094,0.2v1.417h-0.495c-0.187,0-0.345-0.023-0.474-0.073
- c-0.13-0.049-0.194-0.149-0.194-0.301c0-0.054-0.014-0.104-0.04-0.153s-0.076-0.074-0.147-0.074h-1.283
- C454.032,138.992,453.99,139.013,453.95,139.053z"/>
- <path d="M470.923,137.883v0.388c0,0.151-0.035,0.276-0.107,0.374c-0.07,0.098-0.143,0.174-0.213,0.228
- c-0.036,0.036-0.065,0.071-0.088,0.106c-0.022,0.036-0.037,0.094-0.046,0.174v8.383c0,0.09-0.027,0.17-0.081,0.24
- c-0.053,0.072-0.134,0.107-0.24,0.107h-0.775c-0.116,0-0.198-0.049-0.247-0.146c-0.05-0.098-0.096-0.223-0.141-0.375
- c-0.019-0.044-0.076-0.221-0.174-0.527c-0.099-0.308-0.217-0.678-0.355-1.109c-0.138-0.434-0.284-0.895-0.44-1.385
- c-0.155-0.49-0.301-0.944-0.434-1.363c-0.134-0.419-0.246-0.77-0.335-1.05c-0.09-0.28-0.133-0.425-0.133-0.435
- c-0.01-0.018-0.019-0.031-0.027-0.039c-0.009-0.01-0.014,0.013-0.014,0.066v5.066c0,0.099,0.014,0.165,0.041,0.201
- c0.025,0.035,0.062,0.066,0.106,0.094c0.07,0.053,0.141,0.129,0.207,0.227c0.067,0.098,0.1,0.223,0.1,0.375v0.4h-2.085v-0.4
- c0-0.152,0.035-0.277,0.107-0.375c0.07-0.098,0.142-0.174,0.213-0.227c0.036-0.027,0.067-0.059,0.094-0.094
- c0.027-0.036,0.04-0.098,0.04-0.188v-7.54c-0.089-0.036-0.164-0.085-0.228-0.147c-0.062-0.054-0.115-0.127-0.16-0.221
- c-0.044-0.094-0.066-0.216-0.066-0.367v-0.441h1.511c0.106,0,0.187,0.024,0.24,0.073c0.054,0.05,0.094,0.118,0.121,0.208
- c0,0.018,0.044,0.169,0.134,0.454c0.089,0.285,0.2,0.64,0.334,1.063c0.134,0.423,0.278,0.887,0.434,1.391
- c0.157,0.502,0.304,0.984,0.442,1.443c0.138,0.459,0.26,0.861,0.367,1.209c0.106,0.348,0.178,0.58,0.213,0.695
- c0.009,0.019,0.021,0.036,0.034,0.054c0.013,0.019,0.02,0.014,0.02-0.013v-5.295c0-0.089-0.013-0.151-0.039-0.188
- c-0.027-0.035-0.059-0.07-0.094-0.106c-0.071-0.054-0.144-0.13-0.214-0.228c-0.072-0.098-0.106-0.223-0.106-0.374v-0.388H470.923
- z"/>
- <path d="M485.241,137.896v0.4c0,0.152-0.031,0.277-0.094,0.375c-0.062,0.098-0.129,0.17-0.2,0.213
- c-0.044,0.037-0.085,0.076-0.12,0.121c-0.036,0.045-0.063,0.103-0.081,0.174c-0.231,1.542-0.437,2.924-0.614,4.145
- c-0.081,0.525-0.158,1.038-0.234,1.537c-0.076,0.5-0.143,0.947-0.2,1.344c-0.059,0.396-0.107,0.721-0.146,0.969
- c-0.041,0.25-0.062,0.384-0.062,0.402c-0.009,0.07-0.038,0.14-0.087,0.207c-0.049,0.066-0.117,0.1-0.206,0.1h-1.444
- c-0.223,0-0.348-0.111-0.374-0.334c-0.045-0.258-0.112-0.645-0.201-1.156c-0.09-0.513-0.188-1.074-0.294-1.686
- c-0.106-0.609-0.219-1.236-0.334-1.878c-0.116-0.642-0.221-1.229-0.314-1.765s-0.172-0.977-0.234-1.323
- c-0.062-0.348-0.093-0.535-0.093-0.562c-0.018-0.09-0.038-0.151-0.061-0.188c-0.022-0.035-0.056-0.07-0.1-0.107
- c-0.072-0.043-0.139-0.115-0.201-0.213s-0.094-0.223-0.094-0.375v-0.4h2.126v0.4c0,0.16-0.029,0.287-0.087,0.381
- s-0.122,0.164-0.194,0.207c-0.044,0.037-0.078,0.072-0.1,0.107c-0.023,0.036-0.025,0.098-0.007,0.188
- c0.214,1.391,0.405,2.629,0.574,3.717c0.072,0.463,0.143,0.918,0.215,1.363c0.07,0.445,0.136,0.842,0.193,1.189
- s0.122,0.736,0.194,1.164c0.008,0,0.031-0.107,0.067-0.321c0.034-0.214,0.079-0.495,0.133-0.843s0.111-0.744,0.174-1.189
- c0.062-0.445,0.129-0.9,0.2-1.363c0.161-1.088,0.335-2.326,0.522-3.717c0-0.09-0.01-0.151-0.027-0.188
- c-0.018-0.035-0.049-0.07-0.094-0.107c-0.063-0.043-0.125-0.113-0.188-0.207c-0.062-0.094-0.094-0.221-0.094-0.381v-0.4H485.241z
- "/>
- <path d="M495.549,146.586v0.027c0,0.08,0.013,0.138,0.04,0.174c0.026,0.035,0.058,0.066,0.094,0.094
- c0.071,0.053,0.143,0.129,0.214,0.227s0.107,0.223,0.107,0.375v0.4h-2.232v-0.4c0-0.152,0.03-0.274,0.093-0.368
- c0.063-0.093,0.138-0.171,0.227-0.233c0.045-0.027,0.078-0.059,0.102-0.094c0.021-0.036,0.032-0.094,0.032-0.174v-0.027v-7.406
- c0-0.09-0.011-0.151-0.032-0.188c-0.023-0.035-0.057-0.07-0.102-0.107c-0.07-0.053-0.143-0.129-0.213-0.227
- c-0.072-0.098-0.106-0.223-0.106-0.375v-0.387h2.232v0.387c0,0.152-0.036,0.277-0.107,0.375s-0.143,0.174-0.214,0.227
- c-0.045,0.037-0.078,0.072-0.1,0.107c-0.023,0.036-0.034,0.098-0.034,0.188V146.586z"/>
- <path d="M509.6,146.854c0.071,0.045,0.141,0.101,0.208,0.168c0.066,0.066,0.1,0.18,0.1,0.34v0.521h-1.109
- c-0.232,0-0.404-0.061-0.515-0.18c-0.111-0.121-0.168-0.279-0.168-0.475v-2.621c0-0.312-0.063-0.555-0.193-0.729
- s-0.336-0.261-0.621-0.261h-0.829c-0.115,0-0.174,0.063-0.174,0.187v2.795c0,0.09,0.014,0.151,0.04,0.188
- c0.027,0.035,0.058,0.07,0.094,0.106c0.071,0.054,0.142,0.13,0.214,0.228c0.07,0.098,0.106,0.223,0.106,0.374v0.388h-2.22v-0.388
- c0-0.151,0.036-0.276,0.108-0.374c0.07-0.098,0.143-0.174,0.213-0.228c0.036-0.036,0.067-0.071,0.094-0.106
- c0.027-0.036,0.04-0.098,0.04-0.188v-7.434c0-0.07-0.013-0.127-0.04-0.167c-0.026-0.04-0.058-0.069-0.094-0.087
- c-0.07-0.045-0.141-0.115-0.207-0.214c-0.067-0.099-0.1-0.241-0.1-0.428v-0.388h2.754c0.383,0,0.708,0.056,0.976,0.167
- s0.487,0.265,0.662,0.462c0.174,0.195,0.301,0.43,0.38,0.701c0.081,0.271,0.121,0.572,0.121,0.902v1.377
- c0,0.285-0.058,0.546-0.174,0.782c-0.115,0.237-0.268,0.431-0.455,0.581c-0.079,0.081-0.07,0.17,0.027,0.268
- c0.204,0.152,0.356,0.361,0.455,0.629c0.098,0.268,0.146,0.566,0.146,0.896v1.965c0,0.089,0.016,0.145,0.047,0.166
- C509.518,146.803,509.555,146.826,509.6,146.854z M508.115,140.022c0-0.313-0.063-0.56-0.193-0.743
- c-0.13-0.182-0.336-0.273-0.621-0.273h-0.789c-0.143,0-0.214,0.063-0.214,0.188v3.182c0,0.045,0.018,0.08,0.054,0.106
- c0.035,0.026,0.071,0.04,0.106,0.04h0.843c0.285,0,0.491-0.094,0.621-0.28s0.193-0.437,0.193-0.749V140.022z"/>
- <path d="M520.924,148.004c-0.33,0-0.638-0.041-0.923-0.121s-0.534-0.205-0.749-0.374c-0.213-0.169-0.381-0.382-0.501-0.635
- c-0.12-0.254-0.18-0.551-0.18-0.89v-6.203c0-0.339,0.06-0.635,0.18-0.889s0.288-0.464,0.501-0.629
- c0.215-0.164,0.464-0.287,0.749-0.367s0.593-0.121,0.923-0.121c0.329,0,0.637,0.041,0.922,0.121s0.533,0.203,0.742,0.367
- c0.209,0.165,0.374,0.375,0.495,0.629c0.12,0.254,0.181,0.55,0.181,0.889v6.203c0,0.339-0.061,0.636-0.181,0.89
- c-0.121,0.253-0.286,0.466-0.495,0.635s-0.457,0.294-0.742,0.374S521.253,148.004,520.924,148.004z M521.952,139.834
- c0-0.178-0.03-0.327-0.093-0.447s-0.143-0.219-0.241-0.295c-0.098-0.074-0.206-0.131-0.327-0.166
- c-0.119-0.035-0.242-0.054-0.367-0.054c-0.126,0-0.25,0.019-0.375,0.054s-0.235,0.092-0.334,0.166
- c-0.098,0.076-0.178,0.175-0.24,0.295c-0.063,0.12-0.094,0.27-0.094,0.447v6.098c0,0.178,0.03,0.327,0.094,0.447
- c0.063,0.12,0.143,0.219,0.24,0.295c0.099,0.075,0.209,0.131,0.334,0.166c0.125,0.036,0.249,0.054,0.375,0.054
- c0.125,0,0.248-0.018,0.367-0.054c0.121-0.035,0.229-0.091,0.327-0.166c0.099-0.076,0.179-0.175,0.241-0.295
- s0.093-0.27,0.093-0.447V139.834z"/>
- <path d="M537.542,137.883v0.388c0,0.151-0.036,0.276-0.107,0.374s-0.143,0.174-0.214,0.228c-0.036,0.036-0.064,0.071-0.087,0.106
- c-0.021,0.036-0.037,0.094-0.047,0.174v8.383c0,0.09-0.026,0.17-0.08,0.24c-0.053,0.072-0.133,0.107-0.24,0.107h-0.775
- c-0.116,0-0.199-0.049-0.247-0.146c-0.05-0.098-0.097-0.223-0.142-0.375c-0.018-0.044-0.075-0.221-0.173-0.527
- c-0.099-0.308-0.217-0.678-0.354-1.109c-0.139-0.434-0.285-0.895-0.44-1.385c-0.157-0.49-0.302-0.944-0.436-1.363
- s-0.245-0.77-0.334-1.05s-0.134-0.425-0.134-0.435c-0.009-0.018-0.018-0.031-0.026-0.039c-0.01-0.01-0.014,0.013-0.014,0.066
- v5.066c0,0.099,0.014,0.165,0.04,0.201c0.027,0.035,0.062,0.066,0.106,0.094c0.072,0.053,0.141,0.129,0.208,0.227
- c0.066,0.098,0.1,0.223,0.1,0.375v0.4h-2.085v-0.4c0-0.152,0.035-0.277,0.106-0.375s0.143-0.174,0.214-0.227
- c0.036-0.027,0.067-0.059,0.094-0.094c0.027-0.036,0.04-0.098,0.04-0.188v-7.54c-0.089-0.036-0.165-0.085-0.227-0.147
- c-0.063-0.054-0.117-0.127-0.16-0.221c-0.045-0.094-0.067-0.216-0.067-0.367v-0.441h1.511c0.106,0,0.188,0.024,0.24,0.073
- c0.054,0.05,0.094,0.118,0.12,0.208c0,0.018,0.045,0.169,0.134,0.454s0.201,0.64,0.335,1.063
- c0.133,0.423,0.277,0.887,0.435,1.391c0.155,0.502,0.302,0.984,0.44,1.443c0.138,0.459,0.261,0.861,0.367,1.209
- c0.108,0.348,0.179,0.58,0.215,0.695c0.009,0.019,0.02,0.036,0.034,0.054c0.013,0.019,0.02,0.014,0.02-0.013v-5.295
- c0-0.089-0.014-0.151-0.041-0.188c-0.025-0.035-0.058-0.07-0.094-0.106c-0.07-0.054-0.143-0.13-0.213-0.228
- c-0.071-0.098-0.107-0.223-0.107-0.374v-0.388H537.542z"/>
- <path d="M554.206,138.665c-0.049,0.093-0.1,0.167-0.153,0.22c-0.071,0.063-0.146,0.107-0.228,0.135v7.526
- c0,0.089,0.014,0.151,0.041,0.187c0.025,0.037,0.062,0.067,0.106,0.094c0.071,0.055,0.143,0.13,0.214,0.229
- c0.071,0.098,0.107,0.231,0.107,0.4v0.428h-2.192v-0.441c0-0.15,0.034-0.275,0.106-0.374c0.071-0.098,0.143-0.174,0.214-0.228
- c0.045-0.026,0.08-0.057,0.106-0.094c0.027-0.035,0.041-0.098,0.041-0.187v-5.468c0-0.018-0.011-0.033-0.034-0.047
- c-0.021-0.014-0.042,0.002-0.06,0.047c-0.33,0.588-0.625,1.123-0.883,1.604c-0.116,0.205-0.227,0.408-0.334,0.609
- c-0.107,0.199-0.205,0.385-0.295,0.555c-0.089,0.169-0.164,0.312-0.227,0.428c-0.063,0.115-0.099,0.187-0.107,0.213
- c-0.025,0.063-0.082,0.109-0.166,0.141c-0.085,0.031-0.179,0.047-0.282,0.047c-0.102,0-0.195-0.016-0.28-0.047
- s-0.141-0.073-0.166-0.127c-0.02-0.026-0.056-0.098-0.115-0.213c-0.058-0.116-0.131-0.257-0.22-0.422
- c-0.089-0.164-0.19-0.35-0.301-0.555c-0.111-0.205-0.221-0.41-0.327-0.615c-0.26-0.49-0.549-1.029-0.87-1.617
- c-0.009-0.018-0.02-0.027-0.032-0.027c-0.015,0-0.021,0.018-0.021,0.054v5.468v0.014c0,0.09,0.011,0.151,0.033,0.188
- c0.022,0.035,0.056,0.066,0.101,0.094c0.071,0.053,0.143,0.129,0.214,0.227s0.106,0.223,0.106,0.375v0.4h-2.232v-0.4
- c0-0.152,0.036-0.277,0.106-0.375c0.072-0.098,0.143-0.174,0.215-0.227c0.045-0.027,0.08-0.059,0.106-0.094
- c0.027-0.036,0.04-0.098,0.04-0.188v-7.58c-0.089-0.027-0.165-0.072-0.228-0.135c-0.062-0.053-0.115-0.127-0.159-0.22
- c-0.045-0.094-0.067-0.216-0.067-0.368v-0.414h1.39c0.054,0,0.109,0.018,0.168,0.053c0.058,0.036,0.101,0.086,0.126,0.148
- c0.063,0.151,0.161,0.367,0.295,0.648c0.134,0.28,0.285,0.59,0.455,0.929c0.169,0.339,0.345,0.684,0.527,1.036
- c0.183,0.352,0.353,0.675,0.508,0.969c0.156,0.295,0.285,0.54,0.388,0.736c0.103,0.195,0.163,0.303,0.181,0.32
- c0.018,0.045,0.038,0.063,0.06,0.053c0.023-0.008,0.043-0.025,0.062-0.053c0-0.009,0.038-0.08,0.113-0.215
- c0.076-0.133,0.169-0.311,0.28-0.534c0.112-0.223,0.24-0.472,0.389-0.749c0.146-0.275,0.296-0.557,0.447-0.842l1.203-2.299
- c0.036-0.081,0.08-0.135,0.134-0.161c0.053-0.026,0.115-0.04,0.188-0.04h1.283v0.414
- C554.28,138.449,554.256,138.571,554.206,138.665z"/>
- <path d="M564.648,139.053c-0.041,0.039-0.061,0.086-0.061,0.141v2.794c0,0.125,0.066,0.187,0.2,0.187h1.591
- c0.045,0,0.092,0.016,0.141,0.047s0.074,0.083,0.074,0.154v0.748c0,0.125-0.067,0.188-0.2,0.188h-1.605
- c-0.134,0-0.2,0.063-0.2,0.188v3.115c0,0.125,0.054,0.187,0.16,0.187h1.337c0.099,0,0.147-0.058,0.147-0.173
- c0-0.143,0.06-0.254,0.181-0.335c0.12-0.08,0.282-0.12,0.487-0.12h0.508v1.377c0,0.098-0.032,0.179-0.1,0.24
- c-0.066,0.063-0.149,0.094-0.247,0.094h-0.829h-2.607h-0.802v-0.348c0-0.195,0.024-0.346,0.073-0.447
- c0.049-0.103,0.118-0.176,0.208-0.221c0.115-0.063,0.173-0.156,0.173-0.281v-7.393c0-0.08-0.018-0.143-0.054-0.188
- c-0.035-0.045-0.075-0.08-0.119-0.107c-0.09-0.044-0.159-0.115-0.208-0.213c-0.049-0.099-0.073-0.236-0.073-0.415v-0.388h4.238
- c0.106,0,0.191,0.031,0.253,0.094c0.063,0.063,0.094,0.129,0.094,0.2v1.417h-0.494c-0.187,0-0.346-0.023-0.474-0.073
- c-0.13-0.049-0.195-0.149-0.195-0.301c0-0.054-0.013-0.104-0.039-0.153c-0.027-0.049-0.076-0.074-0.148-0.074h-1.282
- C564.73,138.992,564.688,139.013,564.648,139.053z"/>
- <path d="M581.621,137.883v0.388c0,0.151-0.036,0.276-0.108,0.374c-0.07,0.098-0.142,0.174-0.213,0.228
- c-0.036,0.036-0.065,0.071-0.087,0.106c-0.022,0.036-0.038,0.094-0.047,0.174v8.383c0,0.09-0.027,0.17-0.08,0.24
- c-0.054,0.072-0.134,0.107-0.241,0.107h-0.775c-0.115,0-0.198-0.049-0.247-0.146s-0.096-0.223-0.14-0.375
- c-0.019-0.044-0.076-0.221-0.175-0.527c-0.098-0.308-0.216-0.678-0.354-1.109c-0.139-0.434-0.285-0.895-0.44-1.385
- s-0.302-0.944-0.435-1.363c-0.134-0.419-0.246-0.77-0.335-1.05s-0.133-0.425-0.133-0.435c-0.01-0.018-0.019-0.031-0.027-0.039
- c-0.009-0.01-0.013,0.013-0.013,0.066v5.066c0,0.099,0.013,0.165,0.04,0.201c0.026,0.035,0.063,0.066,0.106,0.094
- c0.071,0.053,0.141,0.129,0.207,0.227c0.067,0.098,0.101,0.223,0.101,0.375v0.4h-2.085v-0.4c0-0.152,0.035-0.277,0.106-0.375
- s0.143-0.174,0.214-0.227c0.035-0.027,0.067-0.059,0.093-0.094c0.027-0.036,0.04-0.098,0.04-0.188v-7.54
- c-0.089-0.036-0.164-0.085-0.227-0.147c-0.063-0.054-0.115-0.127-0.16-0.221s-0.066-0.216-0.066-0.367v-0.441h1.51
- c0.107,0,0.188,0.024,0.24,0.073c0.054,0.05,0.094,0.118,0.121,0.208c0,0.018,0.045,0.169,0.134,0.454
- c0.09,0.285,0.2,0.64,0.334,1.063c0.134,0.423,0.278,0.887,0.435,1.391c0.156,0.502,0.304,0.984,0.441,1.443
- c0.139,0.459,0.26,0.861,0.368,1.209c0.106,0.348,0.177,0.58,0.213,0.695c0.009,0.019,0.021,0.036,0.034,0.054
- c0.013,0.019,0.02,0.014,0.02-0.013v-5.295c0-0.089-0.014-0.151-0.039-0.188c-0.027-0.035-0.06-0.07-0.094-0.106
- c-0.072-0.054-0.144-0.13-0.215-0.228s-0.106-0.223-0.106-0.374v-0.388H581.621z"/>
- <path d="M595.631,137.996c0.081,0.094,0.121,0.252,0.121,0.475v0.414v0.736h-0.723c-0.124,0-0.222-0.043-0.294-0.127
- c-0.071-0.085-0.106-0.199-0.106-0.342c0-0.115-0.049-0.174-0.146-0.174h-0.656c-0.054,0-0.101,0.018-0.141,0.055
- c-0.039,0.035-0.06,0.094-0.06,0.173v7.394c0,0.09,0.013,0.151,0.04,0.188c0.027,0.035,0.063,0.07,0.106,0.106
- c0.072,0.054,0.141,0.13,0.208,0.228c0.066,0.098,0.101,0.223,0.101,0.374v0.388h-2.22v-0.388c0-0.151,0.036-0.276,0.106-0.374
- c0.072-0.098,0.143-0.174,0.215-0.228c0.035-0.036,0.067-0.071,0.093-0.106c0.027-0.036,0.041-0.098,0.041-0.188v-7.434
- c0-0.063-0.023-0.109-0.066-0.141c-0.046-0.031-0.09-0.047-0.134-0.047h-0.589c-0.036,0-0.078,0.014-0.128,0.041
- c-0.049,0.026-0.072,0.076-0.072,0.146c0,0.152-0.04,0.266-0.121,0.341c-0.08,0.076-0.228,0.114-0.44,0.114h-0.616v-0.816v-0.387
- c0-0.205,0.056-0.35,0.168-0.436c0.111-0.084,0.283-0.127,0.515-0.127h4.358C595.403,137.855,595.552,137.902,595.631,137.996z"
- />
- </g>
- <g>
- <path fill="#FFFFFF" d="M612.968,45.799v-4.005h-1.496v-0.535h3.599v0.535h-1.501v4.005H612.968z"/>
- <path fill="#FFFFFF" d="M616.215,45.799v-4.541h0.904l1.075,3.215c0.099,0.3,0.171,0.524,0.217,0.672
- c0.051-0.165,0.131-0.408,0.241-0.728l1.088-3.16h0.808v4.541h-0.579v-3.8l-1.318,3.8h-0.543l-1.313-3.866v3.866H616.215z"/>
- </g>
- </g>
-</g>
-</svg>
diff --git a/Artwork/Web_Print/SVG/Lumina_Horizontal_Banner_Green_941px173px.svg b/Artwork/Web_Print/SVG/Lumina_Horizontal_Banner_Green_941px173px.svg deleted file mode 100644 index d1d55471..00000000 --- a/Artwork/Web_Print/SVG/Lumina_Horizontal_Banner_Green_941px173px.svg +++ /dev/null @@ -1,1428 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
- width="941px" height="173px" viewBox="0 0 941 173" enable-background="new 0 0 941 173" xml:space="preserve">
-<pattern x="255" y="303" width="124.415" height="124.416" patternUnits="userSpaceOnUse" id="Cheetah" viewBox="8.505 -135.862 124.415 124.416" overflow="visible">
- <g>
- <polygon fill="none" points="8.505,-11.445 132.92,-11.445 132.92,-135.861 8.505,-135.861 "/>
- <g>
- <polygon fill="none" points="132.92,-135.861 8.505,-135.861 8.505,-11.445 132.92,-11.445 "/>
- <polygon fill="#F1BA7B" points="132.92,-135.861 8.505,-135.861 8.505,-11.445 132.92,-11.445 "/>
- <g>
- <g>
- <path fill="#864428" d="M4.919-112.564c-1.643-0.334-5.064-3.549-4.914-5.666c0.15-2.115,0.439-3.689,3.625-6.123
- c3.186-2.433,7.504-5.847,11.095-3.996c3.59,1.85,2.748,6.221,1.301,9.131S12.955-110.932,4.919-112.564z"/>
- <path fill="#82472C" d="M5.003-112.791c-1.605-0.322-4.945-3.422-4.798-5.464c0.147-2.04,0.429-3.56,3.54-5.905
- c3.11-2.346,7.327-5.639,10.833-3.854c3.505,1.783,2.684,5.998,1.27,8.807C14.434-116.402,12.849-111.214,5.003-112.791z"/>
- <path fill="#7D4930" d="M5.086-113.016c-1.565-0.312-4.825-3.297-4.682-5.264c0.143-1.966,0.418-3.428,3.454-5.688
- c3.035-2.259,7.15-5.431,10.571-3.712c3.42,1.718,2.618,5.777,1.239,8.48C14.29-116.494,12.743-111.498,5.086-113.016z"/>
- <path fill="#794B34" d="M5.17-113.241c-1.527-0.299-4.706-3.171-4.566-5.062c0.14-1.891,0.409-3.297,3.368-5.471
- c2.96-2.172,6.973-5.223,10.309-3.569s2.554,5.557,1.209,8.155C14.145-116.586,12.637-111.781,5.17-113.241z"/>
- <path fill="#754C37" d="M5.254-113.467c-1.488-0.287-4.586-3.045-4.45-4.86c0.136-1.813,0.398-3.165,3.283-5.252
- c2.885-2.087,6.795-5.015,10.047-3.428c3.251,1.587,2.488,5.336,1.178,7.832S12.531-112.064,5.254-113.467z"/>
- <path fill="#704C3A" d="M5.338-113.691c-1.45-0.275-4.467-2.918-4.334-4.66c0.133-1.738,0.388-3.032,3.197-5.033
- c2.809-2,6.618-4.807,9.785-3.285c3.166,1.521,2.423,5.113,1.147,7.507C13.856-116.771,12.425-112.35,5.338-113.691z"/>
- <path fill="#6B4C3C" d="M5.421-113.918c-1.411-0.264-4.347-2.792-4.218-4.457c0.129-1.664,0.377-2.902,3.112-4.816
- c2.734-1.914,6.44-4.599,9.522-3.144s2.359,4.894,1.116,7.183C13.712-116.861,12.318-112.632,5.421-113.918z"/>
- <path fill="#664C3E" d="M5.505-114.145c-1.372-0.25-4.228-2.664-4.102-4.256c0.125-1.588,0.367-2.771,3.026-4.598
- c2.659-1.828,6.264-4.393,9.261-3.002s2.293,4.672,1.085,6.857C13.568-116.955,12.213-112.915,5.505-114.145z"/>
- <path fill="#614B3F" d="M5.588-114.368c-1.333-0.239-4.108-2.54-3.986-4.055s0.356-2.64,2.94-4.381s6.086-4.183,8.999-2.859
- c2.912,1.323,2.229,4.451,1.055,6.533C13.423-117.047,12.107-113.198,5.588-114.368z"/>
- <path fill="#5B4940" d="M5.672-114.594c-1.294-0.229-3.988-2.414-3.87-3.854c0.119-1.438,0.346-2.508,2.855-4.161
- c2.509-1.656,5.909-3.977,8.737-2.719c2.827,1.258,2.164,4.229,1.024,6.208S12.001-113.48,5.672-114.594z"/>
- <path fill="#54463F" d="M5.755-114.818c-1.255-0.217-3.869-2.287-3.754-3.651c0.115-1.363,0.336-2.378,2.77-3.945
- s5.732-3.769,8.475-2.575c2.742,1.192,2.099,4.01,0.994,5.885C13.134-117.23,11.895-113.766,5.755-114.818z"/>
- <path fill="#4D423D" d="M5.839-115.045c-1.217-0.203-3.749-2.161-3.638-3.45c0.112-1.287,0.326-2.246,2.684-3.728
- s5.555-3.56,8.213-2.434c2.658,1.127,2.034,3.787,0.963,5.559C12.99-117.323,11.789-114.049,5.839-115.045z"/>
- <path fill="#443D39" d="M5.923-115.271c-1.178-0.19-3.629-2.033-3.522-3.248c0.108-1.213,0.315-2.114,2.599-3.51
- c2.283-1.396,5.378-3.352,7.951-2.291c2.573,1.062,1.969,3.566,0.932,5.234C12.845-117.416,11.683-114.332,5.923-115.271z"/>
- <path fill="#3A3534" d="M6.006-115.495c-1.139-0.181-3.509-1.909-3.405-3.048c0.105-1.137,0.305-1.982,2.513-3.291
- c2.208-1.311,5.201-3.145,7.689-2.148c2.488,0.994,1.904,3.345,0.901,4.908C12.701-117.508,11.576-114.616,6.006-115.495z"/>
- <path fill="#252423" d="M6.09-115.721c-1.101-0.168-3.39-1.782-3.29-2.846c0.101-1.063,0.294-1.854,2.427-3.074
- c2.133-1.223,5.024-2.937,7.427-2.008c2.403,0.93,1.839,3.125,0.871,4.586C12.557-117.602,11.47-114.898,6.09-115.721z"/>
- <path d="M6.174-115.945c-1.062-0.156-3.271-1.656-3.174-2.646c0.098-0.986,0.284-1.722,2.342-2.854
- c2.058-1.138,4.847-2.729,7.165-1.865c2.318,0.863,1.774,2.901,0.84,4.26C12.412-117.691,11.364-115.184,6.174-115.945z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M129.378-112.564c-1.646-0.334-5.064-3.549-4.914-5.666c0.15-2.115,0.438-3.689,3.625-6.123
- c3.185-2.433,7.504-5.847,11.093-3.996c3.591,1.85,2.749,6.221,1.301,9.131C139.036-116.311,137.413-110.932,129.378-112.564z"
- />
- <path fill="#82472C" d="M129.462-112.791c-1.607-0.322-4.945-3.422-4.798-5.464c0.146-2.04,0.428-3.56,3.539-5.905
- c3.109-2.346,7.326-5.639,10.83-3.854c3.507,1.783,2.685,5.998,1.271,8.807C138.892-116.402,137.308-111.214,129.462-112.791z"
- />
- <path fill="#7D4930" d="M129.545-113.016c-1.567-0.312-4.825-3.297-4.682-5.264c0.143-1.966,0.418-3.428,3.454-5.688
- c3.034-2.259,7.149-5.431,10.569-3.712c3.421,1.718,2.618,5.777,1.238,8.48C138.747-116.494,137.201-111.498,129.545-113.016z"
- />
- <path fill="#794B34" d="M129.629-113.241c-1.529-0.299-4.706-3.171-4.565-5.062c0.14-1.891,0.407-3.297,3.367-5.471
- c2.959-2.172,6.974-5.223,10.308-3.569c3.337,1.651,2.555,5.557,1.209,8.155C138.603-116.586,137.095-111.781,129.629-113.241z
- "/>
- <path fill="#754C37" d="M129.712-113.467c-1.489-0.287-4.586-3.045-4.449-4.86c0.136-1.813,0.397-3.165,3.282-5.252
- c2.884-2.087,6.796-5.015,10.046-3.428c3.251,1.587,2.489,5.336,1.178,7.832C138.459-116.679,136.989-112.064,129.712-113.467z
- "/>
- <path fill="#704C3A" d="M129.796-113.691c-1.451-0.275-4.467-2.918-4.333-4.66c0.132-1.738,0.387-3.032,3.196-5.033
- c2.809-2,6.618-4.807,9.783-3.285c3.167,1.521,2.425,5.113,1.147,7.507C138.315-116.771,136.884-112.35,129.796-113.691z"/>
- <path fill="#6B4C3C" d="M129.88-113.918c-1.412-0.264-4.347-2.792-4.218-4.457c0.129-1.664,0.377-2.902,3.111-4.816
- c2.733-1.914,6.441-4.599,9.521-3.144c3.082,1.455,2.359,4.894,1.117,7.183C138.17-116.861,136.777-112.632,129.88-113.918z"/>
- <path fill="#664C3E" d="M129.963-114.145c-1.373-0.25-4.227-2.664-4.101-4.256c0.124-1.588,0.366-2.771,3.024-4.598
- c2.659-1.828,6.265-4.393,9.261-3.002c2.997,1.391,2.294,4.672,1.086,6.857C138.026-116.955,136.671-112.915,129.963-114.145z"
- />
- <path fill="#614B3F" d="M130.047-114.368c-1.334-0.239-4.108-2.54-3.985-4.055c0.121-1.515,0.356-2.64,2.939-4.381
- s6.088-4.183,8.998-2.859c2.913,1.323,2.229,4.451,1.056,6.533C137.881-117.047,136.566-113.198,130.047-114.368z"/>
- <path fill="#5B4940" d="M130.13-114.594c-1.295-0.229-3.987-2.414-3.868-3.854c0.117-1.438,0.346-2.508,2.854-4.161
- c2.508-1.656,5.91-3.977,8.736-2.719c2.828,1.258,2.164,4.229,1.024,6.208S136.459-113.48,130.13-114.594z"/>
- <path fill="#54463F" d="M130.214-114.818c-1.256-0.217-3.868-2.287-3.753-3.651c0.114-1.363,0.335-2.378,2.768-3.945
- c2.434-1.567,5.734-3.769,8.476-2.575c2.743,1.192,2.099,4.01,0.994,5.885C137.592-117.23,136.354-113.766,130.214-114.818z"/>
- <path fill="#4D423D" d="M130.298-115.045c-1.218-0.203-3.749-2.161-3.637-3.45c0.11-1.287,0.324-2.246,2.682-3.728
- s5.557-3.56,8.213-2.434c2.659,1.127,2.035,3.787,0.964,5.559C137.447-117.323,136.247-114.049,130.298-115.045z"/>
- <path fill="#443D39" d="M130.381-115.271c-1.178-0.19-3.629-2.033-3.521-3.248c0.107-1.213,0.314-2.114,2.597-3.51
- c2.283-1.396,5.38-3.352,7.951-2.291c2.573,1.062,1.97,3.566,0.933,5.234C137.303-117.416,136.142-114.332,130.381-115.271z"/>
- <path fill="#3A3534" d="M130.465-115.495c-1.14-0.181-3.51-1.909-3.404-3.048c0.103-1.137,0.304-1.982,2.511-3.291
- c2.207-1.311,5.202-3.145,7.689-2.148c2.488,0.994,1.904,3.345,0.902,4.908C137.158-117.508,136.035-114.616,130.465-115.495z"
- />
- <path fill="#252423" d="M130.548-115.721c-1.1-0.168-3.39-1.782-3.288-2.846c0.1-1.063,0.294-1.854,2.425-3.074
- c2.133-1.223,5.026-2.937,7.428-2.008c2.404,0.93,1.84,3.125,0.872,4.586C137.014-117.602,135.93-114.898,130.548-115.721z"/>
- <path d="M130.632-115.945c-1.062-0.156-3.271-1.656-3.172-2.646c0.096-0.986,0.283-1.722,2.339-2.854
- c2.058-1.138,4.849-2.729,7.166-1.865c2.319,0.862,1.774,2.901,0.841,4.26C136.869-117.691,135.823-115.184,130.632-115.945z"
- />
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M130.13-22.654c-2.75-2-8.001-9.25-1.5-14.5c6.5-5.25,8.5-8,13.25-5s8.75,10.75,4.5,14.75
- S135.63-18.654,130.13-22.654z"/>
- <path fill="#82472C" d="M130.325-22.896c-2.668-1.943-7.763-8.985-1.455-14.086c6.307-5.1,8.247-7.771,12.856-4.856
- c4.608,2.914,8.489,10.442,4.365,14.329C141.969-23.625,135.662-19.011,130.325-22.896z"/>
- <path fill="#7D4930" d="M130.522-23.139c-2.587-1.887-7.525-8.723-1.411-13.672c6.113-4.95,7.995-7.543,12.462-4.715
- c4.468,2.83,8.229,10.137,4.233,13.907C141.808-23.848,135.694-19.368,130.522-23.139z"/>
- <path fill="#794B34" d="M130.717-23.382c-2.505-1.829-7.287-8.457-1.365-13.257c5.919-4.801,7.741-7.314,12.067-4.571
- s7.97,9.829,4.099,13.485C141.647-24.068,135.727-19.725,130.717-23.382z"/>
- <path fill="#754C37" d="M130.913-23.626c-2.424-1.771-7.05-8.192-1.321-12.843c5.727-4.65,7.489-7.086,11.673-4.428
- c4.186,2.656,7.71,9.521,3.966,13.063C141.485-24.29,135.759-20.083,130.913-23.626z"/>
- <path fill="#704C3A" d="M131.109-23.868c-2.342-1.714-6.812-7.929-1.276-12.429c5.533-4.5,7.236-6.857,11.279-4.285
- c4.045,2.571,7.449,9.214,3.832,12.643C141.325-24.511,135.79-20.439,131.109-23.868z"/>
- <path fill="#6B4C3C" d="M131.305-24.111c-2.26-1.656-6.574-7.664-1.232-12.015c5.34-4.351,6.983-6.628,10.886-4.144
- c3.903,2.485,7.189,8.908,3.698,12.222C141.163-24.732,135.822-20.797,131.305-24.111z"/>
- <path fill="#664C3E" d="M131.5-24.354c-2.179-1.601-6.336-7.4-1.188-11.601c5.146-4.2,6.73-6.399,10.491-4
- c3.762,2.4,6.93,8.601,3.564,11.8C141.002-24.954,135.855-21.154,131.5-24.354z"/>
- <path fill="#614B3F" d="M131.695-24.598c-2.096-1.543-6.098-7.135-1.143-11.186c4.953-4.05,6.479-6.172,10.098-3.857
- c3.62,2.314,6.669,8.293,3.431,11.379C140.842-25.175,135.887-21.511,131.695-24.598z"/>
- <path fill="#5B4940" d="M131.892-24.84c-2.015-1.485-5.86-6.871-1.099-10.771c4.761-3.899,6.226-5.942,9.704-3.714
- c3.479,2.229,6.409,7.985,3.297,10.957C140.681-25.396,135.919-21.868,131.892-24.84z"/>
- <path fill="#54463F" d="M132.087-25.083c-1.933-1.428-5.622-6.606-1.054-10.356c4.567-3.75,5.973-5.715,9.31-3.571
- c3.339,2.143,6.149,7.678,3.163,10.534C140.52-25.618,135.951-22.227,132.087-25.083z"/>
- <path fill="#4D423D" d="M132.282-25.326c-1.851-1.371-5.384-6.342-1.008-9.941c4.373-3.601,5.72-5.486,8.915-3.43
- c3.197,2.059,5.889,7.372,3.029,10.114C140.359-25.839,135.983-22.583,132.282-25.326z"/>
- <path fill="#443D39" d="M132.479-25.568c-1.77-1.313-5.146-6.078-0.964-9.527c4.18-3.45,5.467-5.258,8.521-3.286
- c3.057,1.972,5.629,7.063,2.896,9.692C140.197-26.061,136.015-22.939,132.479-25.568z"/>
- <path fill="#3A3534" d="M132.674-25.811c-1.688-1.258-4.908-5.814-0.919-9.114c3.987-3.3,5.214-5.028,8.127-3.144
- c2.915,1.887,5.368,6.758,2.763,9.271C140.036-26.282,136.047-23.297,132.674-25.811z"/>
- <path fill="#252423" d="M132.87-26.054c-1.606-1.2-4.671-5.55-0.875-8.7c3.794-3.15,4.962-4.8,7.732-3
- c2.774,1.8,5.109,6.45,2.629,8.85C139.875-26.504,136.079-23.654,132.87-26.054z"/>
- <path d="M133.066-26.297c-1.524-1.143-4.433-5.286-0.83-8.286c3.601-3,4.709-4.571,7.339-2.856
- c2.633,1.713,4.849,6.143,2.495,8.428C139.714-26.725,136.111-24.011,133.066-26.297z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M133.63-48.654c-4.402-1.32-8.75-5.5-5.25-12.25s9.75-11.75,15-10.25s6.422,7.045,2.75,11
- C142.88-56.654,141.13-46.404,133.63-48.654z"/>
- <path fill="#82472C" d="M133.756-48.948c-4.287-1.286-8.521-5.355-5.112-11.93c3.408-6.574,9.495-11.442,14.607-9.981
- c5.113,1.459,6.254,6.86,2.679,10.711C142.765-56.738,141.06-46.756,133.756-48.948z"/>
- <path fill="#7D4930" d="M133.883-49.242c-4.173-1.252-8.293-5.213-4.977-11.609c3.317-6.397,9.241-11.137,14.217-9.715
- c4.976,1.422,6.086,6.678,2.605,10.426C142.65-56.824,140.991-47.109,133.883-49.242z"/>
- <path fill="#794B34" d="M134.009-49.535c-4.058-1.217-8.064-5.068-4.839-11.291c3.227-6.221,8.986-10.828,13.824-9.445
- c4.839,1.381,5.919,6.492,2.534,10.138C142.533-56.909,140.921-47.462,134.009-49.535z"/>
- <path fill="#754C37" d="M134.135-49.83c-3.942-1.183-7.836-4.925-4.701-10.97c3.135-6.045,8.731-10.522,13.432-9.179
- c4.702,1.343,5.751,6.309,2.463,9.85C142.418-56.993,140.852-47.814,134.135-49.83z"/>
- <path fill="#704C3A" d="M134.261-50.124c-3.826-1.147-7.606-4.78-4.563-10.649c3.043-5.867,8.477-10.215,13.04-8.91
- c4.564,1.304,5.583,6.125,2.391,9.563C142.303-57.079,140.781-48.168,134.261-50.124z"/>
- <path fill="#6B4C3C" d="M134.388-50.418c-3.713-1.114-7.379-4.639-4.428-10.33c2.952-5.691,8.223-9.908,12.648-8.645
- c4.428,1.266,5.416,5.941,2.319,9.276C142.188-57.163,140.712-48.52,134.388-50.418z"/>
- <path fill="#664C3E" d="M134.514-50.711c-3.598-1.079-7.149-4.494-4.29-10.009c2.86-5.517,7.968-9.603,12.257-8.376
- c4.29,1.226,5.247,5.757,2.246,8.988C142.071-57.248,140.643-48.873,134.514-50.711z"/>
- <path fill="#614B3F" d="M134.64-51.005c-3.482-1.044-6.921-4.351-4.152-9.688c2.769-5.34,7.713-9.295,11.864-8.108
- c4.152,1.187,5.08,5.573,2.175,8.7C141.956-57.333,140.572-49.227,134.64-51.005z"/>
- <path fill="#5B4940" d="M134.766-51.299c-3.366-1.01-6.692-4.207-4.015-9.37c2.677-5.163,7.458-8.987,11.473-7.84
- c4.015,1.147,4.911,5.389,2.103,8.414C141.841-57.418,140.503-49.578,134.766-51.299z"/>
- <path fill="#54463F" d="M134.893-51.593c-3.252-0.976-6.465-4.063-3.879-9.05c2.586-4.986,7.203-8.681,11.081-7.572
- c3.878,1.107,4.744,5.205,2.03,8.126C141.726-57.503,140.434-49.932,134.893-51.593z"/>
- <path fill="#4D423D" d="M135.019-51.887c-3.137-0.941-6.235-3.92-3.741-8.729c2.494-4.811,6.948-8.374,10.688-7.305
- c3.741,1.069,4.577,5.021,1.959,7.839C141.61-57.588,140.363-50.284,135.019-51.887z"/>
- <path fill="#443D39" d="M135.145-52.182c-3.021-0.906-6.007-3.775-3.604-8.409c2.403-4.634,6.693-8.066,10.297-7.037
- c3.604,1.028,4.408,4.837,1.887,7.552C141.495-57.672,140.294-50.636,135.145-52.182z"/>
- <path fill="#3A3534" d="M135.271-52.475c-2.906-0.873-5.778-3.633-3.467-8.09c2.313-4.457,6.439-7.759,9.905-6.769
- c3.467,0.991,4.241,4.653,1.815,7.265C141.379-57.757,140.225-50.988,135.271-52.475z"/>
- <path fill="#252423" d="M135.398-52.77c-2.792-0.838-5.55-3.487-3.33-7.77c2.221-4.281,6.185-7.452,9.514-6.501
- c3.329,0.951,4.072,4.47,1.742,6.978C141.264-57.842,140.154-51.342,135.398-52.77z"/>
- <path d="M135.524-53.063c-2.677-0.804-5.321-3.346-3.192-7.449c2.129-4.105,5.93-7.146,9.121-6.233
- c3.192,0.912,3.905,4.285,1.671,6.688C141.149-57.927,140.085-51.693,135.524-53.063z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M131.13-98.154c-3.604-6.007-1.5-9.75,4.75-11s11.5,1,14.5,5.25s-2,14.25-8.25,14
- S135.63-90.654,131.13-98.154z"/>
- <path fill="#82472C" d="M131.42-98.217c-3.503-5.838-1.459-9.477,4.616-10.691c6.075-1.214,11.178,0.973,14.094,5.104
- s-1.944,13.851-8.019,13.606C136.036-90.441,135.793-90.927,131.42-98.217z"/>
- <path fill="#7D4930" d="M131.709-98.279c-3.401-5.671-1.416-9.203,4.483-10.384c5.899-1.18,10.855,0.944,13.688,4.956
- c2.832,4.012-1.888,13.451-7.788,13.215C136.193-90.729,135.957-91.201,131.709-98.279z"/>
- <path fill="#794B34" d="M131.999-98.343c-3.301-5.502-1.374-8.931,4.351-10.075c5.724-1.145,10.532,0.917,13.28,4.809
- c2.748,3.894-1.832,13.051-7.557,12.823C136.35-91.016,136.12-91.475,131.999-98.343z"/>
- <path fill="#754C37" d="M132.288-98.406c-3.199-5.332-1.332-8.656,4.218-9.766c5.549-1.11,10.21,0.887,12.874,4.661
- s-1.775,12.651-7.325,12.43C136.506-91.303,136.284-91.747,132.288-98.406z"/>
- <path fill="#704C3A" d="M132.578-98.469c-3.099-5.165-1.29-8.383,4.084-9.458c5.374-1.075,9.889,0.86,12.469,4.514
- c2.579,3.655-1.721,12.253-7.095,12.038C136.662-91.59,136.447-92.021,132.578-98.469z"/>
- <path fill="#6B4C3C" d="M132.867-98.532c-2.997-4.997-1.248-8.11,3.951-9.149c5.199-1.041,9.566,0.832,12.063,4.367
- c2.494,3.535-1.664,11.853-6.863,11.645C136.819-91.878,136.61-92.293,132.867-98.532z"/>
- <path fill="#664C3E" d="M133.157-98.596c-2.896-4.828-1.206-7.836,3.818-8.842c5.023-1.004,9.243,0.805,11.655,4.221
- c2.41,3.416-1.608,11.453-6.632,11.252C136.974-92.166,136.775-92.566,133.157-98.596z"/>
- <path fill="#614B3F" d="M133.446-98.658c-2.795-4.66-1.164-7.564,3.686-8.533c4.848-0.97,8.921,0.775,11.249,4.072
- c2.327,3.296-1.552,11.055-6.401,10.86C137.132-92.452,136.938-92.84,133.446-98.658z"/>
- <path fill="#5B4940" d="M133.736-98.723c-2.694-4.49-1.122-7.289,3.552-8.225c4.673-0.935,8.599,0.748,10.843,3.926
- c2.242,3.178-1.496,10.654-6.17,10.468C137.288-92.74,137.102-93.113,133.736-98.723z"/>
- <path fill="#54463F" d="M134.026-98.785c-2.593-4.322-1.08-7.017,3.42-7.917c4.497-0.899,8.275,0.72,10.436,3.778
- c2.158,3.059-1.439,10.255-5.938,10.076C137.445-93.027,137.265-93.387,134.026-98.785z"/>
- <path fill="#4D423D" d="M134.316-98.848c-2.492-4.154-1.038-6.744,3.286-7.608c4.322-0.864,7.953,0.692,10.029,3.631
- c2.074,2.939-1.384,9.856-5.707,9.683C137.602-93.314,137.428-93.66,134.316-98.848z"/>
- <path fill="#443D39" d="M134.605-98.911c-2.391-3.985-0.996-6.471,3.153-7.3c4.147-0.83,7.631,0.665,9.624,3.484
- c1.989,2.819-1.328,9.457-5.477,9.291C137.758-93.602,137.592-93.934,134.605-98.911z"/>
- <path fill="#3A3534" d="M134.895-98.975c-2.29-3.816-0.954-6.196,3.02-6.99c3.972-0.795,7.309,0.636,9.218,3.337
- c1.905,2.701-1.272,9.058-5.246,8.897C137.914-93.889,137.755-94.207,134.895-98.975z"/>
- <path fill="#252423" d="M135.184-99.037c-2.188-3.648-0.912-5.923,2.888-6.683c3.796-0.761,6.985,0.608,8.811,3.19
- c1.821,2.581-1.216,8.656-5.015,8.506C138.071-94.176,137.919-94.48,135.184-99.037z"/>
- <path d="M135.474-99.1c-2.088-3.48-0.87-5.65,2.754-6.375c3.621-0.726,6.663,0.58,8.404,3.043
- c1.737,2.463-1.16,8.258-4.783,8.113C138.228-94.463,138.082-94.753,135.474-99.1z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M5.713-22.654c-2.75-2-8-9.25-1.5-14.5s8.5-8,13.25-5s8.75,10.75,4.5,14.75S11.213-18.654,5.713-22.654
- z"/>
- <path fill="#82472C" d="M5.909-22.896c-2.668-1.943-7.763-8.985-1.456-14.086c6.307-5.1,8.247-7.771,12.856-4.856
- c4.609,2.914,8.49,10.442,4.367,14.329C17.552-23.625,11.245-19.011,5.909-22.896z"/>
- <path fill="#7D4930" d="M6.104-23.139c-2.586-1.887-7.524-8.723-1.41-13.672c6.113-4.95,7.994-7.543,12.462-4.715
- c4.468,2.83,8.23,10.137,4.232,13.907C17.391-23.848,11.277-19.368,6.104-23.139z"/>
- <path fill="#794B34" d="M6.3-23.382c-2.505-1.829-7.287-8.457-1.366-13.257c5.92-4.801,7.742-7.314,12.068-4.571
- s7.969,9.829,4.099,13.485C17.23-24.068,11.31-19.725,6.3-23.382z"/>
- <path fill="#754C37" d="M6.496-23.626c-2.423-1.771-7.049-8.192-1.322-12.843s7.489-7.086,11.674-4.428
- c4.185,2.656,7.709,9.521,3.965,13.063C17.069-24.29,11.342-20.083,6.496-23.626z"/>
- <path fill="#704C3A" d="M6.692-23.868c-2.341-1.714-6.811-7.929-1.277-12.429c5.534-4.5,7.236-6.857,11.281-4.285
- c4.043,2.571,7.449,9.214,3.831,12.643C16.908-24.511,11.374-20.439,6.692-23.868z"/>
- <path fill="#6B4C3C" d="M6.887-24.111c-2.259-1.656-6.573-7.664-1.232-12.015c5.34-4.351,6.983-6.628,10.886-4.144
- c3.902,2.486,7.189,8.908,3.697,12.222C16.747-24.732,11.406-20.797,6.887-24.111z"/>
- <path fill="#664C3E" d="M7.083-24.354c-2.177-1.601-6.335-7.4-1.188-11.601s6.73-6.399,10.493-4
- c3.761,2.4,6.929,8.601,3.563,11.8C16.586-24.954,11.439-21.154,7.083-24.354z"/>
- <path fill="#614B3F" d="M7.279-24.598c-2.096-1.543-6.097-7.135-1.143-11.186c4.954-4.05,6.478-6.172,10.099-3.857
- c3.62,2.314,6.668,8.293,3.43,11.379C16.425-25.175,11.471-21.511,7.279-24.598z"/>
- <path fill="#5B4940" d="M7.475-24.84c-2.014-1.485-5.86-6.871-1.099-10.771c4.761-3.899,6.226-5.942,9.705-3.714
- c3.479,2.229,6.409,7.985,3.296,10.957C16.264-25.396,11.503-21.868,7.475-24.84z"/>
- <path fill="#54463F" d="M7.671-25.083c-1.932-1.428-5.622-6.606-1.054-10.356c4.567-3.75,5.972-5.715,9.311-3.571
- c3.338,2.143,6.148,7.678,3.162,10.534C16.103-25.618,11.535-22.227,7.671-25.083z"/>
- <path fill="#4D423D" d="M7.866-25.326c-1.85-1.371-5.384-6.342-1.009-9.941c4.375-3.601,5.72-5.486,8.917-3.43
- c3.197,2.059,5.888,7.372,3.028,10.114C15.942-25.839,11.568-22.583,7.866-25.326z"/>
- <path fill="#443D39" d="M8.062-25.568c-1.769-1.313-5.146-6.078-0.965-9.527c4.181-3.45,5.467-5.258,8.523-3.286
- c3.055,1.972,5.628,7.063,2.895,9.692C15.781-26.061,11.6-22.939,8.062-25.568z"/>
- <path fill="#3A3534" d="M8.258-25.811c-1.687-1.258-4.908-5.814-0.92-9.114s5.215-5.028,8.129-3.144
- c2.915,1.887,5.368,6.758,2.761,9.271C15.62-26.282,11.632-23.297,8.258-25.811z"/>
- <path fill="#252423" d="M8.454-26.054c-1.605-1.2-4.67-5.55-0.875-8.7c3.794-3.15,4.961-4.8,7.735-3
- c2.773,1.8,5.107,6.45,2.627,8.85C15.459-26.504,11.664-23.654,8.454-26.054z"/>
- <path d="M8.65-26.297c-1.523-1.143-4.433-5.286-0.831-8.286s4.709-4.571,7.341-2.856c2.632,1.713,4.848,6.143,2.493,8.428
- C15.298-26.725,11.696-24.011,8.65-26.297z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M9.213-48.654c-4.402-1.32-8.75-5.5-5.25-12.25s9.75-11.75,15-10.25s6.423,7.045,2.75,11
- C18.463-56.654,16.713-46.404,9.213-48.654z"/>
- <path fill="#82472C" d="M9.339-48.948c-4.287-1.286-8.521-5.355-5.113-11.93c3.409-6.574,9.496-11.442,14.608-9.981
- c5.113,1.459,6.255,6.86,2.678,10.711C18.347-56.738,16.643-46.756,9.339-48.948z"/>
- <path fill="#7D4930" d="M9.466-49.242c-4.172-1.252-8.293-5.213-4.976-11.609c3.317-6.397,9.241-11.137,14.216-9.715
- c4.976,1.422,6.087,6.678,2.606,10.426C18.233-56.824,16.574-47.109,9.466-49.242z"/>
- <path fill="#794B34" d="M9.592-49.535c-4.057-1.217-8.064-5.068-4.839-11.291c3.226-6.221,8.986-10.828,13.824-9.445
- c4.839,1.381,5.92,6.492,2.535,10.138C18.117-56.909,16.504-47.462,9.592-49.535z"/>
- <path fill="#754C37" d="M9.718-49.83c-3.942-1.183-7.835-4.925-4.701-10.97c3.134-6.045,8.731-10.522,13.432-9.179
- c4.701,1.343,5.752,6.309,2.463,9.85C18.002-56.993,16.434-47.814,9.718-49.83z"/>
- <path fill="#704C3A" d="M9.845-50.124c-3.828-1.147-7.607-4.78-4.564-10.649c3.042-5.867,8.477-10.215,13.041-8.91
- c4.564,1.304,5.584,6.125,2.391,9.563C17.886-57.079,16.365-48.168,9.845-50.124z"/>
- <path fill="#6B4C3C" d="M9.971-50.418c-3.712-1.114-7.378-4.639-4.427-10.33s8.222-9.908,12.648-8.645
- c4.427,1.266,5.416,5.941,2.319,9.276C17.771-57.163,16.295-48.52,9.971-50.418z"/>
- <path fill="#664C3E" d="M10.097-50.711C6.5-51.79,2.948-55.205,5.807-60.72c2.86-5.517,7.967-9.603,12.257-8.376
- c4.29,1.226,5.248,5.757,2.247,8.988C17.655-57.248,16.225-48.873,10.097-50.711z"/>
- <path fill="#614B3F" d="M10.223-51.005c-3.482-1.044-6.921-4.351-4.152-9.688c2.768-5.34,7.712-9.295,11.864-8.108
- c4.153,1.187,5.081,5.573,2.176,8.7C17.54-57.333,16.155-49.227,10.223-51.005z"/>
- <path fill="#5B4940" d="M10.35-51.299c-3.367-1.01-6.693-4.207-4.016-9.37c2.677-5.163,7.458-8.987,11.473-7.84
- c4.016,1.147,4.913,5.389,2.104,8.414C17.424-57.418,16.086-49.578,10.35-51.299z"/>
- <path fill="#54463F" d="M10.476-51.593c-3.252-0.976-6.464-4.063-3.878-9.05c2.585-4.986,7.203-8.681,11.081-7.572
- c3.879,1.107,4.745,5.205,2.032,8.126C17.309-57.503,16.016-49.932,10.476-51.593z"/>
- <path fill="#4D423D" d="M10.602-51.887c-3.137-0.941-6.235-3.92-3.741-8.729c2.494-4.811,6.948-8.374,10.688-7.305
- c3.742,1.069,4.577,5.021,1.96,7.839C17.194-57.588,15.946-50.284,10.602-51.887z"/>
- <path fill="#443D39" d="M10.729-52.182c-3.022-0.906-6.007-3.775-3.604-8.409c2.402-4.634,6.693-8.066,10.297-7.037
- c3.605,1.03,4.41,4.837,1.888,7.552C17.079-57.672,15.877-50.636,10.729-52.182z"/>
- <path fill="#3A3534" d="M10.855-52.475c-2.907-0.873-5.779-3.633-3.467-8.09c2.311-4.457,6.438-7.759,9.905-6.769
- c3.468,0.991,4.242,4.653,1.816,7.265C16.963-57.757,15.807-50.988,10.855-52.475z"/>
- <path fill="#252423" d="M10.981-52.77c-2.792-0.838-5.55-3.487-3.33-7.77c2.22-4.281,6.184-7.452,9.513-6.501
- c3.331,0.951,4.074,4.47,1.745,6.978C16.848-57.842,15.738-51.342,10.981-52.77z"/>
- <path d="M11.108-53.063c-2.677-0.804-5.321-3.346-3.192-7.449c2.128-4.105,5.929-7.146,9.121-6.233
- c3.193,0.912,3.906,4.285,1.673,6.688C16.733-57.927,15.668-51.693,11.108-53.063z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M6.713-98.154c-3.604-6.007-1.5-9.75,4.75-11s11.5,1,14.5,5.25s-2,14.25-8.25,14
- S11.213-90.654,6.713-98.154z"/>
- <path fill="#82472C" d="M7.003-98.217c-3.503-5.838-1.458-9.477,4.616-10.691c6.075-1.215,11.178,0.973,14.094,5.104
- s-1.944,13.851-8.019,13.606C11.619-90.441,11.377-90.927,7.003-98.217z"/>
- <path fill="#7D4930" d="M7.292-98.279c-3.401-5.671-1.416-9.203,4.484-10.384c5.9-1.18,10.855,0.944,13.687,4.956
- s-1.888,13.451-7.787,13.215C11.776-90.729,11.54-91.201,7.292-98.279z"/>
- <path fill="#794B34" d="M7.582-98.343c-3.301-5.502-1.374-8.931,4.35-10.075c5.725-1.145,10.533,0.917,13.281,4.809
- c2.748,3.894-1.832,13.051-7.556,12.823C11.932-91.016,11.704-91.475,7.582-98.343z"/>
- <path fill="#754C37" d="M7.872-98.406c-3.2-5.332-1.333-8.656,4.217-9.766c5.549-1.11,10.21,0.887,12.874,4.661
- s-1.776,12.651-7.325,12.43C12.089-91.303,11.867-91.747,7.872-98.406z"/>
- <path fill="#704C3A" d="M8.161-98.469c-3.099-5.165-1.29-8.383,4.084-9.458c5.374-1.075,9.888,0.86,12.468,4.514
- c2.58,3.655-1.72,12.253-7.094,12.038C12.245-91.59,12.03-92.021,8.161-98.469z"/>
- <path fill="#6B4C3C" d="M8.451-98.532c-2.998-4.997-1.248-8.11,3.951-9.149c5.199-1.041,9.566,0.832,12.061,4.367
- c2.496,3.535-1.663,11.853-6.862,11.645C12.402-91.878,12.194-92.293,8.451-98.532z"/>
- <path fill="#664C3E" d="M8.741-98.596c-2.897-4.828-1.207-7.836,3.817-8.842c5.024-1.004,9.244,0.805,11.655,4.221
- c2.412,3.416-1.607,11.453-6.631,11.252C12.559-92.165,12.358-92.566,8.741-98.596z"/>
- <path fill="#614B3F" d="M9.031-98.658c-2.796-4.66-1.165-7.564,3.684-8.533c4.849-0.97,8.921,0.775,11.249,4.072
- c2.328,3.296-1.551,11.055-6.4,10.86C12.715-92.452,12.521-92.84,9.031-98.658z"/>
- <path fill="#5B4940" d="M9.32-98.723c-2.695-4.49-1.122-7.289,3.551-8.225c4.673-0.935,8.599,0.748,10.842,3.926
- c2.244,3.178-1.495,10.654-6.169,10.468C12.872-92.74,12.685-93.113,9.32-98.723z"/>
- <path fill="#54463F" d="M9.61-98.785c-2.594-4.322-1.08-7.017,3.418-7.917c4.498-0.899,8.277,0.72,10.436,3.778
- c2.16,3.059-1.439,10.255-5.938,10.076C13.028-93.027,12.848-93.387,9.61-98.785z"/>
- <path fill="#4D423D" d="M9.9-98.848c-2.493-4.154-1.038-6.744,3.285-7.608c4.323-0.864,7.954,0.692,10.029,3.631
- c2.075,2.939-1.383,9.856-5.707,9.683C13.185-93.314,13.012-93.66,9.9-98.848z"/>
- <path fill="#443D39" d="M10.19-98.911c-2.392-3.985-0.996-6.471,3.151-7.3c4.148-0.83,7.632,0.665,9.623,3.484
- s-1.327,9.457-5.475,9.291S13.175-93.934,10.19-98.911z"/>
- <path fill="#3A3534" d="M10.479-98.975c-2.291-3.816-0.954-6.196,3.019-6.99c3.973-0.795,7.31,0.636,9.216,3.337
- c1.907,2.701-1.271,9.058-5.244,8.897C13.498-93.889,13.339-94.207,10.479-98.975z"/>
- <path fill="#252423" d="M10.769-99.037c-2.19-3.648-0.912-5.923,2.885-6.683c3.797-0.761,6.988,0.608,8.81,3.19
- c1.823,2.581-1.214,8.656-5.013,8.506C13.654-94.176,13.503-94.48,10.769-99.037z"/>
- <path d="M11.059-99.1c-2.089-3.48-0.87-5.65,2.752-6.375c3.622-0.726,6.665,0.58,8.403,3.043
- c1.739,2.463-1.158,8.258-4.781,8.113C13.811-94.463,13.666-94.753,11.059-99.1z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M40.213-7.654c-3.956-3.107-6.75-1.5-8.25-7.25s-5.5-8.25-0.25-12s6.25-9,13.75-4.5s10,10.75,5.5,16.25
- S43.713-4.904,40.213-7.654z"/>
- <path fill="#82472C" d="M40.195-8.104c-3.816-2.996-6.513-1.445-7.96-6.989s-5.306-7.954-0.241-11.569
- c5.065-3.615,6.03-8.677,13.267-4.339c7.236,4.339,9.648,10.364,5.307,15.667C46.226-10.031,43.572-5.451,40.195-8.104z"/>
- <path fill="#7D4930" d="M40.178-8.551c-3.678-2.885-6.274-1.393-7.67-6.729c-1.394-5.338-5.113-7.658-0.231-11.14
- c4.88-3.479,5.81-8.354,12.782-4.177c6.972,4.177,9.296,9.979,5.112,15.083C45.988-10.408,43.432-5.999,40.178-8.551z"/>
- <path fill="#794B34" d="M40.16-9c-3.538-2.773-6.037-1.338-7.379-6.469c-1.342-5.131-4.92-7.361-0.224-10.708
- c4.695-3.347,5.59-8.031,12.299-4.017c6.708,4.017,8.944,9.592,4.919,14.5S43.291-6.546,40.16-9z"/>
- <path fill="#754C37" d="M40.143-9.449c-3.399-2.662-5.8-1.283-7.089-6.209c-1.289-4.924-4.726-7.064-0.215-10.277
- c4.511-3.211,5.37-7.707,11.814-3.854s8.593,9.207,4.727,13.917C45.513-11.161,43.151-7.094,40.143-9.449z"/>
- <path fill="#704C3A" d="M40.125-9.896c-3.26-2.551-5.563-1.23-6.799-5.949c-1.236-4.719-4.532-6.77-0.205-9.846
- c4.326-3.078,5.149-7.385,11.33-3.692c6.181,3.692,8.241,8.819,4.532,13.333C45.276-11.539,43.01-7.641,40.125-9.896z"/>
- <path fill="#6B4C3C" d="M40.108-10.346c-3.121-2.439-5.325-1.178-6.508-5.688c-1.184-4.511-4.339-6.473-0.197-9.415
- c4.141-2.941,4.93-7.062,10.847-3.531c5.917,3.531,7.889,8.436,4.339,12.75C45.038-11.916,42.868-8.189,40.108-10.346z"/>
- <path fill="#664C3E" d="M40.09-10.795c-2.981-2.327-5.087-1.123-6.218-5.428c-1.131-4.305-4.146-6.178-0.188-8.984
- c3.957-2.809,4.71-6.738,10.363-3.37c5.652,3.37,7.537,8.05,4.145,12.167C44.8-12.292,42.728-8.736,40.09-10.795z"/>
- <path fill="#614B3F" d="M40.072-11.244c-2.843-2.216-4.85-1.068-5.928-5.168c-1.078-4.099-3.952-5.881-0.18-8.554
- s4.491-6.416,9.88-3.208c5.389,3.208,7.185,7.663,3.951,11.583S42.587-9.283,40.072-11.244z"/>
- <path fill="#5B4940" d="M40.055-11.691c-2.703-2.104-4.612-1.016-5.637-4.908c-1.026-3.893-3.759-5.584-0.172-8.123
- c3.588-2.539,4.271-6.094,9.396-3.047c5.124,3.047,6.833,7.277,3.758,11C44.325-13.046,42.446-9.831,40.055-11.691z"/>
- <path fill="#54463F" d="M40.037-12.141c-2.564-1.992-4.375-0.961-5.347-4.647c-0.973-3.687-3.565-5.289-0.162-7.692
- c3.402-2.403,4.051-5.77,8.912-2.885c4.86,2.885,6.48,6.891,3.564,10.417C44.088-13.423,42.306-10.378,40.037-12.141z"/>
- <path fill="#4D423D" d="M40.02-12.59c-2.425-1.881-4.138-0.907-5.057-4.387c-0.92-3.479-3.372-4.992-0.153-7.262
- c3.218-2.27,3.831-5.445,8.429-2.723c4.597,2.723,6.129,6.505,3.37,9.833C43.851-13.8,42.165-10.925,40.02-12.59z"/>
- <path fill="#443D39" d="M40.002-13.039c-2.286-1.77-3.9-0.854-4.767-4.127s-3.178-4.695-0.145-6.831
- c3.033-2.135,3.611-5.123,7.944-2.562c4.333,2.561,5.777,6.119,3.178,9.25S42.024-11.473,40.002-13.039z"/>
- <path fill="#3A3534" d="M39.984-13.486c-2.146-1.658-3.662-0.801-4.477-3.867c-0.814-3.066-2.984-4.4-0.136-6.4
- c2.848-2,3.392-4.8,7.461-2.4c4.069,2.4,5.426,5.733,2.984,8.668C43.375-14.554,41.883-12.021,39.984-13.486z"/>
- <path fill="#252423" d="M39.967-13.936c-2.008-1.547-3.425-0.746-4.186-3.606c-0.762-2.86-2.791-4.104-0.127-5.969
- c2.663-1.866,3.171-4.478,6.977-2.239c3.805,2.239,5.073,5.348,2.79,8.083S41.742-12.568,39.967-13.936z"/>
- <path d="M39.949-14.385c-1.868-1.436-3.188-0.692-3.896-3.346c-0.709-2.654-2.598-3.809-0.118-5.539
- c2.479-1.73,2.951-4.153,6.493-2.076c3.541,2.076,4.722,4.961,2.597,7.5S41.602-13.115,39.949-14.385z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M40.213-132.07c-3.956-3.107-6.75-1.5-8.25-7.25s-5.5-8.25-0.25-12s6.25-9,13.75-4.5
- s10,10.75,5.5,16.25S43.713-129.32,40.213-132.07z"/>
- <path fill="#82472C" d="M40.195-132.52c-3.816-2.996-6.513-1.446-7.96-6.989s-5.306-7.953-0.241-11.568
- c5.065-3.616,6.03-8.678,13.267-4.34c7.236,4.34,9.648,10.365,5.307,15.667C46.226-134.447,43.572-129.868,40.195-132.52z"/>
- <path fill="#7D4930" d="M40.178-132.968c-3.678-2.886-6.274-1.394-7.67-6.729c-1.394-5.337-5.113-7.656-0.231-11.139
- c4.88-3.48,5.81-8.354,12.782-4.177c6.972,4.177,9.296,9.979,5.112,15.084C45.988-134.824,43.432-130.415,40.178-132.968z"/>
- <path fill="#794B34" d="M40.16-133.417c-3.538-2.772-6.037-1.338-7.379-6.469c-1.342-5.132-4.92-7.361-0.224-10.707
- c4.695-3.347,5.59-8.031,12.299-4.017c6.708,4.017,8.944,9.592,4.919,14.5S43.291-130.962,40.16-133.417z"/>
- <path fill="#754C37" d="M40.143-133.865c-3.399-2.662-5.8-1.283-7.089-6.209c-1.289-4.925-4.726-7.064-0.215-10.275
- c4.511-3.213,5.37-7.709,11.814-3.854s8.593,9.206,4.727,13.917C45.513-135.577,43.151-131.511,40.143-133.865z"/>
- <path fill="#704C3A" d="M40.125-134.314c-3.26-2.551-5.563-1.229-6.799-5.948c-1.236-4.72-4.532-6.771-0.205-9.847
- c4.326-3.076,5.149-7.385,11.33-3.692c6.181,3.692,8.241,8.819,4.532,13.334C45.276-135.955,43.01-132.059,40.125-134.314z"/>
- <path fill="#6B4C3C" d="M40.108-134.763c-3.121-2.439-5.325-1.177-6.508-5.688c-1.184-4.511-4.339-6.473-0.197-9.415
- c4.141-2.942,4.93-7.063,10.847-3.53c5.917,3.531,7.889,8.436,4.339,12.75C45.038-136.332,42.868-132.605,40.108-134.763z"/>
- <path fill="#664C3E" d="M40.09-135.212c-2.981-2.326-5.087-1.123-6.218-5.429c-1.131-4.305-4.146-6.176-0.188-8.983
- c3.957-2.81,4.71-6.737,10.363-3.369c5.652,3.369,7.537,8.05,4.145,12.166C44.8-136.708,42.728-133.152,40.09-135.212z"/>
- <path fill="#614B3F" d="M40.072-135.66c-2.843-2.216-4.85-1.068-5.928-5.168c-1.078-4.099-3.952-5.881-0.18-8.554
- s4.491-6.416,9.88-3.207c5.389,3.207,7.185,7.662,3.951,11.582C44.563-137.086,42.587-133.7,40.072-135.66z"/>
- <path fill="#5B4940" d="M40.055-136.107c-2.703-2.104-4.612-1.017-5.637-4.908c-1.026-3.894-3.759-5.584-0.172-8.123
- c3.588-2.538,4.271-6.092,9.396-3.047c5.124,3.047,6.833,7.276,3.758,11C44.325-137.461,42.446-134.247,40.055-136.107z"/>
- <path fill="#54463F" d="M40.037-136.559c-2.564-1.991-4.375-0.961-5.347-4.646c-0.973-3.688-3.565-5.288-0.162-7.691
- c3.402-2.404,4.051-5.771,8.912-2.886c4.86,2.886,6.48,6.892,3.564,10.417C44.088-137.839,42.306-134.794,40.037-136.559z"/>
- <path fill="#4D423D" d="M40.02-137.007c-2.425-1.881-4.138-0.906-5.057-4.388c-0.92-3.479-3.372-4.991-0.153-7.262
- c3.218-2.27,3.831-5.445,8.429-2.723c4.597,2.723,6.129,6.505,3.37,9.833C43.851-138.216,42.165-135.342,40.02-137.007z"/>
- <path fill="#443D39" d="M40.002-137.455c-2.286-1.77-3.9-0.854-4.767-4.127c-0.867-3.271-3.178-4.695-0.145-6.831
- c3.033-2.135,3.611-5.123,7.944-2.562s5.777,6.119,3.178,9.25C43.613-138.593,42.024-135.891,40.002-137.455z"/>
- <path fill="#3A3534" d="M39.984-137.902c-2.146-1.658-3.662-0.802-4.477-3.867c-0.815-3.066-2.984-4.4-0.136-6.4
- c2.848-2,3.392-4.799,7.461-2.398c4.069,2.399,5.426,5.732,2.984,8.666C43.375-138.97,41.883-136.438,39.984-137.902z"/>
- <path fill="#252423" d="M39.967-138.354c-2.008-1.547-3.425-0.746-4.186-3.605c-0.762-2.859-2.791-4.104-0.127-5.969
- c2.663-1.866,3.171-4.479,6.977-2.239c3.805,2.239,5.073,5.349,2.79,8.084S41.742-136.984,39.967-138.354z"/>
- <path d="M39.949-138.802c-1.868-1.435-3.188-0.691-3.896-3.347c-0.709-2.653-2.598-3.808-0.118-5.537
- c2.479-1.731,2.951-4.153,6.493-2.077c3.541,2.077,4.722,4.961,2.597,7.5C42.9-139.725,41.602-137.532,39.949-138.802z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M24.713-72.154c-2.704-3.604-4.25-8.25-1.75-12s5.75-10.25,11.5-7.5s7.5,7.5,6.25,10.75
- S28.463-67.154,24.713-72.154z"/>
- <path fill="#82472C" d="M24.918-72.418c-2.625-3.5-4.125-8.008-1.698-11.648c2.427-3.64,5.581-9.949,11.162-7.279
- c5.582,2.669,7.28,7.279,6.067,10.435C39.235-77.756,28.558-67.564,24.918-72.418z"/>
- <path fill="#7D4930" d="M25.124-72.682c-2.545-3.395-4-7.767-1.647-11.297c2.353-3.529,5.413-9.647,10.825-7.06
- s7.06,7.06,5.883,10.119C39.008-77.859,28.654-67.977,25.124-72.682z"/>
- <path fill="#794B34" d="M25.329-72.945c-2.466-3.289-3.876-7.524-1.596-10.945c2.28-3.418,5.244-9.346,10.487-6.838
- c5.244,2.508,6.84,6.838,5.7,9.804C38.781-77.962,28.749-68.386,25.329-72.945z"/>
- <path fill="#754C37" d="M25.534-73.21c-2.386-3.183-3.751-7.282-1.544-10.591c2.207-3.311,5.075-9.047,10.15-6.62
- c5.075,2.427,6.62,6.62,5.517,9.487C38.554-78.064,28.844-68.797,25.534-73.21z"/>
- <path fill="#704C3A" d="M25.74-73.475c-2.307-3.076-3.626-7.039-1.493-10.238c2.133-3.2,4.907-8.747,9.813-6.398
- c4.906,2.346,6.399,6.398,5.333,9.172C38.327-78.167,28.94-69.208,25.74-73.475z"/>
- <path fill="#6B4C3C" d="M25.945-73.738c-2.228-2.971-3.501-6.798-1.442-9.888c2.06-3.089,4.738-8.444,9.475-6.179
- c4.738,2.265,6.18,6.179,5.15,8.855C38.099-78.27,29.035-69.619,25.945-73.738z"/>
- <path fill="#664C3E" d="M26.151-74.002c-2.148-2.865-3.376-6.555-1.39-9.535c1.987-2.979,4.569-8.145,9.138-5.959
- c4.568,2.186,5.959,5.959,4.966,8.542C37.872-78.371,29.13-70.029,26.151-74.002z"/>
- <path fill="#614B3F" d="M26.356-74.268c-2.069-2.758-3.252-6.313-1.339-9.183c1.913-2.868,4.4-7.844,8.8-5.739
- c4.4,2.105,5.739,5.739,4.783,8.227C37.644-78.475,29.226-70.439,26.356-74.268z"/>
- <path fill="#5B4940" d="M26.562-74.531c-1.99-2.652-3.127-6.07-1.288-8.83s4.231-7.543,8.463-5.52
- c4.23,2.023,5.519,5.52,4.6,7.911C37.416-78.578,29.321-70.852,26.562-74.531z"/>
- <path fill="#54463F" d="M26.767-74.794c-1.91-2.547-3.002-5.829-1.236-8.479c1.766-2.648,4.063-7.242,8.125-5.299
- c4.063,1.942,5.299,5.299,4.416,7.596C37.189-78.682,29.417-71.262,26.767-74.794z"/>
- <path fill="#4D423D" d="M26.972-75.059c-1.831-2.441-2.878-5.588-1.185-8.127c1.693-2.539,3.894-6.94,7.788-5.078
- c3.895,1.861,5.079,5.078,4.233,7.279C36.961-78.783,29.512-71.673,26.972-75.059z"/>
- <path fill="#443D39" d="M27.178-75.323c-1.752-2.336-2.753-5.345-1.134-7.774c1.62-2.43,3.725-6.641,7.451-4.858
- c3.725,1.781,4.858,4.858,4.049,6.964C36.734-78.886,29.608-72.084,27.178-75.323z"/>
- <path fill="#3A3534" d="M27.383-75.587c-1.672-2.229-2.628-5.103-1.083-7.423c1.546-2.318,3.557-6.34,7.113-4.639
- c3.557,1.701,4.639,4.639,3.866,6.648C36.507-78.988,29.703-72.494,27.383-75.587z"/>
- <path fill="#252423" d="M27.588-75.852c-1.593-2.123-2.503-4.86-1.031-7.069c1.473-2.209,3.388-6.039,6.776-4.418
- c3.387,1.62,4.418,4.418,3.682,6.333C36.279-79.091,29.798-72.904,27.588-75.852z"/>
- <path d="M27.794-76.115c-1.514-2.018-2.379-4.619-0.979-6.718c1.399-2.099,3.219-5.737,6.438-4.198
- c3.219,1.539,4.198,4.198,3.499,6.019C36.052-79.193,29.894-73.316,27.794-76.115z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M40.213-41.154c-0.276-1.219-3.75-4-3-6.25s9.25-5.75,12-5.25s8.5,4.75,8.75,9s1.75,7-1.25,8
- S41.463-35.654,40.213-41.154z"/>
- <path fill="#82472C" d="M40.404-41.211c-0.27-1.188-3.66-3.898-2.928-6.09c0.731-2.192,9.028-5.604,11.712-5.116
- c2.685,0.487,8.297,4.629,8.541,8.771c0.244,4.142,1.708,6.821-1.221,7.795C53.581-34.877,41.624-35.852,40.404-41.211z"/>
- <path fill="#7D4930" d="M40.597-41.27c-0.264-1.155-3.57-3.795-2.856-5.93c0.714-2.135,8.807-5.457,11.425-4.98
- c2.618,0.474,8.093,4.507,8.331,8.539c0.237,4.033,1.666,6.644-1.19,7.592C53.451-35.102,41.786-36.05,40.597-41.27z"/>
- <path fill="#794B34" d="M40.788-41.326c-0.257-1.125-3.48-3.693-2.784-5.771c0.695-2.077,8.585-5.309,11.137-4.848
- c2.553,0.463,7.89,4.387,8.121,8.312c0.232,3.924,1.625,6.463-1.16,7.386C53.318-35.325,41.948-36.248,40.788-41.326z"/>
- <path fill="#754C37" d="M40.98-41.384c-0.25-1.095-3.391-3.591-2.712-5.611c0.678-2.021,8.363-5.162,10.85-4.713
- c2.487,0.449,7.686,4.265,7.911,8.08c0.227,3.815,1.583,6.285-1.13,7.183S42.11-36.445,40.98-41.384z"/>
- <path fill="#704C3A" d="M41.171-41.441c-0.242-1.063-3.301-3.488-2.641-5.451c0.66-1.961,8.143-5.016,10.563-4.578
- c2.421,0.436,7.482,4.143,7.702,7.85c0.22,3.707,1.54,6.105-1.101,6.979C53.054-35.771,42.272-36.645,41.171-41.441z"/>
- <path fill="#6B4C3C" d="M41.363-41.499c-0.237-1.032-3.211-3.386-2.569-5.292c0.643-1.904,7.921-4.868,10.275-4.445
- c2.354,0.424,7.278,4.021,7.492,7.62c0.214,3.599,1.498,5.927-1.07,6.774C52.923-35.996,42.434-36.842,41.363-41.499z"/>
- <path fill="#664C3E" d="M41.555-41.557c-0.229-1-3.121-3.284-2.497-5.131c0.624-1.849,7.698-4.723,9.987-4.312
- c2.289,0.41,7.074,3.899,7.282,7.39s1.457,5.748-1.04,6.569C52.79-36.219,42.595-37.04,41.555-41.557z"/>
- <path fill="#614B3F" d="M41.746-41.613c-0.223-0.971-3.031-3.183-2.425-4.973s7.477-4.575,9.7-4.177
- c2.223,0.396,6.87,3.778,7.072,7.159c0.202,3.381,1.415,5.569-1.01,6.365C52.659-36.441,42.757-37.238,41.746-41.613z"/>
- <path fill="#5B4940" d="M41.938-41.671c-0.216-0.938-2.941-3.081-2.353-4.813c0.588-1.731,7.255-4.427,9.412-4.041
- c2.157,0.385,6.667,3.657,6.863,6.93c0.196,3.271,1.373,5.39-0.98,6.16C52.527-36.666,42.918-37.436,41.938-41.671z"/>
- <path fill="#54463F" d="M42.13-41.729c-0.21-0.908-2.852-2.979-2.281-4.653c0.571-1.675,7.033-4.281,9.125-3.908
- c2.091,0.372,6.463,3.536,6.653,6.7s1.331,5.211-0.95,5.956C52.396-36.889,43.08-37.634,42.13-41.729z"/>
- <path fill="#4D423D" d="M42.321-41.786c-0.203-0.876-2.762-2.876-2.209-4.493c0.552-1.617,6.812-4.134,8.837-3.773
- c2.025,0.359,6.26,3.415,6.444,6.47c0.184,3.056,1.289,5.032-0.921,5.751C52.264-37.113,43.242-37.833,42.321-41.786z"/>
- <path fill="#443D39" d="M42.513-41.844c-0.196-0.846-2.672-2.773-2.138-4.333c0.535-1.56,6.591-3.987,8.551-3.64
- c1.959,0.346,6.056,3.293,6.234,6.239c0.178,2.947,1.246,4.854-0.891,5.548C52.132-37.337,43.403-38.029,42.513-41.844z"/>
- <path fill="#3A3534" d="M42.705-41.9c-0.19-0.814-2.582-2.672-2.066-4.175c0.517-1.502,6.369-3.84,8.263-3.505
- c1.894,0.333,5.853,3.172,6.024,6.01c0.173,2.838,1.205,4.676-0.86,5.342C52-37.561,43.566-38.229,42.705-41.9z"/>
- <path fill="#252423" d="M42.897-41.959c-0.184-0.783-2.492-2.568-1.994-4.014c0.499-1.445,6.147-3.693,7.976-3.372
- c1.827,0.321,5.648,3.051,5.814,5.78c0.166,2.729,1.163,4.496-0.83,5.138C51.868-37.784,43.727-38.426,42.897-41.959z"/>
- <path d="M43.088-42.016c-0.177-0.752-2.402-2.467-1.922-3.854c0.48-1.387,5.926-3.546,7.688-3.237
- c1.762,0.309,5.445,2.93,5.605,5.551c0.16,2.621,1.121,4.316-0.801,4.934C51.736-38.006,43.889-38.625,43.088-42.016z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M59.213-23.404c-1.641-1.887-4-5.5,0.25-8s8-7.75,12.5-6.25c4.501,1.5,10.501,7,7.751,14.75
- S64.213-17.654,59.213-23.404z"/>
- <path fill="#82472C" d="M59.532-23.523c-1.588-1.826-3.872-5.324,0.242-7.744c4.114-2.422,7.744-7.502,12.101-6.051
- c4.357,1.452,10.165,6.776,7.504,14.279C76.716-15.537,64.373-17.957,59.532-23.523z"/>
- <path fill="#7D4930" d="M59.852-23.645c-1.536-1.766-3.744-5.147,0.234-7.488c3.979-2.34,7.489-7.255,11.701-5.852
- c4.214,1.404,9.83,6.553,7.256,13.809C76.469-15.921,64.532-18.261,59.852-23.645z"/>
- <path fill="#794B34" d="M60.171-23.763c-1.483-1.706-3.616-4.974,0.227-7.233c3.843-2.26,7.233-7.007,11.302-5.65
- c4.069,1.355,9.494,6.328,7.009,13.336C76.221-16.304,64.693-18.564,60.171-23.763z"/>
- <path fill="#754C37" d="M60.491-23.883c-1.432-1.646-3.489-4.797,0.218-6.979c3.707-2.181,6.978-6.759,10.902-5.451
- c3.926,1.309,9.159,6.104,6.761,12.865C75.974-16.688,64.852-18.868,60.491-23.883z"/>
- <path fill="#704C3A" d="M60.811-24.002c-1.379-1.585-3.361-4.622,0.21-6.723c3.571-2.102,6.722-6.512,10.503-5.252
- c3.782,1.261,8.824,5.883,6.513,12.395C75.726-17.07,65.012-19.171,60.811-24.002z"/>
- <path fill="#6B4C3C" d="M61.13-24.123c-1.326-1.525-3.233-4.445,0.202-6.467c3.436-2.021,6.467-6.264,10.104-5.053
- c3.639,1.213,8.488,5.658,6.266,11.924C75.48-17.454,65.172-19.475,61.13-24.123z"/>
- <path fill="#664C3E" d="M61.449-24.242c-1.273-1.465-3.105-4.27,0.194-6.211c3.3-1.941,6.211-6.017,9.704-4.854
- c3.494,1.166,8.153,5.436,6.018,11.453C75.231-17.837,65.331-19.777,61.449-24.242z"/>
- <path fill="#614B3F" d="M61.769-24.361c-1.222-1.404-2.978-4.095,0.187-5.957c3.163-1.86,5.955-5.77,9.306-4.652
- c3.35,1.117,7.816,5.211,5.77,10.98C74.984-18.221,65.491-20.082,61.769-24.361z"/>
- <path fill="#5B4940" d="M62.088-24.482c-1.169-1.344-2.851-3.918,0.179-5.699c3.027-1.781,5.699-5.522,8.906-4.453
- c3.206,1.068,7.481,4.988,5.521,10.51C74.735-18.604,65.651-20.385,62.088-24.482z"/>
- <path fill="#54463F" d="M62.407-24.602c-1.116-1.284-2.723-3.743,0.17-5.445c2.893-1.701,5.445-5.273,8.508-4.253
- s7.146,4.763,5.274,10.038C74.488-18.986,65.811-20.689,62.407-24.602z"/>
- <path fill="#4D423D" d="M62.728-24.723c-1.064-1.223-2.596-3.566,0.161-5.188c2.757-1.622,5.189-5.026,8.108-4.054
- s6.811,4.54,5.026,9.566C74.24-19.371,65.971-20.992,62.728-24.723z"/>
- <path fill="#443D39" d="M63.047-24.841c-1.012-1.163-2.468-3.392,0.153-4.935c2.621-1.541,4.934-4.778,7.709-3.854
- c2.775,0.925,6.475,4.316,4.779,9.096C73.993-19.754,66.13-21.295,63.047-24.841z"/>
- <path fill="#3A3534" d="M63.366-24.961c-0.96-1.104-2.34-3.216,0.146-4.678c2.485-1.461,4.678-4.531,7.31-3.654
- c2.631,0.877,6.14,4.093,4.531,8.625C73.745-20.137,66.29-21.6,63.366-24.961z"/>
- <path fill="#252423" d="M63.686-25.081c-0.907-1.042-2.212-3.04,0.138-4.422c2.35-1.382,4.423-4.284,6.91-3.455
- s5.804,3.869,4.284,8.154C73.498-20.521,66.449-21.902,63.686-25.081z"/>
- <path d="M64.005-25.201c-0.854-0.982-2.084-2.865,0.13-4.167s4.167-4.036,6.511-3.255c2.344,0.781,5.469,3.646,4.036,7.684
- C73.25-20.904,66.609-22.206,64.005-25.201z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M50.463-75.154c-3.844-4.164-5.75-5.5-5-11.25s-0.75-10.25,8.25-10.5s15.25,1.75,15.25,9.25
- S56.463-68.654,50.463-75.154z"/>
- <path fill="#82472C" d="M50.597-75.425c-3.74-4.054-5.596-5.354-4.865-10.952c0.729-5.598-0.73-9.979,8.028-10.223
- c8.759-0.242,14.841,1.705,14.841,9.006S56.436-69.098,50.597-75.425z"/>
- <path fill="#7D4930" d="M50.732-75.695c-3.638-3.945-5.441-5.209-4.731-10.656c0.71-5.445-0.71-9.707,7.807-9.944
- c8.518-0.237,14.432,1.658,14.432,8.761C68.24-80.432,56.409-69.54,50.732-75.695z"/>
- <path fill="#794B34" d="M50.865-75.967c-3.534-3.834-5.286-5.063-4.597-10.357c0.689-5.294-0.689-9.437,7.586-9.667
- c8.274-0.229,14.021,1.611,14.021,8.517C67.875-80.57,56.382-69.982,50.865-75.967z"/>
- <path fill="#754C37" d="M51-76.238c-3.431-3.725-5.132-4.918-4.463-10.06c0.669-5.142-0.669-9.166,7.363-9.39
- c8.034-0.224,13.612,1.564,13.612,8.271C67.513-80.71,56.356-70.426,51-76.238z"/>
- <path fill="#704C3A" d="M51.135-76.509c-3.328-3.614-4.979-4.773-4.329-9.763c0.649-4.989-0.649-8.895,7.143-9.11
- c7.791-0.218,13.202,1.519,13.202,8.026S56.329-70.87,51.135-76.509z"/>
- <path fill="#6B4C3C" d="M51.269-76.781c-3.225-3.504-4.824-4.627-4.194-9.464c0.629-4.838-0.63-8.624,6.921-8.833
- c7.55-0.21,12.793,1.473,12.793,7.781C66.788-80.986,56.302-71.313,51.269-76.781z"/>
- <path fill="#664C3E" d="M51.402-77.052c-3.121-3.394-4.669-4.481-4.06-9.166c0.608-4.687-0.609-8.353,6.699-8.556
- c7.309-0.205,12.383,1.426,12.383,7.537C66.425-81.126,56.276-71.755,51.402-77.052z"/>
- <path fill="#614B3F" d="M51.537-77.323c-3.019-3.282-4.515-4.336-3.926-8.868c0.589-4.533-0.589-8.082,6.478-8.278
- c7.066-0.197,11.974,1.379,11.974,7.292C66.063-81.266,56.248-72.199,51.537-77.323z"/>
- <path fill="#5B4940" d="M51.671-77.594c-2.915-3.174-4.36-4.19-3.791-8.571c0.568-4.381-0.569-7.81,6.256-8
- c6.825-0.19,11.564,1.333,11.564,7.047S56.222-72.643,51.671-77.594z"/>
- <path fill="#54463F" d="M51.806-77.865c-2.813-3.063-4.206-4.045-3.657-8.272c0.548-4.229-0.549-7.539,6.034-7.724
- c6.584-0.184,11.155,1.287,11.155,6.803S56.194-73.085,51.806-77.865z"/>
- <path fill="#4D423D" d="M51.94-78.137c-2.709-2.953-4.051-3.899-3.522-7.977c0.528-4.076-0.528-7.268,5.813-7.445
- c6.342-0.176,10.746,1.242,10.746,6.559C64.976-81.682,56.168-73.527,51.94-78.137z"/>
- <path fill="#443D39" d="M52.074-78.408c-2.605-2.842-3.897-3.754-3.389-7.678c0.508-3.925-0.509-6.997,5.592-7.167
- c6.1-0.17,10.336,1.194,10.336,6.313S56.141-73.971,52.074-78.408z"/>
- <path fill="#3A3534" d="M52.208-78.679c-2.502-2.732-3.742-3.608-3.254-7.382c0.487-3.771-0.488-6.726,5.37-6.889
- c5.858-0.162,9.926,1.148,9.926,6.068C64.25-81.959,56.114-74.414,52.208-78.679z"/>
- <path fill="#252423" d="M52.343-78.95c-2.399-2.622-3.589-3.463-3.12-7.083c0.468-3.621-0.469-6.455,5.148-6.611
- c5.616-0.157,9.517,1.102,9.517,5.824S56.087-74.857,52.343-78.95z"/>
- <path d="M52.477-79.221c-2.296-2.512-3.434-3.317-2.985-6.785c0.447-3.469-0.448-6.184,4.927-6.334s9.107,1.056,9.107,5.579
- C63.526-82.236,56.061-75.3,52.477-79.221z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M32.713-96.904c-1.63-1.357-4.5-3.75-4.25-8.5s-3.25-7,2-9.25s7.25-4,12-2.5s8.25,4.75,8.5,7.25
- S40.213-90.654,32.713-96.904z"/>
- <path fill="#82472C" d="M32.918-97.037c-1.581-1.339-4.364-3.695-4.122-8.378c0.243-4.681-3.151-6.897,1.939-9.114
- c5.091-2.219,7.03-3.943,11.637-2.465c4.605,1.479,8,4.682,8.242,7.146C50.857-107.385,40.191-90.877,32.918-97.037z"/>
- <path fill="#7D4930" d="M33.122-97.171c-1.531-1.319-4.228-3.642-3.993-8.254c0.235-4.613-3.053-6.798,1.879-8.982
- c4.932-2.186,6.811-3.885,11.273-2.429c4.462,1.457,7.75,4.613,7.984,7.041C50.501-107.368,40.168-91.102,33.122-97.171z"/>
- <path fill="#794B34" d="M33.326-97.305c-1.481-1.299-4.09-3.588-3.863-8.133c0.228-4.543-2.955-6.695,1.818-8.849
- c4.772-2.151,6.591-3.827,10.909-2.392c4.318,1.435,7.5,4.544,7.727,6.936C50.145-107.35,40.145-91.325,33.326-97.305z"/>
- <path fill="#754C37" d="M33.531-97.438c-1.433-1.28-3.955-3.533-3.735-8.01c0.22-4.476-2.856-6.595,1.758-8.715
- c4.614-2.12,6.372-3.77,10.546-2.355c4.174,1.412,7.25,4.477,7.469,6.832C49.789-107.332,40.122-91.55,33.531-97.438z"/>
- <path fill="#704C3A" d="M33.735-97.572c-1.382-1.26-3.818-3.479-3.606-7.887c0.212-4.407-2.757-6.494,1.697-8.581
- c4.455-2.088,6.152-3.712,10.183-2.319c4.031,1.392,7,4.406,7.212,6.727C49.433-107.313,40.1-91.773,33.735-97.572z"/>
- <path fill="#6B4C3C" d="M33.941-97.705c-1.334-1.24-3.682-3.425-3.478-7.764c0.205-4.338-2.659-6.395,1.637-8.448
- c4.295-2.056,5.932-3.653,9.818-2.283c3.886,1.369,6.75,4.339,6.954,6.622C49.077-107.296,40.077-91.997,33.941-97.705z"/>
- <path fill="#664C3E" d="M34.145-97.839c-1.284-1.222-3.545-3.371-3.349-7.642c0.198-4.269-2.56-6.291,1.576-8.313
- c4.137-2.022,5.712-3.597,9.454-2.247c3.743,1.348,6.5,4.27,6.697,6.518C48.72-107.277,40.054-92.221,34.145-97.839z"/>
- <path fill="#614B3F" d="M34.35-97.973c-1.235-1.201-3.409-3.316-3.22-7.519c0.19-4.2-2.462-6.19,1.515-8.18
- c3.978-1.99,5.493-3.539,9.092-2.212c3.598,1.326,6.249,4.201,6.438,6.413C48.364-107.259,40.031-92.445,34.35-97.973z"/>
- <path fill="#5B4940" d="M34.554-98.105c-1.185-1.183-3.272-3.264-3.091-7.396c0.182-4.132-2.364-6.09,1.454-8.046
- c3.819-1.959,5.273-3.481,8.728-2.177c3.455,1.306,6.001,4.133,6.182,6.309C48.009-107.241,40.009-92.669,34.554-98.105z"/>
- <path fill="#54463F" d="M34.759-98.24c-1.136-1.162-3.137-3.208-2.963-7.272c0.175-4.063-2.265-5.988,1.395-7.913
- c3.659-1.926,5.053-3.424,8.363-2.139c3.311,1.281,5.75,4.063,5.924,6.203C47.652-107.223,39.985-92.893,34.759-98.24z"/>
- <path fill="#4D423D" d="M34.963-98.373c-1.086-1.143-3-3.154-2.833-7.15c0.167-3.994-2.167-5.888,1.333-7.778
- c3.5-1.894,4.834-3.365,8-2.104c3.167,1.262,5.5,3.995,5.666,6.1C47.297-107.206,39.963-93.117,34.963-98.373z"/>
- <path fill="#443D39" d="M35.168-98.507c-1.037-1.123-2.863-3.101-2.705-7.027c0.159-3.927-2.068-5.786,1.272-7.646
- c3.342-1.861,4.614-3.309,7.637-2.067c3.022,1.239,5.25,3.927,5.409,5.994C46.941-107.188,39.941-93.34,35.168-98.507z"/>
- <path fill="#3A3534" d="M35.372-98.641c-0.987-1.104-2.727-3.047-2.576-6.905c0.152-3.858-1.969-5.685,1.212-7.513
- c3.183-1.827,4.395-3.25,7.273-2.029c2.879,1.217,5,3.857,5.151,5.889C46.584-107.169,39.918-93.564,35.372-98.641z"/>
- <path fill="#252423" d="M35.577-98.773c-0.938-1.084-2.591-2.992-2.447-6.783c0.144-3.789-1.871-5.582,1.151-7.377
- c3.023-1.797,4.175-3.192,6.909-1.995c2.734,1.196,4.75,3.79,4.894,5.784C46.229-107.15,39.895-93.788,35.577-98.773z"/>
- <path d="M35.781-98.908c-0.889-1.063-2.454-2.938-2.318-6.658c0.137-3.722-1.772-5.483,1.091-7.246
- c2.864-1.764,3.955-3.135,6.546-1.959c2.591,1.174,4.5,3.722,4.636,5.681C45.872-107.133,39.872-94.012,35.781-98.908z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M126.964-20.904c0.775,0.155,4.5,5,4.5,5s1.25,8,0,9.25s-9,7.5-12.25,6s-5.75-10-5.25-14.5
- S118.214-22.654,126.964-20.904z"/>
- <path fill="#82472C" d="M126.852-20.66c0.756,0.151,4.388,4.872,4.388,4.872s1.218,7.794,0,9.013
- c-1.219,1.217-8.775,7.307-11.944,5.846s-5.605-9.743-5.119-14.127C114.664-19.441,118.32-22.365,126.852-20.66z"/>
- <path fill="#7D4930" d="M126.739-20.415c0.736,0.147,4.274,4.743,4.274,4.743s1.188,7.588,0,8.773
- c-1.188,1.187-8.55,7.114-11.638,5.691c-3.087-1.423-5.462-9.486-4.987-13.754C114.864-19.23,118.426-22.075,126.739-20.415z"
- />
- <path fill="#794B34" d="M126.626-20.171c0.718,0.144,4.163,4.614,4.163,4.614s1.156,7.383,0,8.535
- c-1.156,1.154-8.325,6.922-11.331,5.539c-3.007-1.386-5.319-9.229-4.856-13.383C115.064-19.018,118.532-21.786,126.626-20.171z
- "/>
- <path fill="#754C37" d="M126.514-19.927c0.698,0.14,4.05,4.485,4.05,4.485s1.125,7.178,0,8.299s-8.1,6.729-11.025,5.383
- c-2.924-1.346-5.175-8.971-4.725-13.008C115.264-18.805,118.639-21.497,126.514-19.927z"/>
- <path fill="#704C3A" d="M126.401-19.684c0.679,0.137,3.938,4.357,3.938,4.357s1.094,6.971,0,8.061
- c-1.094,1.091-7.875,6.537-10.719,5.229c-2.844-1.307-5.031-8.714-4.594-12.635S118.745-21.207,126.401-19.684z"/>
- <path fill="#6B4C3C" d="M126.289-19.439c0.659,0.133,3.825,4.229,3.825,4.229s1.062,6.767,0,7.823
- c-1.063,1.057-7.65,6.343-10.413,5.074c-2.762-1.269-4.887-8.457-4.462-12.263C115.664-18.381,118.851-20.918,126.289-19.439z"
- />
- <path fill="#664C3E" d="M126.177-19.193c0.64,0.127,3.712,4.1,3.712,4.1s1.031,6.56,0,7.585
- c-1.031,1.024-7.425,6.149-10.106,4.92c-2.681-1.229-4.743-8.2-4.331-11.89C115.863-18.169,118.957-20.629,126.177-19.193z"/>
- <path fill="#614B3F" d="M126.064-18.95c0.621,0.124,3.601,3.972,3.601,3.972s0.999,6.354,0,7.348
- c-1.001,0.993-7.2,5.957-9.801,4.766c-2.6-1.191-4.6-7.943-4.199-11.517C116.064-17.957,119.064-20.339,126.064-18.95z"/>
- <path fill="#5B4940" d="M125.951-18.706c0.602,0.12,3.487,3.843,3.487,3.843s0.969,6.148,0,7.109
- c-0.969,0.96-6.975,5.764-9.494,4.611c-2.518-1.153-4.455-7.687-4.068-11.146C116.264-17.745,119.17-20.05,125.951-18.706z"/>
- <path fill="#54463F" d="M125.839-18.461c0.581,0.115,3.375,3.714,3.375,3.714s0.937,5.943,0,6.872
- c-0.938,0.928-6.75,5.571-9.188,4.457c-2.437-1.114-4.312-7.428-3.937-10.771C116.464-17.532,119.276-19.761,125.839-18.461z"
- />
- <path fill="#4D423D" d="M125.727-18.217c0.562,0.111,3.263,3.586,3.263,3.586s0.905,5.736,0,6.634
- c-0.907,0.896-6.525,5.378-8.882,4.302c-2.356-1.074-4.169-7.171-3.806-10.397C116.664-17.32,119.382-19.473,125.727-18.217z"
- />
- <path fill="#443D39" d="M125.614-17.973c0.542,0.107,3.149,3.457,3.149,3.457s0.874,5.531,0,6.396
- c-0.876,0.864-6.3,5.186-8.575,4.148c-2.274-1.037-4.024-6.914-3.675-10.025C116.864-17.107,119.488-19.182,125.614-17.973z"/>
- <path fill="#3A3534" d="M125.501-17.729c0.523,0.104,3.038,3.33,3.038,3.33s0.843,5.325,0,6.157
- c-0.845,0.832-6.075,4.993-8.27,3.994c-2.193-0.999-3.881-6.657-3.543-9.653C117.064-16.896,119.594-18.893,125.501-17.729z"/>
- <path fill="#252423" d="M125.389-17.484c0.504,0.101,2.925,3.2,2.925,3.2s0.812,5.12,0,5.921
- c-0.813,0.799-5.85,4.799-7.963,3.84c-2.111-0.961-3.736-6.399-3.412-9.28C117.264-16.684,119.7-18.604,125.389-17.484z"/>
- <path d="M125.276-17.24c0.484,0.096,2.813,3.072,2.813,3.072s0.78,4.914,0,5.682c-0.782,0.769-5.625,4.607-7.657,3.687
- c-2.03-0.921-3.593-6.144-3.28-8.907C117.464-16.473,119.807-18.314,125.276-17.24z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M95.814-30.554c-2.319-1.987-2.802-11.8,1.198-14.2s5.802-3,8.802-0.2s6.198,8.601,1.198,12.601
- S97.214-29.354,95.814-30.554z"/>
- <path fill="#82472C" d="M95.966-30.791c-2.253-1.92-2.722-11.407,1.165-13.727c3.887-2.32,5.638-2.9,8.552-0.193
- c2.916,2.707,6.023,8.313,1.165,12.18C101.99-28.664,97.327-29.631,95.966-30.791z"/>
- <path fill="#7D4930" d="M96.119-31.027c-2.188-1.854-2.643-11.014,1.131-13.254c3.773-2.24,5.473-2.8,8.303-0.186
- c2.83,2.613,5.848,8.025,1.131,11.759C101.967-28.975,97.441-29.907,96.119-31.027z"/>
- <path fill="#794B34" d="M96.273-31.264c-2.122-1.788-2.563-10.621,1.097-12.78c3.66-2.16,5.309-2.7,8.053-0.181
- c2.745,2.521,5.672,7.74,1.098,11.34C101.944-29.284,97.554-30.184,96.273-31.264z"/>
- <path fill="#754C37" d="M96.425-31.501c-2.055-1.722-2.483-10.228,1.063-12.308c3.546-2.079,5.144-2.6,7.804-0.172
- c2.66,2.427,5.496,7.453,1.063,10.92S97.667-30.46,96.425-31.501z"/>
- <path fill="#704C3A" d="M96.578-31.736c-1.989-1.656-2.404-9.834,1.029-11.834c3.434-2,4.979-2.5,7.555-0.166
- c2.574,2.332,5.32,7.166,1.028,10.5S97.78-30.736,96.578-31.736z"/>
- <path fill="#6B4C3C" d="M96.732-31.975c-1.924-1.59-2.325-9.439,0.995-11.359c3.319-1.92,4.814-2.4,7.305-0.16
- c2.489,2.24,5.145,6.879,0.995,10.08C101.876-30.214,97.894-31.014,96.732-31.975z"/>
- <path fill="#664C3E" d="M96.884-32.21c-1.857-1.522-2.245-9.047,0.962-10.888c3.206-1.84,4.65-2.299,7.055-0.152
- s4.97,6.593,0.962,9.66C101.854-30.523,98.007-31.291,96.884-32.21z"/>
- <path fill="#614B3F" d="M97.037-32.447c-1.792-1.457-2.166-8.652,0.928-10.412c3.094-1.761,4.485-2.201,6.806-0.146
- c2.319,2.053,4.794,6.306,0.928,9.24C101.831-30.834,98.119-31.566,97.037-32.447z"/>
- <path fill="#5B4940" d="M97.19-32.684c-1.726-1.392-2.086-8.26,0.895-9.94c2.979-1.68,4.321-2.101,6.556-0.14
- c2.235,1.96,4.619,6.02,0.894,8.82C101.809-31.145,98.233-31.844,97.19-32.684z"/>
- <path fill="#54463F" d="M97.343-32.92c-1.66-1.325-2.007-7.867,0.859-9.466c2.867-1.601,4.157-2,6.308-0.134
- c2.149,1.867,4.442,5.732,0.859,8.399S98.346-32.121,97.343-32.92z"/>
- <path fill="#4D423D" d="M97.496-33.157c-1.595-1.258-1.928-7.474,0.825-8.993c2.754-1.52,3.993-1.899,6.058-0.125
- c2.064,1.772,4.268,5.445,0.826,7.979C101.763-31.764,98.459-32.396,97.496-33.157z"/>
- <path fill="#443D39" d="M97.649-33.395c-1.528-1.191-1.848-7.08,0.792-8.52c2.641-1.439,3.828-1.8,5.809-0.12
- c1.979,1.681,4.092,5.16,0.792,7.56C101.74-32.074,98.572-32.674,97.649-33.395z"/>
- <path fill="#3A3534" d="M97.802-33.63c-1.463-1.126-1.769-6.687,0.758-8.046c2.527-1.36,3.664-1.7,5.559-0.114
- c1.895,1.587,3.917,4.873,0.758,7.14C101.718-32.384,98.686-32.951,97.802-33.63z"/>
- <path fill="#252423" d="M97.954-33.867c-1.396-1.06-1.688-6.293,0.725-7.572c2.414-1.28,3.499-1.601,5.31-0.106
- c1.81,1.493,3.74,4.586,0.724,6.72C101.697-32.691,98.799-33.227,97.954-33.867z"/>
- <path d="M98.108-34.104c-1.331-0.994-1.609-5.9,0.69-7.101c2.301-1.2,3.335-1.5,5.06-0.1c1.725,1.399,3.565,4.3,0.69,6.3
- S98.912-33.504,98.108-34.104z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M66.213-4.154c-3.488-2.414-2.75-8.25-1.25-9.5s5.25-4,10-2.25c4.751,1.75,10.001,4,10.751,7.75
- s0.5,6.25-4,7.75S69.463-1.904,66.213-4.154z"/>
- <path fill="#82472C" d="M66.416-4.282c-3.414-2.338-2.692-7.985-1.224-9.196c1.468-1.209,5.138-3.873,9.786-2.179
- c4.65,1.694,9.788,3.873,10.521,7.503c0.734,3.631,0.489,6.051-3.914,7.502C77.182,0.801,69.596-2.104,66.416-4.282z"/>
- <path fill="#7D4930" d="M66.618-4.409c-3.34-2.261-2.633-7.724-1.196-8.895c1.436-1.171,5.025-3.745,9.573-2.106
- c4.548,1.639,9.574,3.745,10.292,7.256c0.718,3.512,0.479,5.853-3.829,7.256C77.15,0.506,69.73-2.302,66.618-4.409z"/>
- <path fill="#794B34" d="M66.821-4.537c-3.266-2.184-2.574-7.46-1.17-8.591c1.403-1.13,4.913-3.618,9.359-2.035
- c4.447,1.583,9.36,3.618,10.063,7.009c0.702,3.393,0.468,5.652-3.743,7.008C77.118,0.211,69.863-2.501,66.821-4.537z"/>
- <path fill="#754C37" d="M67.024-4.664c-3.19-2.107-2.515-7.197-1.144-8.289c1.372-1.09,4.802-3.488,9.147-1.963
- c4.345,1.527,9.146,3.49,9.833,6.762s0.457,5.453-3.658,6.762C77.086-0.084,69.996-2.701,67.024-4.664z"/>
- <path fill="#704C3A" d="M67.227-4.792c-3.116-2.03-2.457-6.935-1.117-7.985s4.69-3.363,8.934-1.891
- c4.244,1.471,8.934,3.361,9.604,6.514c0.671,3.152,0.447,5.254-3.572,6.514C77.054-0.378,70.13-2.9,67.227-4.792z"/>
- <path fill="#6B4C3C" d="M67.429-4.919c-3.042-1.953-2.398-6.672-1.09-7.683c1.309-1.012,4.578-3.235,8.721-1.82
- c4.142,1.416,8.72,3.234,9.373,6.268c0.655,3.033,0.437,5.055-3.486,6.269C77.022-0.673,70.263-3.1,67.429-4.919z"/>
- <path fill="#664C3E" d="M67.632-5.047c-2.968-1.876-2.34-6.408-1.063-7.379s4.466-3.107,8.507-1.748s8.507,3.107,9.145,6.021
- c0.639,2.912,0.426,4.854-3.401,6.02C76.989-0.968,70.397-3.299,67.632-5.047z"/>
- <path fill="#614B3F" d="M67.834-5.174c-2.893-1.799-2.28-6.146-1.036-7.077s4.354-2.979,8.293-1.676
- c3.939,1.303,8.294,2.979,8.915,5.772c0.623,2.793,0.415,4.656-3.315,5.773C76.957-1.263,70.529-3.498,67.834-5.174z"/>
- <path fill="#5B4940" d="M68.037-5.302c-2.818-1.722-2.223-5.882-1.01-6.774c1.212-0.891,4.241-2.852,8.08-1.604
- c3.838,1.248,8.08,2.852,8.686,5.525s0.404,4.457-3.23,5.526C76.925-1.559,70.663-3.697,68.037-5.302z"/>
- <path fill="#54463F" d="M68.239-5.429c-2.744-1.646-2.163-5.62-0.982-6.472c1.18-0.852,4.129-2.725,7.866-1.533
- c3.736,1.192,7.867,2.726,8.456,5.279c0.591,2.555,0.394,4.258-3.146,5.279C76.893-1.854,70.796-3.896,68.239-5.429z"/>
- <path fill="#4D423D" d="M68.443-5.557c-2.67-1.568-2.104-5.356-0.957-6.168c1.148-0.813,4.019-2.598,7.653-1.461
- c3.636,1.136,7.654,2.597,8.227,5.031c0.575,2.436,0.384,4.059-3.06,5.032C76.861-2.148,70.93-4.096,68.443-5.557z"/>
- <path fill="#443D39" d="M68.645-5.684c-2.595-1.491-2.046-5.094-0.93-5.865c1.116-0.771,3.906-2.471,7.44-1.389
- c3.533,1.08,7.439,2.469,7.997,4.785c0.56,2.314,0.372,3.857-2.975,4.784C76.829-2.443,71.063-4.295,68.645-5.684z"/>
- <path fill="#3A3534" d="M68.848-5.813c-2.521-1.414-1.987-4.83-0.903-5.562s3.794-2.342,7.227-1.317
- c3.433,1.025,7.227,2.342,7.768,4.539c0.544,2.195,0.362,3.658-2.889,4.537C76.797-2.738,71.196-4.495,68.848-5.813z"/>
- <path fill="#252423" d="M69.05-5.939c-2.446-1.336-1.929-4.566-0.876-5.259c1.052-0.692,3.682-2.214,7.014-1.245
- c3.33,0.969,7.013,2.213,7.538,4.291c0.527,2.075,0.351,3.459-2.804,4.291C76.765-3.033,71.329-4.693,69.05-5.939z"/>
- <path d="M69.253-6.066c-2.372-1.261-1.87-4.305-0.85-4.957s3.569-2.088,6.8-1.175c3.229,0.913,6.8,2.087,7.309,4.044
- c0.512,1.956,0.341,3.26-2.718,4.043C76.733-3.328,71.463-4.893,69.253-6.066z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M96.464-3.904c-1.636-1.718-5.25-3.25-5.75-5.75s-1-6.75,3.25-9s7.5-9.25,13.75-6s4,9.25,4,11.5
- S106.214,6.346,96.464-3.904z"/>
- <path fill="#82472C" d="M96.643-4.137c-1.585-1.676-5.087-3.168-5.571-5.605c-0.484-2.437-0.969-6.58,3.149-8.773
- c4.118-2.192,7.267-9.017,13.322-5.848c6.055,3.168,3.876,9.017,3.876,11.209C111.419-10.961,106.089,5.855,96.643-4.137z"/>
- <path fill="#7D4930" d="M96.821-4.37c-1.534-1.631-4.923-3.086-5.392-5.46c-0.469-2.375-0.938-6.41,3.048-8.547
- c3.985-2.136,7.033-8.784,12.894-5.697c5.861,3.086,3.752,8.784,3.752,10.92C111.123-11.018,105.965,5.363,96.821-4.37z"/>
- <path fill="#794B34" d="M97.001-4.604c-1.483-1.588-4.761-3.004-5.214-5.314c-0.453-2.311-0.907-6.24,2.946-8.318
- c3.854-2.08,6.801-8.552,12.467-5.547c5.667,3.004,3.627,8.551,3.627,10.631C110.827-11.074,105.84,4.872,97.001-4.604z"/>
- <path fill="#754C37" d="M97.18-4.836c-1.433-1.545-4.597-2.922-5.034-5.17c-0.438-2.248-0.877-6.07,2.845-8.094
- c3.722-2.022,6.566-8.316,12.039-5.395c5.472,2.922,3.502,8.317,3.502,10.34C110.532-11.131,105.716,4.38,97.18-4.836z"/>
- <path fill="#704C3A" d="M97.359-5.068c-1.382-1.502-4.434-2.842-4.855-5.025c-0.423-2.186-0.846-5.899,2.744-7.866
- c3.59-1.966,6.333-8.084,11.611-5.244c5.277,2.841,3.378,8.084,3.378,10.052C110.236-11.188,105.592,3.889,97.359-5.068z"/>
- <path fill="#6B4C3C" d="M97.537-5.303c-1.331-1.458-4.27-2.76-4.677-4.881c-0.406-2.121-0.813-5.729,2.644-7.639
- s6.1-7.851,11.184-5.093c5.082,2.759,3.253,7.853,3.253,9.761C109.941-11.245,105.467,3.396,97.537-5.303z"/>
- <path fill="#664C3E" d="M97.717-5.536c-1.281-1.415-4.107-2.677-4.498-4.735c-0.392-2.059-0.783-5.56,2.542-7.412
- c3.324-1.854,5.866-7.618,10.756-4.941c4.888,2.678,3.128,7.618,3.128,9.471C109.645-11.301,105.343,2.906,97.717-5.536z"/>
- <path fill="#614B3F" d="M97.896-5.77c-1.229-1.371-3.944-2.594-4.319-4.59c-0.376-1.996-0.753-5.39,2.44-7.186
- c3.193-1.796,5.634-7.385,10.328-4.79c4.693,2.595,3.005,7.385,3.005,9.181C109.35-11.357,105.218,2.415,97.896-5.77z"/>
- <path fill="#5B4940" d="M98.074-6.002c-1.179-1.328-3.78-2.514-4.14-4.446c-0.361-1.933-0.722-5.219,2.339-6.958
- c3.061-1.738,5.4-7.152,9.9-4.639c4.499,2.513,2.88,7.152,2.88,8.893C109.053-11.413,105.094,1.923,98.074-6.002z"/>
- <path fill="#54463F" d="M98.253-6.234c-1.128-1.285-3.617-2.432-3.961-4.302c-0.345-1.87-0.69-5.049,2.238-6.731
- c2.929-1.683,5.167-6.918,9.473-4.487c4.304,2.431,2.755,6.918,2.755,8.603C108.758-11.469,104.969,1.432,98.253-6.234z"/>
- <path fill="#4D423D" d="M98.432-6.468c-1.077-1.242-3.454-2.349-3.782-4.156c-0.329-1.808-0.659-4.879,2.138-6.505
- c2.796-1.626,4.934-6.686,9.045-4.336c4.109,2.349,2.631,6.686,2.631,8.313C108.463-11.527,104.845,0.939,98.432-6.468z"/>
- <path fill="#443D39" d="M98.61-6.702c-1.026-1.198-3.29-2.267-3.603-4.011c-0.314-1.744-0.629-4.708,2.036-6.278
- c2.664-1.569,4.699-6.452,8.617-4.186c3.914,2.267,2.506,6.452,2.506,8.022C108.166-11.586,104.72,0.449,98.61-6.702z"/>
- <path fill="#3A3534" d="M98.79-6.936c-0.976-1.154-3.128-2.186-3.425-3.865c-0.299-1.682-0.598-4.538,1.935-6.051
- c2.532-1.514,4.467-6.219,8.189-4.034c3.721,2.185,2.382,6.219,2.382,7.731C107.871-11.641,104.596-0.043,98.79-6.936z"/>
- <path fill="#252423" d="M98.969-7.168c-0.925-1.111-2.964-2.104-3.245-3.721c-0.283-1.618-0.567-4.369,1.833-5.825
- c2.4-1.456,4.233-5.986,7.762-3.883c3.525,2.104,2.258,5.985,2.258,7.442C107.577-11.699,104.471-0.534,98.969-7.168z"/>
- <path d="M99.148-7.4c-0.874-1.068-2.801-2.021-3.066-3.576c-0.268-1.556-0.536-4.198,1.732-5.599
- c2.268-1.399,4-5.753,7.334-3.731c3.331,2.021,2.133,5.754,2.133,7.152C107.281-11.755,104.347-1.025,99.148-7.4z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M126.964-145.32c0.775,0.155,4.5,5,4.5,5s1.25,8,0,9.25s-9,7.5-12.25,6s-5.75-10-5.25-14.5
- S118.214-147.07,126.964-145.32z"/>
- <path fill="#82472C" d="M126.852-145.076c0.756,0.151,4.388,4.872,4.388,4.872s1.218,7.793,0,9.013
- c-1.219,1.217-8.775,7.307-11.944,5.846s-5.605-9.742-5.119-14.127C114.664-143.857,118.32-146.781,126.852-145.076z"/>
- <path fill="#7D4930" d="M126.739-144.831c0.736,0.146,4.274,4.742,4.274,4.742s1.188,7.588,0,8.774
- c-1.188,1.186-8.55,7.113-11.638,5.69c-3.087-1.423-5.462-9.485-4.987-13.755C114.864-143.646,118.426-146.491,126.739-144.831
- z"/>
- <path fill="#794B34" d="M126.626-144.587c0.718,0.144,4.163,4.612,4.163,4.612s1.156,7.384,0,8.537
- c-1.156,1.153-8.325,6.922-11.331,5.537c-3.007-1.385-5.319-9.229-4.856-13.382
- C115.064-143.436,118.532-146.202,126.626-144.587z"/>
- <path fill="#754C37" d="M126.514-144.343c0.698,0.139,4.05,4.485,4.05,4.485s1.125,7.176,0,8.297
- c-1.125,1.123-8.1,6.729-11.025,5.384c-2.924-1.345-5.175-8.972-4.725-13.009C115.264-143.223,118.639-145.913,126.514-144.343
- z"/>
- <path fill="#704C3A" d="M126.401-144.1c0.679,0.136,3.938,4.357,3.938,4.357s1.094,6.971,0,8.061
- c-1.094,1.09-7.875,6.535-10.719,5.229c-2.844-1.308-5.031-8.715-4.594-12.636S118.745-145.624,126.401-144.1z"/>
- <path fill="#6B4C3C" d="M126.289-143.855c0.659,0.131,3.825,4.229,3.825,4.229s1.062,6.767,0,7.822
- c-1.063,1.058-7.65,6.344-10.413,5.075c-2.762-1.27-4.887-8.457-4.462-12.264C115.664-142.798,118.851-145.335,126.289-143.855
- z"/>
- <path fill="#664C3E" d="M126.177-143.609c0.64,0.127,3.712,4.1,3.712,4.1s1.031,6.561,0,7.586
- c-1.031,1.023-7.425,6.148-10.106,4.92c-2.681-1.23-4.743-8.2-4.331-11.891C115.863-142.585,118.957-145.046,126.177-143.609z"
- />
- <path fill="#614B3F" d="M126.064-143.366c0.621,0.123,3.601,3.972,3.601,3.972s0.999,6.354,0,7.348
- c-1.001,0.993-7.2,5.957-9.801,4.766c-2.6-1.191-4.6-7.941-4.199-11.517C116.064-142.373,119.064-144.756,126.064-143.366z"/>
- <path fill="#5B4940" d="M125.951-143.122c0.602,0.119,3.487,3.845,3.487,3.845s0.969,6.147,0,7.108
- c-0.969,0.96-6.975,5.765-9.494,4.61c-2.518-1.152-4.455-7.686-4.068-11.145C116.264-142.161,119.17-144.467,125.951-143.122z"
- />
- <path fill="#54463F" d="M125.839-142.878c0.581,0.115,3.375,3.715,3.375,3.715s0.937,5.943,0,6.871
- c-0.938,0.929-6.75,5.572-9.188,4.457c-2.437-1.113-4.312-7.428-3.937-10.771S119.276-144.177,125.839-142.878z"/>
- <path fill="#4D423D" d="M125.727-142.634c0.562,0.11,3.263,3.586,3.263,3.586s0.905,5.737,0,6.635
- c-0.907,0.896-6.525,5.378-8.882,4.302c-2.356-1.074-4.169-7.171-3.806-10.397
- C116.664-141.736,119.382-143.888,125.727-142.634z"/>
- <path fill="#443D39" d="M125.614-142.391c0.542,0.108,3.149,3.459,3.149,3.459s0.874,5.531,0,6.396
- c-0.876,0.864-6.3,5.187-8.575,4.148c-2.274-1.037-4.024-6.914-3.675-10.025C116.864-141.523,119.488-143.6,125.614-142.391z"
- />
- <path fill="#3A3534" d="M125.501-142.145c0.523,0.104,3.038,3.328,3.038,3.328s0.843,5.325,0,6.157
- c-0.845,0.832-6.075,4.993-8.27,3.994c-2.193-0.999-3.881-6.657-3.543-9.653C117.064-141.313,119.594-143.311,125.501-142.145z
- "/>
- <path fill="#252423" d="M125.389-141.9c0.504,0.101,2.925,3.2,2.925,3.2s0.812,5.119,0,5.921
- c-0.813,0.799-5.85,4.799-7.963,3.84c-2.111-0.961-3.736-6.399-3.412-9.28C117.264-141.102,119.7-143.021,125.389-141.9z"/>
- <path d="M125.276-141.656c0.484,0.096,2.813,3.071,2.813,3.071s0.78,4.914,0,5.683c-0.782,0.769-5.625,4.606-7.657,3.687
- c-2.03-0.921-3.593-6.144-3.28-8.907C117.464-140.888,119.807-142.73,125.276-141.656z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M66.213-128.57c-3.488-2.414-2.75-8.25-1.25-9.5s5.25-4,10-2.25c4.751,1.75,10.001,4,10.751,7.75
- s0.5,6.25-4,7.75S69.463-126.32,66.213-128.57z"/>
- <path fill="#82472C" d="M66.416-128.698c-3.414-2.338-2.692-7.985-1.224-9.196c1.468-1.209,5.138-3.871,9.786-2.179
- c4.65,1.694,9.788,3.873,10.521,7.505c0.734,3.629,0.489,6.049-3.914,7.502C77.182-123.615,69.596-126.52,66.416-128.698z"/>
- <path fill="#7D4930" d="M66.618-128.825c-3.34-2.262-2.633-7.725-1.196-8.895c1.436-1.171,5.025-3.745,9.573-2.106
- c4.548,1.639,9.574,3.745,10.292,7.256c0.718,3.512,0.479,5.853-3.829,7.256C77.15-123.91,69.73-126.719,66.618-128.825z"/>
- <path fill="#794B34" d="M66.821-128.953c-3.266-2.184-2.574-7.46-1.17-8.591c1.403-1.131,4.913-3.617,9.359-2.035
- c4.447,1.582,9.36,3.617,10.063,7.009c0.703,3.393,0.468,5.652-3.743,7.01C77.118-124.205,69.863-126.918,66.821-128.953z"/>
- <path fill="#754C37" d="M67.024-129.081c-3.19-2.106-2.515-7.196-1.144-8.288c1.372-1.091,4.802-3.488,9.147-1.963
- s9.146,3.489,9.833,6.762c0.687,3.271,0.457,5.452-3.658,6.762C77.086-124.5,69.996-127.118,67.024-129.081z"/>
- <path fill="#704C3A" d="M67.227-129.208c-3.116-2.028-2.457-6.937-1.117-7.985c1.34-1.051,4.69-3.361,8.934-1.892
- c4.244,1.472,8.934,3.362,9.604,6.515c0.671,3.152,0.447,5.254-3.572,6.516C77.054-124.795,70.13-127.316,67.227-129.208z"/>
- <path fill="#6B4C3C" d="M67.429-129.335c-3.042-1.953-2.398-6.672-1.09-7.685c1.309-1.01,4.578-3.233,8.721-1.818
- c4.142,1.415,8.72,3.234,9.373,6.268c0.655,3.032,0.437,5.055-3.486,6.269C77.022-125.09,70.263-127.516,67.429-129.335z"/>
- <path fill="#664C3E" d="M67.632-129.464c-2.968-1.875-2.34-6.408-1.063-7.379c1.277-0.972,4.466-3.107,8.507-1.748
- c4.041,1.358,8.507,3.106,9.145,6.021c0.639,2.913,0.426,4.854-3.401,6.021C76.989-125.385,70.397-127.716,67.632-129.464z"/>
- <path fill="#614B3F" d="M67.834-129.591c-2.893-1.8-2.28-6.146-1.036-7.076c1.244-0.933,4.354-2.979,8.293-1.676
- c3.939,1.303,8.294,2.979,8.915,5.772c0.623,2.793,0.415,4.654-3.315,5.771C76.957-125.68,70.529-127.915,67.834-129.591z"/>
- <path fill="#5B4940" d="M68.037-129.718c-2.818-1.724-2.223-5.884-1.01-6.774c1.212-0.892,4.241-2.853,8.08-1.604
- c3.838,1.248,8.08,2.853,8.686,5.525c0.606,2.674,0.404,4.457-3.23,5.526C76.925-125.975,70.663-128.113,68.037-129.718z"/>
- <path fill="#54463F" d="M68.239-129.846c-2.744-1.646-2.163-5.62-0.982-6.471c1.18-0.854,4.129-2.727,7.866-1.533
- c3.736,1.191,7.867,2.726,8.456,5.279c0.591,2.553,0.394,4.256-3.146,5.277C76.893-126.27,70.796-128.314,68.239-129.846z"/>
- <path fill="#4D423D" d="M68.443-129.975c-2.67-1.566-2.104-5.354-0.957-6.168c1.148-0.812,4.019-2.596,7.653-1.461
- c3.636,1.138,7.654,2.599,8.227,5.033c0.575,2.435,0.384,4.058-3.06,5.031C76.861-126.564,70.93-128.513,68.443-129.975z"/>
- <path fill="#443D39" d="M68.645-130.102c-2.595-1.489-2.046-5.094-0.93-5.864c1.116-0.771,3.906-2.47,7.44-1.39
- c3.533,1.08,7.439,2.47,7.997,4.785c0.56,2.314,0.372,3.857-2.975,4.783C76.829-126.859,71.063-128.712,68.645-130.102z"/>
- <path fill="#3A3534" d="M68.848-130.229c-2.521-1.414-1.987-4.83-0.903-5.563s3.794-2.343,7.227-1.318
- c3.433,1.025,7.227,2.342,7.768,4.539c0.544,2.195,0.362,3.658-2.889,4.537C76.797-127.154,71.196-128.911,68.848-130.229z"/>
- <path fill="#252423" d="M69.05-130.355c-2.446-1.336-1.929-4.566-0.876-5.26c1.052-0.691,3.682-2.214,7.014-1.244
- c3.33,0.969,7.013,2.213,7.538,4.289c0.527,2.076,0.351,3.461-2.804,4.291C76.765-127.449,71.329-129.109,69.05-130.355z"/>
- <path d="M69.253-130.482c-2.372-1.261-1.87-4.306-0.85-4.957c1.02-0.652,3.569-2.086,6.8-1.174
- c3.229,0.913,6.8,2.088,7.309,4.043c0.512,1.957,0.341,3.262-2.718,4.045C76.733-127.744,71.463-129.311,69.253-130.482z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M96.464-128.32c-1.636-1.718-5.25-3.25-5.75-5.75s-1-6.75,3.25-9s7.5-9.25,13.75-6s4,9.25,4,11.5
- S106.214-118.07,96.464-128.32z"/>
- <path fill="#82472C" d="M96.643-128.554c-1.585-1.675-5.087-3.169-5.571-5.605c-0.484-2.436-0.969-6.579,3.149-8.772
- c4.118-2.192,7.267-9.017,13.322-5.848c6.055,3.168,3.876,9.017,3.876,11.209C111.419-135.377,106.089-118.563,96.643-128.554z
- "/>
- <path fill="#7D4930" d="M96.821-128.786c-1.534-1.632-4.923-3.087-5.392-5.461c-0.469-2.374-0.938-6.41,3.048-8.547
- c3.985-2.136,7.033-8.783,12.894-5.697c5.861,3.087,3.752,8.784,3.752,10.921S105.965-119.054,96.821-128.786z"/>
- <path fill="#794B34" d="M97.001-129.02c-1.483-1.59-4.761-3.006-5.214-5.315c-0.453-2.31-0.907-6.24,2.946-8.319
- c3.854-2.08,6.801-8.551,12.467-5.546c5.667,3.005,3.627,8.55,3.627,10.63C110.827-135.491,105.84-119.544,97.001-129.02z"/>
- <path fill="#754C37" d="M97.18-129.253c-1.433-1.545-4.597-2.922-5.034-5.17c-0.438-2.248-0.877-6.07,2.845-8.093
- c3.722-2.023,6.566-8.317,12.039-5.396c5.472,2.924,3.502,8.318,3.502,10.342C110.532-135.548,105.716-120.036,97.18-129.253z"
- />
- <path fill="#704C3A" d="M97.359-129.484c-1.382-1.502-4.434-2.843-4.855-5.025c-0.423-2.186-0.846-5.9,2.744-7.867
- c3.59-1.966,6.333-8.084,11.611-5.243c5.277,2.841,3.378,8.084,3.378,10.052C110.236-135.605,105.592-120.527,97.359-129.484z"
- />
- <path fill="#6B4C3C" d="M97.537-129.72c-1.331-1.457-4.27-2.759-4.677-4.88c-0.406-2.123-0.813-5.729,2.644-7.641
- c3.457-1.908,6.1-7.851,11.184-5.092c5.082,2.758,3.253,7.852,3.253,9.762C109.941-135.662,105.467-121.02,97.537-129.72z"/>
- <path fill="#664C3E" d="M97.717-129.952c-1.281-1.415-4.107-2.678-4.498-4.735c-0.392-2.06-0.783-5.56,2.542-7.412
- c3.324-1.854,5.866-7.617,10.756-4.941c4.888,2.678,3.128,7.619,3.128,9.473C109.645-135.716,105.343-121.511,97.717-129.952z"
- />
- <path fill="#614B3F" d="M97.896-130.186c-1.229-1.373-3.944-2.596-4.319-4.592c-0.376-1.996-0.753-5.389,2.44-7.186
- c3.193-1.796,5.634-7.385,10.328-4.789c4.693,2.594,3.005,7.385,3.005,9.182C109.35-135.775,105.218-122.002,97.896-130.186z"
- />
- <path fill="#5B4940" d="M98.074-130.419c-1.179-1.328-3.78-2.513-4.14-4.444c-0.361-1.934-0.722-5.22,2.339-6.96
- c3.061-1.739,5.4-7.151,9.9-4.639c4.499,2.514,2.88,7.151,2.88,8.892S105.094-122.493,98.074-130.419z"/>
- <path fill="#54463F" d="M98.253-130.65c-1.128-1.285-3.617-2.433-3.961-4.302c-0.345-1.87-0.69-5.049,2.238-6.731
- c2.929-1.684,5.167-6.918,9.473-4.487c4.304,2.431,2.755,6.919,2.755,8.603C108.758-135.886,104.969-122.984,98.253-130.65z"/>
- <path fill="#4D423D" d="M98.432-130.885c-1.077-1.241-3.454-2.35-3.782-4.155c-0.329-1.808-0.659-4.879,2.138-6.506
- c2.796-1.626,4.934-6.687,9.045-4.336c4.109,2.35,2.631,6.687,2.631,8.312C108.464-135.943,104.845-123.477,98.432-130.885z"/>
- <path fill="#443D39" d="M98.61-131.118c-1.026-1.198-3.29-2.268-3.603-4.011c-0.314-1.743-0.629-4.708,2.036-6.278
- c2.664-1.569,4.699-6.452,8.617-4.186c3.914,2.268,2.506,6.452,2.506,8.022C108.166-136.002,104.72-123.968,98.61-131.118z"/>
- <path fill="#3A3534" d="M98.79-131.352c-0.976-1.154-3.128-2.186-3.425-3.866c-0.299-1.681-0.598-4.537,1.935-6.052
- c2.532-1.513,4.467-6.219,8.189-4.032c3.721,2.185,2.382,6.219,2.382,7.731C107.871-136.059,104.596-124.46,98.79-131.352z"/>
- <path fill="#252423" d="M98.969-131.585c-0.925-1.11-2.964-2.103-3.245-3.722c-0.283-1.616-0.567-4.367,1.833-5.823
- c2.4-1.456,4.233-5.986,7.762-3.883c3.525,2.104,2.258,5.985,2.258,7.442C107.577-136.115,104.471-124.95,98.969-131.585z"/>
- <path d="M99.148-131.816c-0.874-1.068-2.801-2.021-3.066-3.576c-0.268-1.556-0.536-4.198,1.732-5.599
- c2.268-1.399,4-5.753,7.334-3.731c3.331,2.021,2.133,5.754,2.133,7.152C107.281-136.171,104.347-125.441,99.148-131.816z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M80.964-37.404c-0.778-2.111-4-1.25-5.501-4c-1.5-2.75-5.25-7.25-2.75-11.75s-0.25-5,7.251-7
- c7.5-2,11.25-2.75,12.5,2.75S86.214-23.154,80.964-37.404z"/>
- <path fill="#82472C" d="M81.001-37.766c-0.759-2.047-3.897-1.211-5.36-3.877c-1.461-2.666-5.115-7.029-2.68-11.392
- c2.437-4.362-0.243-4.848,7.065-6.786c7.308-1.939,10.963-2.666,12.182,2.666C93.425-51.822,86.117-23.949,81.001-37.766z"/>
- <path fill="#7D4930" d="M81.038-38.125c-0.738-1.982-3.795-1.173-5.22-3.756c-1.423-2.582-4.981-6.809-2.609-11.033
- s-0.237-4.693,6.881-6.572c7.116-1.879,10.675-2.582,11.861,2.582S86.021-24.745,81.038-38.125z"/>
- <path fill="#794B34" d="M81.076-38.484c-0.719-1.918-3.693-1.137-5.079-3.635c-1.386-2.498-4.848-6.586-2.54-10.674
- c2.309-4.088-0.23-4.542,6.695-6.359c6.925-1.816,10.388-2.498,11.542,2.5C92.849-51.658,85.923-25.54,81.076-38.484z"/>
- <path fill="#754C37" d="M81.113-38.846c-0.698-1.854-3.592-1.098-4.938-3.512c-1.347-2.416-4.714-6.365-2.469-10.316
- c2.244-3.951-0.225-4.391,6.51-6.146c6.732-1.756,10.101-2.414,11.223,2.414C92.561-51.577,85.827-26.335,81.113-38.846z"/>
- <path fill="#704C3A" d="M81.151-39.207c-0.679-1.79-3.489-1.061-4.798-3.391s-4.579-6.145-2.398-9.957
- c2.181-3.813-0.218-4.237,6.324-5.932c6.541-1.695,9.813-2.332,10.903,2.33C92.272-51.494,85.731-27.13,81.151-39.207z"/>
- <path fill="#6B4C3C" d="M81.188-39.566c-0.658-1.726-3.387-1.021-4.657-3.269s-4.444-5.923-2.328-9.599
- c2.117-3.676-0.211-4.084,6.14-5.719c6.35-1.635,9.525-2.248,10.584,2.246C91.984-51.413,85.633-27.925,81.188-39.566z"/>
- <path fill="#664C3E" d="M81.226-39.928c-0.64-1.66-3.285-0.982-4.518-3.146c-1.231-2.162-4.311-5.701-2.258-9.24
- c2.053-3.539-0.205-3.933,5.954-5.506c6.157-1.572,9.238-2.162,10.265,2.163C91.694-51.331,85.536-28.721,81.226-39.928z"/>
- <path fill="#614B3F" d="M81.263-40.289c-0.619-1.596-3.183-0.945-4.376-3.023c-1.193-2.078-4.177-5.479-2.188-8.881
- c1.989-3.402-0.198-3.781,5.769-5.293c5.966-1.512,8.951-2.078,9.946,2.079C91.406-51.25,85.44-29.516,81.263-40.289z"/>
- <path fill="#5B4940" d="M81.3-40.648c-0.599-1.533-3.08-0.908-4.235-2.902c-1.155-1.995-4.043-5.26-2.117-8.523
- c1.925-3.265-0.192-3.627,5.583-5.078c5.774-1.451,8.663-1.994,9.626,1.995C91.117-51.168,85.343-30.313,81.3-40.648z"/>
- <path fill="#54463F" d="M81.337-41.01c-0.579-1.467-2.978-0.868-4.095-2.779c-1.116-1.911-3.908-5.038-2.047-8.166
- c1.86-3.127-0.187-3.474,5.397-4.863c5.583-1.391,8.376-1.912,9.308,1.91C90.829-51.085,85.246-31.107,81.337-41.01z"/>
- <path fill="#4D423D" d="M81.374-41.37c-0.559-1.403-2.876-0.831-3.954-2.657c-1.078-1.828-3.773-4.817-1.977-7.808
- s-0.18-3.322,5.212-4.651c5.392-1.328,8.089-1.826,8.988,1.827C90.541-51.004,85.15-31.902,81.374-41.37z"/>
- <path fill="#443D39" d="M81.411-41.73c-0.539-1.338-2.773-0.791-3.813-2.535c-1.039-1.743-3.64-4.596-1.906-7.449
- c1.733-2.852-0.173-3.169,5.027-4.438c5.199-1.268,7.802-1.742,8.669,1.744C90.252-50.922,85.052-32.698,81.411-41.73z"/>
- <path fill="#3A3534" d="M81.449-42.091c-0.52-1.274-2.672-0.754-3.673-2.414c-1.002-1.659-3.506-4.375-1.836-7.09
- c1.669-2.716-0.167-3.017,4.841-4.224c5.008-1.207,7.515-1.66,8.35,1.659C89.964-50.84,84.955-33.493,81.449-42.091z"/>
- <path fill="#252423" d="M81.486-42.452c-0.5-1.209-2.569-0.716-3.532-2.292c-0.963-1.574-3.372-4.152-1.766-6.73
- c1.604-2.578-0.161-2.864,4.656-4.01c4.815-1.146,7.227-1.576,8.03,1.575C89.675-50.758,84.859-34.288,81.486-42.452z"/>
- <path d="M81.524-42.813c-0.479-1.146-2.467-0.679-3.392-2.17c-0.925-1.49-3.237-3.932-1.695-6.373
- c1.541-2.439-0.154-2.711,4.471-3.795c4.624-1.084,6.939-1.492,7.711,1.491C89.387-50.677,84.762-35.084,81.524-42.813z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M120.464-54.154c-2.15-0.072-5.5,8.5-11.25,4.75s-8-2.5-9-7.75s0-8.75,5-11.75s6.5-6.25,11.5-2.75
- S127.964-53.904,120.464-54.154z"/>
- <path fill="#82472C" d="M120.182-54.328c-2.079-0.068-5.317,8.219-10.877,4.594c-5.559-3.625-7.734-2.418-8.701-7.494
- c-0.967-5.075,0-8.459,4.834-11.359s6.285-6.043,11.119-2.659C121.391-67.863,127.433-54.086,120.182-54.328z"/>
- <path fill="#7D4930" d="M119.9-54.502c-2.008-0.066-5.135,7.936-10.503,4.436c-5.368-3.502-7.47-2.334-8.403-7.236
- c-0.934-4.901,0-8.17,4.669-10.971c4.668-2.801,6.068-5.834,10.736-2.566S126.902-54.27,119.9-54.502z"/>
- <path fill="#794B34" d="M119.618-54.677c-1.938-0.064-4.953,7.653-10.131,4.278c-5.177-3.377-7.204-2.252-8.104-6.979
- c-0.899-4.728,0-7.879,4.503-10.58c4.502-2.702,5.854-5.628,10.355-2.478C120.743-67.283,126.371-54.451,119.618-54.677z"/>
- <path fill="#754C37" d="M119.335-54.85c-1.864-0.063-4.77,7.371-9.757,4.119c-4.986-3.252-6.938-2.168-7.805-6.722
- c-0.867-4.553,0-7.588,4.336-10.19c4.337-2.602,5.638-5.42,9.974-2.385C120.42-66.993,125.84-54.634,119.335-54.85z"/>
- <path fill="#704C3A" d="M119.054-55.023c-1.794-0.061-4.588,7.088-9.384,3.961c-4.796-3.129-6.673-2.086-7.507-6.465
- s0-7.298,4.171-9.801s5.422-5.213,9.592-2.294C120.096-66.702,125.309-54.816,119.054-55.023z"/>
- <path fill="#6B4C3C" d="M118.772-55.199c-1.723-0.058-4.405,6.809-9.011,3.805c-4.604-3.004-6.407-2.002-7.208-6.209
- c-0.801-4.205,0-7.008,4.005-9.41c4.005-2.402,5.206-5.006,9.21-2.202C119.773-66.412,124.777-54.999,118.772-55.199z"/>
- <path fill="#664C3E" d="M118.489-55.373c-1.651-0.055-4.223,6.525-8.637,3.646s-6.143-1.92-6.91-5.95
- c-0.768-4.03,0-6.718,3.839-9.021c3.839-2.304,4.991-4.798,8.829-2.11C119.448-66.122,124.246-55.182,118.489-55.373z"/>
- <path fill="#614B3F" d="M118.207-55.547c-1.58-0.053-4.04,6.244-8.264,3.488c-4.224-2.754-5.876-1.836-6.611-5.692
- c-0.733-3.856,0-6.427,3.674-8.631c3.673-2.204,4.774-4.591,8.446-2.021C119.125-65.831,123.716-55.363,118.207-55.547z"/>
- <path fill="#5B4940" d="M117.925-55.723c-1.508-0.049-3.858,5.963-7.89,3.332c-4.033-2.629-5.611-1.752-6.313-5.436
- c-0.7-3.682,0-6.137,3.508-8.24c3.507-2.104,4.56-4.385,8.065-1.93C118.802-65.541,123.185-55.546,117.925-55.723z"/>
- <path fill="#54463F" d="M117.643-55.896c-1.437-0.047-3.676,5.68-7.517,3.174c-3.842-2.506-5.346-1.67-6.015-5.178
- c-0.667-3.509,0-5.848,3.342-7.853c3.342-2.004,4.344-4.176,7.684-1.837C118.479-65.251,122.653-55.729,117.643-55.896z"/>
- <path fill="#4D423D" d="M117.36-56.07c-1.365-0.045-3.493,5.397-7.144,3.017c-3.651-2.382-5.08-1.587-5.715-4.921
- c-0.635-3.334,0-5.557,3.176-7.461c3.175-1.905,4.128-3.969,7.302-1.746C118.154-64.96,122.122-55.911,117.36-56.07z"/>
- <path fill="#443D39" d="M117.079-56.244c-1.295-0.043-3.312,5.115-6.771,2.859c-3.46-2.258-4.815-1.506-5.417-4.665
- c-0.602-3.159,0-5.267,3.01-7.072c3.01-1.805,3.912-3.761,6.92-1.653C117.831-64.67,121.591-56.094,117.079-56.244z"/>
- <path fill="#3A3534" d="M116.797-56.418c-1.223-0.041-3.129,4.833-6.397,2.701c-3.27-2.133-4.549-1.422-5.118-4.407
- c-0.567-2.985,0-4.976,2.844-6.683c2.844-1.705,3.697-3.553,6.539-1.563C117.508-64.379,121.061-56.275,116.797-56.418z"/>
- <path fill="#252423" d="M116.515-56.592c-1.151-0.039-2.946,4.551-6.023,2.543c-3.079-2.008-4.284-1.339-4.82-4.15
- c-0.534-2.811,0-4.685,2.679-6.292c2.678-1.606,3.48-3.346,6.156-1.472C117.184-64.089,120.529-56.459,116.515-56.592z"/>
- <path d="M116.233-56.768c-1.08-0.035-2.764,4.27-5.65,2.387c-2.888-1.885-4.019-1.256-4.521-3.893
- c-0.501-2.638,0-4.396,2.513-5.902c2.512-1.508,3.266-3.139,5.775-1.381C116.86-63.799,119.998-56.641,116.233-56.768z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M105.626-79.673c0.447,1.55-1.041,6.81-2.772,7.562c-1.73,0.75-2.913,2.121-9.393,1.308
- c-6.479-0.814-5.552,4.192-10.908,2.45c-5.357-1.74-7.417-8.98-6.272-11.351c1.143-2.369,6.643-14.606,12.956-6.14
- C95.552-77.376,103.618-86.636,105.626-79.673z"/>
- <path fill="#82472C" d="M105.231-79.619c0.438,1.518-1.019,6.661-2.713,7.396c-1.692,0.734-2.85,2.074-9.188,1.279
- c-6.338-0.797-5.431,4.101-10.67,2.397c-5.241-1.703-7.256-8.786-6.137-11.103c1.118-2.317,6.498-14.289,12.674-6.006
- C95.375-77.371,103.266-86.43,105.231-79.619z"/>
- <path fill="#7D4930" d="M104.834-79.564c0.428,1.482-0.995,6.513-2.651,7.231c-1.655,0.72-2.786,2.029-8.983,1.251
- c-6.196-0.777-5.31,4.009-10.433,2.346c-5.124-1.666-7.094-8.591-5.999-10.856c1.093-2.267,6.354-13.97,12.392-5.872
- C95.199-77.366,102.914-86.223,104.834-79.564z"/>
- <path fill="#794B34" d="M104.438-79.509c0.418,1.448-0.973,6.362-2.591,7.065c-1.617,0.703-2.723,1.983-8.778,1.224
- c-6.055-0.761-5.188,3.918-10.194,2.291c-5.008-1.628-6.933-8.395-5.862-10.608c1.067-2.214,6.208-13.65,12.108-5.738
- C95.023-77.361,102.562-86.016,104.438-79.509z"/>
- <path fill="#754C37" d="M104.042-79.453c0.408,1.414-0.95,6.215-2.53,6.901s-2.659,1.937-8.574,1.194
- c-5.914-0.744-5.067,3.826-9.956,2.236c-4.891-1.589-6.771-8.197-5.727-10.361c1.044-2.162,6.063-13.332,11.827-5.604
- C94.847-77.355,102.209-85.811,104.042-79.453z"/>
- <path fill="#704C3A" d="M103.647-79.398c0.397,1.381-0.928,6.066-2.471,6.736c-1.541,0.67-2.596,1.891-8.369,1.166
- c-5.772-0.725-4.946,3.735-9.719,2.184c-4.773-1.551-6.608-8.002-5.589-10.112c1.019-2.111,5.918-13.015,11.544-5.472
- C94.67-77.352,101.858-85.604,103.647-79.398z"/>
- <path fill="#6B4C3C" d="M103.25-79.344c0.389,1.347-0.905,5.918-2.409,6.572c-1.505,0.653-2.532,1.844-8.165,1.137
- c-5.631-0.707-4.825,3.644-9.48,2.131c-4.657-1.514-6.447-7.807-5.453-9.866c0.994-2.059,5.774-12.696,11.262-5.337
- S101.505-85.396,103.25-79.344z"/>
- <path fill="#664C3E" d="M102.854-79.289c0.379,1.313-0.882,5.77-2.349,6.407c-1.466,0.637-2.469,1.798-7.96,1.108
- c-5.49-0.689-4.704,3.551-9.242,2.078c-4.541-1.477-6.286-7.611-5.316-9.619c0.969-2.009,5.629-12.377,10.979-5.203
- C94.318-77.342,101.152-85.189,102.854-79.289z"/>
- <path fill="#614B3F" d="M102.458-79.234c0.369,1.279-0.859,5.621-2.289,6.242c-1.428,0.621-2.404,1.751-7.755,1.08
- c-5.349-0.672-4.583,3.461-9.005,2.024c-4.424-1.438-6.124-7.416-5.18-9.371c0.944-1.956,5.484-12.06,10.697-5.069
- C94.141-77.337,100.801-84.982,102.458-79.234z"/>
- <path fill="#5B4940" d="M102.062-79.179c0.359,1.245-0.836,5.473-2.228,6.077c-1.391,0.604-2.342,1.705-7.551,1.051
- c-5.207-0.654-4.463,3.369-8.767,1.97c-4.307-1.399-5.963-7.219-5.043-9.123c0.919-1.905,5.339-11.741,10.415-4.935
- C93.965-77.332,100.448-84.775,102.062-79.179z"/>
- <path fill="#54463F" d="M101.666-79.124c0.35,1.211-0.814,5.324-2.168,5.913c-1.353,0.588-2.277,1.659-7.346,1.023
- c-5.065-0.637-4.342,3.277-8.528,1.916c-4.19-1.36-5.802-7.023-4.907-8.875C79.612-81,83.912-90.568,88.85-83.948
- C93.788-77.327,100.096-84.568,101.666-79.124z"/>
- <path fill="#4D423D" d="M101.27-79.068c0.34,1.176-0.791,5.176-2.107,5.746c-1.314,0.572-2.214,1.613-7.141,0.995
- c-4.924-0.618-4.221,3.187-8.291,1.864c-4.073-1.323-5.639-6.828-4.77-8.628c0.87-1.802,5.05-11.104,9.85-4.667
- C93.611-77.322,99.744-84.363,101.27-79.068z"/>
- <path fill="#443D39" d="M100.874-79.014c0.33,1.144-0.769,5.027-2.047,5.582c-1.277,0.557-2.15,1.568-6.937,0.967
- c-4.782-0.602-4.1,3.095-8.053,1.811c-3.957-1.285-5.478-6.633-4.634-8.382c0.846-1.75,4.905-10.786,9.568-4.534
- S99.392-84.156,100.874-79.014z"/>
- <path fill="#3A3534" d="M100.478-78.959c0.32,1.109-0.745,4.879-1.986,5.417c-1.239,0.539-2.087,1.521-6.731,0.938
- c-4.642-0.584-3.979,3.004-7.814,1.756c-3.84-1.247-5.316-6.437-4.497-8.133c0.82-1.698,4.76-10.468,9.285-4.399
- C93.26-77.313,99.039-83.949,100.478-78.959z"/>
- <path fill="#252423" d="M100.082-78.904c0.311,1.076-0.724,4.731-1.926,5.254c-1.202,0.522-2.023,1.475-6.527,0.908
- c-4.5-0.564-3.857,2.913-7.577,1.703c-3.723-1.209-5.154-6.24-4.36-7.886c0.796-1.646,4.616-10.148,9.004-4.267
- C93.084-77.309,98.688-83.742,100.082-78.904z"/>
- <path d="M99.686-78.85c0.301,1.043-0.7,4.582-1.865,5.089c-1.164,0.506-1.96,1.428-6.322,0.88
- c-4.358-0.547-3.736,2.82-7.339,1.65c-3.606-1.172-4.993-6.045-4.224-7.64c0.771-1.595,4.471-9.83,8.721-4.132
- S98.335-83.536,99.686-78.85z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M72.213-92.904c-2.728-1.783-10.25-7.75-8-11.25s2.5-5.5,5.75-6.75s4.5-4.5,10.501-1.5
- c6,3,10.75,9.25,9.75,13S78.714-88.654,72.213-92.904z"/>
- <path fill="#82472C" d="M72.342-93.22c-2.661-1.726-9.999-7.492-7.805-10.875c2.195-3.384,2.439-5.316,5.609-6.525
- c3.17-1.208,4.39-4.35,10.244-1.45c5.853,2.9,10.486,8.941,9.511,12.566C88.927-95.879,78.683-89.111,72.342-93.22z"/>
- <path fill="#7D4930" d="M72.47-93.537c-2.594-1.665-9.748-7.232-7.607-10.5c2.14-3.267,2.377-5.133,5.468-6.3
- c3.091-1.166,4.28-4.2,9.986-1.399s10.224,8.633,9.273,12.133S78.652-89.57,72.47-93.537z"/>
- <path fill="#794B34" d="M72.599-93.854c-2.527-1.605-9.497-6.976-7.412-10.125c2.084-3.15,2.316-4.95,5.327-6.075
- c3.012-1.125,4.17-4.05,9.729-1.351c5.559,2.7,9.96,8.325,9.034,11.7C88.351-96.329,78.622-90.029,72.599-93.854z"/>
- <path fill="#754C37" d="M72.728-94.17c-2.46-1.546-9.246-6.717-7.217-9.75c2.029-3.033,2.256-4.766,5.187-5.85
- c2.933-1.084,4.06-3.899,9.473-1.301c5.412,2.602,9.697,8.018,8.795,11.268S78.592-90.486,72.728-94.17z"/>
- <path fill="#704C3A" d="M72.857-94.486c-2.394-1.486-8.995-6.459-7.021-9.375c1.975-2.918,2.194-4.584,5.047-5.625
- c2.852-1.041,3.949-3.75,9.214-1.25c5.266,2.5,9.435,7.709,8.557,10.834C87.776-96.779,78.561-90.945,72.857-94.486z"/>
- <path fill="#6B4C3C" d="M72.984-94.804c-2.326-1.427-8.744-6.2-6.824-9c1.919-2.8,2.133-4.399,4.905-5.399
- s3.839-3.601,8.957-1.199c5.118,2.399,9.171,7.399,8.318,10.399S78.53-91.404,72.984-94.804z"/>
- <path fill="#664C3E" d="M73.113-95.12c-2.26-1.368-8.493-5.942-6.629-8.625c1.864-2.684,2.071-4.217,4.765-5.175
- c2.692-0.959,3.729-3.45,8.699-1.15c4.972,2.301,8.908,7.092,8.08,9.967C87.199-97.229,78.499-91.861,73.113-95.12z"/>
- <path fill="#614B3F" d="M73.241-95.438c-2.192-1.309-8.241-5.684-6.433-8.25c1.81-2.566,2.011-4.032,4.624-4.949
- c2.613-0.917,3.618-3.301,8.442-1.102c4.825,2.201,8.645,6.783,7.841,9.533C86.911-97.455,78.469-92.32,73.241-95.438z"/>
- <path fill="#5B4940" d="M73.37-95.754c-2.126-1.249-7.99-5.425-6.237-7.875c1.755-2.45,1.949-3.85,4.483-4.725
- c2.534-0.875,3.509-3.149,8.186-1.051c4.678,2.101,8.381,6.476,7.602,9.101C86.625-97.679,78.438-92.779,73.37-95.754z"/>
- <path fill="#54463F" d="M73.499-96.07c-2.06-1.188-7.74-5.166-6.041-7.5c1.699-2.332,1.888-3.666,4.342-4.5
- c2.454-0.832,3.398-3,7.929-1c4.531,2,8.117,6.168,7.363,8.668C86.336-97.904,78.407-93.236,73.499-96.07z"/>
- <path fill="#4D423D" d="M73.627-96.387c-1.992-1.129-7.488-4.908-5.845-7.125c1.645-2.217,1.827-3.483,4.201-4.275
- c2.375-0.792,3.288-2.85,7.671-0.949c4.384,1.899,7.854,5.857,7.125,8.232C86.049-98.129,78.377-93.695,73.627-96.387z"/>
- <path fill="#443D39" d="M73.756-96.704c-1.926-1.069-7.237-4.649-5.649-6.75c1.589-2.1,1.766-3.3,4.061-4.05
- s3.178-2.699,7.414-0.898c4.236,1.799,7.592,5.549,6.886,7.799S78.346-94.154,73.756-96.704z"/>
- <path fill="#3A3534" d="M73.885-97.021c-1.859-1.011-6.987-4.392-5.454-6.375c1.534-1.982,1.705-3.116,3.92-3.824
- c2.216-0.708,3.068-2.549,7.157-0.85c4.09,1.699,7.328,5.241,6.646,7.366S78.316-94.611,73.885-97.021z"/>
- <path fill="#252423" d="M74.013-97.337c-1.792-0.951-6.735-4.133-5.257-6s1.643-2.935,3.778-3.601
- c2.136-0.666,2.958-2.399,6.899-0.799c3.943,1.6,7.065,4.934,6.409,6.934C85.186-98.804,78.284-95.07,74.013-97.337z"/>
- <path d="M74.142-97.654c-1.726-0.892-6.484-3.875-5.062-5.625c1.424-1.75,1.582-2.75,3.638-3.375
- c2.057-0.625,2.848-2.25,6.643-0.75c3.796,1.5,6.802,4.625,6.17,6.5C84.898-99.029,78.254-95.529,74.142-97.654z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M114.964-86.654c-3.36-2.352-5.25-6.75-4-9.5s5.5-10.5,9.75-7.75s12.5,7.5,8.5,11.75
- S122.464-81.404,114.964-86.654z"/>
- <path fill="#82472C" d="M115.046-86.904c-3.308-2.272-5.167-6.524-3.937-9.183c1.229-2.659,5.413-10.149,9.597-7.492
- c4.183,2.658,12.304,7.25,8.366,11.358C125.135-88.111,122.429-81.829,115.046-86.904z"/>
- <path fill="#7D4930" d="M115.129-87.154c-3.256-2.195-5.086-6.3-3.875-8.867c1.211-2.566,5.327-9.799,9.443-7.232
- c4.117,2.566,12.108,7,8.233,10.967C125.057-88.32,122.394-82.254,115.129-87.154z"/>
- <path fill="#794B34" d="M115.211-87.404c-3.202-2.115-5.003-6.074-3.812-8.55c1.19-2.475,5.24-9.45,9.29-6.975
- c4.05,2.475,11.913,6.75,8.101,10.575C124.979-88.529,122.358-82.679,115.211-87.404z"/>
- <path fill="#754C37" d="M115.293-87.654c-3.149-2.037-4.921-5.85-3.749-8.232c1.171-2.383,5.154-9.1,9.138-6.717
- c3.984,2.385,11.717,6.5,7.967,10.184C124.9-88.736,122.322-83.104,115.293-87.654z"/>
- <path fill="#704C3A" d="M115.375-87.904c-3.097-1.959-4.838-5.625-3.686-7.916c1.151-2.293,5.067-8.75,8.984-6.459
- c3.917,2.293,11.521,6.25,7.833,9.793C124.821-88.945,122.287-83.529,115.375-87.904z"/>
- <path fill="#6B4C3C" d="M115.458-88.154c-3.044-1.881-4.756-5.399-3.624-7.6c1.132-2.2,4.981-8.4,8.832-6.2
- c3.85,2.2,11.324,6,7.7,9.399C124.743-89.154,122.252-83.954,115.458-88.154z"/>
- <path fill="#664C3E" d="M115.54-88.404c-2.991-1.803-4.673-5.175-3.561-7.283c1.111-2.107,4.895-8.049,8.679-5.94
- c3.783,2.108,11.128,5.75,7.566,9.008C124.664-89.361,122.217-84.378,115.54-88.404z"/>
- <path fill="#614B3F" d="M115.622-88.654c-2.938-1.724-4.591-4.949-3.498-6.966c1.093-2.017,4.81-7.7,8.525-5.684
- c3.717,2.017,10.934,5.5,7.434,8.616C124.586-89.57,122.182-84.804,115.622-88.654z"/>
- <path fill="#5B4940" d="M115.704-88.904c-2.886-1.646-4.508-4.725-3.435-6.649c1.072-1.925,4.723-7.351,8.372-5.425
- c3.65,1.925,10.737,5.25,7.301,8.225C124.507-89.779,122.147-85.229,115.704-88.904z"/>
- <path fill="#54463F" d="M115.787-89.154c-2.833-1.566-4.426-4.5-3.373-6.332c1.053-1.834,4.637-7,8.22-5.168
- c3.583,1.834,10.541,5,7.167,7.834C124.429-89.986,122.111-85.654,115.787-89.154z"/>
- <path fill="#4D423D" d="M115.869-89.404c-2.78-1.488-4.344-4.274-3.31-6.017c1.033-1.742,4.55-6.649,8.066-4.908
- c3.517,1.741,10.345,4.75,7.033,7.441C124.351-90.195,122.076-86.079,115.869-89.404z"/>
- <path fill="#443D39" d="M115.951-89.654c-2.728-1.41-4.261-4.05-3.247-5.699c1.014-1.65,4.464-6.301,7.914-4.65
- c3.449,1.65,10.148,4.5,6.899,7.05C124.272-90.404,122.04-86.504,115.951-89.654z"/>
- <path fill="#3A3534" d="M116.034-89.904c-2.676-1.332-4.179-3.824-3.185-5.383c0.993-1.559,4.377-5.949,7.76-4.392
- c3.384,1.558,9.954,4.25,6.767,6.657C124.193-90.611,122.005-86.929,116.034-89.904z"/>
- <path fill="#252423" d="M116.116-90.154c-2.622-1.254-4.097-3.6-3.122-5.065c0.975-1.468,4.291-5.601,7.607-4.134
- c3.316,1.467,9.758,4,6.634,6.267C124.114-90.82,121.97-87.354,116.116-90.154z"/>
- <path d="M116.198-90.404c-2.569-1.176-4.014-3.375-3.059-4.75c0.954-1.375,4.204-5.25,7.454-3.875s9.562,3.75,6.5,5.875
- C124.036-91.029,121.935-87.779,116.198-90.404z"/>
- </g>
- </g>
- <g>
- <path fill="#71462C" d="M26.713-44.07c6.911-0.216,9-8.25,4.75-10.5s-8.75-2.75-8,0.75S18.713-43.82,26.713-44.07z"/>
- <path fill="#71462C" d="M17.998-115.616c-0.065,2.148,1.359,5.312,3.79,4.466c-1.736,0.604,6.823,0.789,3.685-3.673
- C23.845-117.138,18.158-120.917,17.998-115.616z"/>
- <path fill="#71462C" d="M138.13-75.07c-2.361,0.858-11-4-8.75-7.5s1.25-5.75,5-6s4.75,3.25,7,5S140.88-76.07,138.13-75.07z"/>
- <path fill="#71462C" d="M13.713-75.07c-2.361,0.858-11-4-8.75-7.5s1.25-5.75,5-6s4.75,3.25,7,5S16.463-76.07,13.713-75.07z"/>
- <path fill="#71462C" d="M15.463-9.57c-2.665-3.635-3.25-7.25-0.5-8.75s4.5-3,7.75-2.75s5.25,3,5.25,6s0.5,8-3.5,8.75
- S18.213-5.82,15.463-9.57z"/>
- <path fill="#71462C" d="M29.713-34.57c-0.901-1.803-2.5-5.5-0.5-6.25s6.5-0.25,7.5,0.75S32.213-29.57,29.713-34.57z"/>
- <path fill="#71462C" d="M54.651-9.195c-1.63-1.63-1.5-7.25,0.25-7.5s4.25,0.5,6.25,2S57.401-6.445,54.651-9.195z"/>
- <path fill="#71462C" d="M37.613-58.121c-3.018-3.42-6-4-5.2-6.4c0.8-2.399,6.8-6.799,9.6-6.399c2.801,0.399,6.4,0.399,7.4,4.601
- c1,4.199,1.2,6.199-1,8.399C46.213-55.721,40.613-54.721,37.613-58.121z"/>
- <path fill="#71462C" d="M66.213-41.57c3.593-2.053,5-5,1-6.5s-5.5-2.5-5.25,0.5S62.713-39.57,66.213-41.57z"/>
- <path fill="#71462C" d="M59.963-54.82c3.215,0.989,3.5-5.75,2.5-7s-6-8.25-6-6S56.713-55.82,59.963-54.82z"/>
- <path fill="#71462C" d="M54.213-101.32c2.025,1.012,5.5,1,6-2.75s1-5.25-1.25-5.75S49.713-103.57,54.213-101.32z"/>
- <path fill="#71462C" d="M27.963-117.82c4.72-0.539,10-2.5,10.5-5.5s1.25-4.75-0.75-6.75s-4.75-4.75-7.5-2.75
- S19.213-116.82,27.963-117.82z"/>
- <path fill="#71462C" d="M119.714-25.57c0,0,4.75-1.25,4.75-2.25s1.25-3-0.5-4.75s-2.25-5.5-5.5-4.5s-7.5,8.5-5.25,10.75
- S117.714-22.07,119.714-25.57z"/>
- <path fill="#71462C" d="M125.464-40.82c2.559-0.512,6.5-2.5,6.25-4s-0.5-2-2.25-3.25s-3.25-4.25-6-1.25
- S121.714-40.07,125.464-40.82z"/>
- <path fill="#71462C" d="M84.214-15.57c-1.342-0.447-2.75-4-1.5-6.5s2.75-4.5,5.5-4.25S91.714-13.07,84.214-15.57z"/>
- <path fill="#71462C" d="M15.463-133.966c-2.665-3.636-3.25-7.25-0.5-8.75s4.5-3,7.75-2.75s5.25,3,5.25,6s0.5,8-3.5,8.75
- S18.213-130.216,15.463-133.966z"/>
- <path fill="#71462C" d="M54.651-133.591c-1.63-1.632-1.5-7.25,0.25-7.5s4.25,0.5,6.25,2S57.401-130.841,54.651-133.591z"/>
- <path fill="#71462C" d="M125.214-70.57c0.647,0.375,4.5,0.75,2.5-3.75s-3.25-5.5-4.5-6.5s-3.75-1.75-4.25-0.5
- S118.714-74.32,125.214-70.57z"/>
- <path fill="#71462C" d="M69.651-63.008c3.325-2.139,6.751-2.25,6-5c-0.75-2.75-1.5-6-4-7s-7.25,3.5-6,5.25
- S66.151-60.758,69.651-63.008z"/>
- <path fill="#71462C" d="M50.351-120.95c-0.342-2.254-2.35-6.092,0.132-7.776c2.481-1.688,5.082-2.486,7.725-0.945
- s3.934,5.791,7.198,8.602c3.264,2.813,2.581,8.498-1.71,7.449C59.403-114.673,51.128-115.818,50.351-120.95z"/>
- <path fill="#71462C" d="M78.214-117.32c-3.634-2.423-1.25-5.75,0.5-6s5-0.25,7.25,1.25s6.5,5.5,2.5,6.25
- S79.714-116.32,78.214-117.32z"/>
- <path fill="#71462C" d="M95.952-91.508c-2.694-3.203,0.145-7.988,3.88-9.568c3.737-1.58,4.466-5.142,8.021-5.223
- c3.558-0.082,2.765,3.168,1.36,8.979C107.81-91.509,101.541-84.861,95.952-91.508z"/>
- <path fill="#71462C" d="M94.964-62.07c-1.765-0.378-4-3.5-2.25-4.75s2.5-4,4.5-1S98.464-61.32,94.964-62.07z"/>
- <path fill="#71462C" d="M117.464-115.57c-1.273-2.728-3.5-4.75-2.5-5.5s1.75-3,4-1.25s1.75,4.75,2.75,6.25s3,4.75,3.25,5.5
- S120.964-108.07,117.464-115.57z"/>
- <path fill="#71462C" d="M94.828-111.913c-0.574-1.603,0.032-7.521,1.699-8.91c1.667-1.389,2.671-2.659,5.587-0.854
- c2.917,1.805,4.07,2.146,6.067,4.934c1.999,2.789,6.08,8.076,1.379,6.998C104.86-110.823,96.722-106.646,94.828-111.913z"/>
- </g>
- <g>
- <path fill="#201B1B" d="M25.713-43.404c6.911-0.216,9-8.25,4.75-10.5s-8.75-2.75-8,0.75S17.713-43.154,25.713-43.404z"/>
- <path fill="#201B1B" d="M16.998-114.95c-0.065,2.15,1.359,5.313,3.79,4.468c-1.736,0.604,6.823,0.787,3.685-3.675
- C22.845-116.47,17.158-120.251,16.998-114.95z"/>
- <path fill="#201B1B" d="M137.13-74.404c-2.361,0.858-11-4-8.75-7.5s1.25-5.75,5-6s4.75,3.25,7,5S139.88-75.404,137.13-74.404z"
- />
- <path fill="#201B1B" d="M12.713-74.404c-2.361,0.858-11-4-8.75-7.5s1.25-5.75,5-6s4.75,3.25,7,5S15.463-75.404,12.713-74.404z"
- />
- <path fill="#201B1B" d="M14.463-8.904c-2.665-3.634-3.25-7.25-0.5-8.75s4.5-3,7.75-2.75s5.25,3,5.25,6s0.5,8-3.5,8.75
- S17.213-5.154,14.463-8.904z"/>
- <path fill="#201B1B" d="M28.713-33.904c-0.901-1.803-2.5-5.5-0.5-6.25s6.5-0.25,7.5,0.75S31.213-28.904,28.713-33.904z"/>
- <path fill="#201B1B" d="M53.651-8.529c-1.63-1.63-1.5-7.25,0.25-7.5s4.25,0.5,6.25,2S56.401-5.779,53.651-8.529z"/>
- <path fill="#201B1B" d="M36.613-57.454c-3.018-3.42-6-4-5.2-6.399c0.8-2.4,6.8-6.801,9.6-6.4c2.801,0.4,6.4,0.4,7.4,4.6
- c1,4.2,1.2,6.2-1,8.4C45.213-55.054,39.613-54.054,36.613-57.454z"/>
- <path fill="#201B1B" d="M65.213-40.904c3.593-2.053,5-5,1-6.5s-5.5-2.5-5.25,0.5S61.713-38.904,65.213-40.904z"/>
- <path fill="#201B1B" d="M58.963-54.154c3.215,0.989,3.5-5.75,2.5-7s-6-8.25-6-6S55.713-55.154,58.963-54.154z"/>
- <path fill="#201B1B" d="M53.213-100.654c2.025,1.014,5.5,1,6-2.75s1-5.25-1.25-5.75S48.713-102.904,53.213-100.654z"/>
- <path fill="#201B1B" d="M26.963-117.152c4.72-0.539,10-2.5,10.5-5.5s1.25-4.75-0.75-6.75s-4.75-4.75-7.5-2.75
- S18.213-116.152,26.963-117.152z"/>
- <path fill="#201B1B" d="M118.714-24.904c0,0,4.75-1.25,4.75-2.25s1.25-3-0.5-4.75s-2.25-5.5-5.5-4.5s-7.5,8.5-5.25,10.75
- S116.714-21.404,118.714-24.904z"/>
- <path fill="#201B1B" d="M124.464-40.154c2.559-0.512,6.5-2.5,6.25-4s-0.5-2-2.25-3.25s-3.25-4.25-6-1.25
- S120.714-39.404,124.464-40.154z"/>
- <path fill="#201B1B" d="M83.214-14.904c-1.342-0.447-2.75-4-1.5-6.5s2.75-4.5,5.5-4.25S90.714-12.404,83.214-14.904z"/>
- <path fill="#201B1B" d="M14.463-133.3c-2.665-3.636-3.25-7.25-0.5-8.75s4.5-3,7.75-2.75s5.25,3,5.25,6s0.5,8-3.5,8.75
- S17.213-129.55,14.463-133.3z"/>
- <path fill="#201B1B" d="M53.651-132.925c-1.63-1.629-1.5-7.25,0.25-7.5s4.25,0.5,6.25,2S56.401-130.175,53.651-132.925z"/>
- <path fill="#201B1B" d="M124.214-69.904c0.647,0.375,4.5,0.75,2.5-3.75s-3.25-5.5-4.5-6.5s-3.75-1.75-4.25-0.5
- S117.714-73.654,124.214-69.904z"/>
- <path fill="#201B1B" d="M68.651-62.341c3.325-2.138,6.75-2.25,6-5s-1.5-6-4-7s-7.25,3.5-6,5.25S65.151-60.091,68.651-62.341z"/>
- <path fill="#201B1B" d="M49.351-120.284c-0.342-2.254-2.35-6.092,0.132-7.776c2.482-1.686,5.082-2.484,7.725-0.943
- s3.934,5.789,7.198,8.602c3.264,2.812,2.581,8.498-1.71,7.447C58.403-114.005,50.128-115.152,49.351-120.284z"/>
- <path fill="#201B1B" d="M77.214-116.652c-3.634-2.423-1.251-5.75,0.5-6c1.75-0.25,5-0.25,7.25,1.25s6.5,5.5,2.5,6.25
- S78.714-115.652,77.214-116.652z"/>
- <path fill="#201B1B" d="M94.952-90.842c-2.694-3.203,0.145-7.988,3.88-9.568c3.737-1.58,4.466-5.141,8.021-5.223
- c3.558-0.081,2.765,3.168,1.36,8.979C106.808-90.843,100.541-84.193,94.952-90.842z"/>
- <path fill="#201B1B" d="M93.964-61.404c-1.765-0.378-4-3.5-2.25-4.75s2.5-4,4.5-1S97.464-60.654,93.964-61.404z"/>
- <path fill="#201B1B" d="M116.464-114.902c-1.273-2.729-3.5-4.75-2.5-5.5s1.75-3,4-1.25s1.75,4.75,2.75,6.25s3,4.75,3.25,5.5
- S119.964-107.404,116.464-114.902z"/>
- <path fill="#201B1B" d="M93.828-111.247c-0.574-1.603,0.032-7.521,1.699-8.907c1.667-1.389,2.671-2.66,5.587-0.855
- c2.917,1.805,4.07,2.146,6.067,4.936c1.999,2.787,6.08,8.076,1.379,6.996C103.86-110.157,95.722-105.979,93.828-111.247z"/>
- </g>
- </g>
- </g>
-</pattern>
-<g>
- <g>
- <defs>
- <rect id="SVGID_1_" width="941" height="173"/>
- </defs>
- <clipPath id="SVGID_2_">
- <use xlink:href="#SVGID_1_" overflow="visible"/>
- </clipPath>
- <g clip-path="url(#SVGID_2_)">
- <g>
-
- <radialGradient id="SVGID_3_" cx="-195.7568" cy="-341.2734" r="603.466" gradientTransform="matrix(1.1782 0 0 -1.1139 706.9349 -193.6455)" gradientUnits="userSpaceOnUse">
- <stop offset="0.1044" style="stop-color:#7DC242"/>
- <stop offset="0.1332" style="stop-color:#60AD3F"/>
- <stop offset="0.2002" style="stop-color:#1F8837"/>
- <stop offset="0.2628" style="stop-color:#006C2D"/>
- <stop offset="0.3191" style="stop-color:#005B25"/>
- <stop offset="0.3671" style="stop-color:#00501F"/>
- <stop offset="0.4011" style="stop-color:#004C1D"/>
- <stop offset="0.4283" style="stop-color:#00491C"/>
- <stop offset="0.7072" style="stop-color:#003214"/>
- <stop offset="0.9042" style="stop-color:#00240F"/>
- <stop offset="1" style="stop-color:#001E0C"/>
- </radialGradient>
- <rect x="-358.798" y="-343" fill="url(#SVGID_3_)" width="1670.184" height="1059"/>
- </g>
- <g>
- <pattern id="SVGID_4_" xlink:href="#Cheetah" patternTransform="matrix(1 0 0 -1 -139.085 -16821.6523)">
- </pattern>
-
- <rect x="-517.037" y="-290.443" opacity="0.07" fill="url(#SVGID_4_)" enable-background="new " width="2036.271" height="1291.123"/>
- </g>
- </g>
- </g>
-</g>
-<g>
- <g>
- <g>
- <path fill="#FFFFFF" d="M325.856,34.486c0,0,8.237,0.317,8.237,8.172l0.084,46.331c0,0.448,0.084,0.842,0.253,1.179
- c0.168,0.337,0.448,0.506,0.843,0.506h7.412l9.098-0.033c0,6.9-6.395,6.856-6.395,6.856h-13.996
- c-6.176,0-5.555-8.339-5.555-8.339L325.856,34.486z"/>
- <path fill="#FFFFFF" d="M501.165,34.571c0,0,8.433,0.656,8.312,8.087v46.667c0,0,0.215,8.172-8.378,8.172L501.165,34.571z"/>
- <path fill="#FFFFFF" d="M535.257,97.497l-0.004-8.087V41.9l-0.021-7.373l6.677-0.041c0.675,0,1.18,0.155,1.517,0.464
- c0.337,0.31,0.59,0.745,0.758,1.306c0,0.112,0.28,1.067,0.844,2.863c0.561,1.799,1.264,4.031,2.104,6.697
- c0.843,2.668,1.755,5.589,2.738,8.761c0.981,3.174,1.908,6.206,2.779,9.099c0.869,2.893,1.643,5.433,2.316,7.623
- c0.674,2.19,1.122,3.651,1.349,4.381c0.055,0.113,0.126,0.225,0.211,0.337c0.084,0.113,0.126,0.084,0.126-0.085V42.573
- c0,0-0.414-8.087,7.463-8.087l-0.05,8.003v52.817c0,0.562-0.169,1.066-0.507,1.516c-0.337,0.451-0.843,0.675-1.517,0.675h-4.885
- c-0.731,0-1.251-0.31-1.561-0.927c-0.309-0.617-0.604-1.403-0.884-2.358c-0.113-0.28-0.478-1.392-1.096-3.328
- s-1.362-4.267-2.232-6.991c-0.871-2.724-1.797-5.63-2.778-8.719c-0.983-3.087-1.896-5.952-2.738-8.593
- c-0.842-2.639-1.545-4.844-2.105-6.612c-0.563-1.769-0.843-2.681-0.843-2.738c-0.057-0.111-0.112-0.195-0.168-0.252
- c-0.057-0.055-0.085,0.084-0.085,0.421v31.926C542.665,89.325,543.003,97.497,535.257,97.497z"/>
- <g>
- <path fill="#FFFFFF" d="M619.424,89.41c-1.117-6.151-2.163-11.825-3.14-17.039c0.038-0.026,0.075-0.055,0.114-0.081
- c-0.477-2.712-0.936-5.321-1.371-7.814c-0.563-3.145-1.109-6.233-1.644-9.267c-0.535-3.032-1.011-5.771-1.433-8.213
- l-2.307-12.51h-0.582h-10.212h-0.583l-2.306,12.51c-0.421,2.442-0.896,5.181-1.433,8.213c-0.532,3.033-1.08,6.122-1.644,9.267
- c-0.953,5.437-2,11.396-3.139,17.874c0.01,0.005,0.02,0.01,0.029,0.015c-0.419,2.278-0.848,4.622-1.287,7.046l-1.54,8.087
- c8.69,0,9.238-7.277,9.238-7.277l0.617-3.619c0.041,0.033,0.085,0.062,0.127,0.095c0.112-0.778,0.224-1.516,0.334-2.214
- c0.113-0.7,0.168-1.191,0.168-1.474c0.114-0.674,0.339-1.122,0.675-1.348c0.338-0.225,0.759-0.337,1.264-0.337h8.069h1.533
- c0.899,0,1.404,0.563,1.518,1.685l1.229,7.212c0,0,0.548,7.277,9.238,7.277L619.424,89.41z M600.05,74.332
- c-0.393,0-0.702-0.14-0.927-0.422c-0.225-0.28-0.309-0.59-0.253-0.927c0-0.055,0.084-0.533,0.253-1.433
- c0.168-0.896,0.366-2.049,0.59-3.452c0.225-1.404,0.479-2.991,0.758-4.761c0.282-1.769,0.59-3.58,0.928-5.433l2.526-14.657
- h0.066l2.526,14.657c0.337,1.853,0.646,3.664,0.928,5.433c0.279,1.77,0.532,3.356,0.758,4.761
- c0.224,1.403,0.422,2.556,0.591,3.452c0.168,0.899,0.252,1.378,0.252,1.433c0.056,0.337-0.028,0.646-0.252,0.927
- c-0.226,0.282-0.535,0.422-0.927,0.422H600.05z"/>
- </g>
- </g>
- <g>
- <path fill="#FFFFFF" d="M470.054,34.486c-0.451,0-0.843,0.085-1.18,0.253c-0.337,0.168-0.619,0.506-0.842,1.011l-7.582,14.489
- c-0.956,1.798-1.896,3.567-2.822,5.307c-0.927,1.742-1.741,3.314-2.442,4.718c-0.702,1.405-1.292,2.527-1.769,3.369
- c-0.478,0.843-0.716,1.293-0.716,1.349c-0.113,0.168-0.239,0.281-0.379,0.336c-0.142,0.058-0.268-0.055-0.379-0.336
- c-0.113-0.112-0.493-0.786-1.139-2.021s-1.461-2.781-2.442-4.634c-0.983-1.854-2.05-3.888-3.201-6.107
- c-1.151-2.218-2.261-4.394-3.327-6.528c-1.067-2.133-2.021-4.086-2.864-5.854c-0.842-1.77-1.461-3.13-1.854-4.086
- c-0.168-0.392-0.437-0.701-0.8-0.926c-0.366-0.224-0.717-0.338-1.054-0.338h-5.587v63.021c1.466,0.017,7.946-0.351,7.946-8.097
- v-0.085V54.872c0-0.224,0.042-0.336,0.126-0.336s0.154,0.056,0.211,0.167c2.022,3.708,3.846,7.105,5.475,10.193
- c0.675,1.293,1.361,2.584,2.064,3.875c0.702,1.292,1.333,2.457,1.896,3.496c0.562,1.04,1.024,1.925,1.391,2.653
- c0.365,0.73,0.603,1.18,0.716,1.348c0.168,0.337,0.518,0.604,1.053,0.801c0.533,0.197,1.123,0.295,1.77,0.295
- c0.644,0,1.233-0.098,1.769-0.295c0.533-0.196,0.886-0.491,1.054-0.885c0.056-0.168,0.279-0.617,0.674-1.348
- c0.392-0.729,0.87-1.629,1.432-2.695s1.179-2.232,1.854-3.496c0.674-1.264,1.375-2.54,2.105-3.833
- c1.628-3.032,3.482-6.401,5.561-10.109c0.11-0.279,0.237-0.378,0.379-0.294c0.139,0.084,0.211,0.183,0.211,0.294v34.455
- c0,0-0.316,8.148,7.803,8.331V34.486H470.054z"/>
- </g>
- </g>
- <g>
- <path fill="#FFFFFF" d="M395.419,42.658v42.034c0,2.19-0.674,3.805-2.021,4.844c-1.349,1.04-2.78,1.559-4.297,1.559
- c-1.572,0-3.047-0.519-4.423-1.559c-1.376-1.039-2.063-2.653-2.063-4.844V42.573c0-7.068-7.254-7.98-8.311-8.076v51.835
- c0.1,1.734,0.467,3.283,1.107,4.637c0.758,1.602,1.812,2.922,3.159,3.958c1.348,1.04,2.919,1.813,4.718,2.317
- c1.797,0.505,3.734,0.759,5.813,0.759c2.077,0,4.001-0.254,5.771-0.759c1.769-0.505,3.313-1.277,4.633-2.317
- c1.319-1.036,2.359-2.356,3.117-3.958c0.584-1.234,0.94-2.627,1.075-4.178V34.488C395.044,34.53,395.419,42.658,395.419,42.658z"
- />
- </g>
-</g>
-<g>
- <path fill="#FFFFFF" d="M349.745,131.884c0.386,0,0.714,0.054,0.983,0.155c0.271,0.104,0.492,0.249,0.668,0.438
- c0.175,0.189,0.303,0.418,0.384,0.688c0.081,0.269,0.121,0.569,0.121,0.901v5.701c0,0.666-0.168,1.198-0.505,1.599
- c-0.338,0.399-0.888,0.6-1.651,0.6h-2.898v-0.364c0-0.196,0.027-0.348,0.082-0.451s0.125-0.178,0.215-0.223
- c0.108-0.063,0.162-0.156,0.162-0.281v-7.44c0-0.081-0.019-0.146-0.054-0.195c-0.036-0.05-0.076-0.083-0.121-0.102
- c-0.09-0.045-0.16-0.116-0.209-0.216c-0.049-0.098-0.074-0.237-0.074-0.418v-0.392H349.745z M350.567,134.04
- c0-0.313-0.065-0.565-0.196-0.754c-0.13-0.188-0.339-0.283-0.626-0.283h-0.93c-0.063,0-0.11,0.021-0.143,0.062
- c-0.032,0.039-0.047,0.082-0.047,0.127v7.48c0,0.045,0.013,0.087,0.041,0.128c0.027,0.041,0.063,0.062,0.107,0.062h0.971
- c0.288,0,0.497-0.094,0.626-0.283c0.13-0.188,0.196-0.439,0.196-0.755V134.04z"/>
- <path fill="#FFFFFF" d="M362.609,133.063c-0.041,0.041-0.062,0.088-0.062,0.143v2.816c0,0.127,0.067,0.188,0.202,0.188h1.604
- c0.046,0,0.093,0.017,0.142,0.047c0.049,0.032,0.074,0.083,0.074,0.155v0.755c0,0.126-0.067,0.188-0.203,0.188h-1.617
- c-0.135,0-0.202,0.063-0.202,0.188v3.141c0,0.127,0.054,0.188,0.162,0.188h1.348c0.1,0,0.148-0.06,0.148-0.175
- c0-0.145,0.061-0.258,0.182-0.338s0.285-0.121,0.492-0.121h0.512v1.389c0,0.1-0.033,0.18-0.101,0.242s-0.151,0.095-0.25,0.095
- h-0.836h-2.628h-0.81v-0.351c0-0.197,0.025-0.35,0.075-0.451c0.049-0.104,0.119-0.178,0.208-0.223
- c0.117-0.063,0.175-0.157,0.175-0.283v-7.453c0-0.081-0.018-0.145-0.054-0.188c-0.036-0.045-0.077-0.082-0.122-0.108
- c-0.09-0.046-0.159-0.116-0.208-0.216c-0.05-0.099-0.075-0.237-0.075-0.418v-0.392h4.273c0.108,0,0.193,0.032,0.256,0.095
- c0.063,0.063,0.095,0.131,0.095,0.203v1.428h-0.499c-0.188,0-0.349-0.023-0.479-0.073s-0.195-0.15-0.195-0.304
- c0-0.055-0.014-0.105-0.041-0.154c-0.026-0.051-0.076-0.074-0.147-0.074h-1.294C362.692,133.003,362.65,133.023,362.609,133.063z"
- />
- <path fill="#FFFFFF" d="M375.798,134.876c0,0.181,0.085,0.351,0.256,0.513c0.17,0.161,0.382,0.325,0.634,0.491
- c0.251,0.167,0.527,0.343,0.828,0.524c0.302,0.186,0.577,0.391,0.829,0.615c0.251,0.225,0.462,0.476,0.634,0.754
- c0.17,0.278,0.256,0.599,0.256,0.957v1.32c0,0.342-0.068,0.641-0.203,0.896c-0.135,0.255-0.315,0.468-0.539,0.634
- c-0.226,0.166-0.485,0.289-0.782,0.37c-0.296,0.081-0.611,0.121-0.943,0.121c-0.333,0-0.646-0.04-0.942-0.121
- c-0.297-0.081-0.555-0.204-0.775-0.37s-0.396-0.378-0.525-0.634c-0.131-0.256-0.195-0.555-0.195-0.896v-1.011h0.646
- c0.242,0,0.425,0.058,0.546,0.168c0.121,0.112,0.182,0.272,0.182,0.479v0.578c0,0.117,0.034,0.221,0.101,0.311
- c0.067,0.091,0.153,0.167,0.256,0.229c0.104,0.063,0.218,0.112,0.345,0.148c0.125,0.035,0.247,0.054,0.364,0.054
- c0.116,0,0.237-0.021,0.363-0.062c0.125-0.039,0.243-0.094,0.352-0.161c0.106-0.067,0.194-0.148,0.263-0.242
- c0.067-0.095,0.101-0.2,0.101-0.315v-1.43c0-0.297-0.083-0.551-0.249-0.762c-0.167-0.212-0.376-0.402-0.627-0.573
- c-0.252-0.17-0.523-0.339-0.814-0.505c-0.292-0.167-0.564-0.35-0.815-0.546c-0.252-0.198-0.461-0.431-0.627-0.694
- s-0.249-0.587-0.249-0.964v-0.957c0-0.358,0.059-0.667,0.175-0.924c0.117-0.255,0.279-0.468,0.485-0.633
- c0.207-0.166,0.449-0.287,0.729-0.363c0.277-0.077,0.584-0.115,0.917-0.115c0.332,0,0.64,0.044,0.923,0.128
- c0.282,0.086,0.529,0.213,0.74,0.379c0.212,0.166,0.375,0.377,0.492,0.633c0.117,0.257,0.175,0.555,0.175,0.896v0.998h-0.605
- c-0.225,0-0.414-0.071-0.566-0.217c-0.152-0.144-0.229-0.322-0.229-0.539v-0.498c0-0.108-0.032-0.202-0.094-0.283
- c-0.063-0.081-0.143-0.146-0.236-0.194s-0.198-0.086-0.312-0.107c-0.111-0.023-0.213-0.034-0.303-0.034
- c-0.099,0-0.202,0.015-0.31,0.04c-0.107,0.027-0.211,0.066-0.311,0.121c-0.099,0.055-0.18,0.12-0.242,0.195
- c-0.063,0.076-0.094,0.164-0.094,0.264L375.798,134.876L375.798,134.876z"/>
- <path fill="#FFFFFF" d="M393.063,140.82c0.1,0.045,0.181,0.109,0.243,0.195c0.063,0.084,0.095,0.23,0.095,0.438v0.513h-0.271h-0.62
- c-0.107,0-0.2-0.007-0.275-0.021c-0.076-0.014-0.145-0.038-0.202-0.074c-0.059-0.035-0.114-0.09-0.168-0.161
- c-0.055-0.071-0.112-0.162-0.175-0.271c-0.028-0.055-0.075-0.144-0.143-0.27c-0.066-0.126-0.145-0.275-0.229-0.452
- c-0.085-0.175-0.179-0.36-0.276-0.559c-0.099-0.198-0.197-0.4-0.296-0.606c-0.234-0.477-0.494-1.003-0.782-1.576l-0.215,0.416
- v2.307c0,0.07,0.011,0.125,0.033,0.16c0.021,0.037,0.056,0.072,0.101,0.107c0.072,0.055,0.145,0.131,0.216,0.229
- c0.072,0.101,0.108,0.226,0.108,0.379v0.391h-2.237v-0.391c0-0.153,0.036-0.278,0.107-0.379c0.072-0.098,0.144-0.174,0.216-0.229
- c0.036-0.035,0.065-0.068,0.087-0.101c0.022-0.031,0.039-0.089,0.047-0.168v-7.534c-0.009-0.072-0.024-0.126-0.047-0.162
- c-0.021-0.036-0.051-0.066-0.087-0.095c-0.072-0.054-0.144-0.13-0.216-0.229c-0.072-0.099-0.107-0.224-0.107-0.377v-0.404h2.225
- v0.404c0,0.153-0.037,0.278-0.108,0.377c-0.072,0.1-0.144,0.176-0.215,0.229c-0.045,0.026-0.079,0.059-0.102,0.095
- s-0.033,0.094-0.033,0.175v2.534l1.792-3.234c0.044-0.1,0.106-0.192,0.188-0.283c0.063-0.071,0.145-0.139,0.242-0.201
- c0.099-0.063,0.22-0.096,0.364-0.096h0.849v0.525c0,0.198-0.052,0.348-0.155,0.445c-0.103,0.098-0.203,0.171-0.303,0.215
- c-0.073,0.037-0.124,0.082-0.155,0.136s-0.069,0.116-0.114,0.188c-0.019,0.025-0.065,0.109-0.143,0.249s-0.168,0.311-0.275,0.513
- c-0.107,0.201-0.226,0.422-0.352,0.66c-0.125,0.238-0.247,0.467-0.362,0.688c-0.117,0.221-0.222,0.418-0.312,0.594
- c-0.09,0.175-0.152,0.299-0.188,0.371c-0.019,0.045-0.031,0.084-0.041,0.121c-0.01,0.035,0,0.095,0.026,0.174
- c0,0.02,0.029,0.084,0.087,0.197c0.059,0.111,0.132,0.258,0.223,0.438c0.089,0.18,0.192,0.382,0.31,0.605
- c0.117,0.225,0.233,0.455,0.352,0.688c0.277,0.548,0.593,1.164,0.943,1.847c0.044,0.072,0.089,0.127,0.134,0.161
- C392.893,140.748,392.964,140.784,393.063,140.82z"/>
- <path fill="#FFFFFF" d="M407.525,131.999c0.082,0.094,0.122,0.254,0.122,0.478v0.418v0.741h-0.729
- c-0.126,0-0.225-0.042-0.296-0.127c-0.072-0.086-0.108-0.2-0.108-0.344c0-0.117-0.05-0.176-0.147-0.176h-0.66
- c-0.054,0-0.102,0.018-0.142,0.054c-0.041,0.036-0.062,0.096-0.062,0.176v7.453c0,0.09,0.014,0.152,0.041,0.188
- c0.027,0.037,0.063,0.072,0.108,0.107c0.071,0.055,0.141,0.131,0.209,0.229c0.066,0.101,0.101,0.226,0.101,0.379v0.391h-2.237
- v-0.391c0-0.153,0.036-0.278,0.108-0.379c0.072-0.098,0.145-0.174,0.215-0.229c0.036-0.035,0.068-0.07,0.095-0.107
- c0.027-0.035,0.041-0.099,0.041-0.188v-7.494c0-0.063-0.021-0.109-0.066-0.142c-0.045-0.031-0.09-0.047-0.135-0.047h-0.594
- c-0.036,0-0.079,0.014-0.128,0.04c-0.049,0.027-0.073,0.076-0.073,0.147c0,0.153-0.04,0.269-0.121,0.345
- c-0.082,0.076-0.229,0.113-0.445,0.113h-0.621v-0.82v-0.393c0-0.207,0.056-0.354,0.169-0.438c0.112-0.086,0.285-0.129,0.52-0.129
- h4.394C407.296,131.857,407.444,131.904,407.525,131.999z"/>
- <path fill="#FFFFFF" d="M418.752,142.087c-0.333,0-0.643-0.041-0.93-0.121c-0.287-0.081-0.539-0.207-0.754-0.377
- c-0.217-0.171-0.385-0.385-0.506-0.641c-0.121-0.257-0.183-0.556-0.183-0.896v-6.254c0-0.342,0.062-0.64,0.183-0.896
- s0.289-0.467,0.506-0.633c0.215-0.166,0.467-0.291,0.754-0.371c0.288-0.082,0.598-0.121,0.93-0.121s0.642,0.039,0.93,0.121
- c0.287,0.08,0.537,0.205,0.748,0.371c0.21,0.166,0.377,0.377,0.499,0.633c0.121,0.257,0.183,0.555,0.183,0.896v6.254
- c0,0.343-0.062,0.642-0.183,0.896s-0.288,0.47-0.499,0.641c-0.211,0.17-0.461,0.296-0.748,0.377
- C419.395,142.046,419.085,142.087,418.752,142.087z M419.79,133.852c0-0.179-0.031-0.33-0.094-0.451
- c-0.063-0.121-0.145-0.219-0.243-0.297c-0.1-0.076-0.208-0.131-0.33-0.168c-0.121-0.035-0.245-0.054-0.371-0.054
- s-0.251,0.019-0.377,0.054c-0.126,0.037-0.238,0.092-0.336,0.168c-0.1,0.078-0.18,0.176-0.243,0.297
- c-0.063,0.121-0.094,0.272-0.094,0.451v6.146c0,0.18,0.031,0.33,0.094,0.451c0.063,0.121,0.145,0.221,0.243,0.297
- s0.21,0.133,0.336,0.168c0.126,0.036,0.251,0.054,0.377,0.054c0.125,0,0.25-0.018,0.371-0.054c0.122-0.035,0.23-0.092,0.33-0.168
- c0.099-0.076,0.18-0.176,0.243-0.297c0.063-0.121,0.094-0.271,0.094-0.451V133.852z"/>
- <path fill="#FFFFFF" d="M432.878,131.884c0.763,0,1.313,0.198,1.645,0.593c0.333,0.396,0.499,0.932,0.499,1.604v1.469
- c0,0.675-0.166,1.202-0.499,1.584s-0.882,0.573-1.645,0.573h-0.876c-0.126,0-0.189,0.054-0.189,0.161v2.804
- c0,0.09,0.012,0.152,0.034,0.188c0.022,0.037,0.057,0.072,0.102,0.107c0.071,0.055,0.144,0.131,0.215,0.229
- c0.072,0.101,0.108,0.226,0.108,0.379v0.391h-2.25v-0.391c0-0.153,0.035-0.278,0.106-0.379c0.072-0.098,0.145-0.174,0.215-0.229
- c0.045-0.035,0.079-0.07,0.103-0.107c0.021-0.035,0.033-0.099,0.033-0.188v-7.48c0-0.135-0.059-0.232-0.175-0.297
- c-0.09-0.054-0.167-0.134-0.229-0.242c-0.063-0.107-0.094-0.252-0.094-0.43v-0.339H432.878z M433.686,134.055
- c0-0.313-0.064-0.565-0.194-0.755c-0.13-0.188-0.335-0.282-0.613-0.282h-0.85c-0.055,0-0.104,0.016-0.148,0.047
- s-0.068,0.078-0.068,0.142v3.181c0,0.127,0.06,0.189,0.177,0.189h0.89c0.278,0,0.482-0.096,0.613-0.283
- c0.13-0.189,0.194-0.439,0.194-0.756V134.055z"/>
- <path fill="#FFFFFF" d="M456.983,133.063c-0.041,0.041-0.062,0.088-0.062,0.143v2.816c0,0.127,0.067,0.188,0.203,0.188h1.604
- c0.046,0,0.093,0.017,0.142,0.047c0.049,0.032,0.075,0.083,0.075,0.155v0.755c0,0.126-0.068,0.188-0.202,0.188h-1.617
- c-0.135,0-0.203,0.063-0.203,0.188v3.141c0,0.127,0.054,0.188,0.162,0.188h1.348c0.1,0,0.148-0.06,0.148-0.175
- c0-0.145,0.061-0.258,0.182-0.338c0.122-0.08,0.285-0.121,0.492-0.121h0.512v1.389c0,0.1-0.033,0.18-0.101,0.242
- s-0.15,0.095-0.249,0.095h-0.836h-2.628h-0.81v-0.351c0-0.197,0.025-0.35,0.074-0.451c0.049-0.104,0.119-0.178,0.209-0.223
- c0.117-0.063,0.175-0.157,0.175-0.283v-7.453c0-0.081-0.018-0.145-0.054-0.188c-0.036-0.045-0.076-0.082-0.121-0.108
- c-0.09-0.046-0.16-0.116-0.209-0.216c-0.049-0.099-0.074-0.237-0.074-0.418v-0.392h4.273c0.107,0,0.193,0.032,0.256,0.095
- c0.063,0.063,0.094,0.131,0.094,0.203v1.428h-0.499c-0.188,0-0.349-0.023-0.479-0.073s-0.196-0.15-0.196-0.304
- c0-0.055-0.013-0.105-0.04-0.154c-0.026-0.051-0.077-0.074-0.147-0.074h-1.294C457.066,133.003,457.023,133.023,456.983,133.063z"
- />
- <path fill="#FFFFFF" d="M474.094,131.884v0.392c0,0.152-0.036,0.279-0.107,0.377c-0.072,0.1-0.145,0.176-0.215,0.229
- c-0.037,0.035-0.066,0.071-0.089,0.107s-0.038,0.094-0.047,0.176v8.45c0,0.09-0.026,0.171-0.081,0.242
- c-0.054,0.072-0.136,0.107-0.243,0.107h-0.78c-0.117,0-0.2-0.05-0.249-0.148c-0.05-0.099-0.098-0.225-0.143-0.377
- c-0.019-0.045-0.075-0.223-0.176-0.531c-0.1-0.311-0.219-0.684-0.356-1.119c-0.14-0.438-0.287-0.9-0.444-1.396
- c-0.157-0.494-0.304-0.951-0.438-1.373c-0.135-0.424-0.247-0.775-0.337-1.06s-0.134-0.429-0.134-0.438
- c-0.01-0.019-0.019-0.031-0.027-0.041c-0.01-0.008-0.014,0.015-0.014,0.067v5.108c0,0.1,0.014,0.166,0.041,0.201
- c0.026,0.037,0.063,0.067,0.107,0.096c0.07,0.054,0.141,0.13,0.209,0.229c0.065,0.1,0.101,0.225,0.101,0.377v0.404h-2.103v-0.404
- c0-0.152,0.035-0.277,0.106-0.377c0.072-0.1,0.146-0.176,0.216-0.229c0.036-0.027,0.067-0.059,0.096-0.096
- c0.027-0.035,0.04-0.099,0.04-0.188v-7.602c-0.091-0.036-0.166-0.086-0.229-0.148c-0.063-0.054-0.116-0.128-0.16-0.223
- c-0.045-0.094-0.067-0.219-0.067-0.37v-0.445h1.522c0.107,0,0.188,0.025,0.242,0.074c0.054,0.05,0.094,0.119,0.121,0.209
- c0,0.019,0.045,0.171,0.135,0.459c0.09,0.287,0.203,0.646,0.338,1.071c0.135,0.427,0.279,0.894,0.438,1.4
- c0.157,0.508,0.305,0.993,0.443,1.456c0.14,0.464,0.264,0.869,0.371,1.22c0.108,0.351,0.18,0.584,0.217,0.701
- c0.008,0.019,0.02,0.035,0.032,0.053c0.015,0.02,0.021,0.015,0.021-0.012v-5.339c0-0.089-0.013-0.151-0.039-0.188
- c-0.027-0.035-0.06-0.071-0.095-0.106c-0.071-0.055-0.145-0.131-0.217-0.229c-0.071-0.098-0.106-0.225-0.106-0.377v-0.392h2.101
- V131.884z"/>
- <path fill="#FFFFFF" d="M488.528,131.896v0.404c0,0.153-0.031,0.278-0.095,0.377c-0.063,0.1-0.131,0.172-0.202,0.217
- c-0.046,0.035-0.085,0.076-0.121,0.121c-0.035,0.045-0.063,0.104-0.08,0.176c-0.234,1.555-0.441,2.947-0.62,4.179
- c-0.081,0.528-0.159,1.046-0.236,1.55c-0.077,0.503-0.144,0.955-0.202,1.354c-0.058,0.399-0.106,0.727-0.147,0.978
- c-0.04,0.252-0.062,0.388-0.062,0.405c-0.009,0.07-0.038,0.142-0.088,0.209c-0.049,0.066-0.119,0.101-0.208,0.101h-1.456
- c-0.225,0-0.351-0.112-0.377-0.337c-0.045-0.261-0.112-0.648-0.203-1.166c-0.09-0.518-0.188-1.082-0.296-1.697
- c-0.107-0.615-0.221-1.248-0.337-1.895c-0.117-0.646-0.223-1.24-0.315-1.779c-0.096-0.539-0.175-0.982-0.236-1.334
- c-0.063-0.351-0.094-0.539-0.094-0.566c-0.02-0.09-0.039-0.151-0.063-0.188c-0.022-0.036-0.056-0.072-0.101-0.107
- c-0.072-0.045-0.141-0.116-0.203-0.217c-0.063-0.099-0.094-0.224-0.094-0.377v-0.404h2.143v0.404c0,0.162-0.029,0.29-0.087,0.385
- c-0.061,0.095-0.124,0.164-0.195,0.209c-0.045,0.035-0.079,0.071-0.102,0.107c-0.023,0.036-0.024,0.1-0.007,0.188
- c0.216,1.401,0.407,2.65,0.58,3.748c0.071,0.467,0.144,0.926,0.215,1.375s0.138,0.849,0.195,1.199
- c0.059,0.351,0.123,0.74,0.195,1.172c0.009,0,0.031-0.107,0.067-0.324c0.035-0.215,0.08-0.497,0.135-0.848
- c0.054-0.352,0.112-0.75,0.176-1.199s0.129-0.908,0.201-1.375c0.162-1.098,0.338-2.347,0.525-3.748c0-0.09-0.01-0.151-0.026-0.188
- c-0.019-0.036-0.05-0.072-0.095-0.107c-0.063-0.045-0.125-0.114-0.188-0.209c-0.063-0.095-0.095-0.223-0.095-0.385v-0.404h2.198
- V131.896z"/>
- <path fill="#FFFFFF" d="M498.92,140.658v0.027c0,0.08,0.014,0.139,0.04,0.174c0.027,0.037,0.059,0.067,0.095,0.096
- c0.071,0.054,0.145,0.13,0.217,0.229c0.07,0.1,0.106,0.225,0.106,0.377v0.404h-2.25v-0.404c0-0.152,0.031-0.275,0.094-0.371
- c0.063-0.094,0.14-0.172,0.229-0.234c0.045-0.027,0.079-0.059,0.102-0.096c0.023-0.035,0.033-0.094,0.033-0.174v-0.027v-7.467
- c0-0.09-0.011-0.152-0.033-0.188c-0.021-0.036-0.057-0.071-0.102-0.108c-0.072-0.054-0.145-0.129-0.215-0.229
- c-0.072-0.1-0.107-0.225-0.107-0.378v-0.392h2.25v0.392c0,0.153-0.036,0.278-0.106,0.378c-0.072,0.1-0.146,0.175-0.217,0.229
- c-0.045,0.037-0.079,0.072-0.101,0.108c-0.023,0.036-0.034,0.099-0.034,0.188L498.92,140.658L498.92,140.658z"/>
- <path fill="#FFFFFF" d="M513.085,140.928c0.072,0.045,0.142,0.102,0.21,0.17c0.066,0.066,0.102,0.182,0.102,0.344v0.524h-1.119
- c-0.233,0-0.406-0.062-0.52-0.183c-0.111-0.121-0.169-0.28-0.169-0.479v-2.642c0-0.313-0.063-0.56-0.195-0.735
- c-0.131-0.175-0.339-0.263-0.626-0.263h-0.836c-0.116,0-0.176,0.063-0.176,0.188v2.816c0,0.09,0.014,0.152,0.041,0.188
- c0.026,0.037,0.059,0.072,0.094,0.107c0.072,0.055,0.146,0.131,0.217,0.229c0.071,0.101,0.107,0.226,0.107,0.379v0.391h-2.238
- v-0.391c0-0.153,0.036-0.278,0.108-0.379c0.072-0.098,0.144-0.174,0.216-0.229c0.035-0.035,0.067-0.07,0.094-0.107
- c0.027-0.035,0.041-0.099,0.041-0.188v-7.494c0-0.07-0.014-0.128-0.041-0.168c-0.025-0.04-0.059-0.068-0.094-0.088
- c-0.072-0.045-0.142-0.115-0.209-0.216c-0.066-0.099-0.102-0.242-0.102-0.431v-0.393h2.776c0.387,0,0.715,0.057,0.983,0.169
- c0.27,0.112,0.491,0.269,0.667,0.466s0.304,0.434,0.384,0.707c0.081,0.273,0.122,0.577,0.122,0.909v1.39
- c0,0.287-0.059,0.549-0.176,0.787c-0.116,0.238-0.271,0.435-0.458,0.586c-0.081,0.082-0.072,0.172,0.027,0.271
- c0.205,0.152,0.358,0.363,0.457,0.633c0.1,0.271,0.148,0.571,0.148,0.903v1.981c0,0.09,0.016,0.146,0.047,0.168
- C513.002,140.877,513.04,140.9,513.085,140.928z M511.589,134.04c0-0.313-0.063-0.563-0.195-0.748
- c-0.131-0.185-0.339-0.274-0.626-0.274h-0.796c-0.144,0-0.216,0.063-0.216,0.188v3.208c0,0.045,0.02,0.08,0.055,0.106
- s0.071,0.041,0.107,0.041h0.85c0.287,0,0.495-0.095,0.626-0.283c0.132-0.188,0.195-0.439,0.195-0.754V134.04z"/>
- <path fill="#FFFFFF" d="M524.501,142.087c-0.332,0-0.643-0.041-0.93-0.121c-0.288-0.081-0.539-0.207-0.755-0.377
- c-0.217-0.171-0.385-0.385-0.507-0.641c-0.12-0.257-0.182-0.556-0.182-0.896v-6.254c0-0.342,0.062-0.64,0.182-0.896
- c0.122-0.256,0.29-0.467,0.507-0.633c0.216-0.166,0.467-0.291,0.755-0.371c0.287-0.082,0.598-0.121,0.93-0.121
- s0.643,0.039,0.931,0.121c0.287,0.08,0.536,0.205,0.748,0.371c0.21,0.166,0.377,0.377,0.498,0.633
- c0.121,0.257,0.183,0.555,0.183,0.896v6.254c0,0.343-0.062,0.642-0.183,0.896s-0.288,0.47-0.498,0.641
- c-0.212,0.17-0.461,0.296-0.748,0.377C525.144,142.046,524.833,142.087,524.501,142.087z M525.539,133.852
- c0-0.179-0.031-0.33-0.095-0.451s-0.145-0.219-0.242-0.297c-0.099-0.076-0.209-0.131-0.33-0.168
- c-0.121-0.035-0.245-0.054-0.371-0.054s-0.252,0.019-0.377,0.054c-0.126,0.037-0.238,0.092-0.337,0.168
- c-0.1,0.078-0.18,0.176-0.243,0.297c-0.063,0.121-0.095,0.272-0.095,0.451v6.146c0,0.18,0.031,0.33,0.095,0.451
- c0.064,0.121,0.145,0.221,0.243,0.297s0.211,0.133,0.337,0.168c0.125,0.036,0.251,0.054,0.377,0.054s0.25-0.018,0.371-0.054
- c0.121-0.035,0.231-0.092,0.33-0.168s0.18-0.176,0.242-0.297s0.095-0.271,0.095-0.451V133.852z"/>
- <path fill="#FFFFFF" d="M541.254,131.884v0.392c0,0.152-0.036,0.279-0.106,0.377c-0.072,0.1-0.145,0.176-0.217,0.229
- c-0.036,0.035-0.064,0.071-0.088,0.107c-0.021,0.036-0.038,0.094-0.047,0.176v8.45c0,0.09-0.026,0.171-0.081,0.242
- c-0.054,0.072-0.135,0.107-0.242,0.107h-0.781c-0.116,0-0.2-0.05-0.249-0.148c-0.051-0.099-0.098-0.225-0.143-0.377
- c-0.018-0.045-0.076-0.223-0.175-0.531c-0.1-0.311-0.218-0.684-0.357-1.119c-0.139-0.438-0.287-0.9-0.443-1.396
- c-0.157-0.494-0.305-0.951-0.438-1.373c-0.135-0.424-0.247-0.775-0.337-1.06s-0.135-0.429-0.135-0.438
- c-0.009-0.019-0.018-0.031-0.026-0.041c-0.01-0.008-0.014,0.015-0.014,0.067v5.108c0,0.1,0.014,0.166,0.04,0.201
- c0.027,0.037,0.063,0.067,0.107,0.096c0.071,0.054,0.142,0.13,0.21,0.229c0.065,0.1,0.101,0.225,0.101,0.377v0.404h-2.103v-0.404
- c0-0.152,0.034-0.277,0.106-0.377s0.145-0.176,0.216-0.229c0.036-0.027,0.067-0.059,0.096-0.096c0.025-0.035,0.04-0.099,0.04-0.188
- v-7.602c-0.091-0.036-0.166-0.086-0.229-0.148c-0.063-0.054-0.118-0.128-0.162-0.223c-0.045-0.094-0.067-0.219-0.067-0.37v-0.445
- h1.522c0.108,0,0.189,0.025,0.243,0.074c0.054,0.05,0.095,0.119,0.121,0.209c0,0.019,0.045,0.171,0.135,0.459
- c0.09,0.287,0.202,0.646,0.337,1.071s0.28,0.894,0.438,1.4c0.156,0.508,0.305,0.993,0.443,1.456c0.139,0.464,0.263,0.869,0.37,1.22
- c0.108,0.351,0.181,0.584,0.217,0.701c0.009,0.019,0.021,0.035,0.033,0.053c0.014,0.02,0.021,0.015,0.021-0.012v-5.339
- c0-0.089-0.014-0.151-0.041-0.188c-0.025-0.035-0.059-0.071-0.094-0.106c-0.072-0.055-0.144-0.131-0.216-0.229
- c-0.072-0.098-0.108-0.225-0.108-0.377v-0.392h2.104V131.884z"/>
- <path fill="#FFFFFF" d="M558.055,132.673c-0.049,0.095-0.101,0.168-0.154,0.222c-0.071,0.063-0.147,0.108-0.229,0.135v7.59
- c0,0.09,0.013,0.152,0.04,0.188c0.027,0.036,0.063,0.067,0.108,0.094c0.07,0.056,0.144,0.132,0.215,0.229
- c0.071,0.101,0.107,0.234,0.107,0.404v0.432h-2.211v-0.444c0-0.152,0.036-0.278,0.108-0.377c0.07-0.1,0.144-0.177,0.216-0.229
- c0.045-0.026,0.08-0.058,0.107-0.095c0.026-0.035,0.041-0.098,0.041-0.188v-5.514c0-0.018-0.013-0.033-0.034-0.047
- c-0.022-0.014-0.043,0.003-0.062,0.047c-0.333,0.594-0.63,1.133-0.89,1.617c-0.117,0.207-0.229,0.412-0.337,0.613
- c-0.108,0.203-0.207,0.39-0.297,0.561c-0.09,0.17-0.166,0.314-0.229,0.431c-0.063,0.117-0.099,0.188-0.106,0.216
- c-0.026,0.063-0.083,0.11-0.168,0.143c-0.086,0.031-0.181,0.047-0.283,0.047c-0.104,0-0.198-0.016-0.283-0.047
- c-0.086-0.031-0.142-0.074-0.169-0.129c-0.018-0.026-0.056-0.098-0.114-0.215c-0.059-0.116-0.133-0.258-0.223-0.426
- c-0.09-0.166-0.191-0.352-0.303-0.559c-0.112-0.207-0.224-0.414-0.33-0.62c-0.262-0.494-0.554-1.038-0.877-1.632
- c-0.009-0.018-0.021-0.026-0.033-0.026c-0.014,0-0.021,0.019-0.021,0.056v5.512v0.014c0,0.09,0.013,0.152,0.034,0.188
- c0.022,0.037,0.057,0.068,0.102,0.096c0.071,0.054,0.145,0.13,0.216,0.229c0.071,0.1,0.107,0.225,0.107,0.377v0.404h-2.251v-0.404
- c0-0.152,0.036-0.277,0.107-0.377c0.072-0.1,0.144-0.176,0.216-0.229c0.045-0.027,0.081-0.059,0.108-0.096
- c0.025-0.035,0.039-0.098,0.039-0.188v-7.643c-0.09-0.026-0.166-0.071-0.229-0.135c-0.063-0.055-0.116-0.129-0.161-0.223
- c-0.045-0.095-0.067-0.218-0.067-0.371v-0.418h1.401c0.054,0,0.109,0.02,0.169,0.055s0.102,0.086,0.127,0.147
- c0.063,0.153,0.162,0.371,0.297,0.654c0.136,0.282,0.288,0.595,0.459,0.937c0.17,0.342,0.349,0.689,0.532,1.045
- c0.185,0.354,0.354,0.68,0.512,0.978c0.158,0.297,0.288,0.544,0.392,0.741s0.164,0.306,0.183,0.324
- c0.019,0.045,0.038,0.063,0.062,0.053c0.021-0.008,0.042-0.026,0.061-0.053c0-0.01,0.038-0.082,0.114-0.218
- c0.076-0.134,0.171-0.313,0.283-0.539c0.111-0.224,0.241-0.476,0.391-0.754s0.299-0.562,0.452-0.851l1.213-2.317
- c0.035-0.081,0.081-0.135,0.135-0.161c0.055-0.027,0.116-0.041,0.188-0.041h1.294v0.418
- C558.129,132.455,558.104,132.578,558.055,132.673z"/>
- <path fill="#FFFFFF" d="M568.581,133.063c-0.04,0.041-0.062,0.088-0.062,0.143v2.816c0,0.127,0.067,0.188,0.202,0.188h1.604
- c0.045,0,0.093,0.017,0.142,0.047c0.05,0.032,0.075,0.083,0.075,0.155v0.755c0,0.126-0.068,0.188-0.203,0.188h-1.617
- c-0.135,0-0.201,0.063-0.201,0.188v3.141c0,0.127,0.054,0.188,0.161,0.188h1.349c0.099,0,0.147-0.06,0.147-0.175
- c0-0.145,0.061-0.258,0.183-0.338c0.121-0.08,0.285-0.121,0.491-0.121h0.513v1.389c0,0.1-0.034,0.18-0.103,0.242
- c-0.066,0.063-0.148,0.095-0.249,0.095h-0.835h-2.628h-0.81v-0.351c0-0.197,0.023-0.35,0.074-0.451
- c0.05-0.104,0.118-0.178,0.209-0.223c0.115-0.063,0.175-0.157,0.175-0.283v-7.453c0-0.081-0.019-0.145-0.055-0.188
- c-0.035-0.045-0.075-0.082-0.12-0.108c-0.091-0.046-0.159-0.116-0.209-0.216c-0.051-0.099-0.074-0.237-0.074-0.418v-0.392h4.271
- c0.107,0,0.193,0.032,0.257,0.095c0.063,0.063,0.095,0.131,0.095,0.203v1.428h-0.499c-0.188,0-0.349-0.023-0.479-0.073
- c-0.131-0.05-0.195-0.15-0.195-0.304c0-0.055-0.014-0.105-0.04-0.154c-0.026-0.051-0.077-0.074-0.148-0.074h-1.294
- C568.664,133.003,568.621,133.023,568.581,133.063z"/>
- <path fill="#FFFFFF" d="M585.691,131.884v0.392c0,0.152-0.036,0.279-0.107,0.377c-0.072,0.1-0.145,0.176-0.216,0.229
- c-0.036,0.035-0.065,0.071-0.088,0.107c-0.023,0.036-0.038,0.094-0.047,0.176v8.45c0,0.09-0.027,0.171-0.081,0.242
- c-0.055,0.072-0.136,0.107-0.242,0.107h-0.782c-0.116,0-0.2-0.05-0.249-0.148c-0.05-0.099-0.097-0.225-0.142-0.377
- c-0.02-0.045-0.076-0.223-0.176-0.531c-0.1-0.311-0.219-0.684-0.357-1.119c-0.139-0.438-0.287-0.9-0.443-1.396
- c-0.158-0.494-0.305-0.951-0.438-1.373c-0.136-0.424-0.247-0.775-0.338-1.06c-0.091-0.283-0.135-0.429-0.135-0.438
- c-0.01-0.019-0.019-0.031-0.026-0.041c-0.008-0.008-0.014,0.015-0.014,0.067v5.108c0,0.1,0.014,0.166,0.041,0.201
- c0.025,0.037,0.063,0.067,0.106,0.096c0.071,0.054,0.142,0.13,0.209,0.229c0.067,0.1,0.101,0.225,0.101,0.377v0.404h-2.102v-0.404
- c0-0.152,0.035-0.277,0.107-0.377c0.07-0.1,0.144-0.176,0.215-0.229c0.037-0.027,0.067-0.059,0.095-0.096
- c0.027-0.035,0.041-0.099,0.041-0.188v-7.602c-0.091-0.036-0.167-0.086-0.229-0.148c-0.063-0.054-0.117-0.128-0.161-0.223
- c-0.045-0.094-0.067-0.219-0.067-0.37v-0.445h1.522c0.106,0,0.188,0.025,0.241,0.074c0.055,0.05,0.096,0.119,0.122,0.209
- c0,0.019,0.045,0.171,0.136,0.459c0.09,0.287,0.201,0.646,0.337,1.071c0.135,0.426,0.279,0.894,0.438,1.4
- c0.158,0.508,0.307,0.993,0.445,1.456c0.139,0.464,0.263,0.869,0.37,1.22s0.18,0.584,0.216,0.701
- c0.009,0.019,0.021,0.035,0.034,0.053c0.013,0.02,0.02,0.015,0.02-0.012v-5.339c0-0.089-0.013-0.151-0.04-0.188
- c-0.025-0.035-0.059-0.071-0.095-0.106c-0.071-0.055-0.144-0.131-0.215-0.229c-0.072-0.099-0.108-0.225-0.108-0.377v-0.392h2.102
- V131.884z"/>
- <path fill="#FFFFFF" d="M599.816,131.999c0.08,0.094,0.121,0.254,0.121,0.478v0.418v0.741h-0.729c-0.126,0-0.225-0.042-0.296-0.127
- c-0.073-0.086-0.108-0.2-0.108-0.344c0-0.117-0.05-0.176-0.147-0.176h-0.66c-0.054,0-0.103,0.018-0.142,0.054
- c-0.041,0.036-0.062,0.096-0.062,0.176v7.453c0,0.09,0.013,0.152,0.041,0.188c0.026,0.037,0.063,0.072,0.107,0.107
- c0.07,0.055,0.141,0.131,0.209,0.229c0.066,0.101,0.101,0.226,0.101,0.379v0.391h-2.237v-0.391c0-0.153,0.036-0.278,0.107-0.379
- c0.072-0.098,0.144-0.174,0.217-0.229c0.035-0.035,0.067-0.07,0.094-0.107c0.027-0.035,0.041-0.099,0.041-0.188v-7.494
- c0-0.063-0.022-0.109-0.066-0.142c-0.046-0.031-0.091-0.047-0.136-0.047h-0.594c-0.036,0-0.079,0.014-0.128,0.04
- c-0.05,0.027-0.074,0.076-0.074,0.147c0,0.153-0.041,0.269-0.12,0.345c-0.081,0.076-0.229,0.113-0.445,0.113h-0.62v-0.82v-0.393
- c0-0.207,0.057-0.354,0.169-0.438c0.112-0.086,0.285-0.129,0.521-0.129h4.393C599.587,131.857,599.735,131.904,599.816,131.999z"/>
-</g>
-<g>
- <path fill="#FFFFFF" d="M619.757,42.722v-7.19h-2.686v-0.961h6.461v0.961h-2.696v7.19H619.757z"/>
- <path fill="#FFFFFF" d="M625.586,42.722v-8.151h1.624l1.929,5.771c0.178,0.538,0.308,0.94,0.39,1.207
- c0.092-0.296,0.236-0.732,0.434-1.307l1.952-5.672h1.45v8.151h-1.039V35.9l-2.368,6.822h-0.974l-2.358-6.939v6.939H625.586z"/>
-</g>
-</svg>
diff --git a/Artwork/Web_Print/SVG/Lumina_Horizontal_Banner_Purple_941px173px.svg b/Artwork/Web_Print/SVG/Lumina_Horizontal_Banner_Purple_941px173px.svg deleted file mode 100644 index 7ba8de6e..00000000 --- a/Artwork/Web_Print/SVG/Lumina_Horizontal_Banner_Purple_941px173px.svg +++ /dev/null @@ -1,1412 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
- width="941px" height="173px" viewBox="0 0 941 173" enable-background="new 0 0 941 173" xml:space="preserve">
-<pattern width="124.415" height="124.416" patternUnits="userSpaceOnUse" id="Cheetah" viewBox="8.5 -146.097 124.415 124.416" overflow="visible">
- <g>
- <polygon fill="none" points="132.915,-21.681 8.5,-21.681 8.5,-146.097 132.915,-146.097 "/>
- <polygon fill="#F1BA7B" points="132.915,-21.681 8.5,-21.681 8.5,-146.097 132.915,-146.097 "/>
- <g>
- <g>
- <path fill="#864428" d="M4.914-44.978C3.271-44.644-0.15-41.429,0-39.312c0.15,2.115,0.439,3.689,3.625,6.123
- c3.186,2.432,7.504,5.846,11.095,3.996c3.59-1.85,2.748-6.221,1.301-9.131S12.95-46.612,4.914-44.978z"/>
- <path fill="#82472C" d="M4.998-44.752C3.393-44.43,0.053-41.33,0.2-39.288c0.147,2.04,0.429,3.559,3.54,5.905
- c3.11,2.346,7.327,5.639,10.833,3.854c3.505-1.784,2.684-5.999,1.27-8.807C14.429-41.141,12.844-46.329,4.998-44.752z"/>
- <path fill="#7D4930" d="M5.081-44.527c-1.565,0.311-4.825,3.297-4.682,5.264c0.143,1.965,0.418,3.427,3.454,5.688
- c3.035,2.259,7.15,5.43,10.571,3.712c3.42-1.718,2.618-5.778,1.239-8.481C14.285-41.049,12.738-46.045,5.081-44.527z"/>
- <path fill="#794B34" d="M5.165-44.302c-1.527,0.299-4.706,3.171-4.566,5.062c0.14,1.89,0.409,3.296,3.368,5.47
- c2.96,2.173,6.973,5.223,10.309,3.57s2.554-5.557,1.209-8.156C14.14-40.957,12.632-45.762,5.165-44.302z"/>
- <path fill="#754C37" d="M5.249-44.076c-1.488,0.287-4.586,3.045-4.45,4.86c0.136,1.814,0.398,3.165,3.283,5.252
- s6.795,5.015,10.047,3.428c3.251-1.587,2.488-5.336,1.178-7.832S12.526-45.479,5.249-44.076z"/>
- <path fill="#704C3A" d="M5.333-43.851c-1.45,0.275-4.467,2.918-4.334,4.659c0.133,1.739,0.388,3.033,3.197,5.034
- c2.809,2,6.618,4.806,9.785,3.285c3.166-1.521,2.423-5.114,1.147-7.507C13.851-40.772,12.42-45.194,5.333-43.851z"/>
- <path fill="#6B4C3C" d="M5.416-43.625c-1.411,0.263-4.347,2.792-4.218,4.457c0.129,1.664,0.377,2.902,3.112,4.816
- c2.734,1.914,6.44,4.599,9.522,3.144c3.082-1.455,2.359-4.894,1.116-7.183C13.707-40.681,12.313-44.911,5.416-43.625z"/>
- <path fill="#664C3E" d="M5.5-43.399c-1.372,0.251-4.228,2.665-4.102,4.256c0.125,1.588,0.367,2.771,3.026,4.598
- c2.659,1.828,6.264,4.392,9.261,3.002c2.997-1.39,2.293-4.672,1.085-6.857C13.563-40.588,12.208-44.628,5.5-43.399z"/>
- <path fill="#614B3F" d="M5.583-43.175c-1.333,0.239-4.108,2.54-3.986,4.055c0.122,1.514,0.356,2.64,2.94,4.381
- s6.086,4.183,8.999,2.859c2.912-1.323,2.229-4.451,1.055-6.533C13.418-40.496,12.102-44.345,5.583-43.175z"/>
- <path fill="#5B4940" d="M5.667-42.949c-1.294,0.228-3.988,2.414-3.87,3.854c0.119,1.438,0.346,2.508,2.855,4.162
- c2.509,1.655,5.909,3.976,8.737,2.718c2.827-1.258,2.164-4.229,1.024-6.208C13.273-40.403,11.996-44.062,5.667-42.949z"/>
- <path fill="#54463F" d="M5.75-42.724c-1.255,0.216-3.869,2.287-3.754,3.651c0.115,1.363,0.336,2.377,2.77,3.945
- s5.732,3.768,8.475,2.575c2.742-1.192,2.099-4.009,0.994-5.884C13.129-40.312,11.89-43.777,5.75-42.724z"/>
- <path fill="#4D423D" d="M5.834-42.498c-1.217,0.203-3.749,2.161-3.638,3.45c0.112,1.287,0.326,2.246,2.684,3.727
- c2.358,1.482,5.555,3.56,8.213,2.434s2.034-3.787,0.963-5.559C12.985-40.22,11.784-43.494,5.834-42.498z"/>
- <path fill="#443D39" d="M5.918-42.272c-1.178,0.191-3.629,2.034-3.522,3.248c0.108,1.213,0.315,2.115,2.599,3.51
- c2.283,1.396,5.378,3.352,7.951,2.291s1.969-3.566,0.932-5.234C12.84-40.127,11.678-43.211,5.918-42.272z"/>
- <path fill="#3A3534" d="M6.001-42.048C4.862-41.867,2.492-40.139,2.596-39c0.105,1.137,0.305,1.983,2.513,3.291
- c2.208,1.31,5.201,3.145,7.689,2.149c2.488-0.995,1.904-3.345,0.901-4.909C12.696-40.035,11.571-42.927,6.001-42.048z"/>
- <path fill="#252423" d="M6.085-41.822c-1.101,0.168-3.39,1.782-3.29,2.846c0.101,1.063,0.294,1.853,2.427,3.074
- c2.133,1.223,5.024,2.936,7.427,2.007c2.403-0.929,1.839-3.124,0.871-4.585C12.552-39.942,11.465-42.644,6.085-41.822z"/>
- <path d="M6.169-41.597c-1.062,0.156-3.271,1.656-3.174,2.645c0.098,0.986,0.284,1.721,2.342,2.855
- c2.058,1.137,4.847,2.729,7.165,1.865s1.774-2.902,0.84-4.26C12.407-39.851,11.359-42.36,6.169-41.597z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M129.373-44.978c-1.646,0.334-5.064,3.549-4.914,5.666c0.15,2.115,0.438,3.689,3.625,6.123
- c3.185,2.432,7.504,5.846,11.093,3.996c3.591-1.85,2.749-6.221,1.301-9.131C139.031-41.233,137.408-46.612,129.373-44.978z"/>
- <path fill="#82472C" d="M129.457-44.752c-1.607,0.322-4.945,3.422-4.798,5.464c0.146,2.04,0.428,3.559,3.539,5.905
- c3.109,2.346,7.326,5.639,10.83,3.854c3.507-1.784,2.685-5.999,1.271-8.807C138.887-41.141,137.303-46.329,129.457-44.752z"/>
- <path fill="#7D4930" d="M129.54-44.527c-1.567,0.311-4.825,3.297-4.682,5.264c0.143,1.965,0.418,3.427,3.454,5.688
- c3.034,2.259,7.149,5.43,10.569,3.712c3.421-1.718,2.618-5.778,1.238-8.481C138.742-41.049,137.196-46.045,129.54-44.527z"/>
- <path fill="#794B34" d="M129.624-44.302c-1.529,0.299-4.706,3.171-4.565,5.062c0.14,1.89,0.407,3.296,3.367,5.47
- c2.959,2.173,6.974,5.223,10.308,3.57c3.337-1.652,2.555-5.557,1.209-8.156C138.598-40.957,137.09-45.762,129.624-44.302z"/>
- <path fill="#754C37" d="M129.707-44.076c-1.489,0.287-4.586,3.045-4.449,4.86c0.136,1.814,0.397,3.165,3.282,5.252
- c2.884,2.087,6.796,5.015,10.046,3.428c3.251-1.587,2.489-5.336,1.178-7.832C138.454-40.864,136.984-45.479,129.707-44.076z"/>
- <path fill="#704C3A" d="M129.791-43.851c-1.451,0.275-4.467,2.918-4.333,4.659c0.132,1.739,0.387,3.033,3.196,5.034
- c2.809,2,6.618,4.806,9.783,3.285c3.167-1.521,2.425-5.114,1.147-7.507C138.31-40.772,136.879-45.194,129.791-43.851z"/>
- <path fill="#6B4C3C" d="M129.875-43.625c-1.412,0.263-4.347,2.792-4.218,4.457c0.129,1.664,0.377,2.902,3.111,4.816
- c2.733,1.914,6.441,4.599,9.521,3.144c3.082-1.455,2.359-4.894,1.117-7.183C138.165-40.681,136.772-44.911,129.875-43.625z"/>
- <path fill="#664C3E" d="M129.958-43.399c-1.373,0.251-4.227,2.665-4.101,4.256c0.124,1.588,0.366,2.771,3.024,4.598
- c2.659,1.828,6.265,4.392,9.261,3.002c2.997-1.39,2.294-4.672,1.086-6.857C138.021-40.588,136.666-44.628,129.958-43.399z"/>
- <path fill="#614B3F" d="M130.042-43.175c-1.334,0.239-4.108,2.54-3.985,4.055c0.121,1.514,0.356,2.64,2.939,4.381
- s6.088,4.183,8.998,2.859c2.913-1.323,2.229-4.451,1.056-6.533C137.876-40.496,136.561-44.345,130.042-43.175z"/>
- <path fill="#5B4940" d="M130.125-42.949c-1.295,0.228-3.987,2.414-3.868,3.854c0.117,1.438,0.346,2.508,2.854,4.162
- c2.508,1.655,5.91,3.976,8.736,2.718c2.828-1.258,2.164-4.229,1.024-6.208C137.731-40.403,136.454-44.062,130.125-42.949z"/>
- <path fill="#54463F" d="M130.209-42.724c-1.256,0.216-3.868,2.287-3.753,3.651c0.114,1.363,0.335,2.377,2.768,3.945
- c2.434,1.568,5.734,3.768,8.476,2.575c2.743-1.192,2.099-4.009,0.994-5.884C137.587-40.312,136.349-43.777,130.209-42.724z"/>
- <path fill="#4D423D" d="M130.293-42.498c-1.218,0.203-3.749,2.161-3.637,3.45c0.11,1.287,0.324,2.246,2.682,3.727
- c2.358,1.482,5.557,3.56,8.213,2.434c2.659-1.126,2.035-3.787,0.964-5.559C137.442-40.22,136.242-43.494,130.293-42.498z"/>
- <path fill="#443D39" d="M130.376-42.272c-1.178,0.191-3.629,2.034-3.521,3.248c0.107,1.213,0.314,2.115,2.597,3.51
- c2.283,1.396,5.38,3.352,7.951,2.291c2.573-1.061,1.97-3.566,0.933-5.234C137.298-40.127,136.137-43.211,130.376-42.272z"/>
- <path fill="#3A3534" d="M130.46-42.048c-1.14,0.181-3.51,1.909-3.404,3.048c0.103,1.137,0.304,1.983,2.511,3.291
- c2.207,1.31,5.202,3.145,7.689,2.149c2.488-0.995,1.904-3.345,0.902-4.909C137.153-40.035,136.03-42.927,130.46-42.048z"/>
- <path fill="#252423" d="M130.543-41.822c-1.1,0.168-3.39,1.782-3.288,2.846c0.1,1.063,0.294,1.853,2.425,3.074
- c2.133,1.223,5.026,2.936,7.428,2.007c2.404-0.929,1.84-3.124,0.872-4.585C137.009-39.942,135.925-42.644,130.543-41.822z"/>
- <path d="M130.627-41.597c-1.062,0.156-3.271,1.656-3.172,2.645c0.096,0.986,0.283,1.721,2.339,2.855
- c2.058,1.137,4.849,2.729,7.166,1.865c2.319-0.863,1.774-2.902,0.841-4.26C136.864-39.851,135.818-42.36,130.627-41.597z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M130.125-134.889c-2.75,2-8.001,9.25-1.5,14.5c6.5,5.25,8.5,8,13.25,5s8.75-10.75,4.5-14.75
- S135.625-138.889,130.125-134.889z"/>
- <path fill="#82472C" d="M130.32-134.646c-2.668,1.943-7.763,8.985-1.455,14.085c6.307,5.1,8.247,7.771,12.856,4.857
- c4.608-2.914,8.489-10.443,4.365-14.329C141.964-133.918,135.657-138.532,130.32-134.646z"/>
- <path fill="#7D4930" d="M130.517-134.404c-2.587,1.886-7.525,8.722-1.411,13.672c6.113,4.95,7.995,7.542,12.462,4.714
- c4.468-2.829,8.229-10.136,4.233-13.907C141.803-133.696,135.689-138.175,130.517-134.404z"/>
- <path fill="#794B34" d="M130.712-134.161c-2.505,1.829-7.287,8.457-1.365,13.257c5.919,4.8,7.741,7.314,12.067,4.571
- s7.97-9.829,4.099-13.486C141.642-133.475,135.722-137.818,130.712-134.161z"/>
- <path fill="#754C37" d="M130.908-133.917c-2.424,1.771-7.05,8.193-1.321,12.843c5.727,4.65,7.489,7.086,11.673,4.428
- c4.186-2.657,7.71-9.521,3.966-13.064C141.48-133.253,135.754-137.46,130.908-133.917z"/>
- <path fill="#704C3A" d="M131.104-133.675c-2.342,1.714-6.812,7.929-1.276,12.429c5.533,4.5,7.236,6.857,11.279,4.285
- c4.045-2.571,7.449-9.214,3.832-12.642C141.32-133.032,135.785-137.104,131.104-133.675z"/>
- <path fill="#6B4C3C" d="M131.3-133.432c-2.26,1.657-6.574,7.664-1.232,12.015c5.34,4.35,6.983,6.628,10.886,4.143
- s7.189-8.907,3.698-12.221C141.158-132.811,135.817-136.746,131.3-133.432z"/>
- <path fill="#664C3E" d="M131.495-133.189c-2.179,1.6-6.336,7.4-1.188,11.6c5.146,4.2,6.73,6.4,10.491,4
- c3.762-2.4,6.93-8.6,3.564-11.8C140.997-132.589,135.85-136.389,131.495-133.189z"/>
- <path fill="#614B3F" d="M131.69-132.946c-2.096,1.543-6.098,7.136-1.143,11.186c4.953,4.05,6.479,6.172,10.098,3.857
- c3.62-2.314,6.669-8.293,3.431-11.378C140.837-132.368,135.882-136.032,131.69-132.946z"/>
- <path fill="#5B4940" d="M131.887-132.703c-2.015,1.485-5.86,6.871-1.099,10.771c4.761,3.9,6.226,5.943,9.704,3.714
- c3.479-2.229,6.409-7.985,3.297-10.957C140.676-132.146,135.914-135.675,131.887-132.703z"/>
- <path fill="#54463F" d="M132.082-132.46c-1.933,1.428-5.622,6.607-1.054,10.357c4.567,3.75,5.973,5.714,9.31,3.571
- c3.339-2.143,6.149-7.678,3.163-10.535C140.515-131.925,135.946-135.317,132.082-132.46z"/>
- <path fill="#4D423D" d="M132.277-132.217c-1.851,1.371-5.384,6.342-1.008,9.942c4.373,3.6,5.72,5.486,8.915,3.429
- c3.197-2.058,5.889-7.372,3.029-10.114C140.354-131.704,135.978-134.96,132.277-132.217z"/>
- <path fill="#443D39" d="M132.474-131.975c-1.77,1.314-5.146,6.079-0.964,9.528c4.18,3.45,5.467,5.257,8.521,3.286
- c3.057-1.972,5.629-7.064,2.896-9.693C140.192-131.482,136.01-134.604,132.474-131.975z"/>
- <path fill="#3A3534" d="M132.669-131.732c-1.688,1.257-4.908,5.814-0.919,9.114c3.987,3.3,5.214,5.028,8.127,3.143
- c2.915-1.886,5.368-6.757,2.763-9.271C140.031-131.261,136.042-134.246,132.669-131.732z"/>
- <path fill="#252423" d="M132.865-131.489c-1.606,1.2-4.671,5.55-0.875,8.7c3.794,3.15,4.962,4.8,7.732,3
- c2.774-1.8,5.109-6.45,2.629-8.85C139.87-131.039,136.074-133.889,132.865-131.489z"/>
- <path d="M133.061-131.246c-1.524,1.143-4.433,5.286-0.83,8.286c3.601,3,4.709,4.571,7.339,2.857
- c2.633-1.714,4.849-6.143,2.495-8.428C139.709-130.818,136.106-133.532,133.061-131.246z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M133.625-108.889c-4.402,1.321-8.75,5.5-5.25,12.25s9.75,11.75,15,10.25s6.422-7.045,2.75-11
- C142.875-100.889,141.125-111.139,133.625-108.889z"/>
- <path fill="#82472C" d="M133.751-108.595c-4.287,1.286-8.521,5.356-5.112,11.93c3.408,6.574,9.495,11.443,14.607,9.982
- c5.113-1.46,6.254-6.861,2.679-10.712C142.76-100.804,141.055-110.787,133.751-108.595z"/>
- <path fill="#7D4930" d="M133.878-108.301c-4.173,1.252-8.293,5.213-4.977,11.61c3.317,6.397,9.241,11.136,14.217,9.715
- c4.976-1.422,6.086-6.678,2.605-10.426C142.645-100.719,140.986-110.434,133.878-108.301z"/>
- <path fill="#794B34" d="M134.004-108.008c-4.058,1.217-8.064,5.069-4.839,11.291c3.227,6.221,8.986,10.829,13.824,9.446
- c4.839-1.382,5.919-6.493,2.534-10.138C142.528-100.634,140.916-110.081,134.004-108.008z"/>
- <path fill="#754C37" d="M134.13-107.713c-3.942,1.183-7.836,4.925-4.701,10.97s8.731,10.522,13.432,9.179
- c4.702-1.343,5.751-6.309,2.463-9.85C142.413-100.55,140.847-109.729,134.13-107.713z"/>
- <path fill="#704C3A" d="M134.256-107.419c-3.826,1.148-7.606,4.781-4.563,10.649s8.477,10.215,13.04,8.911
- c4.564-1.304,5.583-6.125,2.391-9.563C142.298-100.464,140.776-109.375,134.256-107.419z"/>
- <path fill="#6B4C3C" d="M134.383-107.125c-3.713,1.114-7.379,4.638-4.428,10.33c2.952,5.692,8.223,9.908,12.648,8.644
- c4.428-1.265,5.416-5.941,2.319-9.276C142.183-100.38,140.707-109.023,134.383-107.125z"/>
- <path fill="#664C3E" d="M134.509-106.832c-3.598,1.079-7.149,4.494-4.29,10.009c2.86,5.516,7.968,9.602,12.257,8.376
- c4.29-1.226,5.247-5.757,2.246-8.988C142.066-100.295,140.638-108.67,134.509-106.832z"/>
- <path fill="#614B3F" d="M134.635-106.538c-3.482,1.044-6.921,4.35-4.152,9.689s7.713,9.294,11.864,8.108
- c4.152-1.187,5.08-5.573,2.175-8.701C141.951-100.21,140.567-108.317,134.635-106.538z"/>
- <path fill="#5B4940" d="M134.761-106.244c-3.366,1.01-6.692,4.207-4.015,9.37c2.677,5.163,7.458,8.987,11.473,7.84
- c4.015-1.147,4.911-5.389,2.103-8.414C141.836-100.125,140.498-107.965,134.761-106.244z"/>
- <path fill="#54463F" d="M134.888-105.95c-3.252,0.976-6.465,4.063-3.879,9.049c2.586,4.987,7.203,8.681,11.081,7.573
- c3.878-1.108,4.744-5.205,2.03-8.126C141.721-100.04,140.429-107.612,134.888-105.95z"/>
- <path fill="#4D423D" d="M135.014-105.656c-3.137,0.941-6.235,3.919-3.741,8.729c2.494,4.811,6.948,8.374,10.688,7.305
- c3.741-1.069,4.577-5.021,1.959-7.839C141.605-99.955,140.358-107.259,135.014-105.656z"/>
- <path fill="#443D39" d="M135.14-105.362c-3.021,0.907-6.007,3.776-3.604,8.41s6.693,8.066,10.297,7.037s4.408-4.837,1.887-7.552
- C141.49-99.871,140.289-106.907,135.14-105.362z"/>
- <path fill="#3A3534" d="M135.266-105.068c-2.906,0.872-5.778,3.632-3.467,8.089c2.313,4.458,6.439,7.759,9.905,6.769
- c3.467-0.991,4.241-4.653,1.815-7.264C141.374-99.786,140.22-106.554,135.266-105.068z"/>
- <path fill="#252423" d="M135.393-104.774c-2.792,0.838-5.55,3.488-3.33,7.77c2.221,4.281,6.185,7.452,9.514,6.501
- s4.072-4.469,1.742-6.977C141.259-99.701,140.149-106.201,135.393-104.774z"/>
- <path d="M135.519-104.48c-2.677,0.803-5.321,3.345-3.192,7.449c2.129,4.105,5.93,7.146,9.121,6.233
- c3.192-0.912,3.905-4.285,1.671-6.689C141.144-99.616,140.08-105.849,135.519-104.48z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M131.125-59.389c-3.604,6.007-1.5,9.75,4.75,11c6.25,1.25,11.5-1,14.5-5.25c3-4.25-2-14.25-8.25-14
- S135.625-66.889,131.125-59.389z"/>
- <path fill="#82472C" d="M131.415-59.326c-3.503,5.838-1.459,9.477,4.616,10.691s11.178-0.972,14.094-5.103
- c2.916-4.131-1.944-13.851-8.019-13.607C136.031-67.102,135.788-66.616,131.415-59.326z"/>
- <path fill="#7D4930" d="M131.704-59.263c-3.401,5.67-1.416,9.203,4.483,10.383s10.855-0.944,13.688-4.956
- c2.832-4.012-1.888-13.451-7.788-13.215C136.188-66.815,135.952-66.342,131.704-59.263z"/>
- <path fill="#794B34" d="M131.994-59.2c-3.301,5.502-1.374,8.931,4.351,10.075c5.724,1.145,10.532-0.917,13.28-4.809
- c2.748-3.893-1.832-13.051-7.557-12.823C136.345-66.527,136.115-66.069,131.994-59.2z"/>
- <path fill="#754C37" d="M132.283-59.137c-3.199,5.333-1.332,8.657,4.218,9.766c5.549,1.11,10.21-0.887,12.874-4.661
- s-1.775-12.652-7.325-12.43C136.501-66.24,136.279-65.796,132.283-59.137z"/>
- <path fill="#704C3A" d="M132.573-59.074c-3.099,5.165-1.29,8.383,4.084,9.458s9.889-0.86,12.469-4.514
- c2.579-3.655-1.721-12.253-7.095-12.038S136.442-65.522,132.573-59.074z"/>
- <path fill="#6B4C3C" d="M132.862-59.011c-2.997,4.997-1.248,8.11,3.951,9.15s9.566-0.832,12.063-4.367
- c2.494-3.535-1.664-11.853-6.863-11.645S136.605-65.25,132.862-59.011z"/>
- <path fill="#664C3E" d="M133.152-58.947c-2.896,4.828-1.206,7.836,3.818,8.841c5.023,1.005,9.243-0.804,11.655-4.22
- c2.41-3.416-1.608-11.453-6.632-11.252S136.77-64.976,133.152-58.947z"/>
- <path fill="#614B3F" d="M133.441-58.885c-2.795,4.66-1.164,7.564,3.686,8.534c4.848,0.969,8.921-0.776,11.249-4.073
- c2.327-3.296-1.552-11.054-6.401-10.86C137.127-65.091,136.933-64.703,133.441-58.885z"/>
- <path fill="#5B4940" d="M133.731-58.821c-2.694,4.491-1.122,7.29,3.552,8.225c4.673,0.935,8.599-0.748,10.843-3.925
- c2.242-3.178-1.496-10.655-6.17-10.468C137.283-64.803,137.097-64.43,133.731-58.821z"/>
- <path fill="#54463F" d="M134.021-58.758c-2.593,4.322-1.08,7.017,3.42,7.917c4.497,0.9,8.275-0.72,10.436-3.778
- c2.158-3.059-1.439-10.255-5.938-10.076C137.44-64.516,137.26-64.156,134.021-58.758z"/>
- <path fill="#4D423D" d="M134.311-58.695c-2.492,4.154-1.038,6.744,3.286,7.608c4.322,0.865,7.953-0.692,10.029-3.631
- c2.074-2.939-1.384-9.856-5.707-9.683C137.597-64.229,137.423-63.883,134.311-58.695z"/>
- <path fill="#443D39" d="M134.6-58.632c-2.391,3.986-0.996,6.471,3.153,7.3c4.147,0.83,7.631-0.665,9.624-3.484
- c1.989-2.82-1.328-9.457-5.477-9.291C137.753-63.941,137.587-63.609,134.6-58.632z"/>
- <path fill="#3A3534" d="M134.89-58.569c-2.29,3.817-0.954,6.197,3.02,6.991c3.972,0.795,7.309-0.636,9.218-3.337
- c1.905-2.701-1.272-9.057-5.246-8.898C137.909-63.654,137.75-63.336,134.89-58.569z"/>
- <path fill="#252423" d="M135.179-58.506c-2.188,3.649-0.912,5.923,2.888,6.683c3.796,0.76,6.985-0.608,8.811-3.19
- c1.821-2.582-1.216-8.657-5.015-8.506C138.066-63.367,137.914-63.063,135.179-58.506z"/>
- <path d="M135.469-58.443c-2.088,3.48-0.87,5.65,2.754,6.375c3.621,0.725,6.663-0.58,8.404-3.043
- c1.737-2.463-1.16-8.258-4.783-8.113C138.223-63.08,138.077-62.79,135.469-58.443z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M5.708-134.889c-2.75,2-8,9.25-1.5,14.5s8.5,8,13.25,5s8.75-10.75,4.5-14.75
- S11.208-138.889,5.708-134.889z"/>
- <path fill="#82472C" d="M5.904-134.646c-2.668,1.943-7.763,8.985-1.456,14.085c6.307,5.1,8.247,7.771,12.856,4.857
- c4.609-2.914,8.49-10.443,4.367-14.329C17.547-133.918,11.24-138.532,5.904-134.646z"/>
- <path fill="#7D4930" d="M6.099-134.404c-2.586,1.886-7.524,8.722-1.41,13.672c6.113,4.95,7.994,7.542,12.462,4.714
- c4.468-2.829,8.23-10.136,4.232-13.907C17.386-133.696,11.272-138.175,6.099-134.404z"/>
- <path fill="#794B34" d="M6.295-134.161c-2.505,1.829-7.287,8.457-1.366,13.257c5.92,4.8,7.742,7.314,12.068,4.571
- c4.326-2.743,7.969-9.829,4.099-13.486C17.225-133.475,11.305-137.818,6.295-134.161z"/>
- <path fill="#754C37" d="M6.491-133.917c-2.423,1.771-7.049,8.193-1.322,12.843s7.489,7.086,11.674,4.428
- c4.185-2.657,7.709-9.521,3.965-13.064S11.337-137.46,6.491-133.917z"/>
- <path fill="#704C3A" d="M6.687-133.675c-2.341,1.714-6.811,7.929-1.277,12.429c5.534,4.5,7.236,6.857,11.281,4.285
- c4.043-2.571,7.449-9.214,3.831-12.642C16.903-133.032,11.369-137.104,6.687-133.675z"/>
- <path fill="#6B4C3C" d="M6.882-133.432c-2.259,1.657-6.573,7.664-1.232,12.015c5.34,4.35,6.983,6.628,10.886,4.143
- c3.902-2.486,7.189-8.907,3.697-12.221C16.742-132.811,11.401-136.746,6.882-133.432z"/>
- <path fill="#664C3E" d="M7.078-133.189c-2.177,1.6-6.335,7.4-1.188,11.6c5.147,4.2,6.73,6.4,10.493,4
- c3.761-2.4,6.929-8.6,3.563-11.8C16.581-132.589,11.434-136.389,7.078-133.189z"/>
- <path fill="#614B3F" d="M7.274-132.946c-2.096,1.543-6.097,7.136-1.143,11.186c4.954,4.05,6.478,6.172,10.099,3.857
- c3.62-2.314,6.668-8.293,3.43-11.378C16.42-132.368,11.466-136.032,7.274-132.946z"/>
- <path fill="#5B4940" d="M7.47-132.703c-2.014,1.485-5.86,6.871-1.099,10.771c4.761,3.9,6.226,5.943,9.705,3.714
- s6.409-7.985,3.296-10.957S11.498-135.675,7.47-132.703z"/>
- <path fill="#54463F" d="M7.666-132.46c-1.932,1.428-5.622,6.607-1.054,10.357c4.567,3.75,5.972,5.714,9.311,3.571
- c3.338-2.143,6.148-7.678,3.162-10.535C16.098-131.925,11.53-135.317,7.666-132.46z"/>
- <path fill="#4D423D" d="M7.861-132.217c-1.85,1.371-5.384,6.342-1.009,9.942s5.72,5.486,8.917,3.429
- c3.197-2.058,5.888-7.372,3.028-10.114C15.937-131.704,11.563-134.96,7.861-132.217z"/>
- <path fill="#443D39" d="M8.057-131.975c-1.769,1.314-5.146,6.079-0.965,9.528c4.181,3.45,5.467,5.257,8.523,3.286
- c3.055-1.972,5.628-7.064,2.895-9.693C15.776-131.482,11.595-134.604,8.057-131.975z"/>
- <path fill="#3A3534" d="M8.253-131.732c-1.687,1.257-4.908,5.814-0.92,9.114c3.988,3.3,5.215,5.028,8.129,3.143
- c2.915-1.886,5.368-6.757,2.761-9.271C15.615-131.261,11.627-134.246,8.253-131.732z"/>
- <path fill="#252423" d="M8.449-131.489c-1.605,1.2-4.67,5.55-0.875,8.7c3.794,3.15,4.961,4.8,7.735,3
- c2.773-1.8,5.107-6.45,2.627-8.85C15.454-131.039,11.659-133.889,8.449-131.489z"/>
- <path d="M8.645-131.246c-1.523,1.143-4.433,5.286-0.831,8.286s4.709,4.571,7.341,2.857s4.848-6.143,2.493-8.428
- C15.293-130.818,11.691-133.532,8.645-131.246z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M9.208-108.889c-4.402,1.321-8.75,5.5-5.25,12.25s9.75,11.75,15,10.25s6.423-7.045,2.75-11
- C18.458-100.889,16.708-111.139,9.208-108.889z"/>
- <path fill="#82472C" d="M9.334-108.595c-4.287,1.286-8.521,5.356-5.113,11.93c3.409,6.574,9.496,11.443,14.608,9.982
- c5.113-1.46,6.255-6.861,2.678-10.712C18.342-100.804,16.638-110.787,9.334-108.595z"/>
- <path fill="#7D4930" d="M9.461-108.301c-4.172,1.252-8.293,5.213-4.976,11.61c3.317,6.397,9.241,11.136,14.216,9.715
- c4.976-1.422,6.087-6.678,2.606-10.426C18.228-100.719,16.569-110.434,9.461-108.301z"/>
- <path fill="#794B34" d="M9.587-108.008c-4.057,1.217-8.064,5.069-4.839,11.291c3.226,6.221,8.986,10.829,13.824,9.446
- c4.839-1.382,5.92-6.493,2.535-10.138C18.112-100.634,16.499-110.081,9.587-108.008z"/>
- <path fill="#754C37" d="M9.713-107.713c-3.942,1.183-7.835,4.925-4.701,10.97c3.134,6.045,8.731,10.522,13.432,9.179
- s5.752-6.309,2.463-9.85C17.997-100.55,16.429-109.729,9.713-107.713z"/>
- <path fill="#704C3A" d="M9.84-107.419c-3.828,1.148-7.607,4.781-4.564,10.649c3.042,5.868,8.477,10.215,13.041,8.911
- c4.564-1.304,5.584-6.125,2.391-9.563C17.881-100.464,16.36-109.375,9.84-107.419z"/>
- <path fill="#6B4C3C" d="M9.966-107.125c-3.712,1.114-7.378,4.638-4.427,10.33c2.951,5.692,8.222,9.908,12.648,8.644
- c4.427-1.265,5.416-5.941,2.319-9.276C17.766-100.38,16.29-109.023,9.966-107.125z"/>
- <path fill="#664C3E" d="M10.092-106.832c-3.597,1.079-7.149,4.494-4.29,10.009c2.86,5.516,7.967,9.602,12.257,8.376
- c4.29-1.226,5.248-5.757,2.247-8.988C17.65-100.295,16.22-108.67,10.092-106.832z"/>
- <path fill="#614B3F" d="M10.218-106.538c-3.482,1.044-6.921,4.35-4.152,9.689c2.768,5.339,7.712,9.294,11.864,8.108
- c4.153-1.187,5.081-5.573,2.176-8.701C17.535-100.21,16.15-108.317,10.218-106.538z"/>
- <path fill="#5B4940" d="M10.345-106.244c-3.367,1.01-6.693,4.207-4.016,9.37c2.677,5.163,7.458,8.987,11.473,7.84
- c4.016-1.147,4.913-5.389,2.104-8.414C17.419-100.125,16.081-107.965,10.345-106.244z"/>
- <path fill="#54463F" d="M10.471-105.95c-3.252,0.976-6.464,4.063-3.878,9.049c2.585,4.987,7.203,8.681,11.081,7.573
- c3.879-1.108,4.745-5.205,2.032-8.126C17.304-100.04,16.011-107.612,10.471-105.95z"/>
- <path fill="#4D423D" d="M10.597-105.656c-3.137,0.941-6.235,3.919-3.741,8.729c2.494,4.811,6.948,8.374,10.688,7.305
- c3.742-1.069,4.577-5.021,1.96-7.839C17.189-99.955,15.941-107.259,10.597-105.656z"/>
- <path fill="#443D39" d="M10.724-105.362c-3.022,0.907-6.007,3.776-3.604,8.41c2.402,4.634,6.693,8.066,10.297,7.037
- c3.605-1.03,4.41-4.837,1.888-7.552C17.074-99.871,15.872-106.907,10.724-105.362z"/>
- <path fill="#3A3534" d="M10.85-105.068c-2.907,0.872-5.779,3.632-3.467,8.089c2.311,4.458,6.438,7.759,9.905,6.769
- c3.468-0.991,4.242-4.653,1.816-7.264C16.958-99.786,15.802-106.554,10.85-105.068z"/>
- <path fill="#252423" d="M10.976-104.774c-2.792,0.838-5.55,3.488-3.33,7.77c2.22,4.281,6.184,7.452,9.513,6.501
- c3.331-0.951,4.074-4.469,1.745-6.977C16.843-99.701,15.733-106.201,10.976-104.774z"/>
- <path d="M11.103-104.48c-2.677,0.803-5.321,3.345-3.192,7.449c2.128,4.105,5.929,7.146,9.121,6.233
- c3.193-0.912,3.906-4.285,1.673-6.689C16.728-99.616,15.663-105.849,11.103-104.48z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M6.708-59.389c-3.604,6.007-1.5,9.75,4.75,11c6.25,1.25,11.5-1,14.5-5.25c3-4.25-2-14.25-8.25-14
- S11.208-66.889,6.708-59.389z"/>
- <path fill="#82472C" d="M6.998-59.326c-3.503,5.838-1.458,9.477,4.616,10.691c6.075,1.215,11.178-0.972,14.094-5.103
- c2.916-4.131-1.944-13.851-8.019-13.607C11.614-67.102,11.372-66.616,6.998-59.326z"/>
- <path fill="#7D4930" d="M7.287-59.263c-3.401,5.67-1.416,9.203,4.484,10.383c5.9,1.18,10.855-0.944,13.687-4.956
- c2.832-4.012-1.888-13.451-7.787-13.215C11.771-66.815,11.535-66.342,7.287-59.263z"/>
- <path fill="#794B34" d="M7.577-59.2c-3.301,5.502-1.374,8.931,4.35,10.075c5.725,1.145,10.533-0.917,13.281-4.809
- c2.748-3.893-1.832-13.051-7.556-12.823C11.927-66.527,11.699-66.069,7.577-59.2z"/>
- <path fill="#754C37" d="M7.867-59.137c-3.2,5.333-1.333,8.657,4.217,9.766c5.549,1.11,10.21-0.887,12.874-4.661
- s-1.776-12.652-7.325-12.43C12.084-66.24,11.862-65.796,7.867-59.137z"/>
- <path fill="#704C3A" d="M8.156-59.074c-3.099,5.165-1.29,8.383,4.084,9.458c5.374,1.075,9.888-0.86,12.468-4.514
- c2.58-3.655-1.72-12.253-7.094-12.038S12.025-65.522,8.156-59.074z"/>
- <path fill="#6B4C3C" d="M8.446-59.011c-2.998,4.997-1.248,8.11,3.951,9.15c5.199,1.04,9.566-0.832,12.061-4.367
- c2.496-3.535-1.663-11.853-6.862-11.645S12.189-65.25,8.446-59.011z"/>
- <path fill="#664C3E" d="M8.736-58.947c-2.897,4.828-1.207,7.836,3.817,8.841c5.024,1.005,9.244-0.804,11.655-4.22
- c2.412-3.416-1.607-11.453-6.631-11.252C12.554-65.378,12.353-64.976,8.736-58.947z"/>
- <path fill="#614B3F" d="M9.026-58.885c-2.796,4.66-1.165,7.564,3.684,8.534c4.849,0.969,8.921-0.776,11.249-4.073
- c2.328-3.296-1.551-11.054-6.4-10.86C12.71-65.091,12.516-64.703,9.026-58.885z"/>
- <path fill="#5B4940" d="M9.315-58.821c-2.695,4.491-1.122,7.29,3.551,8.225c4.673,0.935,8.599-0.748,10.842-3.925
- c2.244-3.178-1.495-10.655-6.169-10.468C12.867-64.803,12.68-64.43,9.315-58.821z"/>
- <path fill="#54463F" d="M9.605-58.758c-2.594,4.322-1.08,7.017,3.418,7.917c4.498,0.9,8.277-0.72,10.436-3.778
- c2.16-3.059-1.439-10.255-5.938-10.076C13.023-64.516,12.843-64.156,9.605-58.758z"/>
- <path fill="#4D423D" d="M9.895-58.695c-2.493,4.154-1.038,6.744,3.285,7.608s7.954-0.692,10.029-3.631
- c2.075-2.939-1.383-9.856-5.707-9.683C13.18-64.229,13.007-63.883,9.895-58.695z"/>
- <path fill="#443D39" d="M10.185-58.632c-2.392,3.986-0.996,6.471,3.151,7.3c4.148,0.83,7.632-0.665,9.623-3.484
- c1.991-2.82-1.327-9.457-5.475-9.291C13.336-63.941,13.17-63.609,10.185-58.632z"/>
- <path fill="#3A3534" d="M10.474-58.569c-2.291,3.817-0.954,6.197,3.019,6.991c3.973,0.795,7.31-0.636,9.216-3.337
- c1.907-2.701-1.271-9.057-5.244-8.898C13.493-63.654,13.334-63.336,10.474-58.569z"/>
- <path fill="#252423" d="M10.764-58.506c-2.19,3.649-0.912,5.923,2.885,6.683c3.797,0.76,6.988-0.608,8.81-3.19
- c1.823-2.582-1.214-8.657-5.013-8.506C13.649-63.367,13.498-63.063,10.764-58.506z"/>
- <path d="M11.054-58.443c-2.089,3.48-0.87,5.65,2.752,6.375s6.665-0.58,8.403-3.043c1.739-2.463-1.158-8.258-4.781-8.113
- C13.806-63.08,13.661-62.79,11.054-58.443z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M40.208-149.889c-3.956,3.108-6.75,1.5-8.25,7.25s-5.5,8.25-0.25,12s6.25,9,13.75,4.5
- s10-10.75,5.5-16.25S43.708-152.639,40.208-149.889z"/>
- <path fill="#82472C" d="M40.19-149.44c-3.816,2.997-6.513,1.446-7.96,6.99s-5.306,7.954-0.241,11.569
- c5.065,3.616,6.03,8.677,13.267,4.339c7.236-4.339,9.648-10.364,5.307-15.667C46.221-147.512,43.567-152.092,40.19-149.44z"/>
- <path fill="#7D4930" d="M40.173-148.992c-3.678,2.885-6.274,1.393-7.67,6.729c-1.394,5.337-5.113,7.658-0.231,11.139
- c4.88,3.48,5.81,8.354,12.782,4.177c6.972-4.177,9.296-9.979,5.112-15.083C45.983-147.135,43.427-151.544,40.173-148.992z"/>
- <path fill="#794B34" d="M40.155-148.543c-3.538,2.774-6.037,1.338-7.379,6.469s-4.92,7.361-0.224,10.708
- c4.695,3.346,5.59,8.031,12.299,4.016c6.708-4.016,8.944-9.592,4.919-14.5S43.286-150.997,40.155-148.543z"/>
- <path fill="#754C37" d="M40.138-148.094c-3.399,2.662-5.8,1.284-7.089,6.209c-1.289,4.924-4.726,7.065-0.215,10.277
- c4.511,3.212,5.37,7.708,11.814,3.854c6.444-3.854,8.593-9.207,4.727-13.917C45.508-146.382,43.146-150.449,40.138-148.094z"/>
- <path fill="#704C3A" d="M40.12-147.646c-3.26,2.55-5.563,1.23-6.799,5.949s-4.532,6.769-0.205,9.846
- c4.326,3.077,5.149,7.384,11.33,3.692c6.181-3.692,8.241-8.82,4.532-13.333C45.271-146.004,43.005-149.902,40.12-147.646z"/>
- <path fill="#6B4C3C" d="M40.103-147.197c-3.121,2.439-5.325,1.177-6.508,5.688c-1.184,4.511-4.339,6.473-0.197,9.415
- c4.141,2.942,4.93,7.062,10.847,3.531c5.917-3.531,7.889-8.435,4.339-12.75C45.033-145.627,42.863-149.354,40.103-147.197z"/>
- <path fill="#664C3E" d="M40.085-146.748c-2.981,2.327-5.087,1.123-6.218,5.428s-4.146,6.177-0.188,8.984
- c3.957,2.808,4.71,6.738,10.363,3.37c5.652-3.37,7.537-8.049,4.145-12.167C44.795-145.251,42.723-148.807,40.085-146.748z"/>
- <path fill="#614B3F" d="M40.067-146.299c-2.843,2.216-4.85,1.069-5.928,5.168c-1.078,4.099-3.952,5.881-0.18,8.554
- s4.491,6.416,9.88,3.208c5.389-3.208,7.185-7.663,3.951-11.583S42.582-148.26,40.067-146.299z"/>
- <path fill="#5B4940" d="M40.05-145.851c-2.703,2.104-4.612,1.015-5.637,4.908c-1.026,3.892-3.759,5.584-0.172,8.123
- c3.588,2.539,4.271,6.093,9.396,3.046c5.124-3.046,6.833-7.277,3.758-11S42.441-147.712,40.05-145.851z"/>
- <path fill="#54463F" d="M40.032-145.402c-2.564,1.992-4.375,0.961-5.347,4.647c-0.973,3.686-3.565,5.289-0.162,7.692
- c3.402,2.404,4.051,5.77,8.912,2.885c4.86-2.885,6.48-6.891,3.564-10.417C44.083-144.12,42.301-147.165,40.032-145.402z"/>
- <path fill="#4D423D" d="M40.015-144.953c-2.425,1.881-4.138,0.907-5.057,4.387c-0.92,3.479-3.372,4.992-0.153,7.261
- c3.218,2.27,3.831,5.446,8.429,2.723c4.597-2.723,6.129-6.505,3.37-9.833C43.846-143.743,42.16-146.618,40.015-144.953z"/>
- <path fill="#443D39" d="M39.997-144.504c-2.286,1.77-3.9,0.854-4.767,4.127c-0.867,3.273-3.178,4.696-0.145,6.831
- c3.033,2.135,3.611,5.123,7.944,2.562s5.777-6.119,3.178-9.25S42.019-146.07,39.997-144.504z"/>
- <path fill="#3A3534" d="M39.979-144.056c-2.146,1.658-3.662,0.8-4.477,3.867c-0.814,3.066-2.984,4.4-0.136,6.4
- s3.392,4.8,7.461,2.4s5.426-5.733,2.984-8.667C43.37-142.989,41.878-145.522,39.979-144.056z"/>
- <path fill="#252423" d="M39.962-143.607c-2.008,1.546-3.425,0.746-4.186,3.606c-0.762,2.86-2.791,4.104-0.127,5.969
- c2.663,1.866,3.171,4.477,6.977,2.239c3.805-2.239,5.073-5.347,2.79-8.083C43.133-142.612,41.737-144.975,39.962-143.607z"/>
- <path d="M39.944-143.158c-1.868,1.435-3.188,0.692-3.896,3.346c-0.709,2.654-2.598,3.808-0.118,5.538
- c2.479,1.731,2.951,4.154,6.493,2.077c3.541-2.077,4.722-4.961,2.597-7.5S41.597-144.428,39.944-143.158z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M40.208-25.473c-3.956,3.108-6.75,1.5-8.25,7.25s-5.5,8.25-0.25,12s6.25,9,13.75,4.5s10-10.75,5.5-16.25
- S43.708-28.223,40.208-25.473z"/>
- <path fill="#82472C" d="M40.19-25.024c-3.816,2.997-6.513,1.447-7.96,6.99s-5.306,7.953-0.241,11.568
- c5.065,3.616,6.03,8.678,13.267,4.34c7.236-4.34,9.648-10.365,5.307-15.667C46.221-23.096,43.567-27.675,40.19-25.024z"/>
- <path fill="#7D4930" d="M40.173-24.575c-3.678,2.885-6.274,1.393-7.67,6.729c-1.394,5.337-5.113,7.657-0.231,11.139
- c4.88,3.48,5.81,8.354,12.782,4.177c6.972-4.177,9.296-9.979,5.112-15.084C45.983-22.719,43.427-27.128,40.173-24.575z"/>
- <path fill="#794B34" d="M40.155-24.126c-3.538,2.773-6.037,1.338-7.379,6.469s-4.92,7.361-0.224,10.707
- c4.695,3.347,5.59,8.031,12.299,4.016c6.708-4.016,8.944-9.592,4.919-14.5C45.745-22.342,43.286-26.581,40.155-24.126z"/>
- <path fill="#754C37" d="M40.138-23.678c-3.399,2.662-5.8,1.284-7.089,6.209s-4.726,7.065-0.215,10.276
- c4.511,3.213,5.37,7.708,11.814,3.854c6.444-3.854,8.593-9.206,4.727-13.917C45.508-21.966,43.146-26.032,40.138-23.678z"/>
- <path fill="#704C3A" d="M40.12-23.229c-3.26,2.551-5.563,1.23-6.799,5.949s-4.532,6.77-0.205,9.846
- c4.326,3.077,5.149,7.385,11.33,3.693c6.181-3.693,8.241-8.82,4.532-13.334C45.271-21.588,43.005-25.485,40.12-23.229z"/>
- <path fill="#6B4C3C" d="M40.103-22.78c-3.121,2.439-5.325,1.177-6.508,5.688c-1.184,4.511-4.339,6.473-0.197,9.415
- c4.141,2.942,4.93,7.063,10.847,3.531s7.889-8.436,4.339-12.75C45.033-21.211,42.863-24.938,40.103-22.78z"/>
- <path fill="#664C3E" d="M40.085-22.331c-2.981,2.326-5.087,1.123-6.218,5.428s-4.146,6.177-0.188,8.984
- c3.957,2.809,4.71,6.738,10.363,3.369c5.652-3.369,7.537-8.049,4.145-12.166C44.795-20.835,42.723-24.391,40.085-22.331z"/>
- <path fill="#614B3F" d="M40.067-21.883c-2.843,2.216-4.85,1.069-5.928,5.168s-3.952,5.881-0.18,8.554s4.491,6.416,9.88,3.207
- c5.389-3.207,7.185-7.662,3.951-11.582C44.558-20.457,42.582-23.843,40.067-21.883z"/>
- <path fill="#5B4940" d="M40.05-21.435c-2.703,2.104-4.612,1.016-5.637,4.908c-1.026,3.893-3.759,5.584-0.172,8.123
- c3.588,2.538,4.271,6.092,9.396,3.046c5.124-3.046,6.833-7.276,3.758-11S42.441-23.296,40.05-21.435z"/>
- <path fill="#54463F" d="M40.032-20.985c-2.564,1.992-4.375,0.961-5.347,4.647c-0.973,3.687-3.565,5.288-0.162,7.692
- c3.402,2.404,4.051,5.77,8.912,2.885c4.86-2.885,6.48-6.891,3.564-10.417C44.083-19.704,42.301-22.749,40.032-20.985z"/>
- <path fill="#4D423D" d="M40.015-20.536c-2.425,1.881-4.138,0.906-5.057,4.387c-0.92,3.479-3.372,4.992-0.153,7.262
- c3.218,2.27,3.831,5.445,8.429,2.723c4.597-2.723,6.129-6.505,3.37-9.833C43.846-19.327,42.16-22.201,40.015-20.536z"/>
- <path fill="#443D39" d="M39.997-20.088c-2.286,1.77-3.9,0.854-4.767,4.127c-0.867,3.272-3.178,4.696-0.145,6.831
- s3.611,5.123,7.944,2.561c4.333-2.561,5.777-6.119,3.178-9.25S42.019-21.653,39.997-20.088z"/>
- <path fill="#3A3534" d="M39.979-19.64c-2.146,1.658-3.662,0.801-4.477,3.867s-2.984,4.4-0.136,6.4s3.392,4.799,7.461,2.399
- s5.426-5.733,2.984-8.667C43.37-18.573,41.878-21.106,39.979-19.64z"/>
- <path fill="#252423" d="M39.962-19.19c-2.008,1.547-3.425,0.746-4.186,3.606c-0.762,2.86-2.791,4.104-0.127,5.969
- c2.663,1.866,3.171,4.478,6.977,2.239c3.805-2.239,5.073-5.348,2.79-8.084S41.737-20.559,39.962-19.19z"/>
- <path d="M39.944-18.741c-1.868,1.434-3.188,0.691-3.896,3.346c-0.709,2.654-2.598,3.808-0.118,5.538
- c2.479,1.731,2.951,4.153,6.493,2.077c3.541-2.077,4.722-4.961,2.597-7.5S41.597-20.011,39.944-18.741z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M24.708-85.389c-2.704,3.605-4.25,8.25-1.75,12s5.75,10.25,11.5,7.5s7.5-7.5,6.25-10.75
- S28.458-90.389,24.708-85.389z"/>
- <path fill="#82472C" d="M24.913-85.125c-2.625,3.5-4.125,8.008-1.698,11.648c2.427,3.64,5.581,9.949,11.162,7.28
- c5.582-2.669,7.28-7.28,6.067-10.435C39.23-79.787,28.553-89.979,24.913-85.125z"/>
- <path fill="#7D4930" d="M25.119-84.861c-2.545,3.394-4,7.766-1.647,11.296c2.353,3.53,5.413,9.648,10.825,7.06
- c5.412-2.588,7.06-7.06,5.883-10.119C39.003-79.684,28.649-89.567,25.119-84.861z"/>
- <path fill="#794B34" d="M25.324-84.597c-2.466,3.288-3.876,7.524-1.596,10.944c2.28,3.419,5.244,9.347,10.487,6.839
- c5.244-2.508,6.84-6.839,5.7-9.804C38.776-79.581,28.744-89.157,25.324-84.597z"/>
- <path fill="#754C37" d="M25.529-84.333c-2.386,3.183-3.751,7.282-1.544,10.591c2.207,3.31,5.075,9.047,10.15,6.62
- c5.075-2.427,6.62-6.62,5.517-9.488C38.549-79.479,28.839-88.746,25.529-84.333z"/>
- <path fill="#704C3A" d="M25.735-84.069c-2.307,3.077-3.626,7.04-1.493,10.239c2.133,3.2,4.907,8.747,9.813,6.399
- c4.906-2.346,6.399-6.399,5.333-9.172S28.935-88.335,25.735-84.069z"/>
- <path fill="#6B4C3C" d="M25.94-83.804c-2.228,2.97-3.501,6.797-1.442,9.887c2.06,3.089,4.738,8.445,9.475,6.179
- c4.738-2.265,6.18-6.179,5.15-8.856C38.094-79.273,29.03-87.924,25.94-83.804z"/>
- <path fill="#664C3E" d="M26.146-83.541c-2.148,2.865-3.376,6.555-1.39,9.535c1.987,2.979,4.569,8.145,9.138,5.959
- c4.568-2.185,5.959-5.959,4.966-8.542S29.125-87.513,26.146-83.541z"/>
- <path fill="#614B3F" d="M26.351-83.276c-2.069,2.759-3.252,6.313-1.339,9.183c1.913,2.869,4.4,7.844,8.8,5.739
- s5.739-5.739,4.783-8.226C37.639-79.068,29.221-87.103,26.351-83.276z"/>
- <path fill="#5B4940" d="M26.557-83.012c-1.99,2.653-3.127,6.071-1.288,8.831c1.839,2.759,4.231,7.542,8.463,5.519
- c4.23-2.024,5.519-5.519,4.6-7.911C37.411-78.965,29.316-86.692,26.557-83.012z"/>
- <path fill="#54463F" d="M26.762-82.749c-1.91,2.547-3.002,5.829-1.236,8.479c1.766,2.649,4.063,7.242,8.125,5.299
- c4.063-1.942,5.299-5.299,4.416-7.595C37.184-78.862,29.412-86.281,26.762-82.749z"/>
- <path fill="#4D423D" d="M26.967-82.484c-1.831,2.441-2.878,5.587-1.185,8.126c1.693,2.539,3.894,6.941,7.788,5.079
- c3.895-1.862,5.079-5.079,4.233-7.279C36.956-78.76,29.507-85.87,26.967-82.484z"/>
- <path fill="#443D39" d="M27.173-82.22c-1.752,2.336-2.753,5.345-1.134,7.775c1.62,2.429,3.725,6.641,7.451,4.858
- c3.725-1.781,4.858-4.858,4.049-6.964C36.729-78.657,29.603-85.459,27.173-82.22z"/>
- <path fill="#3A3534" d="M27.378-81.956c-1.672,2.23-2.628,5.103-1.083,7.423c1.546,2.318,3.557,6.34,7.113,4.638
- c3.557-1.701,4.639-4.638,3.866-6.648C36.502-78.555,29.698-85.049,27.378-81.956z"/>
- <path fill="#252423" d="M27.583-81.692c-1.593,2.124-2.503,4.861-1.031,7.07c1.473,2.209,3.388,6.039,6.776,4.418
- c3.387-1.62,4.418-4.418,3.682-6.333C36.274-78.452,29.793-84.638,27.583-81.692z"/>
- <path d="M27.789-81.428c-1.514,2.018-2.379,4.619-0.979,6.718c1.399,2.099,3.219,5.738,6.438,4.198
- c3.219-1.539,4.198-4.198,3.499-6.018C36.047-78.349,29.889-84.227,27.789-81.428z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M40.208-116.389c-0.276,1.219-3.75,4-3,6.25s9.25,5.75,12,5.25s8.5-4.75,8.75-9s1.75-7-1.25-8
- S41.458-121.889,40.208-116.389z"/>
- <path fill="#82472C" d="M40.399-116.332c-0.27,1.187-3.66,3.898-2.928,6.09c0.731,2.192,9.028,5.603,11.712,5.116
- c2.685-0.487,8.297-4.629,8.541-8.771c0.244-4.141,1.708-6.821-1.221-7.795C53.576-122.666,41.619-121.691,40.399-116.332z"/>
- <path fill="#7D4930" d="M40.592-116.274c-0.264,1.156-3.57,3.795-2.856,5.93s8.807,5.457,11.425,4.981
- c2.618-0.474,8.093-4.507,8.331-8.54c0.237-4.033,1.666-6.643-1.19-7.591S41.781-121.493,40.592-116.274z"/>
- <path fill="#794B34" d="M40.783-116.217c-0.257,1.125-3.48,3.693-2.784,5.771c0.695,2.078,8.585,5.309,11.137,4.848
- c2.553-0.462,7.89-4.386,8.121-8.311c0.232-3.924,1.625-6.463-1.16-7.386C53.313-122.218,41.943-121.295,40.783-116.217z"/>
- <path fill="#754C37" d="M40.975-116.159c-0.25,1.094-3.391,3.591-2.712,5.611c0.678,2.02,8.363,5.162,10.85,4.713
- s7.686-4.265,7.911-8.08c0.227-3.816,1.583-6.285-1.13-7.183C53.181-121.995,42.105-121.097,40.975-116.159z"/>
- <path fill="#704C3A" d="M41.166-116.102c-0.242,1.063-3.301,3.489-2.641,5.451s8.143,5.016,10.563,4.579
- c2.421-0.436,7.482-4.143,7.702-7.85c0.22-3.707,1.54-6.105-1.101-6.978C53.049-121.771,42.267-120.899,41.166-116.102z"/>
- <path fill="#6B4C3C" d="M41.358-116.044c-0.237,1.032-3.211,3.386-2.569,5.292c0.643,1.905,7.921,4.868,10.275,4.445
- c2.354-0.423,7.278-4.021,7.492-7.62c0.214-3.599,1.498-5.927-1.07-6.774C52.918-121.547,42.429-120.701,41.358-116.044z"/>
- <path fill="#664C3E" d="M41.55-115.986c-0.229,1-3.121,3.284-2.497,5.131c0.624,1.848,7.698,4.722,9.987,4.311
- c2.289-0.41,7.074-3.9,7.282-7.39s1.457-5.748-1.04-6.569S42.59-120.503,41.55-115.986z"/>
- <path fill="#614B3F" d="M41.741-115.929c-0.223,0.97-3.031,3.182-2.425,4.972s7.477,4.575,9.7,4.177
- c2.223-0.397,6.87-3.779,7.072-7.16c0.202-3.381,1.415-5.569-1.01-6.364C52.654-121.101,42.752-120.305,41.741-115.929z"/>
- <path fill="#5B4940" d="M41.933-115.872c-0.216,0.939-2.941,3.081-2.353,4.813c0.588,1.732,7.255,4.427,9.412,4.042
- s6.667-3.658,6.863-6.93s1.373-5.39-0.98-6.16C52.522-120.877,42.913-120.107,41.933-115.872z"/>
- <path fill="#54463F" d="M42.125-115.814c-0.21,0.908-2.852,2.978-2.281,4.653s7.033,4.281,9.125,3.908
- c2.091-0.372,6.463-3.536,6.653-6.7s1.331-5.211-0.95-5.956S43.075-119.909,42.125-115.814z"/>
- <path fill="#4D423D" d="M42.316-115.757c-0.203,0.876-2.762,2.876-2.209,4.493c0.552,1.618,6.812,4.134,8.837,3.774
- s6.26-3.415,6.444-6.47c0.184-3.055,1.289-5.032-0.921-5.751C52.259-120.43,43.237-119.71,42.316-115.757z"/>
- <path fill="#443D39" d="M42.508-115.699c-0.196,0.845-2.672,2.773-2.138,4.333c0.535,1.56,6.591,3.987,8.551,3.64
- c1.959-0.346,6.056-3.293,6.234-6.24c0.178-2.947,1.246-4.854-0.891-5.547C52.127-120.206,43.398-119.513,42.508-115.699z"/>
- <path fill="#3A3534" d="M42.7-115.642c-0.19,0.814-2.582,2.671-2.066,4.174c0.517,1.502,6.369,3.84,8.263,3.505
- c1.894-0.333,5.853-3.172,6.024-6.01c0.173-2.838,1.205-4.675-0.86-5.342C51.995-119.982,43.561-119.314,42.7-115.642z"/>
- <path fill="#252423" d="M42.892-115.584c-0.184,0.783-2.492,2.569-1.994,4.014c0.499,1.445,6.147,3.693,7.976,3.372
- c1.827-0.321,5.648-3.051,5.814-5.78c0.166-2.729,1.163-4.496-0.83-5.138C51.863-119.759,43.722-119.117,42.892-115.584z"/>
- <path d="M43.083-115.527c-0.177,0.752-2.402,2.467-1.922,3.854c0.48,1.387,5.926,3.546,7.688,3.237
- c1.762-0.308,5.445-2.929,5.605-5.55c0.16-2.621,1.121-4.317-0.801-4.934S43.884-118.918,43.083-115.527z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M59.208-134.139c-1.641,1.887-4,5.5,0.25,8s8,7.75,12.5,6.25c4.501-1.5,10.501-7,7.751-14.75
- S64.208-139.889,59.208-134.139z"/>
- <path fill="#82472C" d="M59.527-134.02c-1.588,1.827-3.872,5.324,0.242,7.745s7.744,7.502,12.101,6.05
- c4.357-1.452,10.165-6.776,7.504-14.279C76.711-142.006,64.368-139.586,59.527-134.02z"/>
- <path fill="#7D4930" d="M59.847-133.899c-1.536,1.766-3.744,5.148,0.234,7.489c3.979,2.34,7.489,7.255,11.701,5.851
- c4.214-1.404,9.83-6.553,7.256-13.808S64.527-139.282,59.847-133.899z"/>
- <path fill="#794B34" d="M60.166-133.78c-1.483,1.706-3.616,4.973,0.227,7.233s7.233,7.007,11.302,5.651
- c4.069-1.356,9.494-6.329,7.009-13.336C76.216-141.239,64.688-138.979,60.166-133.78z"/>
- <path fill="#754C37" d="M60.486-133.66c-1.432,1.646-3.489,4.797,0.218,6.978s6.978,6.759,10.902,5.452
- c3.926-1.309,9.159-6.105,6.761-12.866C75.969-140.855,64.847-138.675,60.486-133.66z"/>
- <path fill="#704C3A" d="M60.806-133.541c-1.379,1.585-3.361,4.622,0.21,6.723s6.722,6.512,10.503,5.251
- c3.782-1.26,8.824-5.882,6.513-12.394C75.721-140.473,65.007-138.372,60.806-133.541z"/>
- <path fill="#6B4C3C" d="M61.125-133.42c-1.326,1.525-3.233,4.446,0.202,6.467c3.436,2.021,6.467,6.264,10.104,5.052
- c3.639-1.212,8.488-5.658,6.266-11.923S65.167-138.068,61.125-133.42z"/>
- <path fill="#664C3E" d="M61.444-133.301c-1.273,1.465-3.105,4.27,0.194,6.211c3.3,1.941,6.211,6.017,9.704,4.853
- c3.494-1.165,8.153-5.435,6.018-11.452C75.226-139.706,65.326-137.765,61.444-133.301z"/>
- <path fill="#614B3F" d="M61.764-133.181c-1.222,1.404-2.978,4.094,0.187,5.956c3.163,1.861,5.955,5.77,9.306,4.653
- c3.35-1.117,7.816-5.211,5.77-10.981C74.979-139.322,65.486-137.461,61.764-133.181z"/>
- <path fill="#5B4940" d="M62.083-133.061c-1.169,1.344-2.851,3.919,0.179,5.7c3.027,1.781,5.699,5.522,8.906,4.453
- c3.206-1.069,7.481-4.988,5.521-10.51C74.73-138.939,65.646-137.158,62.083-133.061z"/>
- <path fill="#54463F" d="M62.402-132.941c-1.116,1.284-2.723,3.743,0.17,5.445c2.893,1.701,5.445,5.274,8.508,4.253
- c3.063-1.021,7.146-4.763,5.274-10.038C74.483-138.556,65.806-136.854,62.402-132.941z"/>
- <path fill="#4D423D" d="M62.723-132.821c-1.064,1.224-2.596,3.567,0.161,5.189s5.189,5.026,8.108,4.054
- c2.919-0.973,6.811-4.54,5.026-9.567C74.235-138.172,65.966-136.551,62.723-132.821z"/>
- <path fill="#443D39" d="M63.042-132.702c-1.012,1.163-2.468,3.392,0.153,4.934c2.621,1.542,4.934,4.779,7.709,3.854
- c2.775-0.925,6.475-4.316,4.779-9.096C73.988-137.789,66.125-136.248,63.042-132.702z"/>
- <path fill="#3A3534" d="M63.361-132.582c-0.96,1.103-2.34,3.216,0.146,4.678c2.485,1.461,4.678,4.531,7.31,3.654
- c2.631-0.877,6.14-4.093,4.531-8.625C73.74-137.406,66.285-135.944,63.361-132.582z"/>
- <path fill="#252423" d="M63.681-132.462c-0.907,1.042-2.212,3.04,0.138,4.422c2.35,1.382,4.423,4.284,6.91,3.455
- s5.804-3.869,4.284-8.154C73.493-137.022,66.444-135.641,63.681-132.462z"/>
- <path d="M64-132.342c-0.854,0.982-2.084,2.865,0.13,4.167c2.214,1.302,4.167,4.036,6.511,3.255s5.469-3.646,4.036-7.683
- C73.245-136.639,66.604-135.337,64-132.342z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M50.458-82.389c-3.844,4.165-5.75,5.5-5,11.25s-0.75,10.25,8.25,10.5s15.25-1.75,15.25-9.25
- S56.458-88.889,50.458-82.389z"/>
- <path fill="#82472C" d="M50.592-82.118c-3.74,4.054-5.596,5.354-4.865,10.952c0.729,5.598-0.73,9.979,8.028,10.222
- c8.759,0.243,14.841-1.704,14.841-9.005S56.431-88.446,50.592-82.118z"/>
- <path fill="#7D4930" d="M50.727-81.847c-3.638,3.945-5.441,5.209-4.731,10.655s-0.71,9.708,7.807,9.945
- c8.518,0.237,14.432-1.658,14.432-8.761S56.404-88.003,50.727-81.847z"/>
- <path fill="#794B34" d="M50.86-81.576c-3.534,3.834-5.286,5.063-4.597,10.357c0.689,5.294-0.689,9.437,7.586,9.667
- c8.274,0.23,14.021-1.611,14.021-8.516S56.377-87.56,50.86-81.576z"/>
- <path fill="#754C37" d="M50.995-81.304c-3.431,3.724-5.132,4.917-4.463,10.059s-0.669,9.166,7.363,9.389
- c8.034,0.224,13.612-1.564,13.612-8.271C67.508-76.833,56.351-87.117,50.995-81.304z"/>
- <path fill="#704C3A" d="M51.13-81.034c-3.328,3.614-4.979,4.773-4.329,9.762c0.649,4.99-0.649,8.895,7.143,9.111
- c7.791,0.217,13.202-1.518,13.202-8.026C67.146-76.695,56.324-86.673,51.13-81.034z"/>
- <path fill="#6B4C3C" d="M51.264-80.762c-3.225,3.504-4.824,4.627-4.194,9.464c0.629,4.838-0.63,8.624,6.921,8.833
- c7.55,0.21,12.793-1.472,12.793-7.781C66.783-76.556,56.297-86.23,51.264-80.762z"/>
- <path fill="#664C3E" d="M51.397-80.491c-3.121,3.393-4.669,4.481-4.06,9.166c0.608,4.686-0.609,8.352,6.699,8.556
- c7.309,0.204,12.383-1.426,12.383-7.537C66.42-76.417,56.271-85.788,51.397-80.491z"/>
- <path fill="#614B3F" d="M51.532-80.22c-3.019,3.283-4.515,4.336-3.926,8.869c0.589,4.533-0.589,8.081,6.478,8.278
- c7.066,0.197,11.974-1.379,11.974-7.292C66.058-76.278,56.243-85.344,51.532-80.22z"/>
- <path fill="#5B4940" d="M51.666-79.949c-2.915,3.173-4.36,4.19-3.791,8.571c0.568,4.381-0.569,7.81,6.256,8
- c6.825,0.19,11.564-1.333,11.564-7.047S56.217-84.901,51.666-79.949z"/>
- <path fill="#54463F" d="M51.801-79.678c-2.813,3.063-4.206,4.045-3.657,8.273c0.548,4.229-0.549,7.539,6.034,7.723
- c6.584,0.184,11.155-1.287,11.155-6.803C65.333-76,56.189-84.458,51.801-79.678z"/>
- <path fill="#4D423D" d="M51.935-79.406c-2.709,2.953-4.051,3.899-3.522,7.976c0.528,4.077-0.528,7.268,5.813,7.445
- c6.342,0.177,10.746-1.241,10.746-6.558C64.971-75.862,56.163-84.015,51.935-79.406z"/>
- <path fill="#443D39" d="M52.069-79.135c-2.605,2.842-3.897,3.754-3.389,7.678c0.508,3.925-0.509,6.997,5.592,7.167
- c6.1,0.17,10.336-1.194,10.336-6.313C64.608-75.723,56.136-83.572,52.069-79.135z"/>
- <path fill="#3A3534" d="M52.203-78.864c-2.502,2.732-3.742,3.608-3.254,7.381c0.487,3.772-0.488,6.726,5.37,6.889
- s9.926-1.148,9.926-6.068C64.245-75.584,56.109-83.129,52.203-78.864z"/>
- <path fill="#252423" d="M52.338-78.593c-2.399,2.622-3.589,3.463-3.12,7.083c0.468,3.621-0.469,6.455,5.148,6.612
- c5.616,0.157,9.517-1.102,9.517-5.824C63.883-75.445,56.082-82.686,52.338-78.593z"/>
- <path d="M52.472-78.322c-2.296,2.512-3.434,3.317-2.985,6.785c0.447,3.469-0.448,6.184,4.927,6.334s9.107-1.056,9.107-5.579
- C63.521-75.306,56.056-82.243,52.472-78.322z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M32.708-60.639c-1.63,1.358-4.5,3.75-4.25,8.5c0.25,4.75-3.25,7,2,9.25s7.25,4,12,2.5
- s8.25-4.75,8.5-7.25C51.208-50.139,40.208-66.889,32.708-60.639z"/>
- <path fill="#82472C" d="M32.913-60.506c-1.581,1.339-4.364,3.696-4.122,8.378c0.243,4.681-3.151,6.898,1.939,9.115
- c5.091,2.218,7.03,3.942,11.637,2.464c4.605-1.479,8-4.681,8.242-7.146C50.852-50.158,40.186-66.666,32.913-60.506z"/>
- <path fill="#7D4930" d="M33.117-60.372c-1.531,1.319-4.228,3.642-3.993,8.254c0.235,4.613-3.053,6.797,1.879,8.982
- c4.932,2.186,6.811,3.885,11.273,2.429c4.462-1.457,7.75-4.613,7.984-7.041C50.496-50.175,40.163-66.441,33.117-60.372z"/>
- <path fill="#794B34" d="M33.321-60.238c-1.481,1.299-4.09,3.587-3.863,8.132c0.228,4.544-2.955,6.696,1.818,8.849
- c4.772,2.152,6.591,3.827,10.909,2.392c4.318-1.435,7.5-4.544,7.727-6.936C50.14-50.193,40.14-66.218,33.321-60.238z"/>
- <path fill="#754C37" d="M33.526-60.105c-1.433,1.28-3.955,3.533-3.735,8.009c0.22,4.476-2.856,6.595,1.758,8.715
- c4.614,2.12,6.372,3.77,10.546,2.355c4.174-1.412,7.25-4.476,7.469-6.831C49.784-50.211,40.117-65.993,33.526-60.105z"/>
- <path fill="#704C3A" d="M33.73-59.971c-1.382,1.26-3.818,3.479-3.606,7.887c0.212,4.407-2.757,6.494,1.697,8.581
- c4.455,2.088,6.152,3.712,10.183,2.32s7-4.407,7.212-6.727S40.095-65.77,33.73-59.971z"/>
- <path fill="#6B4C3C" d="M33.936-59.838c-1.334,1.241-3.682,3.425-3.478,7.764c0.205,4.338-2.659,6.394,1.637,8.448
- c4.295,2.056,5.932,3.653,9.818,2.283c3.886-1.369,6.75-4.338,6.954-6.622C49.072-50.247,40.072-65.546,33.936-59.838z"/>
- <path fill="#664C3E" d="M34.14-59.704c-1.284,1.221-3.545,3.371-3.349,7.641c0.198,4.269-2.56,6.292,1.576,8.314
- c4.137,2.022,5.712,3.597,9.454,2.247c3.743-1.348,6.5-4.27,6.697-6.517S40.049-65.322,34.14-59.704z"/>
- <path fill="#614B3F" d="M34.345-59.57c-1.235,1.201-3.409,3.316-3.22,7.518c0.19,4.201-2.462,6.191,1.515,8.18
- c3.978,1.99,5.493,3.539,9.092,2.212c3.598-1.326,6.249-4.201,6.438-6.413C48.359-50.284,40.026-65.098,34.345-59.57z"/>
- <path fill="#5B4940" d="M34.549-59.437c-1.185,1.182-3.272,3.263-3.091,7.396c0.182,4.132-2.364,6.09,1.454,8.046
- c3.819,1.959,5.273,3.481,8.728,2.176c3.455-1.305,6.001-4.132,6.182-6.308C48.004-50.302,40.004-64.874,34.549-59.437z"/>
- <path fill="#54463F" d="M34.754-59.303c-1.136,1.162-3.137,3.208-2.963,7.273c0.175,4.063-2.265,5.988,1.395,7.913
- c3.659,1.926,5.053,3.423,8.363,2.139c3.311-1.282,5.75-4.063,5.924-6.203C47.647-50.32,39.98-64.65,34.754-59.303z"/>
- <path fill="#4D423D" d="M34.958-59.17c-1.086,1.143-3,3.154-2.833,7.15c0.167,3.995-2.167,5.888,1.333,7.779
- c3.5,1.894,4.834,3.365,8,2.104c3.167-1.261,5.5-3.995,5.666-6.099C47.292-50.337,39.958-64.426,34.958-59.17z"/>
- <path fill="#443D39" d="M35.163-59.036c-1.037,1.123-2.863,3.1-2.705,7.027c0.159,3.927-2.068,5.786,1.272,7.646
- c3.342,1.861,4.614,3.308,7.637,2.067c3.022-1.239,5.25-3.927,5.409-5.994C46.936-50.355,39.936-64.203,35.163-59.036z"/>
- <path fill="#3A3534" d="M35.367-58.902c-0.987,1.103-2.727,3.046-2.576,6.905c0.152,3.858-1.969,5.685,1.212,7.512
- c3.183,1.828,4.395,3.25,7.273,2.03c2.879-1.217,5-3.857,5.151-5.889C46.579-50.374,39.913-63.979,35.367-58.902z"/>
- <path fill="#252423" d="M35.572-58.769c-0.938,1.083-2.591,2.992-2.447,6.782c0.144,3.79-1.871,5.583,1.151,7.378
- c3.023,1.796,4.175,3.192,6.909,1.995c2.734-1.196,4.75-3.79,4.894-5.785C46.224-50.392,39.89-63.755,35.572-58.769z"/>
- <path d="M35.776-58.635c-0.889,1.063-2.454,2.938-2.318,6.659c0.137,3.721-1.772,5.483,1.091,7.245
- c2.864,1.764,3.955,3.135,6.546,1.959c2.591-1.174,4.5-3.721,4.636-5.68C45.867-50.41,39.867-63.531,35.776-58.635z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M126.959-136.639c0.775-0.155,4.5-5,4.5-5s1.25-8,0-9.25s-9-7.5-12.25-6s-5.75,10-5.25,14.5
- S118.209-134.889,126.959-136.639z"/>
- <path fill="#82472C" d="M126.847-136.883c0.756-0.151,4.388-4.872,4.388-4.872s1.218-7.794,0-9.012
- c-1.219-1.218-8.775-7.307-11.944-5.846s-5.605,9.743-5.119,14.127C114.659-138.102,118.315-135.178,126.847-136.883z"/>
- <path fill="#7D4930" d="M126.734-137.128c0.736-0.147,4.274-4.743,4.274-4.743s1.188-7.588,0-8.774
- c-1.188-1.186-8.55-7.114-11.638-5.691c-3.087,1.423-5.462,9.486-4.987,13.754C114.859-138.313,118.421-135.468,126.734-137.128
- z"/>
- <path fill="#794B34" d="M126.621-137.372c0.718-0.144,4.163-4.614,4.163-4.614s1.156-7.383,0-8.536
- c-1.156-1.154-8.325-6.921-11.331-5.538c-3.007,1.385-5.319,9.229-4.856,13.382
- C115.059-138.525,118.527-135.757,126.621-137.372z"/>
- <path fill="#754C37" d="M126.509-137.616c0.698-0.14,4.05-4.486,4.05-4.486s1.125-7.177,0-8.298
- c-1.125-1.122-8.1-6.729-11.025-5.383c-2.924,1.345-5.175,8.971-4.725,13.008S118.634-136.046,126.509-137.616z"/>
- <path fill="#704C3A" d="M126.396-137.86c0.679-0.136,3.938-4.357,3.938-4.357s1.094-6.971,0-8.061s-7.875-6.536-10.719-5.229
- s-5.031,8.714-4.594,12.635S118.74-136.336,126.396-137.86z"/>
- <path fill="#6B4C3C" d="M126.284-138.104c0.659-0.132,3.825-4.229,3.825-4.229s1.062-6.766,0-7.823
- c-1.063-1.057-7.65-6.343-10.413-5.075c-2.762,1.269-4.887,8.457-4.462,12.263S118.846-136.625,126.284-138.104z"/>
- <path fill="#664C3E" d="M126.172-138.349c0.64-0.127,3.712-4.1,3.712-4.1s1.031-6.56,0-7.585
- c-1.031-1.025-7.425-6.15-10.106-4.92c-2.681,1.23-4.743,8.2-4.331,11.89C115.858-139.374,118.952-136.914,126.172-138.349z"/>
- <path fill="#614B3F" d="M126.059-138.593c0.621-0.124,3.601-3.972,3.601-3.972s0.999-6.354,0-7.347
- c-1.001-0.993-7.2-5.957-9.801-4.766c-2.6,1.191-4.6,7.943-4.199,11.517C116.059-139.586,119.059-137.204,126.059-138.593z"/>
- <path fill="#5B4940" d="M125.946-138.837c0.602-0.12,3.487-3.843,3.487-3.843s0.969-6.148,0-7.109
- c-0.969-0.96-6.975-5.764-9.494-4.611c-2.518,1.153-4.455,7.686-4.068,11.145C116.259-139.798,119.165-137.493,125.946-138.837z
- "/>
- <path fill="#54463F" d="M125.834-139.082c0.581-0.115,3.375-3.714,3.375-3.714s0.937-5.943,0-6.872
- c-0.938-0.928-6.75-5.571-9.188-4.457c-2.437,1.114-4.312,7.428-3.937,10.771C116.459-140.011,119.271-137.782,125.834-139.082z
- "/>
- <path fill="#4D423D" d="M125.722-139.326c0.562-0.111,3.263-3.586,3.263-3.586s0.905-5.737,0-6.634
- c-0.907-0.896-6.525-5.378-8.882-4.302c-2.356,1.075-4.169,7.171-3.806,10.398C116.659-140.223,119.377-138.071,125.722-139.326
- z"/>
- <path fill="#443D39" d="M125.609-139.57c0.542-0.108,3.149-3.458,3.149-3.458s0.874-5.531,0-6.396
- c-0.876-0.864-6.3-5.186-8.575-4.148c-2.274,1.037-4.024,6.914-3.675,10.025C116.859-140.435,119.483-138.361,125.609-139.57z"
- />
- <path fill="#3A3534" d="M125.496-139.815c0.523-0.104,3.038-3.329,3.038-3.329s0.843-5.326,0-6.158
- c-0.845-0.832-6.075-4.993-8.27-3.994c-2.193,0.999-3.881,6.657-3.543,9.653C117.059-140.647,119.589-138.65,125.496-139.815z"
- />
- <path fill="#252423" d="M125.384-140.059c0.504-0.1,2.925-3.2,2.925-3.2s0.812-5.12,0-5.92c-0.813-0.8-5.85-4.8-7.963-3.84
- c-2.111,0.96-3.736,6.399-3.412,9.28C117.259-140.859,119.695-138.939,125.384-140.059z"/>
- <path d="M125.271-140.303c0.484-0.096,2.813-3.072,2.813-3.072s0.78-4.914,0-5.682c-0.782-0.768-5.625-4.607-7.657-3.686
- c-2.03,0.921-3.593,6.143-3.28,8.907C117.459-141.071,119.802-139.229,125.271-140.303z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M95.809-126.989c-2.319,1.987-2.802,11.8,1.198,14.2s5.802,3,8.802,0.2c3-2.8,6.198-8.6,1.198-12.6
- S97.209-128.189,95.809-126.989z"/>
- <path fill="#82472C" d="M95.961-126.752c-2.253,1.92-2.722,11.407,1.165,13.727c3.887,2.32,5.638,2.9,8.552,0.193
- c2.916-2.707,6.023-8.313,1.165-12.18S97.322-127.912,95.961-126.752z"/>
- <path fill="#7D4930" d="M96.114-126.516c-2.188,1.855-2.643,11.014,1.131,13.254c3.773,2.24,5.473,2.8,8.303,0.186
- c2.83-2.613,5.848-8.026,1.131-11.759C101.962-128.569,97.436-127.636,96.114-126.516z"/>
- <path fill="#794B34" d="M96.268-126.279c-2.122,1.788-2.563,10.621,1.097,12.78c3.66,2.16,5.309,2.7,8.053,0.18
- c2.745-2.52,5.672-7.74,1.098-11.339C101.939-128.259,97.549-127.359,96.268-126.279z"/>
- <path fill="#754C37" d="M96.42-126.042c-2.055,1.722-2.483,10.227,1.063,12.307s5.144,2.6,7.804,0.173s5.496-7.453,1.063-10.92
- C101.917-127.949,97.662-127.083,96.42-126.042z"/>
- <path fill="#704C3A" d="M96.573-125.806c-1.989,1.656-2.404,9.834,1.029,11.833c3.434,2,4.979,2.5,7.555,0.167
- c2.574-2.333,5.32-7.166,1.028-10.5S97.775-126.806,96.573-125.806z"/>
- <path fill="#6B4C3C" d="M96.727-125.569c-1.924,1.59-2.325,9.44,0.995,11.36c3.319,1.92,4.814,2.4,7.305,0.16
- c2.489-2.24,5.145-6.879,0.995-10.08C101.871-127.329,97.889-126.529,96.727-125.569z"/>
- <path fill="#664C3E" d="M96.879-125.333c-1.857,1.523-2.245,9.047,0.962,10.887c3.206,1.84,4.65,2.3,7.055,0.153
- c2.405-2.146,4.97-6.593,0.962-9.66C101.849-127.019,98.002-126.252,96.879-125.333z"/>
- <path fill="#614B3F" d="M97.032-125.096c-1.792,1.457-2.166,8.653,0.928,10.413c3.094,1.76,4.485,2.2,6.806,0.146
- c2.319-2.053,4.794-6.306,0.928-9.24C101.826-126.709,98.114-125.976,97.032-125.096z"/>
- <path fill="#5B4940" d="M97.185-124.859c-1.726,1.391-2.086,8.26,0.895,9.94c2.979,1.68,4.321,2.1,6.556,0.14
- c2.235-1.96,4.619-6.02,0.894-8.82C101.804-126.399,98.228-125.699,97.185-124.859z"/>
- <path fill="#54463F" d="M97.338-124.623c-1.66,1.325-2.007,7.867,0.859,9.466c2.867,1.601,4.157,2,6.308,0.134
- c2.149-1.867,4.442-5.733,0.859-8.4S98.341-125.422,97.338-124.623z"/>
- <path fill="#4D423D" d="M97.491-124.386c-1.595,1.258-1.928,7.474,0.825,8.993c2.754,1.52,3.993,1.9,6.058,0.126
- c2.064-1.773,4.268-5.446,0.826-7.979C101.758-125.779,98.454-125.146,97.491-124.386z"/>
- <path fill="#443D39" d="M97.644-124.149c-1.528,1.192-1.848,7.08,0.792,8.52c2.641,1.44,3.828,1.8,5.809,0.12
- c1.979-1.68,4.092-5.16,0.792-7.56C101.735-125.469,98.567-124.869,97.644-124.149z"/>
- <path fill="#3A3534" d="M97.797-123.913c-1.463,1.126-1.769,6.687,0.758,8.046c2.527,1.36,3.664,1.7,5.559,0.114
- c1.895-1.587,3.917-4.873,0.758-7.14C101.713-125.159,98.681-124.592,97.797-123.913z"/>
- <path fill="#252423" d="M97.949-123.676c-1.396,1.06-1.688,6.293,0.725,7.573c2.414,1.28,3.499,1.6,5.31,0.106
- c1.81-1.493,3.74-4.586,0.724-6.72S98.794-124.316,97.949-123.676z"/>
- <path d="M98.103-123.439c-1.331,0.993-1.609,5.9,0.69,7.1c2.301,1.2,3.335,1.5,5.06,0.1s3.565-4.3,0.69-6.3
- S98.907-124.039,98.103-123.439z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M66.208-153.389c-3.488,2.415-2.75,8.25-1.25,9.5s5.25,4,10,2.25c4.751-1.75,10.001-4,10.751-7.75
- s0.5-6.25-4-7.75S69.458-155.639,66.208-153.389z"/>
- <path fill="#82472C" d="M66.411-153.261c-3.414,2.338-2.692,7.986-1.224,9.196c1.468,1.21,5.138,3.873,9.786,2.179
- c4.65-1.694,9.788-3.873,10.521-7.503c0.734-3.63,0.489-6.05-3.914-7.502C77.177-158.344,69.591-155.44,66.411-153.261z"/>
- <path fill="#7D4930" d="M66.613-153.134c-3.34,2.261-2.633,7.724-1.196,8.895c1.436,1.17,5.025,3.745,9.573,2.106
- s9.574-3.745,10.292-7.256s0.479-5.852-3.829-7.256C77.145-158.049,69.725-155.241,66.613-153.134z"/>
- <path fill="#794B34" d="M66.816-153.006c-3.266,2.184-2.574,7.46-1.17,8.591c1.403,1.13,4.913,3.618,9.359,2.035
- c4.447-1.583,9.36-3.618,10.063-7.009c0.702-3.392,0.468-5.652-3.743-7.008C77.113-157.754,69.858-155.042,66.816-153.006z"/>
- <path fill="#754C37" d="M67.019-152.879c-3.19,2.107-2.515,7.198-1.144,8.289c1.372,1.09,4.802,3.489,9.147,1.963
- c4.345-1.527,9.146-3.49,9.833-6.762c0.687-3.271,0.457-5.453-3.658-6.762C77.081-157.459,69.991-154.842,67.019-152.879z"/>
- <path fill="#704C3A" d="M67.222-152.751c-3.116,2.03-2.457,6.935-1.117,7.985c1.34,1.051,4.69,3.363,8.934,1.891
- c4.244-1.471,8.934-3.362,9.604-6.514c0.671-3.152,0.447-5.253-3.572-6.514C77.049-157.165,70.125-154.643,67.222-152.751z"/>
- <path fill="#6B4C3C" d="M67.424-152.624c-3.042,1.953-2.398,6.672-1.09,7.683c1.309,1.011,4.578,3.235,8.721,1.82
- c4.142-1.416,8.72-3.235,9.373-6.268c0.655-3.033,0.437-5.055-3.486-6.268C77.017-156.87,70.258-154.444,67.424-152.624z"/>
- <path fill="#664C3E" d="M67.627-152.496c-2.968,1.876-2.34,6.408-1.063,7.379s4.466,3.107,8.507,1.748
- c4.041-1.36,8.507-3.107,9.145-6.021c0.639-2.913,0.426-4.855-3.401-6.02C76.984-156.575,70.392-154.244,67.627-152.496z"/>
- <path fill="#614B3F" d="M67.829-152.369c-2.893,1.799-2.28,6.146-1.036,7.077s4.354,2.979,8.293,1.676s8.294-2.979,8.915-5.773
- c0.623-2.793,0.415-4.656-3.315-5.773C76.952-156.28,70.524-154.045,67.829-152.369z"/>
- <path fill="#5B4940" d="M68.032-152.241c-2.818,1.722-2.223,5.882-1.01,6.774c1.212,0.891,4.241,2.852,8.08,1.604
- c3.838-1.248,8.08-2.852,8.686-5.526c0.606-2.674,0.404-4.457-3.23-5.526C76.92-155.985,70.658-153.846,68.032-152.241z"/>
- <path fill="#54463F" d="M68.234-152.114c-2.744,1.645-2.163,5.62-0.982,6.471c1.18,0.852,4.129,2.725,7.866,1.533
- c3.736-1.192,7.867-2.725,8.456-5.279c0.591-2.554,0.394-4.257-3.146-5.279C76.888-155.69,70.791-153.646,68.234-152.114z"/>
- <path fill="#4D423D" d="M68.438-151.986c-2.67,1.568-2.104,5.356-0.957,6.168c1.148,0.812,4.019,2.597,7.653,1.461
- c3.636-1.136,7.654-2.597,8.227-5.032c0.575-2.435,0.384-4.058-3.06-5.032C76.856-155.395,70.925-153.447,68.438-151.986z"/>
- <path fill="#443D39" d="M68.64-151.859c-2.595,1.491-2.046,5.093-0.93,5.865s3.906,2.47,7.44,1.389
- c3.533-1.081,7.439-2.469,7.997-4.785c0.56-2.315,0.372-3.858-2.975-4.785C76.824-155.1,71.058-153.248,68.64-151.859z"/>
- <path fill="#3A3534" d="M68.843-151.731c-2.521,1.414-1.987,4.83-0.903,5.562c1.084,0.732,3.794,2.342,7.227,1.317
- s7.227-2.342,7.768-4.538c0.544-2.196,0.362-3.659-2.889-4.538C76.792-154.805,71.191-153.048,68.843-151.731z"/>
- <path fill="#252423" d="M69.045-151.604c-2.446,1.337-1.929,4.567-0.876,5.259c1.052,0.692,3.682,2.214,7.014,1.246
- c3.33-0.969,7.013-2.214,7.538-4.291c0.527-2.076,0.351-3.46-2.804-4.291C76.76-154.51,71.324-152.849,69.045-151.604z"/>
- <path d="M69.248-151.476c-2.372,1.26-1.87,4.304-0.85,4.957c1.02,0.652,3.569,2.087,6.8,1.174
- c3.229-0.913,6.8-2.087,7.309-4.043c0.512-1.957,0.341-3.261-2.718-4.043C76.728-154.215,71.458-152.65,69.248-151.476z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M96.459-153.639c-1.636,1.718-5.25,3.25-5.75,5.75s-1,6.75,3.25,9s7.5,9.25,13.75,6s4-9.25,4-11.5
- S106.209-163.889,96.459-153.639z"/>
- <path fill="#82472C" d="M96.638-153.406c-1.585,1.675-5.087,3.168-5.571,5.605c-0.484,2.437-0.969,6.58,3.149,8.773
- s7.267,9.017,13.322,5.849c6.055-3.168,3.876-9.017,3.876-11.21S106.084-163.398,96.638-153.406z"/>
- <path fill="#7D4930" d="M96.816-153.173c-1.534,1.631-4.923,3.086-5.392,5.46c-0.469,2.375-0.938,6.41,3.048,8.547
- c3.985,2.136,7.033,8.784,12.894,5.697c5.861-3.086,3.752-8.784,3.752-10.92S105.96-162.906,96.816-153.173z"/>
- <path fill="#794B34" d="M96.996-152.94c-1.483,1.588-4.761,3.004-5.214,5.315s-0.907,6.24,2.946,8.319
- c3.854,2.08,6.801,8.551,12.467,5.546c5.667-3.004,3.627-8.55,3.627-10.63C110.822-146.469,105.835-162.415,96.996-152.94z"/>
- <path fill="#754C37" d="M97.175-152.707c-1.433,1.545-4.597,2.922-5.034,5.17c-0.438,2.248-0.877,6.07,2.845,8.093
- c3.722,2.023,6.566,8.317,12.039,5.395c5.472-2.922,3.502-8.317,3.502-10.34S105.711-161.923,97.175-152.707z"/>
- <path fill="#704C3A" d="M97.354-152.474c-1.382,1.501-4.434,2.841-4.855,5.025c-0.423,2.185-0.846,5.899,2.744,7.866
- c3.59,1.966,6.333,8.084,11.611,5.244c5.277-2.84,3.378-8.084,3.378-10.051C110.231-146.355,105.587-161.432,97.354-152.474z"/>
- <path fill="#6B4C3C" d="M97.532-152.24c-1.331,1.458-4.27,2.759-4.677,4.88c-0.406,2.122-0.813,5.729,2.644,7.639
- s6.1,7.851,11.184,5.093c5.082-2.759,3.253-7.852,3.253-9.761S105.462-160.94,97.532-152.24z"/>
- <path fill="#664C3E" d="M97.712-152.007c-1.281,1.415-4.107,2.677-4.498,4.735c-0.392,2.059-0.783,5.56,2.542,7.413
- c3.324,1.853,5.866,7.618,10.756,4.941c4.888-2.677,3.128-7.618,3.128-9.471S105.338-160.449,97.712-152.007z"/>
- <path fill="#614B3F" d="M97.891-151.774c-1.229,1.372-3.944,2.595-4.319,4.591c-0.376,1.996-0.753,5.389,2.44,7.185
- s5.634,7.385,10.328,4.79c4.693-2.595,3.005-7.385,3.005-9.181S105.213-159.958,97.891-151.774z"/>
- <path fill="#5B4940" d="M98.069-151.541c-1.179,1.328-3.78,2.513-4.14,4.446c-0.361,1.933-0.722,5.219,2.339,6.958
- s5.4,7.152,9.9,4.639c4.499-2.513,2.88-7.152,2.88-8.892S105.089-159.466,98.069-151.541z"/>
- <path fill="#54463F" d="M98.248-151.308c-1.128,1.285-3.617,2.431-3.961,4.301c-0.345,1.87-0.69,5.049,2.238,6.731
- c2.929,1.683,5.167,6.918,9.473,4.488c4.304-2.431,2.755-6.918,2.755-8.602S104.964-158.975,98.248-151.308z"/>
- <path fill="#4D423D" d="M98.427-151.075c-1.077,1.242-3.454,2.349-3.782,4.156c-0.329,1.807-0.659,4.879,2.138,6.505
- c2.796,1.626,4.934,6.685,9.045,4.336c4.109-2.349,2.631-6.685,2.631-8.312C108.458-146.015,104.84-158.483,98.427-151.075z"/>
- <path fill="#443D39" d="M98.605-150.841c-1.026,1.198-3.29,2.267-3.603,4.011c-0.314,1.744-0.629,4.708,2.036,6.278
- c2.664,1.57,4.699,6.453,8.617,4.186c3.914-2.267,2.506-6.453,2.506-8.022S104.715-157.992,98.605-150.841z"/>
- <path fill="#3A3534" d="M98.785-150.608c-0.976,1.155-3.128,2.186-3.425,3.866c-0.299,1.681-0.598,4.538,1.935,6.051
- c2.532,1.513,4.467,6.219,8.189,4.034c3.721-2.185,2.382-6.219,2.382-7.732S104.591-157.5,98.785-150.608z"/>
- <path fill="#252423" d="M98.964-150.375c-0.925,1.111-2.964,2.103-3.245,3.721c-0.283,1.618-0.567,4.369,1.833,5.825
- s4.233,5.986,7.762,3.883c3.525-2.104,2.258-5.986,2.258-7.442S104.466-157.009,98.964-150.375z"/>
- <path d="M99.143-150.142c-0.874,1.068-2.801,2.021-3.066,3.576c-0.268,1.555-0.536,4.198,1.732,5.598
- c2.268,1.399,4,5.753,7.334,3.731c3.331-2.021,2.133-5.753,2.133-7.152S104.342-156.517,99.143-150.142z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M126.959-12.223c0.775-0.155,4.5-5,4.5-5s1.25-8,0-9.25s-9-7.5-12.25-6s-5.75,10-5.25,14.5
- S118.209-10.473,126.959-12.223z"/>
- <path fill="#82472C" d="M126.847-12.467c0.756-0.151,4.388-4.872,4.388-4.872s1.218-7.793,0-9.012
- c-1.219-1.218-8.775-7.307-11.944-5.846s-5.605,9.742-5.119,14.127C114.659-13.685,118.315-10.762,126.847-12.467z"/>
- <path fill="#7D4930" d="M126.734-12.712c0.736-0.146,4.274-4.742,4.274-4.742s1.188-7.588,0-8.774
- c-1.188-1.186-8.55-7.114-11.638-5.691c-3.087,1.423-5.462,9.485-4.987,13.755C114.859-13.896,118.421-11.052,126.734-12.712z"
- />
- <path fill="#794B34" d="M126.621-12.956c0.718-0.143,4.163-4.613,4.163-4.613s1.156-7.383,0-8.537
- c-1.156-1.153-8.325-6.921-11.331-5.537c-3.007,1.385-5.319,9.229-4.856,13.382C115.059-14.108,118.527-11.341,126.621-12.956z"
- />
- <path fill="#754C37" d="M126.509-13.2c0.698-0.139,4.05-4.485,4.05-4.485s1.125-7.177,0-8.298
- c-1.125-1.122-8.1-6.729-11.025-5.383c-2.924,1.345-5.175,8.971-4.725,13.008S118.634-11.63,126.509-13.2z"/>
- <path fill="#704C3A" d="M126.396-13.444c0.679-0.135,3.938-4.357,3.938-4.357s1.094-6.971,0-8.061
- c-1.094-1.089-7.875-6.535-10.719-5.229c-2.844,1.308-5.031,8.715-4.594,12.636S118.74-11.919,126.396-13.444z"/>
- <path fill="#6B4C3C" d="M126.284-13.688c0.659-0.131,3.825-4.229,3.825-4.229s1.062-6.766,0-7.822
- c-1.063-1.058-7.65-6.344-10.413-5.075c-2.762,1.269-4.887,8.457-4.462,12.263C115.659-14.745,118.846-12.208,126.284-13.688z"
- />
- <path fill="#664C3E" d="M126.172-13.933c0.64-0.127,3.712-4.1,3.712-4.1s1.031-6.561,0-7.586
- c-1.031-1.024-7.425-6.149-10.106-4.92c-2.681,1.23-4.743,8.2-4.331,11.891C115.858-14.958,118.952-12.497,126.172-13.933z"/>
- <path fill="#614B3F" d="M126.059-14.177c0.621-0.123,3.601-3.972,3.601-3.972s0.999-6.354,0-7.347
- c-1.001-0.993-7.2-5.957-9.801-4.766c-2.6,1.191-4.6,7.942-4.199,11.517C116.059-15.17,119.059-12.787,126.059-14.177z"/>
- <path fill="#5B4940" d="M125.946-14.421c0.602-0.119,3.487-3.844,3.487-3.844s0.969-6.148,0-7.109
- c-0.969-0.96-6.975-5.764-9.494-4.611c-2.518,1.153-4.455,7.686-4.068,11.145C116.259-15.382,119.165-13.076,125.946-14.421z"/>
- <path fill="#54463F" d="M125.834-14.665c0.581-0.115,3.375-3.715,3.375-3.715s0.937-5.943,0-6.871
- c-0.938-0.929-6.75-5.572-9.188-4.457c-2.437,1.113-4.312,7.428-3.937,10.771C116.459-15.595,119.271-13.366,125.834-14.665z"/>
- <path fill="#4D423D" d="M125.722-14.909c0.562-0.111,3.263-3.586,3.263-3.586s0.905-5.737,0-6.635
- c-0.907-0.896-6.525-5.378-8.882-4.302c-2.356,1.075-4.169,7.171-3.806,10.398C116.659-15.806,119.377-13.655,125.722-14.909z"
- />
- <path fill="#443D39" d="M125.609-15.153c0.542-0.108,3.149-3.458,3.149-3.458s0.874-5.531,0-6.396
- c-0.876-0.864-6.3-5.186-8.575-4.148c-2.274,1.037-4.024,6.914-3.675,10.025C116.859-16.019,119.483-13.944,125.609-15.153z"/>
- <path fill="#3A3534" d="M125.496-15.398c0.523-0.104,3.038-3.329,3.038-3.329s0.843-5.325,0-6.157
- c-0.845-0.832-6.075-4.993-8.27-3.994c-2.193,0.999-3.881,6.657-3.543,9.653C117.059-16.23,119.589-14.233,125.496-15.398z"/>
- <path fill="#252423" d="M125.384-15.643c0.504-0.1,2.925-3.2,2.925-3.2s0.812-5.119,0-5.92c-0.813-0.8-5.85-4.8-7.963-3.84
- c-2.111,0.96-3.736,6.399-3.412,9.28C117.259-16.442,119.695-14.522,125.384-15.643z"/>
- <path d="M125.271-15.887c0.484-0.096,2.813-3.071,2.813-3.071s0.78-4.914,0-5.683c-0.782-0.768-5.625-4.606-7.657-3.686
- c-2.03,0.921-3.593,6.143-3.28,8.907C117.459-16.655,119.802-14.812,125.271-15.887z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M66.208-28.973c-3.488,2.415-2.75,8.25-1.25,9.5s5.25,4,10,2.25c4.751-1.75,10.001-4,10.751-7.75
- s0.5-6.25-4-7.75S69.458-31.223,66.208-28.973z"/>
- <path fill="#82472C" d="M66.411-28.845c-3.414,2.338-2.692,7.986-1.224,9.196c1.468,1.21,5.138,3.872,9.786,2.179
- c4.65-1.694,9.788-3.873,10.521-7.504c0.734-3.63,0.489-6.05-3.914-7.502C77.177-33.928,69.591-31.023,66.411-28.845z"/>
- <path fill="#7D4930" d="M66.613-28.718c-3.34,2.262-2.633,7.725-1.196,8.895c1.436,1.17,5.025,3.745,9.573,2.106
- s9.574-3.745,10.292-7.256s0.479-5.852-3.829-7.256C77.145-33.633,69.725-30.824,66.613-28.718z"/>
- <path fill="#794B34" d="M66.816-28.59c-3.266,2.184-2.574,7.46-1.17,8.591c1.403,1.131,4.913,3.617,9.359,2.035
- c4.447-1.582,9.36-3.617,10.063-7.009s0.468-5.652-3.743-7.009C77.113-33.338,69.858-30.625,66.816-28.59z"/>
- <path fill="#754C37" d="M67.019-28.462c-3.19,2.106-2.515,7.197-1.144,8.288c1.372,1.091,4.802,3.489,9.147,1.963
- c4.345-1.526,9.146-3.489,9.833-6.762c0.687-3.271,0.457-5.452-3.658-6.762C77.081-33.043,69.991-30.425,67.019-28.462z"/>
- <path fill="#704C3A" d="M67.222-28.335c-3.116,2.029-2.457,6.936-1.117,7.985c1.34,1.051,4.69,3.362,8.934,1.892
- c4.244-1.471,8.934-3.362,9.604-6.515c0.671-3.152,0.447-5.253-3.572-6.515C77.049-32.748,70.125-30.226,67.222-28.335z"/>
- <path fill="#6B4C3C" d="M67.424-28.208c-3.042,1.953-2.398,6.672-1.09,7.684c1.309,1.011,4.578,3.234,8.721,1.819
- c4.142-1.415,8.72-3.235,9.373-6.268c0.655-3.032,0.437-5.055-3.486-6.268C77.017-32.453,70.258-30.027,67.424-28.208z"/>
- <path fill="#664C3E" d="M67.627-28.079c-2.968,1.875-2.34,6.408-1.063,7.379s4.466,3.107,8.507,1.748s8.507-3.107,9.145-6.021
- c0.639-2.913,0.426-4.854-3.401-6.021C76.984-32.158,70.392-29.827,67.627-28.079z"/>
- <path fill="#614B3F" d="M67.829-27.952c-2.893,1.799-2.28,6.146-1.036,7.076c1.244,0.932,4.354,2.98,8.293,1.676
- c3.939-1.303,8.294-2.979,8.915-5.772c0.623-2.794,0.415-4.655-3.315-5.772C76.952-31.863,70.524-29.628,67.829-27.952z"/>
- <path fill="#5B4940" d="M68.032-27.825c-2.818,1.723-2.223,5.883-1.01,6.774c1.212,0.892,4.241,2.853,8.08,1.604
- c3.838-1.248,8.08-2.853,8.686-5.526c0.606-2.674,0.404-4.456-3.23-5.526C76.92-31.568,70.658-29.429,68.032-27.825z"/>
- <path fill="#54463F" d="M68.234-27.697c-2.744,1.646-2.163,5.62-0.982,6.471c1.18,0.853,4.129,2.726,7.866,1.532
- c3.736-1.191,7.867-2.725,8.456-5.278c0.591-2.554,0.394-4.257-3.146-5.278C76.888-31.273,70.791-29.229,68.234-27.697z"/>
- <path fill="#4D423D" d="M68.438-27.569c-2.67,1.567-2.104,5.355-0.957,6.168c1.148,0.812,4.019,2.597,7.653,1.461
- c3.636-1.137,7.654-2.598,8.227-5.032c0.575-2.435,0.384-4.058-3.06-5.032C76.856-30.979,70.925-29.03,68.438-27.569z"/>
- <path fill="#443D39" d="M68.64-27.442c-2.595,1.49-2.046,5.094-0.93,5.865s3.906,2.47,7.44,1.389
- c3.533-1.08,7.439-2.469,7.997-4.784c0.56-2.315,0.372-3.858-2.975-4.784C76.824-30.684,71.058-28.831,68.64-27.442z"/>
- <path fill="#3A3534" d="M68.843-27.314c-2.521,1.413-1.987,4.83-0.903,5.562c1.084,0.732,3.794,2.343,7.227,1.318
- c3.433-1.025,7.227-2.342,7.768-4.538c0.544-2.196,0.362-3.659-2.889-4.538C76.792-30.389,71.191-28.632,68.843-27.314z"/>
- <path fill="#252423" d="M69.045-27.187c-2.446,1.336-1.929,4.566-0.876,5.259c1.052,0.692,3.682,2.214,7.014,1.245
- c3.33-0.969,7.013-2.214,7.538-4.29c0.527-2.076,0.351-3.46-2.804-4.29C76.76-30.094,71.324-28.433,69.045-27.187z"/>
- <path d="M69.248-27.06c-2.372,1.26-1.87,4.305-0.85,4.957c1.02,0.652,3.569,2.086,6.8,1.174c3.229-0.914,6.8-2.088,7.309-4.044
- c0.512-1.956,0.341-3.261-2.718-4.044C76.728-29.799,71.458-28.233,69.248-27.06z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M96.459-29.223c-1.636,1.718-5.25,3.25-5.75,5.75s-1,6.75,3.25,9s7.5,9.25,13.75,6s4-9.25,4-11.5
- S106.209-39.473,96.459-29.223z"/>
- <path fill="#82472C" d="M96.638-28.989c-1.585,1.675-5.087,3.168-5.571,5.605c-0.484,2.436-0.969,6.579,3.149,8.772
- s7.267,9.017,13.322,5.849c6.055-3.168,3.876-9.017,3.876-11.21S106.084-38.981,96.638-28.989z"/>
- <path fill="#7D4930" d="M96.816-28.757c-1.534,1.632-4.923,3.087-5.392,5.461s-0.938,6.41,3.048,8.547
- c3.985,2.136,7.033,8.783,12.894,5.697c5.861-3.086,3.752-8.784,3.752-10.921S105.96-38.489,96.816-28.757z"/>
- <path fill="#794B34" d="M96.996-28.523c-1.483,1.589-4.761,3.005-5.214,5.315s-0.907,6.24,2.946,8.319
- c3.854,2.08,6.801,8.551,12.467,5.546c5.667-3.004,3.627-8.55,3.627-10.63C110.822-22.052,105.835-37.999,96.996-28.523z"/>
- <path fill="#754C37" d="M97.175-28.29c-1.433,1.545-4.597,2.922-5.034,5.17c-0.438,2.248-0.877,6.07,2.845,8.093
- c3.722,2.023,6.566,8.317,12.039,5.396c5.472-2.923,3.502-8.318,3.502-10.341S105.711-37.507,97.175-28.29z"/>
- <path fill="#704C3A" d="M97.354-28.058c-1.382,1.502-4.434,2.842-4.855,5.025c-0.423,2.186-0.846,5.9,2.744,7.867
- c3.59,1.966,6.333,8.084,11.611,5.243c5.277-2.841,3.378-8.084,3.378-10.051C110.231-21.938,105.587-37.015,97.354-28.058z"/>
- <path fill="#6B4C3C" d="M97.532-27.823c-1.331,1.457-4.27,2.758-4.677,4.88c-0.406,2.122-0.813,5.729,2.644,7.64
- c3.457,1.909,6.1,7.851,11.184,5.092c5.082-2.758,3.253-7.852,3.253-9.761S105.462-36.524,97.532-27.823z"/>
- <path fill="#664C3E" d="M97.712-27.591c-1.281,1.415-4.107,2.678-4.498,4.735c-0.392,2.06-0.783,5.56,2.542,7.413
- c3.324,1.853,5.866,7.617,10.756,4.941c4.888-2.678,3.128-7.619,3.128-9.472S105.338-36.032,97.712-27.591z"/>
- <path fill="#614B3F" d="M97.891-27.357c-1.229,1.372-3.944,2.595-4.319,4.591c-0.376,1.996-0.753,5.389,2.44,7.186
- c3.193,1.796,5.634,7.385,10.328,4.789c4.693-2.594,3.005-7.385,3.005-9.181S105.213-35.541,97.891-27.357z"/>
- <path fill="#5B4940" d="M98.069-27.124c-1.179,1.328-3.78,2.513-4.14,4.445c-0.361,1.933-0.722,5.219,2.339,6.959
- c3.061,1.739,5.4,7.151,9.9,4.639c4.499-2.514,2.88-7.152,2.88-8.892S105.089-35.05,98.069-27.124z"/>
- <path fill="#54463F" d="M98.248-26.892c-1.128,1.285-3.617,2.432-3.961,4.301c-0.345,1.87-0.69,5.049,2.238,6.732
- c2.929,1.683,5.167,6.918,9.473,4.487c4.304-2.431,2.755-6.919,2.755-8.602S104.964-34.558,98.248-26.892z"/>
- <path fill="#4D423D" d="M98.427-26.658c-1.077,1.241-3.454,2.349-3.782,4.155c-0.329,1.808-0.659,4.879,2.138,6.506
- c2.796,1.626,4.934,6.686,9.045,4.336c4.109-2.35,2.631-6.686,2.631-8.312S104.84-34.066,98.427-26.658z"/>
- <path fill="#443D39" d="M98.605-26.425c-1.026,1.198-3.29,2.268-3.603,4.011c-0.314,1.743-0.629,4.708,2.036,6.278
- c2.664,1.569,4.699,6.452,8.617,4.186c3.914-2.268,2.506-6.453,2.506-8.022S104.715-33.575,98.605-26.425z"/>
- <path fill="#3A3534" d="M98.785-26.192c-0.976,1.155-3.128,2.186-3.425,3.867c-0.299,1.68-0.598,4.537,1.935,6.051
- c2.532,1.513,4.467,6.219,8.189,4.033c3.721-2.185,2.382-6.219,2.382-7.731S104.591-33.083,98.785-26.192z"/>
- <path fill="#252423" d="M98.964-25.958c-0.925,1.111-2.964,2.103-3.245,3.721c-0.283,1.617-0.567,4.368,1.833,5.824
- s4.233,5.986,7.762,3.883c3.525-2.104,2.258-5.986,2.258-7.442S104.466-32.593,98.964-25.958z"/>
- <path d="M99.143-25.726c-0.874,1.068-2.801,2.021-3.066,3.576c-0.268,1.555-0.536,4.198,1.732,5.598
- c2.268,1.399,4,5.753,7.334,3.731c3.331-2.021,2.133-5.753,2.133-7.152S104.342-32.101,99.143-25.726z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M80.959-120.139c-0.778,2.111-4,1.25-5.501,4c-1.5,2.75-5.25,7.25-2.75,11.75s-0.25,5,7.251,7
- c7.5,2,11.25,2.75,12.5-2.75S86.209-134.389,80.959-120.139z"/>
- <path fill="#82472C" d="M80.996-119.778c-0.759,2.047-3.897,1.211-5.36,3.878c-1.461,2.666-5.115,7.029-2.68,11.391
- c2.437,4.363-0.243,4.848,7.065,6.787s10.963,2.666,12.182-2.666C93.42-105.721,86.112-133.594,80.996-119.778z"/>
- <path fill="#7D4930" d="M81.033-119.418c-0.738,1.982-3.795,1.173-5.22,3.756c-1.423,2.582-4.981,6.808-2.609,11.033
- c2.372,4.225-0.237,4.694,6.881,6.573c7.116,1.878,10.675,2.582,11.861-2.583C93.132-105.803,86.016-132.798,81.033-119.418z"/>
- <path fill="#794B34" d="M81.071-119.058c-0.719,1.918-3.693,1.136-5.079,3.634c-1.386,2.498-4.848,6.586-2.54,10.674
- c2.309,4.088-0.23,4.542,6.695,6.359c6.925,1.817,10.388,2.499,11.542-2.499C92.844-105.885,85.918-132.003,81.071-119.058z"/>
- <path fill="#754C37" d="M81.108-118.697c-0.698,1.854-3.592,1.098-4.938,3.512c-1.347,2.415-4.714,6.365-2.469,10.316
- c2.244,3.951-0.225,4.39,6.51,6.146c6.732,1.756,10.101,2.415,11.223-2.414C92.556-105.966,85.822-131.208,81.108-118.697z"/>
- <path fill="#704C3A" d="M81.146-118.336c-0.679,1.79-3.489,1.06-4.798,3.39c-1.309,2.331-4.579,6.145-2.398,9.958
- s-0.218,4.237,6.324,5.932c6.541,1.695,9.813,2.331,10.903-2.331S85.726-130.413,81.146-118.336z"/>
- <path fill="#6B4C3C" d="M81.183-117.976c-0.658,1.725-3.387,1.021-4.657,3.268c-1.27,2.247-4.444,5.923-2.328,9.599
- c2.117,3.676-0.211,4.084,6.14,5.719c6.35,1.634,9.525,2.247,10.584-2.247C91.979-106.13,85.628-129.618,81.183-117.976z"/>
- <path fill="#664C3E" d="M81.221-117.615c-0.64,1.66-3.285,0.982-4.518,3.146c-1.231,2.162-4.311,5.702-2.258,9.241
- c2.053,3.539-0.205,3.932,5.954,5.505c6.157,1.573,9.238,2.163,10.265-2.163C91.689-106.212,85.531-128.822,81.221-117.615z"/>
- <path fill="#614B3F" d="M81.258-117.254c-0.619,1.596-3.183,0.945-4.376,3.023s-4.177,5.48-2.188,8.882
- c1.989,3.402-0.198,3.78,5.769,5.292c5.966,1.512,8.951,2.079,9.946-2.079C91.401-106.293,85.435-128.027,81.258-117.254z"/>
- <path fill="#5B4940" d="M81.295-116.894c-0.599,1.532-3.08,0.907-4.235,2.902c-1.155,1.995-4.043,5.259-2.117,8.523
- c1.925,3.265-0.192,3.627,5.583,5.078c5.774,1.451,8.663,1.995,9.626-1.995C91.112-106.375,85.338-127.231,81.295-116.894z"/>
- <path fill="#54463F" d="M81.332-116.533c-0.579,1.467-2.978,0.868-4.095,2.779c-1.116,1.911-3.908,5.038-2.047,8.166
- c1.86,3.127-0.187,3.474,5.397,4.864c5.583,1.39,8.376,1.911,9.308-1.911C90.824-106.458,85.241-126.436,81.332-116.533z"/>
- <path fill="#4D423D" d="M81.369-116.173c-0.559,1.403-2.876,0.831-3.954,2.658c-1.078,1.827-3.773,4.817-1.977,7.807
- s-0.18,3.322,5.212,4.651c5.392,1.329,8.089,1.827,8.988-1.827C90.536-106.539,85.145-125.641,81.369-116.173z"/>
- <path fill="#443D39" d="M81.406-115.813c-0.539,1.338-2.773,0.792-3.813,2.536c-1.039,1.743-3.64,4.596-1.906,7.449
- c1.733,2.852-0.173,3.169,5.027,4.437c5.199,1.268,7.802,1.743,8.669-1.744C90.247-106.621,85.047-124.845,81.406-115.813z"/>
- <path fill="#3A3534" d="M81.444-115.452c-0.52,1.274-2.672,0.754-3.673,2.414c-1.002,1.659-3.506,4.375-1.836,7.09
- c1.669,2.715-0.167,3.017,4.841,4.224c5.008,1.207,7.515,1.659,8.35-1.66C89.959-106.703,84.95-124.05,81.444-115.452z"/>
- <path fill="#252423" d="M81.481-115.091c-0.5,1.209-2.569,0.716-3.532,2.292c-0.963,1.575-3.372,4.153-1.766,6.731
- c1.604,2.578-0.161,2.864,4.656,4.01c4.815,1.146,7.227,1.576,8.03-1.576C89.67-106.785,84.854-123.255,81.481-115.091z"/>
- <path d="M81.519-114.73c-0.479,1.145-2.467,0.678-3.392,2.169c-0.925,1.491-3.237,3.932-1.695,6.373
- c1.541,2.44-0.154,2.711,4.471,3.796c4.624,1.084,6.939,1.492,7.711-1.492C89.382-106.866,84.757-122.459,81.519-114.73z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M120.459-103.389c-2.15,0.072-5.5-8.5-11.25-4.75s-8,2.5-9,7.75s0,8.75,5,11.75s6.5,6.25,11.5,2.75
- S127.959-103.639,120.459-103.389z"/>
- <path fill="#82472C" d="M120.177-103.215c-2.079,0.069-5.317-8.218-10.877-4.593c-5.559,3.625-7.734,2.417-8.701,7.493
- c-0.967,5.076,0,8.46,4.834,11.36c4.834,2.9,6.285,6.043,11.119,2.659C121.386-89.68,127.428-103.457,120.177-103.215z"/>
- <path fill="#7D4930" d="M119.895-103.041c-2.008,0.067-5.135-7.936-10.503-4.435c-5.368,3.501-7.47,2.334-8.403,7.236
- c-0.934,4.901,0,8.169,4.669,10.97c4.668,2.801,6.068,5.835,10.736,2.567S126.897-103.274,119.895-103.041z"/>
- <path fill="#794B34" d="M119.613-102.866c-1.938,0.064-4.953-7.654-10.131-4.278c-5.177,3.377-7.204,2.251-8.104,6.979
- c-0.899,4.727,0,7.879,4.503,10.58c4.502,2.702,5.854,5.628,10.355,2.477C120.738-90.26,126.366-103.092,119.613-102.866z"/>
- <path fill="#754C37" d="M119.33-102.693c-1.864,0.063-4.77-7.371-9.757-4.119c-4.986,3.252-6.938,2.167-7.805,6.721
- c-0.867,4.553,0,7.588,4.336,10.19c4.337,2.602,5.638,5.42,9.974,2.385C120.415-90.55,125.835-102.909,119.33-102.693z"/>
- <path fill="#704C3A" d="M119.049-102.519c-1.794,0.06-4.588-7.089-9.384-3.961s-6.673,2.085-7.507,6.464s0,7.298,4.171,9.801
- s5.422,5.213,9.592,2.294C120.091-90.841,125.304-102.727,119.049-102.519z"/>
- <path fill="#6B4C3C" d="M118.767-102.344c-1.723,0.058-4.405-6.808-9.011-3.804c-4.604,3.003-6.407,2.002-7.208,6.208
- c-0.801,4.205,0,7.008,4.005,9.411c4.005,2.402,5.206,5.005,9.21,2.202C119.768-91.131,124.772-102.544,118.767-102.344z"/>
- <path fill="#664C3E" d="M118.484-102.17c-1.651,0.055-4.223-6.525-8.637-3.646s-6.143,1.919-6.91,5.95
- c-0.768,4.03,0,6.717,3.839,9.021s4.991,4.798,8.829,2.111S124.241-102.362,118.484-102.17z"/>
- <path fill="#614B3F" d="M118.202-101.996c-1.58,0.053-4.04-6.244-8.264-3.489c-4.224,2.755-5.876,1.836-6.611,5.693
- c-0.733,3.856,0,6.427,3.674,8.631c3.673,2.204,4.774,4.591,8.446,2.02C119.12-91.712,123.711-102.179,118.202-101.996z"/>
- <path fill="#5B4940" d="M117.92-101.821c-1.508,0.05-3.858-5.962-7.89-3.332c-4.033,2.63-5.611,1.753-6.313,5.436
- c-0.7,3.682,0,6.137,3.508,8.241c3.507,2.104,4.56,4.384,8.065,1.929C118.797-92.002,123.18-101.997,117.92-101.821z"/>
- <path fill="#54463F" d="M117.638-101.647c-1.437,0.048-3.676-5.679-7.517-3.174c-3.842,2.506-5.346,1.67-6.015,5.179
- c-0.667,3.508,0,5.847,3.342,7.852c3.342,2.004,4.344,4.176,7.684,1.837C118.474-92.292,122.648-101.814,117.638-101.647z"/>
- <path fill="#4D423D" d="M117.355-101.473c-1.365,0.045-3.493-5.397-7.144-3.016s-5.08,1.587-5.715,4.921
- c-0.635,3.333,0,5.556,3.176,7.461c3.175,1.905,4.128,3.969,7.302,1.746C118.149-92.583,122.117-101.632,117.355-101.473z"/>
- <path fill="#443D39" d="M117.074-101.299c-1.295,0.043-3.312-5.115-6.771-2.859c-3.46,2.257-4.815,1.505-5.417,4.665
- c-0.602,3.159,0,5.266,3.01,7.072c3.01,1.805,3.912,3.761,6.92,1.654C117.826-92.873,121.586-101.449,117.074-101.299z"/>
- <path fill="#3A3534" d="M116.792-101.125c-1.223,0.041-3.129-4.833-6.397-2.701c-3.27,2.133-4.549,1.422-5.118,4.407
- c-0.567,2.985,0,4.975,2.844,6.682c2.844,1.706,3.697,3.554,6.539,1.563C117.503-93.164,121.056-101.267,116.792-101.125z"/>
- <path fill="#252423" d="M116.51-100.951c-1.151,0.039-2.946-4.551-6.023-2.543c-3.079,2.008-4.284,1.339-4.82,4.15
- c-0.534,2.811,0,4.685,2.679,6.292c2.678,1.606,3.48,3.346,6.156,1.472C117.179-93.454,120.524-101.084,116.51-100.951z"/>
- <path d="M116.228-100.776c-1.08,0.036-2.764-4.269-5.65-2.386c-2.888,1.884-4.019,1.256-4.521,3.893
- c-0.501,2.637,0,4.395,2.513,5.902c2.512,1.507,3.266,3.139,5.775,1.381C116.855-93.744,119.993-100.902,116.228-100.776z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M105.621-77.87c0.447-1.55-1.041-6.809-2.772-7.561c-1.73-0.751-2.913-2.122-9.393-1.308
- c-6.479,0.814-5.552-4.192-10.908-2.451c-5.357,1.741-7.417,8.981-6.272,11.351c1.143,2.369,6.643,14.606,12.956,6.14
- C95.547-80.167,103.613-70.907,105.621-77.87z"/>
- <path fill="#82472C" d="M105.226-77.924c0.438-1.517-1.019-6.661-2.713-7.396c-1.692-0.735-2.85-2.075-9.188-1.279
- s-5.431-4.101-10.67-2.398c-5.241,1.703-7.256,8.786-6.137,11.103c1.118,2.317,6.498,14.288,12.674,6.006
- C95.37-80.172,103.261-71.113,105.226-77.924z"/>
- <path fill="#7D4930" d="M104.829-77.979c0.428-1.482-0.995-6.512-2.651-7.231c-1.655-0.719-2.786-2.029-8.983-1.251
- c-6.196,0.778-5.31-4.009-10.433-2.345c-5.124,1.665-7.094,8.59-5.999,10.856c1.093,2.266,6.354,13.97,12.392,5.872
- C95.194-80.177,102.909-71.32,104.829-77.979z"/>
- <path fill="#794B34" d="M104.433-78.034c0.418-1.448-0.973-6.363-2.591-7.066c-1.617-0.703-2.723-1.983-8.778-1.223
- s-5.188-3.918-10.194-2.291c-5.008,1.627-6.933,8.394-5.862,10.608c1.067,2.214,6.208,13.651,12.108,5.738
- C95.018-80.182,102.557-71.527,104.433-78.034z"/>
- <path fill="#754C37" d="M104.037-78.09c0.408-1.414-0.95-6.214-2.53-6.901s-2.659-1.937-8.574-1.194
- c-5.914,0.743-5.067-3.827-9.956-2.237c-4.891,1.589-6.771,8.198-5.727,10.361s6.063,13.333,11.827,5.604
- C94.842-80.187,102.204-71.733,104.037-78.09z"/>
- <path fill="#704C3A" d="M103.642-78.145c0.397-1.38-0.928-6.066-2.471-6.736c-1.541-0.67-2.596-1.891-8.369-1.166
- c-5.772,0.725-4.946-3.735-9.719-2.184c-4.773,1.551-6.608,8.002-5.589,10.113c1.019,2.111,5.918,13.015,11.544,5.471
- C94.665-80.191,101.853-71.94,103.642-78.145z"/>
- <path fill="#6B4C3C" d="M103.245-78.199c0.389-1.347-0.905-5.918-2.409-6.572c-1.505-0.654-2.532-1.844-8.165-1.137
- c-5.631,0.707-4.825-3.644-9.48-2.131c-4.657,1.513-6.447,7.807-5.453,9.866S83.512-65.477,89-72.836
- C94.488-80.196,101.5-72.147,103.245-78.199z"/>
- <path fill="#664C3E" d="M102.849-78.254c0.379-1.313-0.882-5.77-2.349-6.407c-1.466-0.637-2.469-1.798-7.96-1.108
- c-5.49,0.689-4.704-3.552-9.242-2.078c-4.541,1.476-6.286,7.611-5.316,9.619c0.969,2.008,5.629,12.377,10.979,5.203
- C94.313-80.201,101.147-72.354,102.849-78.254z"/>
- <path fill="#614B3F" d="M102.453-78.309c0.369-1.279-0.859-5.621-2.289-6.242c-1.428-0.621-2.404-1.751-7.755-1.08
- c-5.349,0.672-4.583-3.461-9.005-2.024c-4.424,1.438-6.124,7.416-5.18,9.371c0.944,1.956,5.484,12.059,10.697,5.069
- C94.136-80.206,100.796-72.561,102.453-78.309z"/>
- <path fill="#5B4940" d="M102.057-78.364c0.359-1.245-0.836-5.473-2.228-6.077c-1.391-0.604-2.342-1.706-7.551-1.051
- c-5.207,0.654-4.463-3.37-8.767-1.97c-4.307,1.399-5.963,7.219-5.043,9.123c0.919,1.905,5.339,11.741,10.415,4.935
- C93.96-80.211,100.443-72.767,102.057-78.364z"/>
- <path fill="#54463F" d="M101.661-78.419c0.35-1.211-0.814-5.324-2.168-5.913c-1.353-0.588-2.277-1.659-7.346-1.023
- c-5.065,0.636-4.342-3.278-8.528-1.917c-4.19,1.361-5.802,7.024-4.907,8.876c0.895,1.853,5.195,11.422,10.133,4.801
- C93.783-80.216,100.091-72.974,101.661-78.419z"/>
- <path fill="#4D423D" d="M101.265-78.474c0.34-1.177-0.791-5.176-2.107-5.747c-1.314-0.572-2.214-1.613-7.141-0.995
- c-4.924,0.619-4.221-3.187-8.291-1.864c-4.073,1.323-5.639,6.828-4.77,8.628c0.87,1.801,5.05,11.104,9.85,4.667
- C93.606-80.221,99.739-73.18,101.265-78.474z"/>
- <path fill="#443D39" d="M100.869-78.529c0.33-1.144-0.769-5.027-2.047-5.583c-1.277-0.556-2.15-1.567-6.937-0.966
- c-4.782,0.601-4.1-3.095-8.053-1.81c-3.957,1.285-5.478,6.632-4.634,8.381c0.846,1.75,4.905,10.786,9.568,4.534
- S99.387-73.387,100.869-78.529z"/>
- <path fill="#3A3534" d="M100.473-78.584c0.32-1.11-0.745-4.879-1.986-5.417c-1.239-0.539-2.087-1.521-6.731-0.938
- c-4.642,0.583-3.979-3.004-7.814-1.757c-3.84,1.248-5.316,6.437-4.497,8.134c0.82,1.698,4.76,10.467,9.285,4.399
- S99.034-73.594,100.473-78.584z"/>
- <path fill="#252423" d="M100.077-78.639c0.311-1.076-0.724-4.731-1.926-5.253c-1.202-0.523-2.023-1.475-6.527-0.909
- c-4.5,0.565-3.857-2.913-7.577-1.703c-3.723,1.209-5.154,6.241-4.36,7.886c0.796,1.646,4.616,10.148,9.004,4.266
- S98.683-73.801,100.077-78.639z"/>
- <path d="M99.681-78.694c0.301-1.042-0.7-4.582-1.865-5.088c-1.164-0.506-1.96-1.428-6.322-0.88
- c-4.358,0.547-3.736-2.821-7.339-1.65c-3.606,1.171-4.993,6.045-4.224,7.639c0.771,1.595,4.471,9.83,8.721,4.132
- S98.33-74.007,99.681-78.694z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M72.208-64.639c-2.728,1.784-10.25,7.75-8,11.25s2.5,5.5,5.75,6.75s4.5,4.5,10.501,1.5
- c6-3,10.75-9.25,9.75-13S78.709-68.889,72.208-64.639z"/>
- <path fill="#82472C" d="M72.337-64.323c-2.661,1.725-9.999,7.492-7.805,10.875c2.195,3.383,2.439,5.316,5.609,6.525
- c3.17,1.208,4.39,4.35,10.244,1.45c5.853-2.9,10.486-8.941,9.511-12.566C88.922-61.664,78.678-68.431,72.337-64.323z"/>
- <path fill="#7D4930" d="M72.465-64.006c-2.594,1.665-9.748,7.233-7.607,10.5c2.14,3.267,2.377,5.133,5.468,6.3
- c3.091,1.166,4.28,4.2,9.986,1.4c5.706-2.801,10.224-8.634,9.273-12.134C88.634-61.439,78.647-67.973,72.465-64.006z"/>
- <path fill="#794B34" d="M72.594-63.689c-2.527,1.605-9.497,6.975-7.412,10.125c2.084,3.15,2.316,4.95,5.327,6.075
- c3.012,1.125,4.17,4.05,9.729,1.35s9.96-8.325,9.034-11.7C88.346-61.214,78.617-67.514,72.594-63.689z"/>
- <path fill="#754C37" d="M72.723-63.373c-2.46,1.546-9.246,6.717-7.217,9.75s2.256,4.766,5.187,5.85
- c2.933,1.083,4.06,3.899,9.473,1.3c5.412-2.601,9.697-8.017,8.795-11.267S78.587-67.056,72.723-63.373z"/>
- <path fill="#704C3A" d="M72.852-63.056c-2.394,1.486-8.995,6.458-7.021,9.375c1.975,2.917,2.194,4.583,5.047,5.624
- c2.852,1.042,3.949,3.75,9.214,1.25c5.266-2.5,9.435-7.708,8.557-10.833C87.771-60.764,78.556-66.598,72.852-63.056z"/>
- <path fill="#6B4C3C" d="M72.979-62.739c-2.326,1.427-8.744,6.2-6.824,9c1.919,2.8,2.133,4.399,4.905,5.399
- s3.839,3.601,8.957,1.2c5.118-2.4,9.171-7.4,8.318-10.4C87.482-60.54,78.525-66.139,72.979-62.739z"/>
- <path fill="#664C3E" d="M73.108-62.423c-2.26,1.368-8.493,5.942-6.629,8.625c1.864,2.684,2.071,4.217,4.765,5.175
- c2.692,0.959,3.729,3.45,8.699,1.15c4.972-2.3,8.908-7.092,8.08-9.967C87.194-60.314,78.494-65.681,73.108-62.423z"/>
- <path fill="#614B3F" d="M73.236-62.106c-2.192,1.309-8.241,5.684-6.433,8.25c1.81,2.567,2.011,4.033,4.624,4.95
- c2.613,0.917,3.618,3.3,8.442,1.101c4.825-2.201,8.645-6.783,7.841-9.533S78.464-65.223,73.236-62.106z"/>
- <path fill="#5B4940" d="M73.365-61.789c-2.126,1.249-7.99,5.425-6.237,7.875c1.755,2.45,1.949,3.85,4.483,4.725
- s3.509,3.149,8.186,1.05c4.678-2.1,8.381-6.475,7.602-9.1S78.433-64.764,73.365-61.789z"/>
- <path fill="#54463F" d="M73.494-61.473c-2.06,1.189-7.74,5.167-6.041,7.5s1.888,3.667,4.342,4.5c2.454,0.833,3.398,3,7.929,1
- s8.117-6.167,7.363-8.667C86.331-59.639,78.402-64.306,73.494-61.473z"/>
- <path fill="#4D423D" d="M73.622-61.156c-1.992,1.129-7.488,4.908-5.845,7.125c1.645,2.216,1.827,3.483,4.201,4.275
- c2.375,0.792,3.288,2.85,7.671,0.95c4.384-1.9,7.854-5.858,7.125-8.233C86.044-59.414,78.372-63.848,73.622-61.156z"/>
- <path fill="#443D39" d="M73.751-60.839c-1.926,1.07-7.237,4.65-5.649,6.75c1.589,2.1,1.766,3.3,4.061,4.05
- s3.178,2.699,7.414,0.899s7.592-5.549,6.886-7.799S78.341-63.389,73.751-60.839z"/>
- <path fill="#3A3534" d="M73.88-60.522c-1.859,1.011-6.987,4.392-5.454,6.375c1.534,1.983,1.705,3.117,3.92,3.825
- c2.216,0.708,3.068,2.549,7.157,0.85c4.09-1.7,7.328-5.242,6.646-7.367S78.311-62.931,73.88-60.522z"/>
- <path fill="#252423" d="M74.008-60.206c-1.792,0.951-6.735,4.133-5.257,6s1.643,2.934,3.778,3.6
- c2.136,0.667,2.958,2.4,6.899,0.8c3.943-1.6,7.065-4.934,6.409-6.934C85.181-58.739,78.279-62.473,74.008-60.206z"/>
- <path d="M74.137-59.889c-1.726,0.892-6.484,3.875-5.062,5.625c1.424,1.75,1.582,2.75,3.638,3.375
- c2.057,0.625,2.848,2.25,6.643,0.75c3.796-1.5,6.802-4.625,6.17-6.5C84.893-58.514,78.249-62.014,74.137-59.889z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M114.959-70.889c-3.36,2.352-5.25,6.75-4,9.5s5.5,10.5,9.75,7.75s12.5-7.5,8.5-11.75
- S122.459-76.139,114.959-70.889z"/>
- <path fill="#82472C" d="M115.041-70.639c-3.308,2.273-5.167,6.525-3.937,9.183c1.229,2.659,5.413,10.15,9.597,7.492
- c4.183-2.658,12.304-7.25,8.366-11.358C125.13-69.431,122.424-75.714,115.041-70.639z"/>
- <path fill="#7D4930" d="M115.124-70.389c-3.256,2.195-5.086,6.3-3.875,8.867s5.327,9.8,9.443,7.233
- c4.117-2.566,12.108-7,8.233-10.967C125.052-69.222,122.389-75.289,115.124-70.389z"/>
- <path fill="#794B34" d="M115.206-70.139c-3.202,2.116-5.003,6.075-3.812,8.55c1.19,2.475,5.24,9.45,9.29,6.975
- s11.913-6.75,8.101-10.575C124.974-69.014,122.353-74.864,115.206-70.139z"/>
- <path fill="#754C37" d="M115.288-69.889c-3.149,2.038-4.921,5.85-3.749,8.233c1.171,2.383,5.154,9.1,9.138,6.716
- s11.717-6.5,7.967-10.183C124.895-68.806,122.317-74.439,115.288-69.889z"/>
- <path fill="#704C3A" d="M115.37-69.639c-3.097,1.959-4.838,5.625-3.686,7.917c1.151,2.292,5.067,8.75,8.984,6.458
- s11.521-6.25,7.833-9.792C124.816-68.598,122.282-74.014,115.37-69.639z"/>
- <path fill="#6B4C3C" d="M115.453-69.389c-3.044,1.881-4.756,5.4-3.624,7.6s4.981,8.4,8.832,6.2c3.85-2.2,11.324-6,7.7-9.399
- C124.738-68.389,122.247-73.589,115.453-69.389z"/>
- <path fill="#664C3E" d="M115.535-69.139c-2.991,1.803-4.673,5.175-3.561,7.283c1.111,2.108,4.895,8.05,8.679,5.941
- c3.783-2.108,11.128-5.75,7.566-9.008C124.659-68.181,122.212-73.165,115.535-69.139z"/>
- <path fill="#614B3F" d="M115.617-68.889c-2.938,1.724-4.591,4.95-3.498,6.966c1.093,2.017,4.81,7.7,8.525,5.684
- c3.717-2.017,10.934-5.5,7.434-8.617C124.581-67.973,122.177-72.739,115.617-68.889z"/>
- <path fill="#5B4940" d="M115.699-68.639c-2.886,1.646-4.508,4.725-3.435,6.65c1.072,1.925,4.723,7.35,8.372,5.425
- c3.65-1.925,10.737-5.25,7.301-8.225C124.502-67.764,122.142-72.314,115.699-68.639z"/>
- <path fill="#54463F" d="M115.782-68.389c-2.833,1.567-4.426,4.5-3.373,6.333c1.053,1.833,4.637,7,8.22,5.167
- c3.583-1.833,10.541-5,7.167-7.833C124.424-67.556,122.106-71.889,115.782-68.389z"/>
- <path fill="#4D423D" d="M115.864-68.139c-2.78,1.489-4.344,4.275-3.31,6.017c1.033,1.742,4.55,6.65,8.066,4.908
- c3.517-1.741,10.345-4.75,7.033-7.441C124.346-67.348,122.071-71.464,115.864-68.139z"/>
- <path fill="#443D39" d="M115.946-67.889c-2.728,1.411-4.261,4.05-3.247,5.7c1.014,1.65,4.464,6.3,7.914,4.65
- c3.449-1.65,10.148-4.5,6.899-7.05C124.267-67.139,122.035-71.039,115.946-67.889z"/>
- <path fill="#3A3534" d="M116.029-67.639c-2.676,1.333-4.179,3.825-3.185,5.383c0.993,1.559,4.377,5.95,7.76,4.392
- c3.384-1.558,9.954-4.25,6.767-6.658C124.188-66.931,122-70.614,116.029-67.639z"/>
- <path fill="#252423" d="M116.111-67.389c-2.622,1.254-4.097,3.6-3.122,5.066c0.975,1.467,4.291,5.6,7.607,4.134
- c3.316-1.467,9.758-4,6.634-6.267C124.109-66.723,121.965-70.189,116.111-67.389z"/>
- <path d="M116.193-67.139c-2.569,1.176-4.014,3.375-3.059,4.75c0.954,1.375,4.204,5.25,7.454,3.875s9.562-3.75,6.5-5.875
- C124.031-66.514,121.93-69.764,116.193-67.139z"/>
- </g>
- </g>
- <g>
- <path fill="#71462C" d="M26.708-113.473c6.911,0.216,9,8.25,4.75,10.5s-8.75,2.75-8-0.75S18.708-113.723,26.708-113.473z"/>
- <path fill="#71462C" d="M17.993-41.927c-0.065-2.148,1.359-5.311,3.79-4.465c-1.736-0.605,6.823-0.789,3.685,3.672
- C23.84-40.405,18.153-36.626,17.993-41.927z"/>
- <path fill="#71462C" d="M138.125-82.473c-2.361-0.858-11,4-8.75,7.5s1.25,5.75,5,6s4.75-3.25,7-5S140.875-81.473,138.125-82.473z
- "/>
- <path fill="#71462C" d="M13.708-82.473c-2.361-0.858-11,4-8.75,7.5s1.25,5.75,5,6s4.75-3.25,7-5S16.458-81.473,13.708-82.473z"/>
- <path fill="#71462C" d="M15.458-147.973c-2.665,3.635-3.25,7.25-0.5,8.75s4.5,3,7.75,2.75s5.25-3,5.25-6s0.5-8-3.5-8.75
- S18.208-151.723,15.458-147.973z"/>
- <path fill="#71462C" d="M29.708-122.973c-0.901,1.803-2.5,5.5-0.5,6.25s6.5,0.25,7.5-0.75S32.208-127.973,29.708-122.973z"/>
- <path fill="#71462C" d="M54.646-148.348c-1.63,1.63-1.5,7.25,0.25,7.5s4.25-0.5,6.25-2S57.396-151.098,54.646-148.348z"/>
- <path fill="#71462C" d="M37.608-99.422c-3.018,3.42-6,4-5.2,6.4s6.8,6.8,9.6,6.4c2.801-0.4,6.4-0.4,7.4-4.6c1-4.2,1.2-6.2-1-8.4
- C46.208-101.822,40.608-102.822,37.608-99.422z"/>
- <path fill="#71462C" d="M66.208-115.973c3.593,2.053,5,5,1,6.5s-5.5,2.5-5.25-0.5S62.708-117.973,66.208-115.973z"/>
- <path fill="#71462C" d="M59.958-102.723c3.215-0.989,3.5,5.75,2.5,7s-6,8.25-6,6S56.708-101.723,59.958-102.723z"/>
- <path fill="#71462C" d="M54.208-56.222c2.025-1.013,5.5-1,6,2.75s1,5.25-1.25,5.75S49.708-53.972,54.208-56.222z"/>
- <path fill="#71462C" d="M27.958-39.722c4.72,0.539,10,2.5,10.5,5.5s1.25,4.75-0.75,6.75s-4.75,4.75-7.5,2.75
- S19.208-40.722,27.958-39.722z"/>
- <path fill="#71462C" d="M119.709-131.973c0,0,4.75,1.25,4.75,2.25s1.25,3-0.5,4.75s-2.25,5.5-5.5,4.5s-7.5-8.5-5.25-10.75
- S117.709-135.473,119.709-131.973z"/>
- <path fill="#71462C" d="M125.459-116.723c2.559,0.512,6.5,2.5,6.25,4s-0.5,2-2.25,3.25s-3.25,4.25-6,1.25
- S121.709-117.473,125.459-116.723z"/>
- <path fill="#71462C" d="M84.209-141.973c-1.342,0.447-2.75,4-1.5,6.5s2.75,4.5,5.5,4.25S91.709-144.473,84.209-141.973z"/>
- <path fill="#71462C" d="M15.458-23.577c-2.665,3.635-3.25,7.25-0.5,8.75s4.5,3,7.75,2.75s5.25-3,5.25-6s0.5-8-3.5-8.75
- S18.208-27.327,15.458-23.577z"/>
- <path fill="#71462C" d="M54.646-23.952c-1.63,1.631-1.5,7.25,0.25,7.5s4.25-0.5,6.25-2S57.396-26.702,54.646-23.952z"/>
- <path fill="#71462C" d="M125.209-86.973c0.647-0.375,4.5-0.75,2.5,3.75c-2,4.5-3.25,5.5-4.5,6.5s-3.75,1.75-4.25,0.5
- S118.709-83.223,125.209-86.973z"/>
- <path fill="#71462C" d="M69.646-94.535c3.325,2.138,6.751,2.25,6,5c-0.75,2.75-1.5,6-4,7s-7.25-3.5-6-5.25
- S66.146-96.785,69.646-94.535z"/>
- <path fill="#71462C" d="M50.346-36.593c-0.342,2.254-2.35,6.092,0.132,7.777c2.481,1.688,5.082,2.486,7.725,0.945
- s3.934-5.791,7.198-8.602c3.264-2.813,2.581-8.498-1.71-7.449C59.398-42.87,51.123-41.724,50.346-36.593z"/>
- <path fill="#71462C" d="M78.209-40.222c-3.634,2.422-1.25,5.75,0.5,6s5,0.25,7.25-1.25s6.5-5.5,2.5-6.25
- S79.709-41.222,78.209-40.222z"/>
- <path fill="#71462C" d="M95.947-66.035c-2.694,3.203,0.145,7.988,3.88,9.568c3.737,1.58,4.466,5.142,8.021,5.223
- c3.558,0.082,2.765-3.168,1.36-8.979C107.805-66.034,101.536-72.681,95.947-66.035z"/>
- <path fill="#71462C" d="M94.959-95.473c-1.765,0.378-4,3.5-2.25,4.75s2.5,4,4.5,1S98.459-96.223,94.959-95.473z"/>
- <path fill="#71462C" d="M117.459-41.972c-1.273,2.727-3.5,4.75-2.5,5.5s1.75,3,4,1.25s1.75-4.75,2.75-6.25s3-4.75,3.25-5.5
- S120.959-49.472,117.459-41.972z"/>
- <path fill="#71462C" d="M94.823-45.63c-0.574,1.602,0.032,7.521,1.699,8.91s2.671,2.66,5.587,0.854
- c2.917-1.805,4.07-2.146,6.067-4.934c1.999-2.789,6.08-8.076,1.379-6.998C104.855-46.72,96.717-50.897,94.823-45.63z"/>
- </g>
- <g>
- <path fill="#201B1B" d="M25.708-114.139c6.911,0.216,9,8.25,4.75,10.5s-8.75,2.75-8-0.75S17.708-114.389,25.708-114.139z"/>
- <path fill="#201B1B" d="M16.993-42.593c-0.065-2.15,1.359-5.313,3.79-4.467c-1.736-0.604,6.823-0.787,3.685,3.674
- C22.84-41.073,17.153-37.292,16.993-42.593z"/>
- <path fill="#201B1B" d="M137.125-83.139c-2.361-0.858-11,4-8.75,7.5s1.25,5.75,5,6s4.75-3.25,7-5S139.875-82.139,137.125-83.139z
- "/>
- <path fill="#201B1B" d="M12.708-83.139c-2.361-0.858-11,4-8.75,7.5s1.25,5.75,5,6s4.75-3.25,7-5S15.458-82.139,12.708-83.139z"/>
- <path fill="#201B1B" d="M14.458-148.639c-2.665,3.634-3.25,7.25-0.5,8.75s4.5,3,7.75,2.75s5.25-3,5.25-6s0.5-8-3.5-8.75
- S17.208-152.389,14.458-148.639z"/>
- <path fill="#201B1B" d="M28.708-123.639c-0.901,1.803-2.5,5.5-0.5,6.25s6.5,0.25,7.5-0.75S31.208-128.639,28.708-123.639z"/>
- <path fill="#201B1B" d="M53.646-149.014c-1.63,1.63-1.5,7.25,0.25,7.5s4.25-0.5,6.25-2S56.396-151.764,53.646-149.014z"/>
- <path fill="#201B1B" d="M36.608-100.089c-3.018,3.42-6,4-5.2,6.4c0.8,2.4,6.8,6.8,9.6,6.4c2.801-0.4,6.4-0.4,7.4-4.6
- s1.2-6.2-1-8.4C45.208-102.489,39.608-103.489,36.608-100.089z"/>
- <path fill="#201B1B" d="M65.208-116.639c3.593,2.053,5,5,1,6.5s-5.5,2.5-5.25-0.5S61.708-118.639,65.208-116.639z"/>
- <path fill="#201B1B" d="M58.958-103.389c3.215-0.989,3.5,5.75,2.5,7s-6,8.25-6,6S55.708-102.389,58.958-103.389z"/>
- <path fill="#201B1B" d="M53.208-56.889c2.025-1.013,5.5-1,6,2.75s1,5.25-1.25,5.75S48.708-54.639,53.208-56.889z"/>
- <path fill="#201B1B" d="M26.958-40.39c4.72,0.539,10,2.5,10.5,5.5s1.25,4.75-0.75,6.75s-4.75,4.75-7.5,2.75
- S18.208-41.39,26.958-40.39z"/>
- <path fill="#201B1B" d="M118.709-132.639c0,0,4.75,1.25,4.75,2.25s1.25,3-0.5,4.75s-2.25,5.5-5.5,4.5s-7.5-8.5-5.25-10.75
- S116.709-136.139,118.709-132.639z"/>
- <path fill="#201B1B" d="M124.459-117.389c2.559,0.512,6.5,2.5,6.25,4s-0.5,2-2.25,3.25s-3.25,4.25-6,1.25
- S120.709-118.139,124.459-117.389z"/>
- <path fill="#201B1B" d="M83.209-142.639c-1.342,0.447-2.75,4-1.5,6.5s2.75,4.5,5.5,4.25S90.709-145.139,83.209-142.639z"/>
- <path fill="#201B1B" d="M14.458-24.243c-2.665,3.635-3.25,7.25-0.5,8.75s4.5,3,7.75,2.75s5.25-3,5.25-6s0.5-8-3.5-8.75
- S17.208-27.993,14.458-24.243z"/>
- <path fill="#201B1B" d="M53.646-24.618c-1.63,1.629-1.5,7.25,0.25,7.5s4.25-0.5,6.25-2S56.396-27.368,53.646-24.618z"/>
- <path fill="#201B1B" d="M124.209-87.639c0.647-0.375,4.5-0.75,2.5,3.75s-3.25,5.5-4.5,6.5s-3.75,1.75-4.25,0.5
- S117.709-83.889,124.209-87.639z"/>
- <path fill="#201B1B" d="M68.646-95.202c3.325,2.138,6.75,2.25,6,5s-1.5,6-4,7s-7.25-3.5-6-5.25S65.146-97.452,68.646-95.202z"/>
- <path fill="#201B1B" d="M49.346-37.259c-0.342,2.254-2.35,6.092,0.132,7.777s5.082,2.484,7.725,0.943s3.934-5.789,7.198-8.602
- c3.264-2.811,2.581-8.498-1.71-7.447C58.398-43.538,50.123-42.39,49.346-37.259z"/>
- <path fill="#201B1B" d="M77.209-40.89c-3.634,2.422-1.251,5.75,0.5,6c1.75,0.25,5,0.25,7.25-1.25s6.5-5.5,2.5-6.25
- S78.709-41.89,77.209-40.89z"/>
- <path fill="#201B1B" d="M94.947-66.701c-2.694,3.203,0.145,7.988,3.88,9.568c3.737,1.58,4.466,5.141,8.021,5.223
- c3.558,0.081,2.765-3.168,1.36-8.979S100.536-73.349,94.947-66.701z"/>
- <path fill="#201B1B" d="M93.959-96.139c-1.765,0.378-4,3.5-2.25,4.75s2.5,4,4.5,1S97.459-96.889,93.959-96.139z"/>
- <path fill="#201B1B" d="M116.459-42.64c-1.273,2.729-3.5,4.75-2.5,5.5s1.75,3,4,1.25s1.75-4.75,2.75-6.25s3-4.75,3.25-5.5
- S119.959-50.139,116.459-42.64z"/>
- <path fill="#201B1B" d="M93.823-46.296c-0.574,1.602,0.032,7.52,1.699,8.908s2.671,2.66,5.587,0.855
- c2.917-1.805,4.07-2.146,6.067-4.936c1.999-2.787,6.08-8.076,1.379-6.996C103.855-47.386,95.717-51.564,93.823-46.296z"/>
- </g>
- </g>
-</pattern>
-<g>
- <defs>
- <rect id="SVGID_1_" x="0" width="941" height="173"/>
- </defs>
- <clipPath id="SVGID_2_">
- <use xlink:href="#SVGID_1_" overflow="visible"/>
- </clipPath>
- <g clip-path="url(#SVGID_2_)">
-
- <radialGradient id="SVGID_3_" cx="-308.7559" cy="218.2969" r="735.7399" gradientTransform="matrix(1.1782 0 0 1.1139 842.376 -222.1572)" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#9E73AB"/>
- <stop offset="0.1113" style="stop-color:#735890"/>
- <stop offset="0.1976" style="stop-color:#493C74"/>
- <stop offset="0.2732" style="stop-color:#2E285F"/>
- <stop offset="0.3345" style="stop-color:#1D1C54"/>
- <stop offset="0.3736" style="stop-color:#17174F"/>
- <stop offset="0.4083" style="stop-color:#131447"/>
- <stop offset="0.5193" style="stop-color:#060D34"/>
- <stop offset="0.6283" style="stop-color:#000524"/>
- <stop offset="0.733" style="stop-color:#000016"/>
- <stop offset="0.8322" style="stop-color:#00000A"/>
- <stop offset="0.9236" style="stop-color:#000002"/>
- <stop offset="1" style="stop-color:#000000"/>
- </radialGradient>
- <rect x="-539.536" y="-624.559" fill="url(#SVGID_3_)" width="2036.272" height="1291.123"/>
-
- <radialGradient id="SVGID_4_" cx="-312.5996" cy="212.2012" r="735.7399" gradientTransform="matrix(1.1782 0 0 1.1139 842.376 -222.1572)" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#9E73AB"/>
- <stop offset="0.1113" style="stop-color:#735890"/>
- <stop offset="0.1976" style="stop-color:#493C74"/>
- <stop offset="0.2732" style="stop-color:#2E285F"/>
- <stop offset="0.3345" style="stop-color:#1D1C54"/>
- <stop offset="0.3736" style="stop-color:#17174F"/>
- <stop offset="0.4083" style="stop-color:#131447"/>
- <stop offset="0.5193" style="stop-color:#060D34"/>
- <stop offset="0.6283" style="stop-color:#000524"/>
- <stop offset="0.733" style="stop-color:#000016"/>
- <stop offset="0.8322" style="stop-color:#00000A"/>
- <stop offset="0.9236" style="stop-color:#000002"/>
- <stop offset="1" style="stop-color:#000000"/>
- </radialGradient>
- <rect x="-544.065" y="-631.348" fill="url(#SVGID_4_)" width="2036.272" height="1291.123"/>
- <rect x="-544.065" y="-631.348" opacity="0.07" fill="url(#Cheetah)" width="2036.272" height="1291.123"/>
- </g>
-</g>
-<g>
- <g>
- <g>
- <path fill="#FFFFFF" d="M335.854,39.909c0,0,7.778,0.3,7.778,7.716l0.08,43.748c0,0.424,0.08,0.795,0.239,1.113
- c0.159,0.317,0.423,0.477,0.795,0.477h7l8.59-0.031c0,6.517-6.037,6.475-6.037,6.475h-13.216c-5.831,0-5.245-7.874-5.245-7.874
- L335.854,39.909z M346.337,39.909"/>
- <path fill="#FFFFFF" d="M501.387,39.989c0,0,7.963,0.62,7.85,7.636V91.69c0,0,0.201,7.716-7.912,7.716L501.387,39.989z"/>
- <path fill="#FFFFFF" d="M533.578,99.406l-0.004-7.636V46.909l-0.021-6.962l6.305-0.038c0.637,0,1.115,0.147,1.434,0.438
- c0.316,0.292,0.557,0.703,0.715,1.232c0,0.106,0.264,1.008,0.795,2.704c0.529,1.698,1.193,3.806,1.988,6.323
- c0.797,2.52,1.658,5.277,2.586,8.272c0.928,2.996,1.803,5.86,2.625,8.591c0.82,2.731,1.551,5.13,2.188,7.198
- s1.061,3.448,1.273,4.137c0.051,0.106,0.117,0.212,0.197,0.317c0.08,0.107,0.119,0.08,0.119-0.079V47.545
- c0,0-0.391-7.636,7.047-7.636l-0.047,7.557v49.872c0,0.53-0.158,1.008-0.477,1.432c-0.318,0.426-0.797,0.637-1.432,0.637h-4.613
- c-0.689,0-1.182-0.291-1.473-0.875c-0.291-0.583-0.57-1.324-0.834-2.227c-0.107-0.266-0.451-1.313-1.035-3.143
- s-1.285-4.028-2.107-6.602c-0.822-2.571-1.697-5.316-2.625-8.232s-1.789-5.621-2.586-8.113c-0.795-2.492-1.457-4.574-1.988-6.244
- c-0.529-1.67-0.795-2.531-0.795-2.586c-0.053-0.105-0.107-0.184-0.158-0.237c-0.055-0.052-0.08,0.079-0.08,0.397V91.69
- C540.574,91.69,540.893,99.406,533.578,99.406z"/>
- <g>
- <path fill="#FFFFFF" d="M613.053,91.771c-1.055-5.809-2.043-11.165-2.965-16.089c0.035-0.024,0.07-0.052,0.107-0.076
- c-0.449-2.562-0.883-5.025-1.295-7.38c-0.531-2.969-1.047-5.886-1.551-8.749c-0.506-2.863-0.955-5.449-1.352-7.755
- l-2.178-11.813h-0.551h-9.641h-0.551L590.9,51.722c-0.398,2.306-0.848,4.892-1.352,7.755s-1.021,5.78-1.551,8.749
- c-0.902,5.134-1.891,10.761-2.965,16.878c0.008,0.004,0.018,0.01,0.027,0.014c-0.395,2.151-0.799,4.364-1.215,6.653
- l-1.455,7.636c8.207,0,8.725-6.872,8.725-6.872l0.582-3.417c0.039,0.031,0.082,0.059,0.121,0.09
- c0.105-0.735,0.211-1.432,0.314-2.09c0.107-0.662,0.16-1.126,0.16-1.393c0.105-0.636,0.318-1.06,0.635-1.272
- c0.32-0.211,0.717-0.318,1.193-0.318h7.619h1.449c0.85,0,1.326,0.531,1.432,1.591l1.162,6.81c0,0,0.518,6.872,8.723,6.872
- L613.053,91.771z M594.758,77.532c-0.369,0-0.662-0.131-0.875-0.397c-0.211-0.265-0.291-0.557-0.238-0.875
- c0-0.052,0.08-0.503,0.238-1.353c0.16-0.848,0.346-1.935,0.557-3.261c0.213-1.325,0.451-2.824,0.717-4.494
- s0.557-3.381,0.875-5.13l2.387-13.84h0.063l2.387,13.84c0.318,1.749,0.609,3.46,0.875,5.13c0.264,1.67,0.504,3.169,0.715,4.494
- c0.211,1.326,0.398,2.413,0.559,3.261c0.158,0.85,0.236,1.301,0.236,1.353c0.053,0.318-0.025,0.61-0.236,0.875
- c-0.213,0.267-0.506,0.397-0.877,0.397H594.758z"/>
- </g>
- </g>
- <g>
- <path fill="#FFFFFF" d="M472.012,39.909c-0.426,0-0.797,0.08-1.114,0.239c-0.32,0.158-0.586,0.478-0.797,0.954l-7.158,13.682
- c-0.902,1.697-1.789,3.367-2.664,5.01c-0.875,1.646-1.645,3.13-2.307,4.455c-0.664,1.326-1.221,2.386-1.672,3.182
- c-0.451,0.795-0.675,1.221-0.675,1.272c-0.107,0.16-0.226,0.267-0.358,0.318c-0.133,0.054-0.252-0.052-0.357-0.318
- c-0.106-0.105-0.465-0.741-1.074-1.908c-0.61-1.166-1.38-2.626-2.307-4.375c-0.929-1.75-1.936-3.672-3.022-5.767
- c-1.088-2.095-2.135-4.149-3.142-6.165c-1.008-2.014-1.909-3.857-2.704-5.528c-0.796-1.67-1.38-2.954-1.751-3.857
- c-0.158-0.37-0.411-0.662-0.755-0.874c-0.346-0.212-0.676-0.319-0.994-0.319h-5.275v59.507c1.384,0.015,7.502-0.332,7.502-7.646
- v-0.08V59.158c0-0.211,0.04-0.317,0.119-0.317c0.08,0,0.146,0.053,0.199,0.158c1.909,3.501,3.632,6.709,5.17,9.625
- c0.637,1.221,1.285,2.439,1.949,3.659c0.662,1.22,1.259,2.319,1.79,3.301c0.529,0.981,0.967,1.817,1.313,2.505
- c0.344,0.689,0.568,1.114,0.676,1.272c0.159,0.318,0.489,0.571,0.994,0.757c0.504,0.186,1.061,0.278,1.67,0.278
- c0.608,0,1.167-0.093,1.67-0.278s0.836-0.465,0.994-0.836c0.053-0.159,0.266-0.582,0.637-1.272
- c0.371-0.688,0.822-1.538,1.352-2.545s1.113-2.108,1.75-3.301c0.637-1.193,1.299-2.399,1.988-3.62
- c1.539-2.862,3.289-6.044,5.25-9.545c0.105-0.264,0.225-0.357,0.359-0.277c0.131,0.078,0.197,0.172,0.197,0.277v32.533
- c0,0-0.299,7.694,7.37,7.867v-59.49H472.012z"/>
- </g>
- </g>
- <g>
- <path fill="#FFFFFF" d="M401.538,47.625v39.69c0,2.068-0.637,3.593-1.909,4.574s-2.625,1.472-4.057,1.472
- c-1.485,0-2.877-0.49-4.176-1.472c-1.3-0.981-1.949-2.506-1.949-4.574V47.545c0-6.674-6.85-7.535-7.846-7.625v48.944
- c0.093,1.639,0.439,3.1,1.045,4.378c0.716,1.511,1.71,2.758,2.983,3.737c1.272,0.982,2.756,1.711,4.454,2.188
- c1.697,0.478,3.526,0.717,5.488,0.717c1.961,0,3.778-0.239,5.449-0.717c1.67-0.477,3.128-1.205,4.375-2.188
- c1.245-0.979,2.227-2.227,2.943-3.737c0.551-1.165,0.888-2.48,1.015-3.945V39.911C401.184,39.95,401.538,47.625,401.538,47.625z"
- />
- </g>
-</g>
-<g>
- <path fill="#FFFFFF" d="M358.411,131.876c0.365,0,0.674,0.049,0.929,0.146c0.254,0.098,0.464,0.235,0.63,0.413
- c0.166,0.179,0.286,0.395,0.363,0.649c0.076,0.254,0.114,0.539,0.114,0.853v5.384c0,0.628-0.159,1.131-0.477,1.508
- c-0.318,0.378-0.838,0.566-1.559,0.566h-2.736v-0.344c0-0.187,0.025-0.329,0.077-0.427c0.051-0.097,0.119-0.167,0.204-0.209
- c0.102-0.06,0.152-0.149,0.152-0.268v-7.025c0-0.076-0.017-0.138-0.051-0.185s-0.072-0.078-0.114-0.096
- c-0.085-0.042-0.151-0.11-0.198-0.203c-0.046-0.093-0.07-0.225-0.07-0.395v-0.369H358.411z M359.187,133.912
- c0-0.297-0.062-0.534-0.185-0.713c-0.123-0.178-0.32-0.267-0.592-0.267h-0.878c-0.06,0-0.104,0.019-0.134,0.057
- c-0.03,0.038-0.044,0.079-0.044,0.121v7.063c0,0.042,0.013,0.082,0.038,0.12c0.025,0.039,0.059,0.058,0.102,0.058h0.917
- c0.271,0,0.469-0.089,0.592-0.267c0.123-0.179,0.185-0.416,0.185-0.714V133.912z"/>
- <path fill="#FFFFFF" d="M370.558,132.989c-0.038,0.038-0.057,0.083-0.057,0.134v2.66c0,0.119,0.063,0.178,0.191,0.178h1.515
- c0.042,0,0.087,0.016,0.134,0.045c0.046,0.029,0.07,0.078,0.07,0.146v0.712c0,0.119-0.063,0.179-0.191,0.179h-1.527
- c-0.127,0-0.191,0.06-0.191,0.178v2.966c0,0.119,0.051,0.178,0.153,0.178h1.272c0.093,0,0.14-0.055,0.14-0.165
- c0-0.136,0.057-0.242,0.172-0.318c0.114-0.076,0.269-0.114,0.464-0.114h0.484v1.311c0,0.094-0.032,0.17-0.095,0.229
- c-0.064,0.06-0.143,0.089-0.236,0.089h-0.789h-2.481h-0.764v-0.331c0-0.187,0.023-0.329,0.07-0.426
- c0.047-0.098,0.112-0.168,0.197-0.211c0.11-0.059,0.166-0.147,0.166-0.267v-7.038c0-0.076-0.017-0.136-0.051-0.178
- c-0.034-0.043-0.072-0.077-0.115-0.103c-0.085-0.042-0.15-0.11-0.197-0.203s-0.07-0.225-0.07-0.395v-0.369h4.034
- c0.102,0,0.182,0.03,0.242,0.089c0.06,0.06,0.089,0.123,0.089,0.191v1.349h-0.471c-0.178,0-0.329-0.023-0.452-0.07
- c-0.123-0.046-0.185-0.142-0.185-0.286c0-0.051-0.013-0.1-0.038-0.146s-0.072-0.069-0.14-0.069h-1.222
- C370.636,132.933,370.596,132.951,370.558,132.989z"/>
- <path fill="#FFFFFF" d="M383.011,134.701c0,0.17,0.081,0.331,0.242,0.483c0.161,0.153,0.36,0.308,0.598,0.465
- c0.237,0.157,0.498,0.322,0.782,0.496s0.545,0.367,0.783,0.579s0.437,0.45,0.599,0.713c0.161,0.263,0.241,0.564,0.241,0.903v1.247
- c0,0.322-0.063,0.605-0.19,0.847c-0.127,0.241-0.297,0.441-0.509,0.599c-0.212,0.156-0.458,0.273-0.738,0.35
- s-0.577,0.114-0.891,0.114c-0.314,0-0.611-0.038-0.891-0.114c-0.28-0.076-0.524-0.193-0.731-0.35
- c-0.208-0.157-0.374-0.357-0.497-0.599s-0.185-0.524-0.185-0.847v-0.954h0.611c0.229,0,0.401,0.054,0.516,0.159
- s0.172,0.257,0.172,0.452v0.547c0,0.11,0.032,0.208,0.095,0.293c0.064,0.085,0.144,0.156,0.242,0.216s0.206,0.106,0.325,0.141
- c0.118,0.033,0.233,0.051,0.343,0.051c0.11,0,0.225-0.02,0.344-0.058c0.119-0.038,0.229-0.09,0.331-0.152
- c0.102-0.063,0.185-0.141,0.248-0.229c0.064-0.089,0.096-0.188,0.096-0.299v-1.35c0-0.279-0.079-0.52-0.235-0.719
- c-0.157-0.199-0.354-0.38-0.592-0.541c-0.238-0.161-0.495-0.32-0.77-0.478c-0.276-0.156-0.532-0.328-0.77-0.515
- c-0.238-0.188-0.435-0.405-0.592-0.656c-0.157-0.25-0.235-0.553-0.235-0.909v-0.904c0-0.339,0.055-0.63,0.165-0.872
- c0.11-0.241,0.263-0.44,0.458-0.598s0.424-0.271,0.687-0.344c0.263-0.071,0.552-0.107,0.866-0.107c0.313,0,0.604,0.04,0.872,0.12
- c0.267,0.081,0.5,0.2,0.699,0.357c0.2,0.156,0.354,0.355,0.465,0.598s0.166,0.523,0.166,0.846v0.942h-0.573
- c-0.212,0-0.391-0.067-0.534-0.204c-0.145-0.136-0.217-0.305-0.217-0.509v-0.471c0-0.103-0.03-0.191-0.089-0.268
- c-0.06-0.076-0.134-0.138-0.223-0.185c-0.089-0.046-0.187-0.08-0.293-0.102s-0.202-0.031-0.286-0.031
- c-0.094,0-0.191,0.012-0.293,0.037c-0.102,0.025-0.199,0.064-0.292,0.114c-0.093,0.052-0.17,0.113-0.229,0.186
- c-0.06,0.072-0.089,0.154-0.089,0.248V134.701z"/>
- <path fill="#FFFFFF" d="M399.313,140.313c0.093,0.043,0.169,0.104,0.229,0.185c0.059,0.081,0.089,0.219,0.089,0.414v0.483h-0.255
- h-0.585c-0.102,0-0.189-0.007-0.261-0.02c-0.072-0.013-0.136-0.035-0.191-0.069s-0.108-0.085-0.159-0.153
- c-0.051-0.067-0.106-0.152-0.165-0.254c-0.026-0.052-0.07-0.136-0.134-0.255s-0.136-0.261-0.216-0.426
- c-0.081-0.166-0.168-0.342-0.261-0.528s-0.187-0.378-0.28-0.573c-0.221-0.449-0.467-0.946-0.738-1.488l-0.204,0.394v2.177
- c0,0.067,0.011,0.118,0.032,0.152c0.021,0.034,0.053,0.068,0.096,0.102c0.068,0.052,0.135,0.123,0.204,0.217
- c0.068,0.094,0.102,0.212,0.102,0.356v0.369h-2.112v-0.369c0-0.145,0.034-0.263,0.102-0.356s0.136-0.165,0.204-0.217
- c0.034-0.033,0.062-0.065,0.083-0.095c0.021-0.03,0.037-0.083,0.045-0.159v-7.114c-0.008-0.067-0.023-0.118-0.045-0.152
- c-0.021-0.034-0.048-0.064-0.083-0.09c-0.068-0.051-0.136-0.122-0.204-0.216s-0.102-0.212-0.102-0.356v-0.382h2.1v0.382
- c0,0.145-0.034,0.263-0.102,0.356s-0.136,0.165-0.204,0.216c-0.042,0.025-0.075,0.056-0.096,0.09s-0.032,0.089-0.032,0.165v2.393
- l1.693-3.055c0.042-0.093,0.102-0.183,0.178-0.268c0.059-0.067,0.136-0.131,0.229-0.19c0.093-0.06,0.208-0.089,0.344-0.089h0.801
- v0.496c0,0.188-0.049,0.327-0.146,0.42c-0.097,0.094-0.193,0.162-0.286,0.203c-0.068,0.035-0.117,0.077-0.146,0.128
- c-0.03,0.051-0.066,0.11-0.108,0.178c-0.017,0.025-0.062,0.104-0.133,0.236c-0.072,0.131-0.159,0.292-0.261,0.483
- c-0.102,0.19-0.212,0.398-0.331,0.623s-0.233,0.441-0.343,0.649c-0.11,0.208-0.208,0.395-0.293,0.561
- c-0.085,0.165-0.145,0.282-0.178,0.35c-0.017,0.042-0.029,0.08-0.038,0.114c-0.008,0.034,0,0.089,0.026,0.165
- c0,0.018,0.027,0.079,0.082,0.186c0.056,0.105,0.125,0.243,0.21,0.413c0.084,0.17,0.182,0.36,0.292,0.572
- c0.11,0.213,0.221,0.429,0.331,0.649c0.263,0.518,0.56,1.099,0.891,1.744c0.042,0.067,0.085,0.118,0.127,0.152
- S399.22,140.28,399.313,140.313z"/>
- <path fill="#FFFFFF" d="M412.969,131.984c0.076,0.089,0.115,0.239,0.115,0.451v0.395v0.7h-0.688c-0.119,0-0.212-0.04-0.28-0.121
- c-0.067-0.08-0.102-0.188-0.102-0.324c0-0.11-0.047-0.166-0.14-0.166h-0.624c-0.051,0-0.095,0.018-0.133,0.052
- c-0.039,0.033-0.058,0.089-0.058,0.165v7.038c0,0.085,0.013,0.144,0.038,0.178c0.025,0.034,0.059,0.068,0.102,0.102
- c0.068,0.052,0.134,0.123,0.198,0.217c0.063,0.094,0.096,0.212,0.096,0.356v0.369h-2.113v-0.369c0-0.145,0.034-0.263,0.103-0.356
- c0.067-0.094,0.135-0.165,0.203-0.217c0.034-0.033,0.064-0.067,0.089-0.102s0.038-0.093,0.038-0.178v-7.076
- c0-0.06-0.021-0.104-0.063-0.134c-0.042-0.029-0.085-0.045-0.127-0.045h-0.56c-0.034,0-0.074,0.014-0.121,0.039
- c-0.046,0.025-0.07,0.072-0.07,0.14c0,0.145-0.038,0.252-0.114,0.324c-0.077,0.072-0.217,0.108-0.42,0.108h-0.585v-0.776v-0.369
- c0-0.195,0.053-0.333,0.159-0.414c0.105-0.08,0.269-0.12,0.49-0.12h4.149C412.753,131.851,412.893,131.895,412.969,131.984z"/>
- <path fill="#FFFFFF" d="M423.57,141.51c-0.314,0-0.607-0.038-0.878-0.114s-0.509-0.195-0.712-0.356
- c-0.204-0.161-0.363-0.363-0.478-0.604s-0.171-0.524-0.171-0.847v-5.905c0-0.322,0.057-0.604,0.171-0.846s0.274-0.441,0.478-0.598
- c0.203-0.157,0.441-0.274,0.712-0.351s0.564-0.114,0.878-0.114c0.313,0,0.606,0.038,0.878,0.114s0.507,0.193,0.707,0.351
- c0.199,0.156,0.356,0.355,0.471,0.598c0.114,0.242,0.172,0.523,0.172,0.846v5.905c0,0.322-0.058,0.605-0.172,0.847
- c-0.115,0.241-0.272,0.443-0.471,0.604c-0.199,0.161-0.435,0.28-0.707,0.356S423.884,141.51,423.57,141.51z M424.55,133.733
- c0-0.169-0.029-0.312-0.089-0.426c-0.059-0.114-0.136-0.208-0.229-0.28s-0.197-0.125-0.312-0.159
- c-0.114-0.033-0.231-0.051-0.35-0.051c-0.119,0-0.238,0.018-0.356,0.051c-0.119,0.034-0.225,0.087-0.318,0.159
- c-0.094,0.072-0.17,0.166-0.229,0.28s-0.089,0.257-0.089,0.426v5.804c0,0.17,0.029,0.312,0.089,0.427
- c0.06,0.114,0.136,0.208,0.229,0.28c0.093,0.071,0.199,0.125,0.318,0.158c0.119,0.034,0.237,0.051,0.356,0.051
- c0.118,0,0.235-0.017,0.35-0.051c0.115-0.033,0.219-0.087,0.312-0.158c0.093-0.072,0.17-0.166,0.229-0.28
- c0.06-0.115,0.089-0.257,0.089-0.427V133.733z"/>
- <path fill="#FFFFFF" d="M436.907,131.876c0.722,0,1.239,0.187,1.553,0.56c0.314,0.374,0.471,0.878,0.471,1.515v1.388
- c0,0.636-0.156,1.135-0.471,1.495c-0.313,0.36-0.831,0.541-1.553,0.541h-0.827c-0.119,0-0.178,0.051-0.178,0.152v2.647
- c0,0.085,0.01,0.144,0.032,0.178c0.021,0.034,0.053,0.068,0.095,0.102c0.068,0.052,0.136,0.123,0.204,0.217
- c0.067,0.094,0.102,0.212,0.102,0.356v0.369h-2.125v-0.369c0-0.145,0.033-0.263,0.102-0.356c0.067-0.094,0.136-0.165,0.203-0.217
- c0.043-0.033,0.074-0.067,0.096-0.102c0.021-0.034,0.032-0.093,0.032-0.178v-7.063c0-0.127-0.056-0.221-0.166-0.28
- c-0.085-0.051-0.157-0.127-0.216-0.229c-0.06-0.103-0.089-0.238-0.089-0.407v-0.318H436.907z M437.671,133.925
- c0-0.297-0.062-0.534-0.185-0.713c-0.123-0.178-0.316-0.267-0.579-0.267h-0.802c-0.051,0-0.098,0.015-0.14,0.044
- c-0.043,0.03-0.063,0.074-0.063,0.134v3.004c0,0.118,0.055,0.178,0.165,0.178h0.84c0.263,0,0.456-0.089,0.579-0.267
- c0.123-0.179,0.185-0.416,0.185-0.714V133.925z"/>
- <path fill="#FFFFFF" d="M459.669,132.989c-0.039,0.038-0.059,0.083-0.059,0.134v2.66c0,0.119,0.064,0.178,0.191,0.178h1.514
- c0.043,0,0.088,0.016,0.135,0.045s0.07,0.078,0.07,0.146v0.712c0,0.119-0.064,0.179-0.191,0.179h-1.527
- c-0.127,0-0.191,0.06-0.191,0.178v2.966c0,0.119,0.051,0.178,0.154,0.178h1.271c0.094,0,0.141-0.055,0.141-0.165
- c0-0.136,0.057-0.242,0.172-0.318s0.27-0.114,0.463-0.114h0.484v1.311c0,0.094-0.031,0.17-0.096,0.229
- c-0.063,0.06-0.141,0.089-0.234,0.089h-0.789h-2.482h-0.764v-0.331c0-0.187,0.023-0.329,0.07-0.426
- c0.047-0.098,0.113-0.168,0.197-0.211c0.111-0.059,0.166-0.147,0.166-0.267v-7.038c0-0.076-0.018-0.136-0.051-0.178
- c-0.035-0.043-0.072-0.077-0.115-0.103c-0.084-0.042-0.15-0.11-0.197-0.203s-0.07-0.225-0.07-0.395v-0.369h4.035
- c0.102,0,0.182,0.03,0.242,0.089c0.059,0.06,0.088,0.123,0.088,0.191v1.349h-0.471c-0.178,0-0.328-0.023-0.451-0.07
- c-0.123-0.046-0.186-0.142-0.186-0.286c0-0.051-0.012-0.1-0.037-0.146s-0.072-0.069-0.141-0.069h-1.221
- C459.748,132.933,459.707,132.951,459.669,132.989z"/>
- <path fill="#FFFFFF" d="M475.826,131.876v0.369c0,0.145-0.035,0.263-0.102,0.356c-0.068,0.093-0.137,0.165-0.205,0.216
- c-0.033,0.034-0.061,0.068-0.082,0.102c-0.021,0.034-0.035,0.089-0.045,0.166v7.979c0,0.085-0.025,0.161-0.076,0.229
- c-0.051,0.068-0.127,0.103-0.229,0.103h-0.738c-0.111,0-0.189-0.047-0.234-0.14c-0.049-0.094-0.092-0.213-0.135-0.356
- c-0.018-0.043-0.072-0.21-0.166-0.503s-0.205-0.645-0.338-1.057c-0.131-0.411-0.271-0.851-0.418-1.317
- c-0.148-0.467-0.287-0.898-0.414-1.298c-0.127-0.398-0.234-0.732-0.318-0.999c-0.086-0.268-0.127-0.405-0.127-0.413
- c-0.01-0.018-0.018-0.03-0.025-0.039c-0.01-0.008-0.014,0.014-0.014,0.064v4.823c0,0.094,0.014,0.156,0.039,0.19
- s0.059,0.064,0.102,0.09c0.068,0.051,0.133,0.122,0.197,0.216c0.063,0.094,0.096,0.212,0.096,0.356v0.382h-1.987v-0.382
- c0-0.145,0.035-0.263,0.102-0.356c0.068-0.094,0.137-0.165,0.203-0.216c0.035-0.025,0.064-0.056,0.09-0.09
- c0.025-0.034,0.039-0.093,0.039-0.178v-7.178c-0.086-0.034-0.159-0.081-0.217-0.14c-0.059-0.052-0.111-0.121-0.152-0.211
- c-0.043-0.089-0.064-0.205-0.064-0.35v-0.42h1.44c0.102,0,0.178,0.023,0.229,0.069c0.051,0.048,0.088,0.113,0.113,0.197
- c0,0.018,0.043,0.162,0.129,0.434c0.084,0.271,0.189,0.608,0.318,1.012c0.127,0.402,0.264,0.844,0.412,1.323
- s0.289,0.938,0.42,1.375c0.133,0.437,0.248,0.82,0.35,1.151c0.104,0.331,0.17,0.552,0.205,0.662
- c0.008,0.017,0.02,0.033,0.031,0.051c0.012,0.017,0.02,0.013,0.02-0.013v-5.04c0-0.085-0.014-0.145-0.039-0.179
- c-0.025-0.033-0.055-0.067-0.088-0.102c-0.068-0.051-0.137-0.123-0.203-0.216c-0.068-0.094-0.104-0.212-0.104-0.356v-0.369H475.826
- z"/>
- <path fill="#FFFFFF" d="M489.455,131.889v0.382c0,0.145-0.029,0.263-0.088,0.356c-0.061,0.094-0.123,0.161-0.191,0.203
- c-0.043,0.034-0.08,0.072-0.115,0.115c-0.033,0.042-0.059,0.098-0.076,0.165c-0.221,1.468-0.416,2.783-0.584,3.945
- c-0.078,0.5-0.152,0.988-0.223,1.464c-0.074,0.475-0.137,0.901-0.191,1.278c-0.057,0.378-0.102,0.686-0.141,0.923
- c-0.037,0.237-0.057,0.365-0.057,0.382c-0.01,0.068-0.037,0.134-0.084,0.197s-0.111,0.096-0.195,0.096h-1.375
- c-0.213,0-0.332-0.106-0.357-0.318c-0.043-0.246-0.105-0.613-0.191-1.101c-0.084-0.488-0.178-1.022-0.279-1.604
- s-0.207-1.178-0.318-1.788c-0.109-0.611-0.209-1.171-0.299-1.681c-0.088-0.509-0.164-0.929-0.223-1.26s-0.088-0.509-0.088-0.534
- c-0.018-0.085-0.037-0.144-0.059-0.178s-0.053-0.068-0.096-0.103c-0.068-0.042-0.131-0.109-0.191-0.203
- c-0.059-0.094-0.088-0.212-0.088-0.356v-0.382h2.023v0.382c0,0.152-0.027,0.273-0.082,0.362c-0.057,0.089-0.117,0.155-0.186,0.197
- c-0.043,0.034-0.074,0.068-0.096,0.103s-0.023,0.093-0.006,0.178c0.203,1.323,0.387,2.503,0.547,3.538
- c0.068,0.441,0.137,0.874,0.203,1.298c0.068,0.425,0.131,0.802,0.186,1.133s0.115,0.7,0.184,1.107c0.01,0,0.031-0.102,0.064-0.306
- s0.076-0.471,0.127-0.802s0.105-0.708,0.166-1.133c0.059-0.424,0.123-0.856,0.189-1.298c0.154-1.035,0.32-2.215,0.498-3.538
- c0-0.085-0.01-0.144-0.025-0.178c-0.018-0.034-0.047-0.068-0.09-0.103c-0.059-0.042-0.119-0.108-0.178-0.197
- c-0.061-0.089-0.09-0.21-0.09-0.362v-0.382H489.455z"/>
- <path fill="#FFFFFF" d="M499.268,140.161v0.025c0,0.076,0.014,0.131,0.039,0.165s0.055,0.064,0.088,0.09
- c0.068,0.051,0.137,0.122,0.203,0.216c0.068,0.094,0.104,0.212,0.104,0.356v0.382h-2.125v-0.382c0-0.145,0.029-0.261,0.088-0.35
- c0.059-0.09,0.131-0.164,0.217-0.223c0.041-0.025,0.074-0.056,0.096-0.09s0.031-0.089,0.031-0.165v-0.025v-7.051
- c0-0.085-0.01-0.144-0.031-0.178s-0.055-0.068-0.096-0.103c-0.068-0.051-0.137-0.123-0.203-0.216
- c-0.068-0.094-0.102-0.212-0.102-0.356v-0.369h2.125v0.369c0,0.145-0.035,0.263-0.104,0.356c-0.066,0.093-0.135,0.165-0.203,0.216
- c-0.043,0.034-0.074,0.068-0.096,0.103c-0.02,0.034-0.031,0.093-0.031,0.178V140.161z"/>
- <path fill="#FFFFFF" d="M512.643,140.416c0.068,0.042,0.135,0.095,0.199,0.158c0.063,0.064,0.094,0.172,0.094,0.325v0.496h-1.057
- c-0.221,0-0.383-0.058-0.488-0.172c-0.107-0.114-0.16-0.266-0.16-0.452v-2.494c0-0.297-0.061-0.528-0.184-0.694
- c-0.125-0.165-0.32-0.248-0.592-0.248h-0.789c-0.111,0-0.166,0.06-0.166,0.179v2.66c0,0.085,0.012,0.144,0.037,0.178
- s0.057,0.068,0.09,0.102c0.068,0.052,0.137,0.123,0.203,0.217c0.068,0.094,0.104,0.212,0.104,0.356v0.369h-2.113v-0.369
- c0-0.145,0.033-0.263,0.102-0.356s0.135-0.165,0.203-0.217c0.033-0.033,0.064-0.067,0.09-0.102s0.037-0.093,0.037-0.178v-7.076
- c0-0.067-0.012-0.121-0.037-0.159s-0.057-0.065-0.09-0.082c-0.068-0.043-0.133-0.11-0.197-0.204
- c-0.063-0.094-0.096-0.229-0.096-0.407v-0.369h2.623c0.363,0,0.674,0.053,0.928,0.159c0.256,0.105,0.465,0.252,0.631,0.438
- c0.166,0.188,0.285,0.41,0.361,0.668c0.078,0.259,0.115,0.546,0.115,0.859v1.312c0,0.271-0.055,0.52-0.166,0.744
- c-0.109,0.225-0.254,0.409-0.432,0.554c-0.076,0.076-0.068,0.161,0.025,0.254c0.195,0.145,0.34,0.344,0.432,0.599
- c0.094,0.255,0.141,0.539,0.141,0.853v1.871c0,0.085,0.016,0.138,0.045,0.158C512.564,140.367,512.6,140.39,512.643,140.416z
- M511.23,133.912c0-0.297-0.061-0.532-0.184-0.706c-0.125-0.174-0.32-0.261-0.592-0.261h-0.752c-0.135,0-0.203,0.059-0.203,0.178
- v3.029c0,0.042,0.018,0.076,0.051,0.102s0.068,0.038,0.102,0.038h0.803c0.271,0,0.467-0.089,0.592-0.268
- c0.123-0.178,0.184-0.415,0.184-0.712V133.912z"/>
- <path fill="#FFFFFF" d="M523.422,141.51c-0.313,0-0.605-0.038-0.877-0.114s-0.51-0.195-0.713-0.356s-0.363-0.363-0.479-0.604
- c-0.113-0.241-0.17-0.524-0.17-0.847v-5.905c0-0.322,0.057-0.604,0.17-0.846c0.115-0.242,0.275-0.441,0.479-0.598
- c0.203-0.157,0.441-0.274,0.713-0.351s0.564-0.114,0.877-0.114c0.314,0,0.607,0.038,0.879,0.114s0.508,0.193,0.707,0.351
- c0.197,0.156,0.355,0.355,0.471,0.598c0.113,0.242,0.172,0.523,0.172,0.846v5.905c0,0.322-0.059,0.605-0.172,0.847
- c-0.115,0.241-0.273,0.443-0.471,0.604c-0.199,0.161-0.436,0.28-0.707,0.356S523.736,141.51,523.422,141.51z M524.402,133.733
- c0-0.169-0.029-0.312-0.09-0.426c-0.059-0.114-0.135-0.208-0.229-0.28s-0.197-0.125-0.311-0.159
- c-0.115-0.033-0.232-0.051-0.352-0.051s-0.236,0.018-0.355,0.051c-0.119,0.034-0.225,0.087-0.318,0.159s-0.17,0.166-0.229,0.28
- c-0.061,0.114-0.09,0.257-0.09,0.426v5.804c0,0.17,0.029,0.312,0.09,0.427c0.059,0.114,0.135,0.208,0.229,0.28
- c0.094,0.071,0.199,0.125,0.318,0.158c0.119,0.034,0.236,0.051,0.355,0.051s0.236-0.017,0.352-0.051
- c0.113-0.033,0.217-0.087,0.311-0.158c0.094-0.072,0.17-0.166,0.229-0.28c0.061-0.115,0.09-0.257,0.09-0.427V133.733z"/>
- <path fill="#FFFFFF" d="M539.242,131.876v0.369c0,0.145-0.035,0.263-0.102,0.356c-0.068,0.093-0.137,0.165-0.205,0.216
- c-0.033,0.034-0.061,0.068-0.082,0.102c-0.021,0.034-0.035,0.089-0.045,0.166v7.979c0,0.085-0.025,0.161-0.076,0.229
- c-0.051,0.068-0.127,0.103-0.229,0.103h-0.738c-0.111,0-0.189-0.047-0.236-0.14c-0.047-0.094-0.092-0.213-0.133-0.356
- c-0.018-0.043-0.072-0.21-0.166-0.503s-0.205-0.645-0.336-1.057c-0.133-0.411-0.273-0.851-0.42-1.317
- c-0.15-0.467-0.287-0.898-0.414-1.298c-0.129-0.398-0.234-0.732-0.318-0.999c-0.086-0.268-0.127-0.405-0.127-0.413
- c-0.01-0.018-0.018-0.03-0.025-0.039c-0.01-0.008-0.014,0.014-0.014,0.064v4.823c0,0.094,0.014,0.156,0.039,0.19
- s0.059,0.064,0.102,0.09c0.068,0.051,0.133,0.122,0.197,0.216c0.063,0.094,0.096,0.212,0.096,0.356v0.382h-1.986v-0.382
- c0-0.145,0.033-0.263,0.102-0.356s0.137-0.165,0.205-0.216c0.033-0.025,0.063-0.056,0.088-0.09s0.039-0.093,0.039-0.178v-7.178
- c-0.086-0.034-0.158-0.081-0.217-0.14c-0.059-0.052-0.111-0.121-0.152-0.211c-0.043-0.089-0.064-0.205-0.064-0.35v-0.42h1.438
- c0.104,0,0.18,0.023,0.23,0.069c0.051,0.048,0.09,0.113,0.113,0.197c0,0.018,0.043,0.162,0.127,0.434
- c0.086,0.271,0.191,0.608,0.32,1.012c0.125,0.402,0.264,0.844,0.412,1.323s0.289,0.938,0.42,1.375
- c0.131,0.437,0.248,0.82,0.35,1.151c0.104,0.331,0.17,0.552,0.205,0.662c0.008,0.017,0.018,0.033,0.031,0.051
- c0.014,0.017,0.02,0.013,0.02-0.013v-5.04c0-0.085-0.014-0.145-0.039-0.179c-0.025-0.033-0.055-0.067-0.088-0.102
- c-0.068-0.051-0.137-0.123-0.205-0.216c-0.066-0.094-0.102-0.212-0.102-0.356v-0.369H539.242z"/>
- <path fill="#FFFFFF" d="M555.105,132.62c-0.047,0.09-0.096,0.159-0.146,0.21c-0.068,0.06-0.141,0.103-0.217,0.128v7.164
- c0,0.085,0.014,0.145,0.039,0.179s0.059,0.063,0.102,0.089c0.068,0.052,0.135,0.123,0.203,0.217s0.102,0.221,0.102,0.382v0.407
- h-2.086v-0.42c0-0.145,0.033-0.264,0.102-0.356c0.068-0.094,0.135-0.166,0.203-0.217c0.043-0.025,0.076-0.055,0.102-0.089
- c0.025-0.033,0.039-0.093,0.039-0.178v-5.206c0-0.017-0.012-0.031-0.033-0.044c-0.02-0.013-0.039,0.002-0.057,0.044
- c-0.314,0.561-0.594,1.069-0.84,1.528c-0.111,0.195-0.217,0.388-0.318,0.579c-0.102,0.19-0.195,0.366-0.279,0.527
- c-0.086,0.161-0.158,0.297-0.217,0.407s-0.094,0.179-0.102,0.204c-0.025,0.06-0.078,0.104-0.16,0.133
- c-0.08,0.03-0.168,0.045-0.268,0.045c-0.096,0-0.186-0.015-0.266-0.045c-0.082-0.029-0.135-0.069-0.16-0.12
- c-0.018-0.025-0.053-0.094-0.107-0.204c-0.055-0.109-0.125-0.243-0.211-0.401c-0.084-0.156-0.18-0.332-0.285-0.527
- c-0.107-0.195-0.211-0.391-0.313-0.586c-0.246-0.466-0.521-0.979-0.828-1.54c-0.008-0.017-0.018-0.025-0.031-0.025
- c-0.012,0-0.02,0.018-0.02,0.052v5.205v0.013c0,0.085,0.012,0.144,0.033,0.178s0.053,0.064,0.096,0.09
- c0.066,0.051,0.135,0.122,0.203,0.216s0.102,0.212,0.102,0.356v0.382h-2.125v-0.382c0-0.145,0.033-0.263,0.102-0.356
- s0.135-0.165,0.203-0.216c0.043-0.025,0.076-0.056,0.102-0.09s0.039-0.093,0.039-0.178v-7.216
- c-0.084-0.025-0.158-0.068-0.217-0.128c-0.059-0.051-0.109-0.12-0.152-0.21c-0.043-0.089-0.064-0.205-0.064-0.35v-0.395h1.324
- c0.051,0,0.104,0.017,0.158,0.051c0.057,0.034,0.098,0.081,0.121,0.14c0.061,0.145,0.154,0.351,0.281,0.618
- c0.127,0.267,0.271,0.562,0.432,0.884c0.162,0.323,0.33,0.651,0.504,0.986c0.174,0.336,0.334,0.643,0.482,0.923
- s0.271,0.514,0.369,0.7s0.154,0.288,0.172,0.306c0.018,0.042,0.037,0.059,0.057,0.051c0.021-0.009,0.041-0.025,0.059-0.051
- c0-0.009,0.035-0.077,0.107-0.204s0.162-0.297,0.268-0.51c0.105-0.211,0.229-0.449,0.369-0.712s0.281-0.53,0.426-0.802l1.146-2.189
- c0.033-0.076,0.076-0.127,0.127-0.152s0.109-0.038,0.178-0.038h1.223v0.395C555.176,132.415,555.152,132.531,555.105,132.62z"/>
- <path fill="#FFFFFF" d="M565.045,132.989c-0.039,0.038-0.059,0.083-0.059,0.134v2.66c0,0.119,0.064,0.178,0.191,0.178h1.516
- c0.041,0,0.086,0.016,0.133,0.045s0.07,0.078,0.07,0.146v0.712c0,0.119-0.064,0.179-0.191,0.179h-1.527
- c-0.127,0-0.191,0.06-0.191,0.178v2.966c0,0.119,0.051,0.178,0.154,0.178h1.271c0.094,0,0.141-0.055,0.141-0.165
- c0-0.136,0.057-0.242,0.172-0.318s0.27-0.114,0.465-0.114h0.482v1.311c0,0.094-0.031,0.17-0.096,0.229
- c-0.063,0.06-0.141,0.089-0.234,0.089h-0.789h-2.482h-0.764v-0.331c0-0.187,0.023-0.329,0.07-0.426
- c0.047-0.098,0.113-0.168,0.197-0.211c0.111-0.059,0.166-0.147,0.166-0.267v-7.038c0-0.076-0.018-0.136-0.051-0.178
- c-0.035-0.043-0.072-0.077-0.115-0.103c-0.084-0.042-0.15-0.11-0.197-0.203s-0.07-0.225-0.07-0.395v-0.369h4.035
- c0.102,0,0.182,0.03,0.242,0.089c0.059,0.06,0.088,0.123,0.088,0.191v1.349h-0.471c-0.178,0-0.328-0.023-0.451-0.07
- c-0.123-0.046-0.186-0.142-0.186-0.286c0-0.051-0.012-0.1-0.037-0.146s-0.072-0.069-0.141-0.069h-1.221
- C565.123,132.933,565.082,132.951,565.045,132.989z"/>
- <path fill="#FFFFFF" d="M581.201,131.876v0.369c0,0.145-0.035,0.263-0.102,0.356c-0.068,0.093-0.137,0.165-0.205,0.216
- c-0.033,0.034-0.061,0.068-0.082,0.102c-0.021,0.034-0.035,0.089-0.045,0.166v7.979c0,0.085-0.025,0.161-0.076,0.229
- c-0.051,0.068-0.127,0.103-0.229,0.103h-0.738c-0.109,0-0.189-0.047-0.234-0.14c-0.049-0.094-0.092-0.213-0.135-0.356
- c-0.018-0.043-0.072-0.21-0.166-0.503s-0.205-0.645-0.336-1.057c-0.133-0.411-0.271-0.851-0.42-1.317s-0.287-0.898-0.414-1.298
- c-0.127-0.398-0.234-0.732-0.318-0.999c-0.086-0.268-0.127-0.405-0.127-0.413c-0.01-0.018-0.018-0.03-0.025-0.039
- c-0.01-0.008-0.014,0.014-0.014,0.064v4.823c0,0.094,0.014,0.156,0.039,0.19s0.059,0.064,0.102,0.09
- c0.068,0.051,0.133,0.122,0.197,0.216c0.063,0.094,0.096,0.212,0.096,0.356v0.382h-1.986v-0.382c0-0.145,0.035-0.263,0.102-0.356
- c0.068-0.094,0.137-0.165,0.205-0.216c0.033-0.025,0.063-0.056,0.088-0.09s0.039-0.093,0.039-0.178v-7.178
- c-0.086-0.034-0.158-0.081-0.217-0.14c-0.059-0.052-0.111-0.121-0.152-0.211c-0.043-0.089-0.064-0.205-0.064-0.35v-0.42h1.439
- c0.102,0,0.178,0.023,0.229,0.069c0.051,0.048,0.088,0.113,0.113,0.197c0,0.018,0.043,0.162,0.129,0.434
- c0.084,0.271,0.191,0.608,0.318,1.012c0.127,0.402,0.264,0.844,0.412,1.323s0.289,0.938,0.42,1.375
- c0.133,0.437,0.248,0.82,0.352,1.151c0.102,0.331,0.168,0.552,0.203,0.662c0.008,0.017,0.02,0.033,0.031,0.051
- c0.014,0.017,0.02,0.013,0.02-0.013v-5.04c0-0.085-0.014-0.145-0.039-0.179c-0.025-0.033-0.055-0.067-0.088-0.102
- c-0.068-0.051-0.137-0.123-0.203-0.216c-0.068-0.094-0.104-0.212-0.104-0.356v-0.369H581.201z"/>
- <path fill="#FFFFFF" d="M594.537,131.984c0.078,0.089,0.115,0.239,0.115,0.451v0.395v0.7h-0.688c-0.117,0-0.211-0.04-0.279-0.121
- c-0.068-0.08-0.102-0.188-0.102-0.324c0-0.11-0.047-0.166-0.141-0.166h-0.623c-0.051,0-0.096,0.018-0.135,0.052
- c-0.037,0.033-0.057,0.089-0.057,0.165v7.038c0,0.085,0.014,0.144,0.039,0.178s0.059,0.068,0.102,0.102
- c0.068,0.052,0.133,0.123,0.197,0.217c0.063,0.094,0.096,0.212,0.096,0.356v0.369h-2.113v-0.369c0-0.145,0.033-0.263,0.102-0.356
- s0.137-0.165,0.205-0.217c0.033-0.033,0.063-0.067,0.088-0.102s0.039-0.093,0.039-0.178v-7.076c0-0.06-0.021-0.104-0.064-0.134
- c-0.043-0.029-0.084-0.045-0.127-0.045h-0.561c-0.033,0-0.074,0.014-0.121,0.039s-0.07,0.072-0.07,0.14
- c0,0.145-0.037,0.252-0.113,0.324s-0.217,0.108-0.42,0.108h-0.586v-0.776v-0.369c0-0.195,0.053-0.333,0.16-0.414
- c0.105-0.08,0.268-0.12,0.488-0.12h4.148C594.322,131.851,594.463,131.895,594.537,131.984z"/>
-</g>
-<g>
- <path fill="#FFFFFF" d="M614.538,48.141v-7.19h-2.686v-0.961h6.461v0.961h-2.696v7.19H614.538z"/>
- <path fill="#FFFFFF" d="M620.367,48.141v-8.151h1.624l1.929,5.771c0.178,0.538,0.308,0.94,0.39,1.207
- c0.092-0.296,0.236-0.732,0.434-1.307l1.952-5.672h1.45v8.151h-1.039v-6.822l-2.368,6.822h-0.974l-2.358-6.939v6.939H620.367z"/>
-</g>
-</svg>
diff --git a/Artwork/Web_Print/SVG/Lumina_Horizontal_Banner_Red_941px173px.svg b/Artwork/Web_Print/SVG/Lumina_Horizontal_Banner_Red_941px173px.svg deleted file mode 100644 index 5913b102..00000000 --- a/Artwork/Web_Print/SVG/Lumina_Horizontal_Banner_Red_941px173px.svg +++ /dev/null @@ -1,1415 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
- width="941px" height="173px" viewBox="0 0 941 173" enable-background="new 0 0 941 173" xml:space="preserve">
-<pattern width="124.415" height="124.416" patternUnits="userSpaceOnUse" id="Cheetah" viewBox="8.5 -146.097 124.415 124.416" overflow="visible">
- <g>
- <polygon fill="none" points="132.915,-21.681 8.5,-21.681 8.5,-146.097 132.915,-146.097 "/>
- <polygon fill="#F1BA7B" points="132.915,-21.681 8.5,-21.681 8.5,-146.097 132.915,-146.097 "/>
- <g>
- <g>
- <path fill="#864428" d="M4.914-44.978C3.271-44.644-0.15-41.429,0-39.312c0.15,2.115,0.439,3.689,3.625,6.123
- c3.186,2.432,7.504,5.846,11.095,3.996c3.59-1.85,2.748-6.221,1.301-9.131S12.95-46.612,4.914-44.978z"/>
- <path fill="#82472C" d="M4.998-44.752C3.393-44.43,0.053-41.33,0.2-39.288c0.147,2.04,0.429,3.559,3.54,5.905
- c3.11,2.346,7.327,5.639,10.833,3.854c3.505-1.784,2.684-5.999,1.27-8.807C14.429-41.141,12.844-46.329,4.998-44.752z"/>
- <path fill="#7D4930" d="M5.081-44.527c-1.565,0.311-4.825,3.297-4.682,5.264c0.143,1.965,0.418,3.427,3.454,5.688
- c3.035,2.259,7.15,5.43,10.571,3.712c3.42-1.718,2.618-5.778,1.239-8.481C14.285-41.049,12.738-46.045,5.081-44.527z"/>
- <path fill="#794B34" d="M5.165-44.302c-1.527,0.299-4.706,3.171-4.566,5.062c0.14,1.89,0.409,3.296,3.368,5.47
- c2.96,2.173,6.973,5.223,10.309,3.57s2.554-5.557,1.209-8.156C14.14-40.957,12.632-45.762,5.165-44.302z"/>
- <path fill="#754C37" d="M5.249-44.076c-1.488,0.287-4.586,3.045-4.45,4.86c0.136,1.814,0.398,3.165,3.283,5.252
- s6.795,5.015,10.047,3.428c3.251-1.587,2.488-5.336,1.178-7.832S12.526-45.479,5.249-44.076z"/>
- <path fill="#704C3A" d="M5.333-43.851c-1.45,0.275-4.467,2.918-4.334,4.659c0.133,1.739,0.388,3.033,3.197,5.034
- c2.809,2,6.618,4.806,9.785,3.285c3.166-1.521,2.423-5.114,1.147-7.507C13.851-40.772,12.42-45.194,5.333-43.851z"/>
- <path fill="#6B4C3C" d="M5.416-43.625c-1.411,0.263-4.347,2.792-4.218,4.457c0.129,1.664,0.377,2.902,3.112,4.816
- c2.734,1.914,6.44,4.599,9.522,3.144c3.082-1.455,2.359-4.894,1.116-7.183C13.707-40.681,12.313-44.911,5.416-43.625z"/>
- <path fill="#664C3E" d="M5.5-43.399c-1.372,0.251-4.228,2.665-4.102,4.256c0.125,1.588,0.367,2.771,3.026,4.598
- c2.659,1.828,6.264,4.392,9.261,3.002c2.997-1.39,2.293-4.672,1.085-6.857C13.563-40.588,12.208-44.628,5.5-43.399z"/>
- <path fill="#614B3F" d="M5.583-43.175c-1.333,0.239-4.108,2.54-3.986,4.055c0.122,1.514,0.356,2.64,2.94,4.381
- s6.086,4.183,8.999,2.859c2.912-1.323,2.229-4.451,1.055-6.533C13.418-40.496,12.102-44.345,5.583-43.175z"/>
- <path fill="#5B4940" d="M5.667-42.949c-1.294,0.228-3.988,2.414-3.87,3.854c0.119,1.438,0.346,2.508,2.855,4.162
- c2.509,1.655,5.909,3.976,8.737,2.718c2.827-1.258,2.164-4.229,1.024-6.208C13.273-40.403,11.996-44.062,5.667-42.949z"/>
- <path fill="#54463F" d="M5.75-42.724c-1.255,0.216-3.869,2.287-3.754,3.651c0.115,1.363,0.336,2.377,2.77,3.945
- s5.732,3.768,8.475,2.575c2.742-1.192,2.099-4.009,0.994-5.884C13.129-40.312,11.89-43.777,5.75-42.724z"/>
- <path fill="#4D423D" d="M5.834-42.498c-1.217,0.203-3.749,2.161-3.638,3.45c0.112,1.287,0.326,2.246,2.684,3.727
- c2.358,1.482,5.555,3.56,8.213,2.434s2.034-3.787,0.963-5.559C12.985-40.22,11.784-43.494,5.834-42.498z"/>
- <path fill="#443D39" d="M5.918-42.272c-1.178,0.191-3.629,2.034-3.522,3.248c0.108,1.213,0.315,2.115,2.599,3.51
- c2.283,1.396,5.378,3.352,7.951,2.291s1.969-3.566,0.932-5.234C12.84-40.127,11.678-43.211,5.918-42.272z"/>
- <path fill="#3A3534" d="M6.001-42.048C4.862-41.867,2.492-40.139,2.596-39c0.105,1.137,0.305,1.983,2.513,3.291
- c2.208,1.31,5.201,3.145,7.689,2.149c2.488-0.995,1.904-3.345,0.901-4.909C12.696-40.035,11.571-42.927,6.001-42.048z"/>
- <path fill="#252423" d="M6.085-41.822c-1.101,0.168-3.39,1.782-3.29,2.846c0.101,1.063,0.294,1.853,2.427,3.074
- c2.133,1.223,5.024,2.936,7.427,2.007c2.403-0.929,1.839-3.124,0.871-4.585C12.552-39.942,11.465-42.644,6.085-41.822z"/>
- <path d="M6.169-41.597c-1.062,0.156-3.271,1.656-3.174,2.645c0.098,0.986,0.284,1.721,2.342,2.855
- c2.058,1.137,4.847,2.729,7.165,1.865s1.774-2.902,0.84-4.26C12.407-39.851,11.359-42.36,6.169-41.597z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M129.373-44.978c-1.646,0.334-5.064,3.549-4.914,5.666c0.15,2.115,0.438,3.689,3.625,6.123
- c3.185,2.432,7.504,5.846,11.093,3.996c3.591-1.85,2.749-6.221,1.301-9.131C139.031-41.233,137.408-46.612,129.373-44.978z"/>
- <path fill="#82472C" d="M129.457-44.752c-1.607,0.322-4.945,3.422-4.798,5.464c0.146,2.04,0.428,3.559,3.539,5.905
- c3.109,2.346,7.326,5.639,10.83,3.854c3.507-1.784,2.685-5.999,1.271-8.807C138.887-41.141,137.303-46.329,129.457-44.752z"/>
- <path fill="#7D4930" d="M129.54-44.527c-1.567,0.311-4.825,3.297-4.682,5.264c0.143,1.965,0.418,3.427,3.454,5.688
- c3.034,2.259,7.149,5.43,10.569,3.712c3.421-1.718,2.618-5.778,1.238-8.481C138.742-41.049,137.196-46.045,129.54-44.527z"/>
- <path fill="#794B34" d="M129.624-44.302c-1.529,0.299-4.706,3.171-4.565,5.062c0.14,1.89,0.407,3.296,3.367,5.47
- c2.959,2.173,6.974,5.223,10.308,3.57c3.337-1.652,2.555-5.557,1.209-8.156C138.598-40.957,137.09-45.762,129.624-44.302z"/>
- <path fill="#754C37" d="M129.707-44.076c-1.489,0.287-4.586,3.045-4.449,4.86c0.136,1.814,0.397,3.165,3.282,5.252
- c2.884,2.087,6.796,5.015,10.046,3.428c3.251-1.587,2.489-5.336,1.178-7.832C138.454-40.864,136.984-45.479,129.707-44.076z"/>
- <path fill="#704C3A" d="M129.791-43.851c-1.451,0.275-4.467,2.918-4.333,4.659c0.132,1.739,0.387,3.033,3.196,5.034
- c2.809,2,6.618,4.806,9.783,3.285c3.167-1.521,2.425-5.114,1.147-7.507C138.31-40.772,136.879-45.194,129.791-43.851z"/>
- <path fill="#6B4C3C" d="M129.875-43.625c-1.412,0.263-4.347,2.792-4.218,4.457c0.129,1.664,0.377,2.902,3.111,4.816
- c2.733,1.914,6.441,4.599,9.521,3.144c3.082-1.455,2.359-4.894,1.117-7.183C138.165-40.681,136.772-44.911,129.875-43.625z"/>
- <path fill="#664C3E" d="M129.958-43.399c-1.373,0.251-4.227,2.665-4.101,4.256c0.124,1.588,0.366,2.771,3.024,4.598
- c2.659,1.828,6.265,4.392,9.261,3.002c2.997-1.39,2.294-4.672,1.086-6.857C138.021-40.588,136.666-44.628,129.958-43.399z"/>
- <path fill="#614B3F" d="M130.042-43.175c-1.334,0.239-4.108,2.54-3.985,4.055c0.121,1.514,0.356,2.64,2.939,4.381
- s6.088,4.183,8.998,2.859c2.913-1.323,2.229-4.451,1.056-6.533C137.876-40.496,136.561-44.345,130.042-43.175z"/>
- <path fill="#5B4940" d="M130.125-42.949c-1.295,0.228-3.987,2.414-3.868,3.854c0.117,1.438,0.346,2.508,2.854,4.162
- c2.508,1.655,5.91,3.976,8.736,2.718c2.828-1.258,2.164-4.229,1.024-6.208C137.731-40.403,136.454-44.062,130.125-42.949z"/>
- <path fill="#54463F" d="M130.209-42.724c-1.256,0.216-3.868,2.287-3.753,3.651c0.114,1.363,0.335,2.377,2.768,3.945
- c2.434,1.568,5.734,3.768,8.476,2.575c2.743-1.192,2.099-4.009,0.994-5.884C137.587-40.312,136.349-43.777,130.209-42.724z"/>
- <path fill="#4D423D" d="M130.293-42.498c-1.218,0.203-3.749,2.161-3.637,3.45c0.11,1.287,0.324,2.246,2.682,3.727
- c2.358,1.482,5.557,3.56,8.213,2.434c2.659-1.126,2.035-3.787,0.964-5.559C137.442-40.22,136.242-43.494,130.293-42.498z"/>
- <path fill="#443D39" d="M130.376-42.272c-1.178,0.191-3.629,2.034-3.521,3.248c0.107,1.213,0.314,2.115,2.597,3.51
- c2.283,1.396,5.38,3.352,7.951,2.291c2.573-1.061,1.97-3.566,0.933-5.234C137.298-40.127,136.137-43.211,130.376-42.272z"/>
- <path fill="#3A3534" d="M130.46-42.048c-1.14,0.181-3.51,1.909-3.404,3.048c0.103,1.137,0.304,1.983,2.511,3.291
- c2.207,1.31,5.202,3.145,7.689,2.149c2.488-0.995,1.904-3.345,0.902-4.909C137.153-40.035,136.03-42.927,130.46-42.048z"/>
- <path fill="#252423" d="M130.543-41.822c-1.1,0.168-3.39,1.782-3.288,2.846c0.1,1.063,0.294,1.853,2.425,3.074
- c2.133,1.223,5.026,2.936,7.428,2.007c2.404-0.929,1.84-3.124,0.872-4.585C137.009-39.942,135.925-42.644,130.543-41.822z"/>
- <path d="M130.627-41.597c-1.062,0.156-3.271,1.656-3.172,2.645c0.096,0.986,0.283,1.721,2.339,2.855
- c2.058,1.137,4.849,2.729,7.166,1.865c2.319-0.863,1.774-2.902,0.841-4.26C136.864-39.851,135.818-42.36,130.627-41.597z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M130.125-134.889c-2.75,2-8.001,9.25-1.5,14.5c6.5,5.25,8.5,8,13.25,5s8.75-10.75,4.5-14.75
- S135.625-138.889,130.125-134.889z"/>
- <path fill="#82472C" d="M130.32-134.646c-2.668,1.943-7.763,8.985-1.455,14.085c6.307,5.1,8.247,7.771,12.856,4.857
- c4.608-2.914,8.489-10.443,4.365-14.329C141.964-133.918,135.657-138.532,130.32-134.646z"/>
- <path fill="#7D4930" d="M130.517-134.404c-2.587,1.886-7.525,8.722-1.411,13.672c6.113,4.95,7.995,7.542,12.462,4.714
- c4.468-2.829,8.229-10.136,4.233-13.907C141.803-133.696,135.689-138.175,130.517-134.404z"/>
- <path fill="#794B34" d="M130.712-134.161c-2.505,1.829-7.287,8.457-1.365,13.257c5.919,4.8,7.741,7.314,12.067,4.571
- s7.97-9.829,4.099-13.486C141.642-133.475,135.722-137.818,130.712-134.161z"/>
- <path fill="#754C37" d="M130.908-133.917c-2.424,1.771-7.05,8.193-1.321,12.843c5.727,4.65,7.489,7.086,11.673,4.428
- c4.186-2.657,7.71-9.521,3.966-13.064C141.48-133.253,135.754-137.46,130.908-133.917z"/>
- <path fill="#704C3A" d="M131.104-133.675c-2.342,1.714-6.812,7.929-1.276,12.429c5.533,4.5,7.236,6.857,11.279,4.285
- c4.045-2.571,7.449-9.214,3.832-12.642C141.32-133.032,135.785-137.104,131.104-133.675z"/>
- <path fill="#6B4C3C" d="M131.3-133.432c-2.26,1.657-6.574,7.664-1.232,12.015c5.34,4.35,6.983,6.628,10.886,4.143
- s7.189-8.907,3.698-12.221C141.158-132.811,135.817-136.746,131.3-133.432z"/>
- <path fill="#664C3E" d="M131.495-133.189c-2.179,1.6-6.336,7.4-1.188,11.6c5.146,4.2,6.73,6.4,10.491,4
- c3.762-2.4,6.93-8.6,3.564-11.8C140.997-132.589,135.85-136.389,131.495-133.189z"/>
- <path fill="#614B3F" d="M131.69-132.946c-2.096,1.543-6.098,7.136-1.143,11.186c4.953,4.05,6.479,6.172,10.098,3.857
- c3.62-2.314,6.669-8.293,3.431-11.378C140.837-132.368,135.882-136.032,131.69-132.946z"/>
- <path fill="#5B4940" d="M131.887-132.703c-2.015,1.485-5.86,6.871-1.099,10.771c4.761,3.9,6.226,5.943,9.704,3.714
- c3.479-2.229,6.409-7.985,3.297-10.957C140.676-132.146,135.914-135.675,131.887-132.703z"/>
- <path fill="#54463F" d="M132.082-132.46c-1.933,1.428-5.622,6.607-1.054,10.357c4.567,3.75,5.973,5.714,9.31,3.571
- c3.339-2.143,6.149-7.678,3.163-10.535C140.515-131.925,135.946-135.317,132.082-132.46z"/>
- <path fill="#4D423D" d="M132.277-132.217c-1.851,1.371-5.384,6.342-1.008,9.942c4.373,3.6,5.72,5.486,8.915,3.429
- c3.197-2.058,5.889-7.372,3.029-10.114C140.354-131.704,135.978-134.96,132.277-132.217z"/>
- <path fill="#443D39" d="M132.474-131.975c-1.77,1.314-5.146,6.079-0.964,9.528c4.18,3.45,5.467,5.257,8.521,3.286
- c3.057-1.972,5.629-7.064,2.896-9.693C140.192-131.482,136.01-134.604,132.474-131.975z"/>
- <path fill="#3A3534" d="M132.669-131.732c-1.688,1.257-4.908,5.814-0.919,9.114c3.987,3.3,5.214,5.028,8.127,3.143
- c2.915-1.886,5.368-6.757,2.763-9.271C140.031-131.261,136.042-134.246,132.669-131.732z"/>
- <path fill="#252423" d="M132.865-131.489c-1.606,1.2-4.671,5.55-0.875,8.7c3.794,3.15,4.962,4.8,7.732,3
- c2.774-1.8,5.109-6.45,2.629-8.85C139.87-131.039,136.074-133.889,132.865-131.489z"/>
- <path d="M133.061-131.246c-1.524,1.143-4.433,5.286-0.83,8.286c3.601,3,4.709,4.571,7.339,2.857
- c2.633-1.714,4.849-6.143,2.495-8.428C139.709-130.818,136.106-133.532,133.061-131.246z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M133.625-108.889c-4.402,1.321-8.75,5.5-5.25,12.25s9.75,11.75,15,10.25s6.422-7.045,2.75-11
- C142.875-100.889,141.125-111.139,133.625-108.889z"/>
- <path fill="#82472C" d="M133.751-108.595c-4.287,1.286-8.521,5.356-5.112,11.93c3.408,6.574,9.495,11.443,14.607,9.982
- c5.113-1.46,6.254-6.861,2.679-10.712C142.76-100.804,141.055-110.787,133.751-108.595z"/>
- <path fill="#7D4930" d="M133.878-108.301c-4.173,1.252-8.293,5.213-4.977,11.61c3.317,6.397,9.241,11.136,14.217,9.715
- c4.976-1.422,6.086-6.678,2.605-10.426C142.645-100.719,140.986-110.434,133.878-108.301z"/>
- <path fill="#794B34" d="M134.004-108.008c-4.058,1.217-8.064,5.069-4.839,11.291c3.227,6.221,8.986,10.829,13.824,9.446
- c4.839-1.382,5.919-6.493,2.534-10.138C142.528-100.634,140.916-110.081,134.004-108.008z"/>
- <path fill="#754C37" d="M134.13-107.713c-3.942,1.183-7.836,4.925-4.701,10.97s8.731,10.522,13.432,9.179
- c4.702-1.343,5.751-6.309,2.463-9.85C142.413-100.55,140.847-109.729,134.13-107.713z"/>
- <path fill="#704C3A" d="M134.256-107.419c-3.826,1.148-7.606,4.781-4.563,10.649s8.477,10.215,13.04,8.911
- c4.564-1.304,5.583-6.125,2.391-9.563C142.298-100.464,140.776-109.375,134.256-107.419z"/>
- <path fill="#6B4C3C" d="M134.383-107.125c-3.713,1.114-7.379,4.638-4.428,10.33c2.952,5.692,8.223,9.908,12.648,8.644
- c4.428-1.265,5.416-5.941,2.319-9.276C142.183-100.38,140.707-109.023,134.383-107.125z"/>
- <path fill="#664C3E" d="M134.509-106.832c-3.598,1.079-7.149,4.494-4.29,10.009c2.86,5.516,7.968,9.602,12.257,8.376
- c4.29-1.226,5.247-5.757,2.246-8.988C142.066-100.295,140.638-108.67,134.509-106.832z"/>
- <path fill="#614B3F" d="M134.635-106.538c-3.482,1.044-6.921,4.35-4.152,9.689s7.713,9.294,11.864,8.108
- c4.152-1.187,5.08-5.573,2.175-8.701C141.951-100.21,140.567-108.317,134.635-106.538z"/>
- <path fill="#5B4940" d="M134.761-106.244c-3.366,1.01-6.692,4.207-4.015,9.37c2.677,5.163,7.458,8.987,11.473,7.84
- c4.015-1.147,4.911-5.389,2.103-8.414C141.836-100.125,140.498-107.965,134.761-106.244z"/>
- <path fill="#54463F" d="M134.888-105.95c-3.252,0.976-6.465,4.063-3.879,9.049c2.586,4.987,7.203,8.681,11.081,7.573
- c3.878-1.108,4.744-5.205,2.03-8.126C141.721-100.04,140.429-107.612,134.888-105.95z"/>
- <path fill="#4D423D" d="M135.014-105.656c-3.137,0.941-6.235,3.919-3.741,8.729c2.494,4.811,6.948,8.374,10.688,7.305
- c3.741-1.069,4.577-5.021,1.959-7.839C141.605-99.955,140.358-107.259,135.014-105.656z"/>
- <path fill="#443D39" d="M135.14-105.362c-3.021,0.907-6.007,3.776-3.604,8.41s6.693,8.066,10.297,7.037s4.408-4.837,1.887-7.552
- C141.49-99.871,140.289-106.907,135.14-105.362z"/>
- <path fill="#3A3534" d="M135.266-105.068c-2.906,0.872-5.778,3.632-3.467,8.089c2.313,4.458,6.439,7.759,9.905,6.769
- c3.467-0.991,4.241-4.653,1.815-7.264C141.374-99.786,140.22-106.554,135.266-105.068z"/>
- <path fill="#252423" d="M135.393-104.774c-2.792,0.838-5.55,3.488-3.33,7.77c2.221,4.281,6.185,7.452,9.514,6.501
- s4.072-4.469,1.742-6.977C141.259-99.701,140.149-106.201,135.393-104.774z"/>
- <path d="M135.519-104.48c-2.677,0.803-5.321,3.345-3.192,7.449c2.129,4.105,5.93,7.146,9.121,6.233
- c3.192-0.912,3.905-4.285,1.671-6.689C141.144-99.616,140.08-105.849,135.519-104.48z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M131.125-59.389c-3.604,6.007-1.5,9.75,4.75,11c6.25,1.25,11.5-1,14.5-5.25c3-4.25-2-14.25-8.25-14
- S135.625-66.889,131.125-59.389z"/>
- <path fill="#82472C" d="M131.415-59.326c-3.503,5.838-1.459,9.477,4.616,10.691s11.178-0.972,14.094-5.103
- c2.916-4.131-1.944-13.851-8.019-13.607C136.031-67.102,135.788-66.616,131.415-59.326z"/>
- <path fill="#7D4930" d="M131.704-59.263c-3.401,5.67-1.416,9.203,4.483,10.383s10.855-0.944,13.688-4.956
- c2.832-4.012-1.888-13.451-7.788-13.215C136.188-66.815,135.952-66.342,131.704-59.263z"/>
- <path fill="#794B34" d="M131.994-59.2c-3.301,5.502-1.374,8.931,4.351,10.075c5.724,1.145,10.532-0.917,13.28-4.809
- c2.748-3.893-1.832-13.051-7.557-12.823C136.345-66.527,136.115-66.069,131.994-59.2z"/>
- <path fill="#754C37" d="M132.283-59.137c-3.199,5.333-1.332,8.657,4.218,9.766c5.549,1.11,10.21-0.887,12.874-4.661
- s-1.775-12.652-7.325-12.43C136.501-66.24,136.279-65.796,132.283-59.137z"/>
- <path fill="#704C3A" d="M132.573-59.074c-3.099,5.165-1.29,8.383,4.084,9.458s9.889-0.86,12.469-4.514
- c2.579-3.655-1.721-12.253-7.095-12.038S136.442-65.522,132.573-59.074z"/>
- <path fill="#6B4C3C" d="M132.862-59.011c-2.997,4.997-1.248,8.11,3.951,9.15s9.566-0.832,12.063-4.367
- c2.494-3.535-1.664-11.853-6.863-11.645S136.605-65.25,132.862-59.011z"/>
- <path fill="#664C3E" d="M133.152-58.947c-2.896,4.828-1.206,7.836,3.818,8.841c5.023,1.005,9.243-0.804,11.655-4.22
- c2.41-3.416-1.608-11.453-6.632-11.252S136.77-64.976,133.152-58.947z"/>
- <path fill="#614B3F" d="M133.441-58.885c-2.795,4.66-1.164,7.564,3.686,8.534c4.848,0.969,8.921-0.776,11.249-4.073
- c2.327-3.296-1.552-11.054-6.401-10.86C137.127-65.091,136.933-64.703,133.441-58.885z"/>
- <path fill="#5B4940" d="M133.731-58.821c-2.694,4.491-1.122,7.29,3.552,8.225c4.673,0.935,8.599-0.748,10.843-3.925
- c2.242-3.178-1.496-10.655-6.17-10.468C137.283-64.803,137.097-64.43,133.731-58.821z"/>
- <path fill="#54463F" d="M134.021-58.758c-2.593,4.322-1.08,7.017,3.42,7.917c4.497,0.9,8.275-0.72,10.436-3.778
- c2.158-3.059-1.439-10.255-5.938-10.076C137.44-64.516,137.26-64.156,134.021-58.758z"/>
- <path fill="#4D423D" d="M134.311-58.695c-2.492,4.154-1.038,6.744,3.286,7.608c4.322,0.865,7.953-0.692,10.029-3.631
- c2.074-2.939-1.384-9.856-5.707-9.683C137.597-64.229,137.423-63.883,134.311-58.695z"/>
- <path fill="#443D39" d="M134.6-58.632c-2.391,3.986-0.996,6.471,3.153,7.3c4.147,0.83,7.631-0.665,9.624-3.484
- c1.989-2.82-1.328-9.457-5.477-9.291C137.753-63.941,137.587-63.609,134.6-58.632z"/>
- <path fill="#3A3534" d="M134.89-58.569c-2.29,3.817-0.954,6.197,3.02,6.991c3.972,0.795,7.309-0.636,9.218-3.337
- c1.905-2.701-1.272-9.057-5.246-8.898C137.909-63.654,137.75-63.336,134.89-58.569z"/>
- <path fill="#252423" d="M135.179-58.506c-2.188,3.649-0.912,5.923,2.888,6.683c3.796,0.76,6.985-0.608,8.811-3.19
- c1.821-2.582-1.216-8.657-5.015-8.506C138.066-63.367,137.914-63.063,135.179-58.506z"/>
- <path d="M135.469-58.443c-2.088,3.48-0.87,5.65,2.754,6.375c3.621,0.725,6.663-0.58,8.404-3.043
- c1.737-2.463-1.16-8.258-4.783-8.113C138.223-63.08,138.077-62.79,135.469-58.443z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M5.708-134.889c-2.75,2-8,9.25-1.5,14.5s8.5,8,13.25,5s8.75-10.75,4.5-14.75
- S11.208-138.889,5.708-134.889z"/>
- <path fill="#82472C" d="M5.904-134.646c-2.668,1.943-7.763,8.985-1.456,14.085c6.307,5.1,8.247,7.771,12.856,4.857
- c4.609-2.914,8.49-10.443,4.367-14.329C17.547-133.918,11.24-138.532,5.904-134.646z"/>
- <path fill="#7D4930" d="M6.099-134.404c-2.586,1.886-7.524,8.722-1.41,13.672c6.113,4.95,7.994,7.542,12.462,4.714
- c4.468-2.829,8.23-10.136,4.232-13.907C17.386-133.696,11.272-138.175,6.099-134.404z"/>
- <path fill="#794B34" d="M6.295-134.161c-2.505,1.829-7.287,8.457-1.366,13.257c5.92,4.8,7.742,7.314,12.068,4.571
- c4.326-2.743,7.969-9.829,4.099-13.486C17.225-133.475,11.305-137.818,6.295-134.161z"/>
- <path fill="#754C37" d="M6.491-133.917c-2.423,1.771-7.049,8.193-1.322,12.843s7.489,7.086,11.674,4.428
- c4.185-2.657,7.709-9.521,3.965-13.064S11.337-137.46,6.491-133.917z"/>
- <path fill="#704C3A" d="M6.687-133.675c-2.341,1.714-6.811,7.929-1.277,12.429c5.534,4.5,7.236,6.857,11.281,4.285
- c4.043-2.571,7.449-9.214,3.831-12.642C16.903-133.032,11.369-137.104,6.687-133.675z"/>
- <path fill="#6B4C3C" d="M6.882-133.432c-2.259,1.657-6.573,7.664-1.232,12.015c5.34,4.35,6.983,6.628,10.886,4.143
- c3.902-2.486,7.189-8.907,3.697-12.221C16.742-132.811,11.401-136.746,6.882-133.432z"/>
- <path fill="#664C3E" d="M7.078-133.189c-2.177,1.6-6.335,7.4-1.188,11.6c5.147,4.2,6.73,6.4,10.493,4
- c3.761-2.4,6.929-8.6,3.563-11.8C16.581-132.589,11.434-136.389,7.078-133.189z"/>
- <path fill="#614B3F" d="M7.274-132.946c-2.096,1.543-6.097,7.136-1.143,11.186c4.954,4.05,6.478,6.172,10.099,3.857
- c3.62-2.314,6.668-8.293,3.43-11.378C16.42-132.368,11.466-136.032,7.274-132.946z"/>
- <path fill="#5B4940" d="M7.47-132.703c-2.014,1.485-5.86,6.871-1.099,10.771c4.761,3.9,6.226,5.943,9.705,3.714
- s6.409-7.985,3.296-10.957S11.498-135.675,7.47-132.703z"/>
- <path fill="#54463F" d="M7.666-132.46c-1.932,1.428-5.622,6.607-1.054,10.357c4.567,3.75,5.972,5.714,9.311,3.571
- c3.338-2.143,6.148-7.678,3.162-10.535C16.098-131.925,11.53-135.317,7.666-132.46z"/>
- <path fill="#4D423D" d="M7.861-132.217c-1.85,1.371-5.384,6.342-1.009,9.942s5.72,5.486,8.917,3.429
- c3.197-2.058,5.888-7.372,3.028-10.114C15.937-131.704,11.563-134.96,7.861-132.217z"/>
- <path fill="#443D39" d="M8.057-131.975c-1.769,1.314-5.146,6.079-0.965,9.528c4.181,3.45,5.467,5.257,8.523,3.286
- c3.055-1.972,5.628-7.064,2.895-9.693C15.776-131.482,11.595-134.604,8.057-131.975z"/>
- <path fill="#3A3534" d="M8.253-131.732c-1.687,1.257-4.908,5.814-0.92,9.114c3.988,3.3,5.215,5.028,8.129,3.143
- c2.915-1.886,5.368-6.757,2.761-9.271C15.615-131.261,11.627-134.246,8.253-131.732z"/>
- <path fill="#252423" d="M8.449-131.489c-1.605,1.2-4.67,5.55-0.875,8.7c3.794,3.15,4.961,4.8,7.735,3
- c2.773-1.8,5.107-6.45,2.627-8.85C15.454-131.039,11.659-133.889,8.449-131.489z"/>
- <path d="M8.645-131.246c-1.523,1.143-4.433,5.286-0.831,8.286s4.709,4.571,7.341,2.857s4.848-6.143,2.493-8.428
- C15.293-130.818,11.691-133.532,8.645-131.246z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M9.208-108.889c-4.402,1.321-8.75,5.5-5.25,12.25s9.75,11.75,15,10.25s6.423-7.045,2.75-11
- C18.458-100.889,16.708-111.139,9.208-108.889z"/>
- <path fill="#82472C" d="M9.334-108.595c-4.287,1.286-8.521,5.356-5.113,11.93c3.409,6.574,9.496,11.443,14.608,9.982
- c5.113-1.46,6.255-6.861,2.678-10.712C18.342-100.804,16.638-110.787,9.334-108.595z"/>
- <path fill="#7D4930" d="M9.461-108.301c-4.172,1.252-8.293,5.213-4.976,11.61c3.317,6.397,9.241,11.136,14.216,9.715
- c4.976-1.422,6.087-6.678,2.606-10.426C18.228-100.719,16.569-110.434,9.461-108.301z"/>
- <path fill="#794B34" d="M9.587-108.008c-4.057,1.217-8.064,5.069-4.839,11.291c3.226,6.221,8.986,10.829,13.824,9.446
- c4.839-1.382,5.92-6.493,2.535-10.138C18.112-100.634,16.499-110.081,9.587-108.008z"/>
- <path fill="#754C37" d="M9.713-107.713c-3.942,1.183-7.835,4.925-4.701,10.97c3.134,6.045,8.731,10.522,13.432,9.179
- s5.752-6.309,2.463-9.85C17.997-100.55,16.429-109.729,9.713-107.713z"/>
- <path fill="#704C3A" d="M9.84-107.419c-3.828,1.148-7.607,4.781-4.564,10.649c3.042,5.868,8.477,10.215,13.041,8.911
- c4.564-1.304,5.584-6.125,2.391-9.563C17.881-100.464,16.36-109.375,9.84-107.419z"/>
- <path fill="#6B4C3C" d="M9.966-107.125c-3.712,1.114-7.378,4.638-4.427,10.33c2.951,5.692,8.222,9.908,12.648,8.644
- c4.427-1.265,5.416-5.941,2.319-9.276C17.766-100.38,16.29-109.023,9.966-107.125z"/>
- <path fill="#664C3E" d="M10.092-106.832c-3.597,1.079-7.149,4.494-4.29,10.009c2.86,5.516,7.967,9.602,12.257,8.376
- c4.29-1.226,5.248-5.757,2.247-8.988C17.65-100.295,16.22-108.67,10.092-106.832z"/>
- <path fill="#614B3F" d="M10.218-106.538c-3.482,1.044-6.921,4.35-4.152,9.689c2.768,5.339,7.712,9.294,11.864,8.108
- c4.153-1.187,5.081-5.573,2.176-8.701C17.535-100.21,16.15-108.317,10.218-106.538z"/>
- <path fill="#5B4940" d="M10.345-106.244c-3.367,1.01-6.693,4.207-4.016,9.37c2.677,5.163,7.458,8.987,11.473,7.84
- c4.016-1.147,4.913-5.389,2.104-8.414C17.419-100.125,16.081-107.965,10.345-106.244z"/>
- <path fill="#54463F" d="M10.471-105.95c-3.252,0.976-6.464,4.063-3.878,9.049c2.585,4.987,7.203,8.681,11.081,7.573
- c3.879-1.108,4.745-5.205,2.032-8.126C17.304-100.04,16.011-107.612,10.471-105.95z"/>
- <path fill="#4D423D" d="M10.597-105.656c-3.137,0.941-6.235,3.919-3.741,8.729c2.494,4.811,6.948,8.374,10.688,7.305
- c3.742-1.069,4.577-5.021,1.96-7.839C17.189-99.955,15.941-107.259,10.597-105.656z"/>
- <path fill="#443D39" d="M10.724-105.362c-3.022,0.907-6.007,3.776-3.604,8.41c2.402,4.634,6.693,8.066,10.297,7.037
- c3.605-1.03,4.41-4.837,1.888-7.552C17.074-99.871,15.872-106.907,10.724-105.362z"/>
- <path fill="#3A3534" d="M10.85-105.068c-2.907,0.872-5.779,3.632-3.467,8.089c2.311,4.458,6.438,7.759,9.905,6.769
- c3.468-0.991,4.242-4.653,1.816-7.264C16.958-99.786,15.802-106.554,10.85-105.068z"/>
- <path fill="#252423" d="M10.976-104.774c-2.792,0.838-5.55,3.488-3.33,7.77c2.22,4.281,6.184,7.452,9.513,6.501
- c3.331-0.951,4.074-4.469,1.745-6.977C16.843-99.701,15.733-106.201,10.976-104.774z"/>
- <path d="M11.103-104.48c-2.677,0.803-5.321,3.345-3.192,7.449c2.128,4.105,5.929,7.146,9.121,6.233
- c3.193-0.912,3.906-4.285,1.673-6.689C16.728-99.616,15.663-105.849,11.103-104.48z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M6.708-59.389c-3.604,6.007-1.5,9.75,4.75,11c6.25,1.25,11.5-1,14.5-5.25c3-4.25-2-14.25-8.25-14
- S11.208-66.889,6.708-59.389z"/>
- <path fill="#82472C" d="M6.998-59.326c-3.503,5.838-1.458,9.477,4.616,10.691c6.075,1.215,11.178-0.972,14.094-5.103
- c2.916-4.131-1.944-13.851-8.019-13.607C11.614-67.102,11.372-66.616,6.998-59.326z"/>
- <path fill="#7D4930" d="M7.287-59.263c-3.401,5.67-1.416,9.203,4.484,10.383c5.9,1.18,10.855-0.944,13.687-4.956
- c2.832-4.012-1.888-13.451-7.787-13.215C11.771-66.815,11.535-66.342,7.287-59.263z"/>
- <path fill="#794B34" d="M7.577-59.2c-3.301,5.502-1.374,8.931,4.35,10.075c5.725,1.145,10.533-0.917,13.281-4.809
- c2.748-3.893-1.832-13.051-7.556-12.823C11.927-66.527,11.699-66.069,7.577-59.2z"/>
- <path fill="#754C37" d="M7.867-59.137c-3.2,5.333-1.333,8.657,4.217,9.766c5.549,1.11,10.21-0.887,12.874-4.661
- s-1.776-12.652-7.325-12.43C12.084-66.24,11.862-65.796,7.867-59.137z"/>
- <path fill="#704C3A" d="M8.156-59.074c-3.099,5.165-1.29,8.383,4.084,9.458c5.374,1.075,9.888-0.86,12.468-4.514
- c2.58-3.655-1.72-12.253-7.094-12.038S12.025-65.522,8.156-59.074z"/>
- <path fill="#6B4C3C" d="M8.446-59.011c-2.998,4.997-1.248,8.11,3.951,9.15c5.199,1.04,9.566-0.832,12.061-4.367
- c2.496-3.535-1.663-11.853-6.862-11.645S12.189-65.25,8.446-59.011z"/>
- <path fill="#664C3E" d="M8.736-58.947c-2.897,4.828-1.207,7.836,3.817,8.841c5.024,1.005,9.244-0.804,11.655-4.22
- c2.412-3.416-1.607-11.453-6.631-11.252C12.554-65.378,12.353-64.976,8.736-58.947z"/>
- <path fill="#614B3F" d="M9.026-58.885c-2.796,4.66-1.165,7.564,3.684,8.534c4.849,0.969,8.921-0.776,11.249-4.073
- c2.328-3.296-1.551-11.054-6.4-10.86C12.71-65.091,12.516-64.703,9.026-58.885z"/>
- <path fill="#5B4940" d="M9.315-58.821c-2.695,4.491-1.122,7.29,3.551,8.225c4.673,0.935,8.599-0.748,10.842-3.925
- c2.244-3.178-1.495-10.655-6.169-10.468C12.867-64.803,12.68-64.43,9.315-58.821z"/>
- <path fill="#54463F" d="M9.605-58.758c-2.594,4.322-1.08,7.017,3.418,7.917c4.498,0.9,8.277-0.72,10.436-3.778
- c2.16-3.059-1.439-10.255-5.938-10.076C13.023-64.516,12.843-64.156,9.605-58.758z"/>
- <path fill="#4D423D" d="M9.895-58.695c-2.493,4.154-1.038,6.744,3.285,7.608s7.954-0.692,10.029-3.631
- c2.075-2.939-1.383-9.856-5.707-9.683C13.18-64.229,13.007-63.883,9.895-58.695z"/>
- <path fill="#443D39" d="M10.185-58.632c-2.392,3.986-0.996,6.471,3.151,7.3c4.148,0.83,7.632-0.665,9.623-3.484
- c1.991-2.82-1.327-9.457-5.475-9.291C13.336-63.941,13.17-63.609,10.185-58.632z"/>
- <path fill="#3A3534" d="M10.474-58.569c-2.291,3.817-0.954,6.197,3.019,6.991c3.973,0.795,7.31-0.636,9.216-3.337
- c1.907-2.701-1.271-9.057-5.244-8.898C13.493-63.654,13.334-63.336,10.474-58.569z"/>
- <path fill="#252423" d="M10.764-58.506c-2.19,3.649-0.912,5.923,2.885,6.683c3.797,0.76,6.988-0.608,8.81-3.19
- c1.823-2.582-1.214-8.657-5.013-8.506C13.649-63.367,13.498-63.063,10.764-58.506z"/>
- <path d="M11.054-58.443c-2.089,3.48-0.87,5.65,2.752,6.375s6.665-0.58,8.403-3.043c1.739-2.463-1.158-8.258-4.781-8.113
- C13.806-63.08,13.661-62.79,11.054-58.443z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M40.208-149.889c-3.956,3.108-6.75,1.5-8.25,7.25s-5.5,8.25-0.25,12s6.25,9,13.75,4.5
- s10-10.75,5.5-16.25S43.708-152.639,40.208-149.889z"/>
- <path fill="#82472C" d="M40.19-149.44c-3.816,2.997-6.513,1.446-7.96,6.99s-5.306,7.954-0.241,11.569
- c5.065,3.616,6.03,8.677,13.267,4.339c7.236-4.339,9.648-10.364,5.307-15.667C46.221-147.512,43.567-152.092,40.19-149.44z"/>
- <path fill="#7D4930" d="M40.173-148.992c-3.678,2.885-6.274,1.393-7.67,6.729c-1.394,5.337-5.113,7.658-0.231,11.139
- c4.88,3.48,5.81,8.354,12.782,4.177c6.972-4.177,9.296-9.979,5.112-15.083C45.983-147.135,43.427-151.544,40.173-148.992z"/>
- <path fill="#794B34" d="M40.155-148.543c-3.538,2.774-6.037,1.338-7.379,6.469s-4.92,7.361-0.224,10.708
- c4.695,3.346,5.59,8.031,12.299,4.016c6.708-4.016,8.944-9.592,4.919-14.5S43.286-150.997,40.155-148.543z"/>
- <path fill="#754C37" d="M40.138-148.094c-3.399,2.662-5.8,1.284-7.089,6.209c-1.289,4.924-4.726,7.065-0.215,10.277
- c4.511,3.212,5.37,7.708,11.814,3.854c6.444-3.854,8.593-9.207,4.727-13.917C45.508-146.382,43.146-150.449,40.138-148.094z"/>
- <path fill="#704C3A" d="M40.12-147.646c-3.26,2.55-5.563,1.23-6.799,5.949s-4.532,6.769-0.205,9.846
- c4.326,3.077,5.149,7.384,11.33,3.692c6.181-3.692,8.241-8.82,4.532-13.333C45.271-146.004,43.005-149.902,40.12-147.646z"/>
- <path fill="#6B4C3C" d="M40.103-147.197c-3.121,2.439-5.325,1.177-6.508,5.688c-1.184,4.511-4.339,6.473-0.197,9.415
- c4.141,2.942,4.93,7.062,10.847,3.531c5.917-3.531,7.889-8.435,4.339-12.75C45.033-145.627,42.863-149.354,40.103-147.197z"/>
- <path fill="#664C3E" d="M40.085-146.748c-2.981,2.327-5.087,1.123-6.218,5.428s-4.146,6.177-0.188,8.984
- c3.957,2.808,4.71,6.738,10.363,3.37c5.652-3.37,7.537-8.049,4.145-12.167C44.795-145.251,42.723-148.807,40.085-146.748z"/>
- <path fill="#614B3F" d="M40.067-146.299c-2.843,2.216-4.85,1.069-5.928,5.168c-1.078,4.099-3.952,5.881-0.18,8.554
- s4.491,6.416,9.88,3.208c5.389-3.208,7.185-7.663,3.951-11.583S42.582-148.26,40.067-146.299z"/>
- <path fill="#5B4940" d="M40.05-145.851c-2.703,2.104-4.612,1.015-5.637,4.908c-1.026,3.892-3.759,5.584-0.172,8.123
- c3.588,2.539,4.271,6.093,9.396,3.046c5.124-3.046,6.833-7.277,3.758-11S42.441-147.712,40.05-145.851z"/>
- <path fill="#54463F" d="M40.032-145.402c-2.564,1.992-4.375,0.961-5.347,4.647c-0.973,3.686-3.565,5.289-0.162,7.692
- c3.402,2.404,4.051,5.77,8.912,2.885c4.86-2.885,6.48-6.891,3.564-10.417C44.083-144.12,42.301-147.165,40.032-145.402z"/>
- <path fill="#4D423D" d="M40.015-144.953c-2.425,1.881-4.138,0.907-5.057,4.387c-0.92,3.479-3.372,4.992-0.153,7.261
- c3.218,2.27,3.831,5.446,8.429,2.723c4.597-2.723,6.129-6.505,3.37-9.833C43.846-143.743,42.16-146.618,40.015-144.953z"/>
- <path fill="#443D39" d="M39.997-144.504c-2.286,1.77-3.9,0.854-4.767,4.127c-0.867,3.273-3.178,4.696-0.145,6.831
- c3.033,2.135,3.611,5.123,7.944,2.562s5.777-6.119,3.178-9.25S42.019-146.07,39.997-144.504z"/>
- <path fill="#3A3534" d="M39.979-144.056c-2.146,1.658-3.662,0.8-4.477,3.867c-0.814,3.066-2.984,4.4-0.136,6.4
- s3.392,4.8,7.461,2.4s5.426-5.733,2.984-8.667C43.37-142.989,41.878-145.522,39.979-144.056z"/>
- <path fill="#252423" d="M39.962-143.607c-2.008,1.546-3.425,0.746-4.186,3.606c-0.762,2.86-2.791,4.104-0.127,5.969
- c2.663,1.866,3.171,4.477,6.977,2.239c3.805-2.239,5.073-5.347,2.79-8.083C43.133-142.612,41.737-144.975,39.962-143.607z"/>
- <path d="M39.944-143.158c-1.868,1.435-3.188,0.692-3.896,3.346c-0.709,2.654-2.598,3.808-0.118,5.538
- c2.479,1.731,2.951,4.154,6.493,2.077c3.541-2.077,4.722-4.961,2.597-7.5S41.597-144.428,39.944-143.158z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M40.208-25.473c-3.956,3.108-6.75,1.5-8.25,7.25s-5.5,8.25-0.25,12s6.25,9,13.75,4.5s10-10.75,5.5-16.25
- S43.708-28.223,40.208-25.473z"/>
- <path fill="#82472C" d="M40.19-25.024c-3.816,2.997-6.513,1.447-7.96,6.99s-5.306,7.953-0.241,11.568
- c5.065,3.616,6.03,8.678,13.267,4.34c7.236-4.34,9.648-10.365,5.307-15.667C46.221-23.096,43.567-27.675,40.19-25.024z"/>
- <path fill="#7D4930" d="M40.173-24.575c-3.678,2.885-6.274,1.393-7.67,6.729c-1.394,5.337-5.113,7.657-0.231,11.139
- c4.88,3.48,5.81,8.354,12.782,4.177c6.972-4.177,9.296-9.979,5.112-15.084C45.983-22.719,43.427-27.128,40.173-24.575z"/>
- <path fill="#794B34" d="M40.155-24.126c-3.538,2.773-6.037,1.338-7.379,6.469s-4.92,7.361-0.224,10.707
- c4.695,3.347,5.59,8.031,12.299,4.016c6.708-4.016,8.944-9.592,4.919-14.5C45.745-22.342,43.286-26.581,40.155-24.126z"/>
- <path fill="#754C37" d="M40.138-23.678c-3.399,2.662-5.8,1.284-7.089,6.209s-4.726,7.065-0.215,10.276
- c4.511,3.213,5.37,7.708,11.814,3.854c6.444-3.854,8.593-9.206,4.727-13.917C45.508-21.966,43.146-26.032,40.138-23.678z"/>
- <path fill="#704C3A" d="M40.12-23.229c-3.26,2.551-5.563,1.23-6.799,5.949s-4.532,6.77-0.205,9.846
- c4.326,3.077,5.149,7.385,11.33,3.693c6.181-3.693,8.241-8.82,4.532-13.334C45.271-21.588,43.005-25.485,40.12-23.229z"/>
- <path fill="#6B4C3C" d="M40.103-22.78c-3.121,2.439-5.325,1.177-6.508,5.688c-1.184,4.511-4.339,6.473-0.197,9.415
- c4.141,2.942,4.93,7.063,10.847,3.531s7.889-8.436,4.339-12.75C45.033-21.211,42.863-24.938,40.103-22.78z"/>
- <path fill="#664C3E" d="M40.085-22.331c-2.981,2.326-5.087,1.123-6.218,5.428s-4.146,6.177-0.188,8.984
- c3.957,2.809,4.71,6.738,10.363,3.369c5.652-3.369,7.537-8.049,4.145-12.166C44.795-20.835,42.723-24.391,40.085-22.331z"/>
- <path fill="#614B3F" d="M40.067-21.883c-2.843,2.216-4.85,1.069-5.928,5.168s-3.952,5.881-0.18,8.554s4.491,6.416,9.88,3.207
- c5.389-3.207,7.185-7.662,3.951-11.582C44.558-20.457,42.582-23.843,40.067-21.883z"/>
- <path fill="#5B4940" d="M40.05-21.435c-2.703,2.104-4.612,1.016-5.637,4.908c-1.026,3.893-3.759,5.584-0.172,8.123
- c3.588,2.538,4.271,6.092,9.396,3.046c5.124-3.046,6.833-7.276,3.758-11S42.441-23.296,40.05-21.435z"/>
- <path fill="#54463F" d="M40.032-20.985c-2.564,1.992-4.375,0.961-5.347,4.647c-0.973,3.687-3.565,5.288-0.162,7.692
- c3.402,2.404,4.051,5.77,8.912,2.885c4.86-2.885,6.48-6.891,3.564-10.417C44.083-19.704,42.301-22.749,40.032-20.985z"/>
- <path fill="#4D423D" d="M40.015-20.536c-2.425,1.881-4.138,0.906-5.057,4.387c-0.92,3.479-3.372,4.992-0.153,7.262
- c3.218,2.27,3.831,5.445,8.429,2.723c4.597-2.723,6.129-6.505,3.37-9.833C43.846-19.327,42.16-22.201,40.015-20.536z"/>
- <path fill="#443D39" d="M39.997-20.088c-2.286,1.77-3.9,0.854-4.767,4.127c-0.867,3.272-3.178,4.696-0.145,6.831
- s3.611,5.123,7.944,2.561c4.333-2.561,5.777-6.119,3.178-9.25S42.019-21.653,39.997-20.088z"/>
- <path fill="#3A3534" d="M39.979-19.64c-2.146,1.658-3.662,0.801-4.477,3.867s-2.984,4.4-0.136,6.4s3.392,4.799,7.461,2.399
- s5.426-5.733,2.984-8.667C43.37-18.573,41.878-21.106,39.979-19.64z"/>
- <path fill="#252423" d="M39.962-19.19c-2.008,1.547-3.425,0.746-4.186,3.606c-0.762,2.86-2.791,4.104-0.127,5.969
- c2.663,1.866,3.171,4.478,6.977,2.239c3.805-2.239,5.073-5.348,2.79-8.084S41.737-20.559,39.962-19.19z"/>
- <path d="M39.944-18.741c-1.868,1.434-3.188,0.691-3.896,3.346c-0.709,2.654-2.598,3.808-0.118,5.538
- c2.479,1.731,2.951,4.153,6.493,2.077c3.541-2.077,4.722-4.961,2.597-7.5S41.597-20.011,39.944-18.741z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M24.708-85.389c-2.704,3.605-4.25,8.25-1.75,12s5.75,10.25,11.5,7.5s7.5-7.5,6.25-10.75
- S28.458-90.389,24.708-85.389z"/>
- <path fill="#82472C" d="M24.913-85.125c-2.625,3.5-4.125,8.008-1.698,11.648c2.427,3.64,5.581,9.949,11.162,7.28
- c5.582-2.669,7.28-7.28,6.067-10.435C39.23-79.787,28.553-89.979,24.913-85.125z"/>
- <path fill="#7D4930" d="M25.119-84.861c-2.545,3.394-4,7.766-1.647,11.296c2.353,3.53,5.413,9.648,10.825,7.06
- c5.412-2.588,7.06-7.06,5.883-10.119C39.003-79.684,28.649-89.567,25.119-84.861z"/>
- <path fill="#794B34" d="M25.324-84.597c-2.466,3.288-3.876,7.524-1.596,10.944c2.28,3.419,5.244,9.347,10.487,6.839
- c5.244-2.508,6.84-6.839,5.7-9.804C38.776-79.581,28.744-89.157,25.324-84.597z"/>
- <path fill="#754C37" d="M25.529-84.333c-2.386,3.183-3.751,7.282-1.544,10.591c2.207,3.31,5.075,9.047,10.15,6.62
- c5.075-2.427,6.62-6.62,5.517-9.488C38.549-79.479,28.839-88.746,25.529-84.333z"/>
- <path fill="#704C3A" d="M25.735-84.069c-2.307,3.077-3.626,7.04-1.493,10.239c2.133,3.2,4.907,8.747,9.813,6.399
- c4.906-2.346,6.399-6.399,5.333-9.172S28.935-88.335,25.735-84.069z"/>
- <path fill="#6B4C3C" d="M25.94-83.804c-2.228,2.97-3.501,6.797-1.442,9.887c2.06,3.089,4.738,8.445,9.475,6.179
- c4.738-2.265,6.18-6.179,5.15-8.856C38.094-79.273,29.03-87.924,25.94-83.804z"/>
- <path fill="#664C3E" d="M26.146-83.541c-2.148,2.865-3.376,6.555-1.39,9.535c1.987,2.979,4.569,8.145,9.138,5.959
- c4.568-2.185,5.959-5.959,4.966-8.542S29.125-87.513,26.146-83.541z"/>
- <path fill="#614B3F" d="M26.351-83.276c-2.069,2.759-3.252,6.313-1.339,9.183c1.913,2.869,4.4,7.844,8.8,5.739
- s5.739-5.739,4.783-8.226C37.639-79.068,29.221-87.103,26.351-83.276z"/>
- <path fill="#5B4940" d="M26.557-83.012c-1.99,2.653-3.127,6.071-1.288,8.831c1.839,2.759,4.231,7.542,8.463,5.519
- c4.23-2.024,5.519-5.519,4.6-7.911C37.411-78.965,29.316-86.692,26.557-83.012z"/>
- <path fill="#54463F" d="M26.762-82.749c-1.91,2.547-3.002,5.829-1.236,8.479c1.766,2.649,4.063,7.242,8.125,5.299
- c4.063-1.942,5.299-5.299,4.416-7.595C37.184-78.862,29.412-86.281,26.762-82.749z"/>
- <path fill="#4D423D" d="M26.967-82.484c-1.831,2.441-2.878,5.587-1.185,8.126c1.693,2.539,3.894,6.941,7.788,5.079
- c3.895-1.862,5.079-5.079,4.233-7.279C36.956-78.76,29.507-85.87,26.967-82.484z"/>
- <path fill="#443D39" d="M27.173-82.22c-1.752,2.336-2.753,5.345-1.134,7.775c1.62,2.429,3.725,6.641,7.451,4.858
- c3.725-1.781,4.858-4.858,4.049-6.964C36.729-78.657,29.603-85.459,27.173-82.22z"/>
- <path fill="#3A3534" d="M27.378-81.956c-1.672,2.23-2.628,5.103-1.083,7.423c1.546,2.318,3.557,6.34,7.113,4.638
- c3.557-1.701,4.639-4.638,3.866-6.648C36.502-78.555,29.698-85.049,27.378-81.956z"/>
- <path fill="#252423" d="M27.583-81.692c-1.593,2.124-2.503,4.861-1.031,7.07c1.473,2.209,3.388,6.039,6.776,4.418
- c3.387-1.62,4.418-4.418,3.682-6.333C36.274-78.452,29.793-84.638,27.583-81.692z"/>
- <path d="M27.789-81.428c-1.514,2.018-2.379,4.619-0.979,6.718c1.399,2.099,3.219,5.738,6.438,4.198
- c3.219-1.539,4.198-4.198,3.499-6.018C36.047-78.349,29.889-84.227,27.789-81.428z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M40.208-116.389c-0.276,1.219-3.75,4-3,6.25s9.25,5.75,12,5.25s8.5-4.75,8.75-9s1.75-7-1.25-8
- S41.458-121.889,40.208-116.389z"/>
- <path fill="#82472C" d="M40.399-116.332c-0.27,1.187-3.66,3.898-2.928,6.09c0.731,2.192,9.028,5.603,11.712,5.116
- c2.685-0.487,8.297-4.629,8.541-8.771c0.244-4.141,1.708-6.821-1.221-7.795C53.576-122.666,41.619-121.691,40.399-116.332z"/>
- <path fill="#7D4930" d="M40.592-116.274c-0.264,1.156-3.57,3.795-2.856,5.93s8.807,5.457,11.425,4.981
- c2.618-0.474,8.093-4.507,8.331-8.54c0.237-4.033,1.666-6.643-1.19-7.591S41.781-121.493,40.592-116.274z"/>
- <path fill="#794B34" d="M40.783-116.217c-0.257,1.125-3.48,3.693-2.784,5.771c0.695,2.078,8.585,5.309,11.137,4.848
- c2.553-0.462,7.89-4.386,8.121-8.311c0.232-3.924,1.625-6.463-1.16-7.386C53.313-122.218,41.943-121.295,40.783-116.217z"/>
- <path fill="#754C37" d="M40.975-116.159c-0.25,1.094-3.391,3.591-2.712,5.611c0.678,2.02,8.363,5.162,10.85,4.713
- s7.686-4.265,7.911-8.08c0.227-3.816,1.583-6.285-1.13-7.183C53.181-121.995,42.105-121.097,40.975-116.159z"/>
- <path fill="#704C3A" d="M41.166-116.102c-0.242,1.063-3.301,3.489-2.641,5.451s8.143,5.016,10.563,4.579
- c2.421-0.436,7.482-4.143,7.702-7.85c0.22-3.707,1.54-6.105-1.101-6.978C53.049-121.771,42.267-120.899,41.166-116.102z"/>
- <path fill="#6B4C3C" d="M41.358-116.044c-0.237,1.032-3.211,3.386-2.569,5.292c0.643,1.905,7.921,4.868,10.275,4.445
- c2.354-0.423,7.278-4.021,7.492-7.62c0.214-3.599,1.498-5.927-1.07-6.774C52.918-121.547,42.429-120.701,41.358-116.044z"/>
- <path fill="#664C3E" d="M41.55-115.986c-0.229,1-3.121,3.284-2.497,5.131c0.624,1.848,7.698,4.722,9.987,4.311
- c2.289-0.41,7.074-3.9,7.282-7.39s1.457-5.748-1.04-6.569S42.59-120.503,41.55-115.986z"/>
- <path fill="#614B3F" d="M41.741-115.929c-0.223,0.97-3.031,3.182-2.425,4.972s7.477,4.575,9.7,4.177
- c2.223-0.397,6.87-3.779,7.072-7.16c0.202-3.381,1.415-5.569-1.01-6.364C52.654-121.101,42.752-120.305,41.741-115.929z"/>
- <path fill="#5B4940" d="M41.933-115.872c-0.216,0.939-2.941,3.081-2.353,4.813c0.588,1.732,7.255,4.427,9.412,4.042
- s6.667-3.658,6.863-6.93s1.373-5.39-0.98-6.16C52.522-120.877,42.913-120.107,41.933-115.872z"/>
- <path fill="#54463F" d="M42.125-115.814c-0.21,0.908-2.852,2.978-2.281,4.653s7.033,4.281,9.125,3.908
- c2.091-0.372,6.463-3.536,6.653-6.7s1.331-5.211-0.95-5.956S43.075-119.909,42.125-115.814z"/>
- <path fill="#4D423D" d="M42.316-115.757c-0.203,0.876-2.762,2.876-2.209,4.493c0.552,1.618,6.812,4.134,8.837,3.774
- s6.26-3.415,6.444-6.47c0.184-3.055,1.289-5.032-0.921-5.751C52.259-120.43,43.237-119.71,42.316-115.757z"/>
- <path fill="#443D39" d="M42.508-115.699c-0.196,0.845-2.672,2.773-2.138,4.333c0.535,1.56,6.591,3.987,8.551,3.64
- c1.959-0.346,6.056-3.293,6.234-6.24c0.178-2.947,1.246-4.854-0.891-5.547C52.127-120.206,43.398-119.513,42.508-115.699z"/>
- <path fill="#3A3534" d="M42.7-115.642c-0.19,0.814-2.582,2.671-2.066,4.174c0.517,1.502,6.369,3.84,8.263,3.505
- c1.894-0.333,5.853-3.172,6.024-6.01c0.173-2.838,1.205-4.675-0.86-5.342C51.995-119.982,43.561-119.314,42.7-115.642z"/>
- <path fill="#252423" d="M42.892-115.584c-0.184,0.783-2.492,2.569-1.994,4.014c0.499,1.445,6.147,3.693,7.976,3.372
- c1.827-0.321,5.648-3.051,5.814-5.78c0.166-2.729,1.163-4.496-0.83-5.138C51.863-119.759,43.722-119.117,42.892-115.584z"/>
- <path d="M43.083-115.527c-0.177,0.752-2.402,2.467-1.922,3.854c0.48,1.387,5.926,3.546,7.688,3.237
- c1.762-0.308,5.445-2.929,5.605-5.55c0.16-2.621,1.121-4.317-0.801-4.934S43.884-118.918,43.083-115.527z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M59.208-134.139c-1.641,1.887-4,5.5,0.25,8s8,7.75,12.5,6.25c4.501-1.5,10.501-7,7.751-14.75
- S64.208-139.889,59.208-134.139z"/>
- <path fill="#82472C" d="M59.527-134.02c-1.588,1.827-3.872,5.324,0.242,7.745s7.744,7.502,12.101,6.05
- c4.357-1.452,10.165-6.776,7.504-14.279C76.711-142.006,64.368-139.586,59.527-134.02z"/>
- <path fill="#7D4930" d="M59.847-133.899c-1.536,1.766-3.744,5.148,0.234,7.489c3.979,2.34,7.489,7.255,11.701,5.851
- c4.214-1.404,9.83-6.553,7.256-13.808S64.527-139.282,59.847-133.899z"/>
- <path fill="#794B34" d="M60.166-133.78c-1.483,1.706-3.616,4.973,0.227,7.233s7.233,7.007,11.302,5.651
- c4.069-1.356,9.494-6.329,7.009-13.336C76.216-141.239,64.688-138.979,60.166-133.78z"/>
- <path fill="#754C37" d="M60.486-133.66c-1.432,1.646-3.489,4.797,0.218,6.978s6.978,6.759,10.902,5.452
- c3.926-1.309,9.159-6.105,6.761-12.866C75.969-140.855,64.847-138.675,60.486-133.66z"/>
- <path fill="#704C3A" d="M60.806-133.541c-1.379,1.585-3.361,4.622,0.21,6.723s6.722,6.512,10.503,5.251
- c3.782-1.26,8.824-5.882,6.513-12.394C75.721-140.473,65.007-138.372,60.806-133.541z"/>
- <path fill="#6B4C3C" d="M61.125-133.42c-1.326,1.525-3.233,4.446,0.202,6.467c3.436,2.021,6.467,6.264,10.104,5.052
- c3.639-1.212,8.488-5.658,6.266-11.923S65.167-138.068,61.125-133.42z"/>
- <path fill="#664C3E" d="M61.444-133.301c-1.273,1.465-3.105,4.27,0.194,6.211c3.3,1.941,6.211,6.017,9.704,4.853
- c3.494-1.165,8.153-5.435,6.018-11.452C75.226-139.706,65.326-137.765,61.444-133.301z"/>
- <path fill="#614B3F" d="M61.764-133.181c-1.222,1.404-2.978,4.094,0.187,5.956c3.163,1.861,5.955,5.77,9.306,4.653
- c3.35-1.117,7.816-5.211,5.77-10.981C74.979-139.322,65.486-137.461,61.764-133.181z"/>
- <path fill="#5B4940" d="M62.083-133.061c-1.169,1.344-2.851,3.919,0.179,5.7c3.027,1.781,5.699,5.522,8.906,4.453
- c3.206-1.069,7.481-4.988,5.521-10.51C74.73-138.939,65.646-137.158,62.083-133.061z"/>
- <path fill="#54463F" d="M62.402-132.941c-1.116,1.284-2.723,3.743,0.17,5.445c2.893,1.701,5.445,5.274,8.508,4.253
- c3.063-1.021,7.146-4.763,5.274-10.038C74.483-138.556,65.806-136.854,62.402-132.941z"/>
- <path fill="#4D423D" d="M62.723-132.821c-1.064,1.224-2.596,3.567,0.161,5.189s5.189,5.026,8.108,4.054
- c2.919-0.973,6.811-4.54,5.026-9.567C74.235-138.172,65.966-136.551,62.723-132.821z"/>
- <path fill="#443D39" d="M63.042-132.702c-1.012,1.163-2.468,3.392,0.153,4.934c2.621,1.542,4.934,4.779,7.709,3.854
- c2.775-0.925,6.475-4.316,4.779-9.096C73.988-137.789,66.125-136.248,63.042-132.702z"/>
- <path fill="#3A3534" d="M63.361-132.582c-0.96,1.103-2.34,3.216,0.146,4.678c2.485,1.461,4.678,4.531,7.31,3.654
- c2.631-0.877,6.14-4.093,4.531-8.625C73.74-137.406,66.285-135.944,63.361-132.582z"/>
- <path fill="#252423" d="M63.681-132.462c-0.907,1.042-2.212,3.04,0.138,4.422c2.35,1.382,4.423,4.284,6.91,3.455
- s5.804-3.869,4.284-8.154C73.493-137.022,66.444-135.641,63.681-132.462z"/>
- <path d="M64-132.342c-0.854,0.982-2.084,2.865,0.13,4.167c2.214,1.302,4.167,4.036,6.511,3.255s5.469-3.646,4.036-7.683
- C73.245-136.639,66.604-135.337,64-132.342z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M50.458-82.389c-3.844,4.165-5.75,5.5-5,11.25s-0.75,10.25,8.25,10.5s15.25-1.75,15.25-9.25
- S56.458-88.889,50.458-82.389z"/>
- <path fill="#82472C" d="M50.592-82.118c-3.74,4.054-5.596,5.354-4.865,10.952c0.729,5.598-0.73,9.979,8.028,10.222
- c8.759,0.243,14.841-1.704,14.841-9.005S56.431-88.446,50.592-82.118z"/>
- <path fill="#7D4930" d="M50.727-81.847c-3.638,3.945-5.441,5.209-4.731,10.655s-0.71,9.708,7.807,9.945
- c8.518,0.237,14.432-1.658,14.432-8.761S56.404-88.003,50.727-81.847z"/>
- <path fill="#794B34" d="M50.86-81.576c-3.534,3.834-5.286,5.063-4.597,10.357c0.689,5.294-0.689,9.437,7.586,9.667
- c8.274,0.23,14.021-1.611,14.021-8.516S56.377-87.56,50.86-81.576z"/>
- <path fill="#754C37" d="M50.995-81.304c-3.431,3.724-5.132,4.917-4.463,10.059s-0.669,9.166,7.363,9.389
- c8.034,0.224,13.612-1.564,13.612-8.271C67.508-76.833,56.351-87.117,50.995-81.304z"/>
- <path fill="#704C3A" d="M51.13-81.034c-3.328,3.614-4.979,4.773-4.329,9.762c0.649,4.99-0.649,8.895,7.143,9.111
- c7.791,0.217,13.202-1.518,13.202-8.026C67.146-76.695,56.324-86.673,51.13-81.034z"/>
- <path fill="#6B4C3C" d="M51.264-80.762c-3.225,3.504-4.824,4.627-4.194,9.464c0.629,4.838-0.63,8.624,6.921,8.833
- c7.55,0.21,12.793-1.472,12.793-7.781C66.783-76.556,56.297-86.23,51.264-80.762z"/>
- <path fill="#664C3E" d="M51.397-80.491c-3.121,3.393-4.669,4.481-4.06,9.166c0.608,4.686-0.609,8.352,6.699,8.556
- c7.309,0.204,12.383-1.426,12.383-7.537C66.42-76.417,56.271-85.788,51.397-80.491z"/>
- <path fill="#614B3F" d="M51.532-80.22c-3.019,3.283-4.515,4.336-3.926,8.869c0.589,4.533-0.589,8.081,6.478,8.278
- c7.066,0.197,11.974-1.379,11.974-7.292C66.058-76.278,56.243-85.344,51.532-80.22z"/>
- <path fill="#5B4940" d="M51.666-79.949c-2.915,3.173-4.36,4.19-3.791,8.571c0.568,4.381-0.569,7.81,6.256,8
- c6.825,0.19,11.564-1.333,11.564-7.047S56.217-84.901,51.666-79.949z"/>
- <path fill="#54463F" d="M51.801-79.678c-2.813,3.063-4.206,4.045-3.657,8.273c0.548,4.229-0.549,7.539,6.034,7.723
- c6.584,0.184,11.155-1.287,11.155-6.803C65.333-76,56.189-84.458,51.801-79.678z"/>
- <path fill="#4D423D" d="M51.935-79.406c-2.709,2.953-4.051,3.899-3.522,7.976c0.528,4.077-0.528,7.268,5.813,7.445
- c6.342,0.177,10.746-1.241,10.746-6.558C64.971-75.862,56.163-84.015,51.935-79.406z"/>
- <path fill="#443D39" d="M52.069-79.135c-2.605,2.842-3.897,3.754-3.389,7.678c0.508,3.925-0.509,6.997,5.592,7.167
- c6.1,0.17,10.336-1.194,10.336-6.313C64.608-75.723,56.136-83.572,52.069-79.135z"/>
- <path fill="#3A3534" d="M52.203-78.864c-2.502,2.732-3.742,3.608-3.254,7.381c0.487,3.772-0.488,6.726,5.37,6.889
- s9.926-1.148,9.926-6.068C64.245-75.584,56.109-83.129,52.203-78.864z"/>
- <path fill="#252423" d="M52.338-78.593c-2.399,2.622-3.589,3.463-3.12,7.083c0.468,3.621-0.469,6.455,5.148,6.612
- c5.616,0.157,9.517-1.102,9.517-5.824C63.883-75.445,56.082-82.686,52.338-78.593z"/>
- <path d="M52.472-78.322c-2.296,2.512-3.434,3.317-2.985,6.785c0.447,3.469-0.448,6.184,4.927,6.334s9.107-1.056,9.107-5.579
- C63.521-75.306,56.056-82.243,52.472-78.322z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M32.708-60.639c-1.63,1.358-4.5,3.75-4.25,8.5c0.25,4.75-3.25,7,2,9.25s7.25,4,12,2.5
- s8.25-4.75,8.5-7.25C51.208-50.139,40.208-66.889,32.708-60.639z"/>
- <path fill="#82472C" d="M32.913-60.506c-1.581,1.339-4.364,3.696-4.122,8.378c0.243,4.681-3.151,6.898,1.939,9.115
- c5.091,2.218,7.03,3.942,11.637,2.464c4.605-1.479,8-4.681,8.242-7.146C50.852-50.158,40.186-66.666,32.913-60.506z"/>
- <path fill="#7D4930" d="M33.117-60.372c-1.531,1.319-4.228,3.642-3.993,8.254c0.235,4.613-3.053,6.797,1.879,8.982
- c4.932,2.186,6.811,3.885,11.273,2.429c4.462-1.457,7.75-4.613,7.984-7.041C50.496-50.175,40.163-66.441,33.117-60.372z"/>
- <path fill="#794B34" d="M33.321-60.238c-1.481,1.299-4.09,3.587-3.863,8.132c0.228,4.544-2.955,6.696,1.818,8.849
- c4.772,2.152,6.591,3.827,10.909,2.392c4.318-1.435,7.5-4.544,7.727-6.936C50.14-50.193,40.14-66.218,33.321-60.238z"/>
- <path fill="#754C37" d="M33.526-60.105c-1.433,1.28-3.955,3.533-3.735,8.009c0.22,4.476-2.856,6.595,1.758,8.715
- c4.614,2.12,6.372,3.77,10.546,2.355c4.174-1.412,7.25-4.476,7.469-6.831C49.784-50.211,40.117-65.993,33.526-60.105z"/>
- <path fill="#704C3A" d="M33.73-59.971c-1.382,1.26-3.818,3.479-3.606,7.887c0.212,4.407-2.757,6.494,1.697,8.581
- c4.455,2.088,6.152,3.712,10.183,2.32s7-4.407,7.212-6.727S40.095-65.77,33.73-59.971z"/>
- <path fill="#6B4C3C" d="M33.936-59.838c-1.334,1.241-3.682,3.425-3.478,7.764c0.205,4.338-2.659,6.394,1.637,8.448
- c4.295,2.056,5.932,3.653,9.818,2.283c3.886-1.369,6.75-4.338,6.954-6.622C49.072-50.247,40.072-65.546,33.936-59.838z"/>
- <path fill="#664C3E" d="M34.14-59.704c-1.284,1.221-3.545,3.371-3.349,7.641c0.198,4.269-2.56,6.292,1.576,8.314
- c4.137,2.022,5.712,3.597,9.454,2.247c3.743-1.348,6.5-4.27,6.697-6.517S40.049-65.322,34.14-59.704z"/>
- <path fill="#614B3F" d="M34.345-59.57c-1.235,1.201-3.409,3.316-3.22,7.518c0.19,4.201-2.462,6.191,1.515,8.18
- c3.978,1.99,5.493,3.539,9.092,2.212c3.598-1.326,6.249-4.201,6.438-6.413C48.359-50.284,40.026-65.098,34.345-59.57z"/>
- <path fill="#5B4940" d="M34.549-59.437c-1.185,1.182-3.272,3.263-3.091,7.396c0.182,4.132-2.364,6.09,1.454,8.046
- c3.819,1.959,5.273,3.481,8.728,2.176c3.455-1.305,6.001-4.132,6.182-6.308C48.004-50.302,40.004-64.874,34.549-59.437z"/>
- <path fill="#54463F" d="M34.754-59.303c-1.136,1.162-3.137,3.208-2.963,7.273c0.175,4.063-2.265,5.988,1.395,7.913
- c3.659,1.926,5.053,3.423,8.363,2.139c3.311-1.282,5.75-4.063,5.924-6.203C47.647-50.32,39.98-64.65,34.754-59.303z"/>
- <path fill="#4D423D" d="M34.958-59.17c-1.086,1.143-3,3.154-2.833,7.15c0.167,3.995-2.167,5.888,1.333,7.779
- c3.5,1.894,4.834,3.365,8,2.104c3.167-1.261,5.5-3.995,5.666-6.099C47.292-50.337,39.958-64.426,34.958-59.17z"/>
- <path fill="#443D39" d="M35.163-59.036c-1.037,1.123-2.863,3.1-2.705,7.027c0.159,3.927-2.068,5.786,1.272,7.646
- c3.342,1.861,4.614,3.308,7.637,2.067c3.022-1.239,5.25-3.927,5.409-5.994C46.936-50.355,39.936-64.203,35.163-59.036z"/>
- <path fill="#3A3534" d="M35.367-58.902c-0.987,1.103-2.727,3.046-2.576,6.905c0.152,3.858-1.969,5.685,1.212,7.512
- c3.183,1.828,4.395,3.25,7.273,2.03c2.879-1.217,5-3.857,5.151-5.889C46.579-50.374,39.913-63.979,35.367-58.902z"/>
- <path fill="#252423" d="M35.572-58.769c-0.938,1.083-2.591,2.992-2.447,6.782c0.144,3.79-1.871,5.583,1.151,7.378
- c3.023,1.796,4.175,3.192,6.909,1.995c2.734-1.196,4.75-3.79,4.894-5.785C46.224-50.392,39.89-63.755,35.572-58.769z"/>
- <path d="M35.776-58.635c-0.889,1.063-2.454,2.938-2.318,6.659c0.137,3.721-1.772,5.483,1.091,7.245
- c2.864,1.764,3.955,3.135,6.546,1.959c2.591-1.174,4.5-3.721,4.636-5.68C45.867-50.41,39.867-63.531,35.776-58.635z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M126.959-136.639c0.775-0.155,4.5-5,4.5-5s1.25-8,0-9.25s-9-7.5-12.25-6s-5.75,10-5.25,14.5
- S118.209-134.889,126.959-136.639z"/>
- <path fill="#82472C" d="M126.847-136.883c0.756-0.151,4.388-4.872,4.388-4.872s1.218-7.794,0-9.012
- c-1.219-1.218-8.775-7.307-11.944-5.846s-5.605,9.743-5.119,14.127C114.659-138.102,118.315-135.178,126.847-136.883z"/>
- <path fill="#7D4930" d="M126.734-137.128c0.736-0.147,4.274-4.743,4.274-4.743s1.188-7.588,0-8.774
- c-1.188-1.186-8.55-7.114-11.638-5.691c-3.087,1.423-5.462,9.486-4.987,13.754C114.859-138.313,118.421-135.468,126.734-137.128
- z"/>
- <path fill="#794B34" d="M126.621-137.372c0.718-0.144,4.163-4.614,4.163-4.614s1.156-7.383,0-8.536
- c-1.156-1.154-8.325-6.921-11.331-5.538c-3.007,1.385-5.319,9.229-4.856,13.382
- C115.059-138.525,118.527-135.757,126.621-137.372z"/>
- <path fill="#754C37" d="M126.509-137.616c0.698-0.14,4.05-4.486,4.05-4.486s1.125-7.177,0-8.298
- c-1.125-1.122-8.1-6.729-11.025-5.383c-2.924,1.345-5.175,8.971-4.725,13.008S118.634-136.046,126.509-137.616z"/>
- <path fill="#704C3A" d="M126.396-137.86c0.679-0.136,3.938-4.357,3.938-4.357s1.094-6.971,0-8.061s-7.875-6.536-10.719-5.229
- s-5.031,8.714-4.594,12.635S118.74-136.336,126.396-137.86z"/>
- <path fill="#6B4C3C" d="M126.284-138.104c0.659-0.132,3.825-4.229,3.825-4.229s1.062-6.766,0-7.823
- c-1.063-1.057-7.65-6.343-10.413-5.075c-2.762,1.269-4.887,8.457-4.462,12.263S118.846-136.625,126.284-138.104z"/>
- <path fill="#664C3E" d="M126.172-138.349c0.64-0.127,3.712-4.1,3.712-4.1s1.031-6.56,0-7.585
- c-1.031-1.025-7.425-6.15-10.106-4.92c-2.681,1.23-4.743,8.2-4.331,11.89C115.858-139.374,118.952-136.914,126.172-138.349z"/>
- <path fill="#614B3F" d="M126.059-138.593c0.621-0.124,3.601-3.972,3.601-3.972s0.999-6.354,0-7.347
- c-1.001-0.993-7.2-5.957-9.801-4.766c-2.6,1.191-4.6,7.943-4.199,11.517C116.059-139.586,119.059-137.204,126.059-138.593z"/>
- <path fill="#5B4940" d="M125.946-138.837c0.602-0.12,3.487-3.843,3.487-3.843s0.969-6.148,0-7.109
- c-0.969-0.96-6.975-5.764-9.494-4.611c-2.518,1.153-4.455,7.686-4.068,11.145C116.259-139.798,119.165-137.493,125.946-138.837z
- "/>
- <path fill="#54463F" d="M125.834-139.082c0.581-0.115,3.375-3.714,3.375-3.714s0.937-5.943,0-6.872
- c-0.938-0.928-6.75-5.571-9.188-4.457c-2.437,1.114-4.312,7.428-3.937,10.771C116.459-140.011,119.271-137.782,125.834-139.082z
- "/>
- <path fill="#4D423D" d="M125.722-139.326c0.562-0.111,3.263-3.586,3.263-3.586s0.905-5.737,0-6.634
- c-0.907-0.896-6.525-5.378-8.882-4.302c-2.356,1.075-4.169,7.171-3.806,10.398C116.659-140.223,119.377-138.071,125.722-139.326
- z"/>
- <path fill="#443D39" d="M125.609-139.57c0.542-0.108,3.149-3.458,3.149-3.458s0.874-5.531,0-6.396
- c-0.876-0.864-6.3-5.186-8.575-4.148c-2.274,1.037-4.024,6.914-3.675,10.025C116.859-140.435,119.483-138.361,125.609-139.57z"
- />
- <path fill="#3A3534" d="M125.496-139.815c0.523-0.104,3.038-3.329,3.038-3.329s0.843-5.326,0-6.158
- c-0.845-0.832-6.075-4.993-8.27-3.994c-2.193,0.999-3.881,6.657-3.543,9.653C117.059-140.647,119.589-138.65,125.496-139.815z"
- />
- <path fill="#252423" d="M125.384-140.059c0.504-0.1,2.925-3.2,2.925-3.2s0.812-5.12,0-5.92c-0.813-0.8-5.85-4.8-7.963-3.84
- c-2.111,0.96-3.736,6.399-3.412,9.28C117.259-140.859,119.695-138.939,125.384-140.059z"/>
- <path d="M125.271-140.303c0.484-0.096,2.813-3.072,2.813-3.072s0.78-4.914,0-5.682c-0.782-0.768-5.625-4.607-7.657-3.686
- c-2.03,0.921-3.593,6.143-3.28,8.907C117.459-141.071,119.802-139.229,125.271-140.303z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M95.809-126.989c-2.319,1.987-2.802,11.8,1.198,14.2s5.802,3,8.802,0.2c3-2.8,6.198-8.6,1.198-12.6
- S97.209-128.189,95.809-126.989z"/>
- <path fill="#82472C" d="M95.961-126.752c-2.253,1.92-2.722,11.407,1.165,13.727c3.887,2.32,5.638,2.9,8.552,0.193
- c2.916-2.707,6.023-8.313,1.165-12.18S97.322-127.912,95.961-126.752z"/>
- <path fill="#7D4930" d="M96.114-126.516c-2.188,1.855-2.643,11.014,1.131,13.254c3.773,2.24,5.473,2.8,8.303,0.186
- c2.83-2.613,5.848-8.026,1.131-11.759C101.962-128.569,97.436-127.636,96.114-126.516z"/>
- <path fill="#794B34" d="M96.268-126.279c-2.122,1.788-2.563,10.621,1.097,12.78c3.66,2.16,5.309,2.7,8.053,0.18
- c2.745-2.52,5.672-7.74,1.098-11.339C101.939-128.259,97.549-127.359,96.268-126.279z"/>
- <path fill="#754C37" d="M96.42-126.042c-2.055,1.722-2.483,10.227,1.063,12.307s5.144,2.6,7.804,0.173s5.496-7.453,1.063-10.92
- C101.917-127.949,97.662-127.083,96.42-126.042z"/>
- <path fill="#704C3A" d="M96.573-125.806c-1.989,1.656-2.404,9.834,1.029,11.833c3.434,2,4.979,2.5,7.555,0.167
- c2.574-2.333,5.32-7.166,1.028-10.5S97.775-126.806,96.573-125.806z"/>
- <path fill="#6B4C3C" d="M96.727-125.569c-1.924,1.59-2.325,9.44,0.995,11.36c3.319,1.92,4.814,2.4,7.305,0.16
- c2.489-2.24,5.145-6.879,0.995-10.08C101.871-127.329,97.889-126.529,96.727-125.569z"/>
- <path fill="#664C3E" d="M96.879-125.333c-1.857,1.523-2.245,9.047,0.962,10.887c3.206,1.84,4.65,2.3,7.055,0.153
- c2.405-2.146,4.97-6.593,0.962-9.66C101.849-127.019,98.002-126.252,96.879-125.333z"/>
- <path fill="#614B3F" d="M97.032-125.096c-1.792,1.457-2.166,8.653,0.928,10.413c3.094,1.76,4.485,2.2,6.806,0.146
- c2.319-2.053,4.794-6.306,0.928-9.24C101.826-126.709,98.114-125.976,97.032-125.096z"/>
- <path fill="#5B4940" d="M97.185-124.859c-1.726,1.391-2.086,8.26,0.895,9.94c2.979,1.68,4.321,2.1,6.556,0.14
- c2.235-1.96,4.619-6.02,0.894-8.82C101.804-126.399,98.228-125.699,97.185-124.859z"/>
- <path fill="#54463F" d="M97.338-124.623c-1.66,1.325-2.007,7.867,0.859,9.466c2.867,1.601,4.157,2,6.308,0.134
- c2.149-1.867,4.442-5.733,0.859-8.4S98.341-125.422,97.338-124.623z"/>
- <path fill="#4D423D" d="M97.491-124.386c-1.595,1.258-1.928,7.474,0.825,8.993c2.754,1.52,3.993,1.9,6.058,0.126
- c2.064-1.773,4.268-5.446,0.826-7.979C101.758-125.779,98.454-125.146,97.491-124.386z"/>
- <path fill="#443D39" d="M97.644-124.149c-1.528,1.192-1.848,7.08,0.792,8.52c2.641,1.44,3.828,1.8,5.809,0.12
- c1.979-1.68,4.092-5.16,0.792-7.56C101.735-125.469,98.567-124.869,97.644-124.149z"/>
- <path fill="#3A3534" d="M97.797-123.913c-1.463,1.126-1.769,6.687,0.758,8.046c2.527,1.36,3.664,1.7,5.559,0.114
- c1.895-1.587,3.917-4.873,0.758-7.14C101.713-125.159,98.681-124.592,97.797-123.913z"/>
- <path fill="#252423" d="M97.949-123.676c-1.396,1.06-1.688,6.293,0.725,7.573c2.414,1.28,3.499,1.6,5.31,0.106
- c1.81-1.493,3.74-4.586,0.724-6.72S98.794-124.316,97.949-123.676z"/>
- <path d="M98.103-123.439c-1.331,0.993-1.609,5.9,0.69,7.1c2.301,1.2,3.335,1.5,5.06,0.1s3.565-4.3,0.69-6.3
- S98.907-124.039,98.103-123.439z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M66.208-153.389c-3.488,2.415-2.75,8.25-1.25,9.5s5.25,4,10,2.25c4.751-1.75,10.001-4,10.751-7.75
- s0.5-6.25-4-7.75S69.458-155.639,66.208-153.389z"/>
- <path fill="#82472C" d="M66.411-153.261c-3.414,2.338-2.692,7.986-1.224,9.196c1.468,1.21,5.138,3.873,9.786,2.179
- c4.65-1.694,9.788-3.873,10.521-7.503c0.734-3.63,0.489-6.05-3.914-7.502C77.177-158.344,69.591-155.44,66.411-153.261z"/>
- <path fill="#7D4930" d="M66.613-153.134c-3.34,2.261-2.633,7.724-1.196,8.895c1.436,1.17,5.025,3.745,9.573,2.106
- s9.574-3.745,10.292-7.256s0.479-5.852-3.829-7.256C77.145-158.049,69.725-155.241,66.613-153.134z"/>
- <path fill="#794B34" d="M66.816-153.006c-3.266,2.184-2.574,7.46-1.17,8.591c1.403,1.13,4.913,3.618,9.359,2.035
- c4.447-1.583,9.36-3.618,10.063-7.009c0.702-3.392,0.468-5.652-3.743-7.008C77.113-157.754,69.858-155.042,66.816-153.006z"/>
- <path fill="#754C37" d="M67.019-152.879c-3.19,2.107-2.515,7.198-1.144,8.289c1.372,1.09,4.802,3.489,9.147,1.963
- c4.345-1.527,9.146-3.49,9.833-6.762c0.687-3.271,0.457-5.453-3.658-6.762C77.081-157.459,69.991-154.842,67.019-152.879z"/>
- <path fill="#704C3A" d="M67.222-152.751c-3.116,2.03-2.457,6.935-1.117,7.985c1.34,1.051,4.69,3.363,8.934,1.891
- c4.244-1.471,8.934-3.362,9.604-6.514c0.671-3.152,0.447-5.253-3.572-6.514C77.049-157.165,70.125-154.643,67.222-152.751z"/>
- <path fill="#6B4C3C" d="M67.424-152.624c-3.042,1.953-2.398,6.672-1.09,7.683c1.309,1.011,4.578,3.235,8.721,1.82
- c4.142-1.416,8.72-3.235,9.373-6.268c0.655-3.033,0.437-5.055-3.486-6.268C77.017-156.87,70.258-154.444,67.424-152.624z"/>
- <path fill="#664C3E" d="M67.627-152.496c-2.968,1.876-2.34,6.408-1.063,7.379s4.466,3.107,8.507,1.748
- c4.041-1.36,8.507-3.107,9.145-6.021c0.639-2.913,0.426-4.855-3.401-6.02C76.984-156.575,70.392-154.244,67.627-152.496z"/>
- <path fill="#614B3F" d="M67.829-152.369c-2.893,1.799-2.28,6.146-1.036,7.077s4.354,2.979,8.293,1.676s8.294-2.979,8.915-5.773
- c0.623-2.793,0.415-4.656-3.315-5.773C76.952-156.28,70.524-154.045,67.829-152.369z"/>
- <path fill="#5B4940" d="M68.032-152.241c-2.818,1.722-2.223,5.882-1.01,6.774c1.212,0.891,4.241,2.852,8.08,1.604
- c3.838-1.248,8.08-2.852,8.686-5.526c0.606-2.674,0.404-4.457-3.23-5.526C76.92-155.985,70.658-153.846,68.032-152.241z"/>
- <path fill="#54463F" d="M68.234-152.114c-2.744,1.645-2.163,5.62-0.982,6.471c1.18,0.852,4.129,2.725,7.866,1.533
- c3.736-1.192,7.867-2.725,8.456-5.279c0.591-2.554,0.394-4.257-3.146-5.279C76.888-155.69,70.791-153.646,68.234-152.114z"/>
- <path fill="#4D423D" d="M68.438-151.986c-2.67,1.568-2.104,5.356-0.957,6.168c1.148,0.812,4.019,2.597,7.653,1.461
- c3.636-1.136,7.654-2.597,8.227-5.032c0.575-2.435,0.384-4.058-3.06-5.032C76.856-155.395,70.925-153.447,68.438-151.986z"/>
- <path fill="#443D39" d="M68.64-151.859c-2.595,1.491-2.046,5.093-0.93,5.865s3.906,2.47,7.44,1.389
- c3.533-1.081,7.439-2.469,7.997-4.785c0.56-2.315,0.372-3.858-2.975-4.785C76.824-155.1,71.058-153.248,68.64-151.859z"/>
- <path fill="#3A3534" d="M68.843-151.731c-2.521,1.414-1.987,4.83-0.903,5.562c1.084,0.732,3.794,2.342,7.227,1.317
- s7.227-2.342,7.768-4.538c0.544-2.196,0.362-3.659-2.889-4.538C76.792-154.805,71.191-153.048,68.843-151.731z"/>
- <path fill="#252423" d="M69.045-151.604c-2.446,1.337-1.929,4.567-0.876,5.259c1.052,0.692,3.682,2.214,7.014,1.246
- c3.33-0.969,7.013-2.214,7.538-4.291c0.527-2.076,0.351-3.46-2.804-4.291C76.76-154.51,71.324-152.849,69.045-151.604z"/>
- <path d="M69.248-151.476c-2.372,1.26-1.87,4.304-0.85,4.957c1.02,0.652,3.569,2.087,6.8,1.174
- c3.229-0.913,6.8-2.087,7.309-4.043c0.512-1.957,0.341-3.261-2.718-4.043C76.728-154.215,71.458-152.65,69.248-151.476z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M96.459-153.639c-1.636,1.718-5.25,3.25-5.75,5.75s-1,6.75,3.25,9s7.5,9.25,13.75,6s4-9.25,4-11.5
- S106.209-163.889,96.459-153.639z"/>
- <path fill="#82472C" d="M96.638-153.406c-1.585,1.675-5.087,3.168-5.571,5.605c-0.484,2.437-0.969,6.58,3.149,8.773
- s7.267,9.017,13.322,5.849c6.055-3.168,3.876-9.017,3.876-11.21S106.084-163.398,96.638-153.406z"/>
- <path fill="#7D4930" d="M96.816-153.173c-1.534,1.631-4.923,3.086-5.392,5.46c-0.469,2.375-0.938,6.41,3.048,8.547
- c3.985,2.136,7.033,8.784,12.894,5.697c5.861-3.086,3.752-8.784,3.752-10.92S105.96-162.906,96.816-153.173z"/>
- <path fill="#794B34" d="M96.996-152.94c-1.483,1.588-4.761,3.004-5.214,5.315s-0.907,6.24,2.946,8.319
- c3.854,2.08,6.801,8.551,12.467,5.546c5.667-3.004,3.627-8.55,3.627-10.63C110.822-146.469,105.835-162.415,96.996-152.94z"/>
- <path fill="#754C37" d="M97.175-152.707c-1.433,1.545-4.597,2.922-5.034,5.17c-0.438,2.248-0.877,6.07,2.845,8.093
- c3.722,2.023,6.566,8.317,12.039,5.395c5.472-2.922,3.502-8.317,3.502-10.34S105.711-161.923,97.175-152.707z"/>
- <path fill="#704C3A" d="M97.354-152.474c-1.382,1.501-4.434,2.841-4.855,5.025c-0.423,2.185-0.846,5.899,2.744,7.866
- c3.59,1.966,6.333,8.084,11.611,5.244c5.277-2.84,3.378-8.084,3.378-10.051C110.231-146.355,105.587-161.432,97.354-152.474z"/>
- <path fill="#6B4C3C" d="M97.532-152.24c-1.331,1.458-4.27,2.759-4.677,4.88c-0.406,2.122-0.813,5.729,2.644,7.639
- s6.1,7.851,11.184,5.093c5.082-2.759,3.253-7.852,3.253-9.761S105.462-160.94,97.532-152.24z"/>
- <path fill="#664C3E" d="M97.712-152.007c-1.281,1.415-4.107,2.677-4.498,4.735c-0.392,2.059-0.783,5.56,2.542,7.413
- c3.324,1.853,5.866,7.618,10.756,4.941c4.888-2.677,3.128-7.618,3.128-9.471S105.338-160.449,97.712-152.007z"/>
- <path fill="#614B3F" d="M97.891-151.774c-1.229,1.372-3.944,2.595-4.319,4.591c-0.376,1.996-0.753,5.389,2.44,7.185
- s5.634,7.385,10.328,4.79c4.693-2.595,3.005-7.385,3.005-9.181S105.213-159.958,97.891-151.774z"/>
- <path fill="#5B4940" d="M98.069-151.541c-1.179,1.328-3.78,2.513-4.14,4.446c-0.361,1.933-0.722,5.219,2.339,6.958
- s5.4,7.152,9.9,4.639c4.499-2.513,2.88-7.152,2.88-8.892S105.089-159.466,98.069-151.541z"/>
- <path fill="#54463F" d="M98.248-151.308c-1.128,1.285-3.617,2.431-3.961,4.301c-0.345,1.87-0.69,5.049,2.238,6.731
- c2.929,1.683,5.167,6.918,9.473,4.488c4.304-2.431,2.755-6.918,2.755-8.602S104.964-158.975,98.248-151.308z"/>
- <path fill="#4D423D" d="M98.427-151.075c-1.077,1.242-3.454,2.349-3.782,4.156c-0.329,1.807-0.659,4.879,2.138,6.505
- c2.796,1.626,4.934,6.685,9.045,4.336c4.109-2.349,2.631-6.685,2.631-8.312C108.458-146.015,104.84-158.483,98.427-151.075z"/>
- <path fill="#443D39" d="M98.605-150.841c-1.026,1.198-3.29,2.267-3.603,4.011c-0.314,1.744-0.629,4.708,2.036,6.278
- c2.664,1.57,4.699,6.453,8.617,4.186c3.914-2.267,2.506-6.453,2.506-8.022S104.715-157.992,98.605-150.841z"/>
- <path fill="#3A3534" d="M98.785-150.608c-0.976,1.155-3.128,2.186-3.425,3.866c-0.299,1.681-0.598,4.538,1.935,6.051
- c2.532,1.513,4.467,6.219,8.189,4.034c3.721-2.185,2.382-6.219,2.382-7.732S104.591-157.5,98.785-150.608z"/>
- <path fill="#252423" d="M98.964-150.375c-0.925,1.111-2.964,2.103-3.245,3.721c-0.283,1.618-0.567,4.369,1.833,5.825
- s4.233,5.986,7.762,3.883c3.525-2.104,2.258-5.986,2.258-7.442S104.466-157.009,98.964-150.375z"/>
- <path d="M99.143-150.142c-0.874,1.068-2.801,2.021-3.066,3.576c-0.268,1.555-0.536,4.198,1.732,5.598
- c2.268,1.399,4,5.753,7.334,3.731c3.331-2.021,2.133-5.753,2.133-7.152S104.342-156.517,99.143-150.142z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M126.959-12.223c0.775-0.155,4.5-5,4.5-5s1.25-8,0-9.25s-9-7.5-12.25-6s-5.75,10-5.25,14.5
- S118.209-10.473,126.959-12.223z"/>
- <path fill="#82472C" d="M126.847-12.467c0.756-0.151,4.388-4.872,4.388-4.872s1.218-7.793,0-9.012
- c-1.219-1.218-8.775-7.307-11.944-5.846s-5.605,9.742-5.119,14.127C114.659-13.685,118.315-10.762,126.847-12.467z"/>
- <path fill="#7D4930" d="M126.734-12.712c0.736-0.146,4.274-4.742,4.274-4.742s1.188-7.588,0-8.774
- c-1.188-1.186-8.55-7.114-11.638-5.691c-3.087,1.423-5.462,9.485-4.987,13.755C114.859-13.896,118.421-11.052,126.734-12.712z"
- />
- <path fill="#794B34" d="M126.621-12.956c0.718-0.143,4.163-4.613,4.163-4.613s1.156-7.383,0-8.537
- c-1.156-1.153-8.325-6.921-11.331-5.537c-3.007,1.385-5.319,9.229-4.856,13.382C115.059-14.108,118.527-11.341,126.621-12.956z"
- />
- <path fill="#754C37" d="M126.509-13.2c0.698-0.139,4.05-4.485,4.05-4.485s1.125-7.177,0-8.298
- c-1.125-1.122-8.1-6.729-11.025-5.383c-2.924,1.345-5.175,8.971-4.725,13.008S118.634-11.63,126.509-13.2z"/>
- <path fill="#704C3A" d="M126.396-13.444c0.679-0.135,3.938-4.357,3.938-4.357s1.094-6.971,0-8.061
- c-1.094-1.089-7.875-6.535-10.719-5.229c-2.844,1.308-5.031,8.715-4.594,12.636S118.74-11.919,126.396-13.444z"/>
- <path fill="#6B4C3C" d="M126.284-13.688c0.659-0.131,3.825-4.229,3.825-4.229s1.062-6.766,0-7.822
- c-1.063-1.058-7.65-6.344-10.413-5.075c-2.762,1.269-4.887,8.457-4.462,12.263C115.659-14.745,118.846-12.208,126.284-13.688z"
- />
- <path fill="#664C3E" d="M126.172-13.933c0.64-0.127,3.712-4.1,3.712-4.1s1.031-6.561,0-7.586
- c-1.031-1.024-7.425-6.149-10.106-4.92c-2.681,1.23-4.743,8.2-4.331,11.891C115.858-14.958,118.952-12.497,126.172-13.933z"/>
- <path fill="#614B3F" d="M126.059-14.177c0.621-0.123,3.601-3.972,3.601-3.972s0.999-6.354,0-7.347
- c-1.001-0.993-7.2-5.957-9.801-4.766c-2.6,1.191-4.6,7.942-4.199,11.517C116.059-15.17,119.059-12.787,126.059-14.177z"/>
- <path fill="#5B4940" d="M125.946-14.421c0.602-0.119,3.487-3.844,3.487-3.844s0.969-6.148,0-7.109
- c-0.969-0.96-6.975-5.764-9.494-4.611c-2.518,1.153-4.455,7.686-4.068,11.145C116.259-15.382,119.165-13.076,125.946-14.421z"/>
- <path fill="#54463F" d="M125.834-14.665c0.581-0.115,3.375-3.715,3.375-3.715s0.937-5.943,0-6.871
- c-0.938-0.929-6.75-5.572-9.188-4.457c-2.437,1.113-4.312,7.428-3.937,10.771C116.459-15.595,119.271-13.366,125.834-14.665z"/>
- <path fill="#4D423D" d="M125.722-14.909c0.562-0.111,3.263-3.586,3.263-3.586s0.905-5.737,0-6.635
- c-0.907-0.896-6.525-5.378-8.882-4.302c-2.356,1.075-4.169,7.171-3.806,10.398C116.659-15.806,119.377-13.655,125.722-14.909z"
- />
- <path fill="#443D39" d="M125.609-15.153c0.542-0.108,3.149-3.458,3.149-3.458s0.874-5.531,0-6.396
- c-0.876-0.864-6.3-5.186-8.575-4.148c-2.274,1.037-4.024,6.914-3.675,10.025C116.859-16.019,119.483-13.944,125.609-15.153z"/>
- <path fill="#3A3534" d="M125.496-15.398c0.523-0.104,3.038-3.329,3.038-3.329s0.843-5.325,0-6.157
- c-0.845-0.832-6.075-4.993-8.27-3.994c-2.193,0.999-3.881,6.657-3.543,9.653C117.059-16.23,119.589-14.233,125.496-15.398z"/>
- <path fill="#252423" d="M125.384-15.643c0.504-0.1,2.925-3.2,2.925-3.2s0.812-5.119,0-5.92c-0.813-0.8-5.85-4.8-7.963-3.84
- c-2.111,0.96-3.736,6.399-3.412,9.28C117.259-16.442,119.695-14.522,125.384-15.643z"/>
- <path d="M125.271-15.887c0.484-0.096,2.813-3.071,2.813-3.071s0.78-4.914,0-5.683c-0.782-0.768-5.625-4.606-7.657-3.686
- c-2.03,0.921-3.593,6.143-3.28,8.907C117.459-16.655,119.802-14.812,125.271-15.887z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M66.208-28.973c-3.488,2.415-2.75,8.25-1.25,9.5s5.25,4,10,2.25c4.751-1.75,10.001-4,10.751-7.75
- s0.5-6.25-4-7.75S69.458-31.223,66.208-28.973z"/>
- <path fill="#82472C" d="M66.411-28.845c-3.414,2.338-2.692,7.986-1.224,9.196c1.468,1.21,5.138,3.872,9.786,2.179
- c4.65-1.694,9.788-3.873,10.521-7.504c0.734-3.63,0.489-6.05-3.914-7.502C77.177-33.928,69.591-31.023,66.411-28.845z"/>
- <path fill="#7D4930" d="M66.613-28.718c-3.34,2.262-2.633,7.725-1.196,8.895c1.436,1.17,5.025,3.745,9.573,2.106
- s9.574-3.745,10.292-7.256s0.479-5.852-3.829-7.256C77.145-33.633,69.725-30.824,66.613-28.718z"/>
- <path fill="#794B34" d="M66.816-28.59c-3.266,2.184-2.574,7.46-1.17,8.591c1.403,1.131,4.913,3.617,9.359,2.035
- c4.447-1.582,9.36-3.617,10.063-7.009s0.468-5.652-3.743-7.009C77.113-33.338,69.858-30.625,66.816-28.59z"/>
- <path fill="#754C37" d="M67.019-28.462c-3.19,2.106-2.515,7.197-1.144,8.288c1.372,1.091,4.802,3.489,9.147,1.963
- c4.345-1.526,9.146-3.489,9.833-6.762c0.687-3.271,0.457-5.452-3.658-6.762C77.081-33.043,69.991-30.425,67.019-28.462z"/>
- <path fill="#704C3A" d="M67.222-28.335c-3.116,2.029-2.457,6.936-1.117,7.985c1.34,1.051,4.69,3.362,8.934,1.892
- c4.244-1.471,8.934-3.362,9.604-6.515c0.671-3.152,0.447-5.253-3.572-6.515C77.049-32.748,70.125-30.226,67.222-28.335z"/>
- <path fill="#6B4C3C" d="M67.424-28.208c-3.042,1.953-2.398,6.672-1.09,7.684c1.309,1.011,4.578,3.234,8.721,1.819
- c4.142-1.415,8.72-3.235,9.373-6.268c0.655-3.032,0.437-5.055-3.486-6.268C77.017-32.453,70.258-30.027,67.424-28.208z"/>
- <path fill="#664C3E" d="M67.627-28.079c-2.968,1.875-2.34,6.408-1.063,7.379s4.466,3.107,8.507,1.748s8.507-3.107,9.145-6.021
- c0.639-2.913,0.426-4.854-3.401-6.021C76.984-32.158,70.392-29.827,67.627-28.079z"/>
- <path fill="#614B3F" d="M67.829-27.952c-2.893,1.799-2.28,6.146-1.036,7.076c1.244,0.932,4.354,2.98,8.293,1.676
- c3.939-1.303,8.294-2.979,8.915-5.772c0.623-2.794,0.415-4.655-3.315-5.772C76.952-31.863,70.524-29.628,67.829-27.952z"/>
- <path fill="#5B4940" d="M68.032-27.825c-2.818,1.723-2.223,5.883-1.01,6.774c1.212,0.892,4.241,2.853,8.08,1.604
- c3.838-1.248,8.08-2.853,8.686-5.526c0.606-2.674,0.404-4.456-3.23-5.526C76.92-31.568,70.658-29.429,68.032-27.825z"/>
- <path fill="#54463F" d="M68.234-27.697c-2.744,1.646-2.163,5.62-0.982,6.471c1.18,0.853,4.129,2.726,7.866,1.532
- c3.736-1.191,7.867-2.725,8.456-5.278c0.591-2.554,0.394-4.257-3.146-5.278C76.888-31.273,70.791-29.229,68.234-27.697z"/>
- <path fill="#4D423D" d="M68.438-27.569c-2.67,1.567-2.104,5.355-0.957,6.168c1.148,0.812,4.019,2.597,7.653,1.461
- c3.636-1.137,7.654-2.598,8.227-5.032c0.575-2.435,0.384-4.058-3.06-5.032C76.856-30.979,70.925-29.03,68.438-27.569z"/>
- <path fill="#443D39" d="M68.64-27.442c-2.595,1.49-2.046,5.094-0.93,5.865s3.906,2.47,7.44,1.389
- c3.533-1.08,7.439-2.469,7.997-4.784c0.56-2.315,0.372-3.858-2.975-4.784C76.824-30.684,71.058-28.831,68.64-27.442z"/>
- <path fill="#3A3534" d="M68.843-27.314c-2.521,1.413-1.987,4.83-0.903,5.562c1.084,0.732,3.794,2.343,7.227,1.318
- c3.433-1.025,7.227-2.342,7.768-4.538c0.544-2.196,0.362-3.659-2.889-4.538C76.792-30.389,71.191-28.632,68.843-27.314z"/>
- <path fill="#252423" d="M69.045-27.187c-2.446,1.336-1.929,4.566-0.876,5.259c1.052,0.692,3.682,2.214,7.014,1.245
- c3.33-0.969,7.013-2.214,7.538-4.29c0.527-2.076,0.351-3.46-2.804-4.29C76.76-30.094,71.324-28.433,69.045-27.187z"/>
- <path d="M69.248-27.06c-2.372,1.26-1.87,4.305-0.85,4.957c1.02,0.652,3.569,2.086,6.8,1.174c3.229-0.914,6.8-2.088,7.309-4.044
- c0.512-1.956,0.341-3.261-2.718-4.044C76.728-29.799,71.458-28.233,69.248-27.06z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M96.459-29.223c-1.636,1.718-5.25,3.25-5.75,5.75s-1,6.75,3.25,9s7.5,9.25,13.75,6s4-9.25,4-11.5
- S106.209-39.473,96.459-29.223z"/>
- <path fill="#82472C" d="M96.638-28.989c-1.585,1.675-5.087,3.168-5.571,5.605c-0.484,2.436-0.969,6.579,3.149,8.772
- s7.267,9.017,13.322,5.849c6.055-3.168,3.876-9.017,3.876-11.21S106.084-38.981,96.638-28.989z"/>
- <path fill="#7D4930" d="M96.816-28.757c-1.534,1.632-4.923,3.087-5.392,5.461s-0.938,6.41,3.048,8.547
- c3.985,2.136,7.033,8.783,12.894,5.697c5.861-3.086,3.752-8.784,3.752-10.921S105.96-38.489,96.816-28.757z"/>
- <path fill="#794B34" d="M96.996-28.523c-1.483,1.589-4.761,3.005-5.214,5.315s-0.907,6.24,2.946,8.319
- c3.854,2.08,6.801,8.551,12.467,5.546c5.667-3.004,3.627-8.55,3.627-10.63C110.822-22.052,105.835-37.999,96.996-28.523z"/>
- <path fill="#754C37" d="M97.175-28.29c-1.433,1.545-4.597,2.922-5.034,5.17c-0.438,2.248-0.877,6.07,2.845,8.093
- c3.722,2.023,6.566,8.317,12.039,5.396c5.472-2.923,3.502-8.318,3.502-10.341S105.711-37.507,97.175-28.29z"/>
- <path fill="#704C3A" d="M97.354-28.058c-1.382,1.502-4.434,2.842-4.855,5.025c-0.423,2.186-0.846,5.9,2.744,7.867
- c3.59,1.966,6.333,8.084,11.611,5.243c5.277-2.841,3.378-8.084,3.378-10.051C110.231-21.938,105.587-37.015,97.354-28.058z"/>
- <path fill="#6B4C3C" d="M97.532-27.823c-1.331,1.457-4.27,2.758-4.677,4.88c-0.406,2.122-0.813,5.729,2.644,7.64
- c3.457,1.909,6.1,7.851,11.184,5.092c5.082-2.758,3.253-7.852,3.253-9.761S105.462-36.524,97.532-27.823z"/>
- <path fill="#664C3E" d="M97.712-27.591c-1.281,1.415-4.107,2.678-4.498,4.735c-0.392,2.06-0.783,5.56,2.542,7.413
- c3.324,1.853,5.866,7.617,10.756,4.941c4.888-2.678,3.128-7.619,3.128-9.472S105.338-36.032,97.712-27.591z"/>
- <path fill="#614B3F" d="M97.891-27.357c-1.229,1.372-3.944,2.595-4.319,4.591c-0.376,1.996-0.753,5.389,2.44,7.186
- c3.193,1.796,5.634,7.385,10.328,4.789c4.693-2.594,3.005-7.385,3.005-9.181S105.213-35.541,97.891-27.357z"/>
- <path fill="#5B4940" d="M98.069-27.124c-1.179,1.328-3.78,2.513-4.14,4.445c-0.361,1.933-0.722,5.219,2.339,6.959
- c3.061,1.739,5.4,7.151,9.9,4.639c4.499-2.514,2.88-7.152,2.88-8.892S105.089-35.05,98.069-27.124z"/>
- <path fill="#54463F" d="M98.248-26.892c-1.128,1.285-3.617,2.432-3.961,4.301c-0.345,1.87-0.69,5.049,2.238,6.732
- c2.929,1.683,5.167,6.918,9.473,4.487c4.304-2.431,2.755-6.919,2.755-8.602S104.964-34.558,98.248-26.892z"/>
- <path fill="#4D423D" d="M98.427-26.658c-1.077,1.241-3.454,2.349-3.782,4.155c-0.329,1.808-0.659,4.879,2.138,6.506
- c2.796,1.626,4.934,6.686,9.045,4.336c4.109-2.35,2.631-6.686,2.631-8.312S104.84-34.066,98.427-26.658z"/>
- <path fill="#443D39" d="M98.605-26.425c-1.026,1.198-3.29,2.268-3.603,4.011c-0.314,1.743-0.629,4.708,2.036,6.278
- c2.664,1.569,4.699,6.452,8.617,4.186c3.914-2.268,2.506-6.453,2.506-8.022S104.715-33.575,98.605-26.425z"/>
- <path fill="#3A3534" d="M98.785-26.192c-0.976,1.155-3.128,2.186-3.425,3.867c-0.299,1.68-0.598,4.537,1.935,6.051
- c2.532,1.513,4.467,6.219,8.189,4.033c3.721-2.185,2.382-6.219,2.382-7.731S104.591-33.083,98.785-26.192z"/>
- <path fill="#252423" d="M98.964-25.958c-0.925,1.111-2.964,2.103-3.245,3.721c-0.283,1.617-0.567,4.368,1.833,5.824
- s4.233,5.986,7.762,3.883c3.525-2.104,2.258-5.986,2.258-7.442S104.466-32.593,98.964-25.958z"/>
- <path d="M99.143-25.726c-0.874,1.068-2.801,2.021-3.066,3.576c-0.268,1.555-0.536,4.198,1.732,5.598
- c2.268,1.399,4,5.753,7.334,3.731c3.331-2.021,2.133-5.753,2.133-7.152S104.342-32.101,99.143-25.726z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M80.959-120.139c-0.778,2.111-4,1.25-5.501,4c-1.5,2.75-5.25,7.25-2.75,11.75s-0.25,5,7.251,7
- c7.5,2,11.25,2.75,12.5-2.75S86.209-134.389,80.959-120.139z"/>
- <path fill="#82472C" d="M80.996-119.778c-0.759,2.047-3.897,1.211-5.36,3.878c-1.461,2.666-5.115,7.029-2.68,11.391
- c2.437,4.363-0.243,4.848,7.065,6.787s10.963,2.666,12.182-2.666C93.42-105.721,86.112-133.594,80.996-119.778z"/>
- <path fill="#7D4930" d="M81.033-119.418c-0.738,1.982-3.795,1.173-5.22,3.756c-1.423,2.582-4.981,6.808-2.609,11.033
- c2.372,4.225-0.237,4.694,6.881,6.573c7.116,1.878,10.675,2.582,11.861-2.583C93.132-105.803,86.016-132.798,81.033-119.418z"/>
- <path fill="#794B34" d="M81.071-119.058c-0.719,1.918-3.693,1.136-5.079,3.634c-1.386,2.498-4.848,6.586-2.54,10.674
- c2.309,4.088-0.23,4.542,6.695,6.359c6.925,1.817,10.388,2.499,11.542-2.499C92.844-105.885,85.918-132.003,81.071-119.058z"/>
- <path fill="#754C37" d="M81.108-118.697c-0.698,1.854-3.592,1.098-4.938,3.512c-1.347,2.415-4.714,6.365-2.469,10.316
- c2.244,3.951-0.225,4.39,6.51,6.146c6.732,1.756,10.101,2.415,11.223-2.414C92.556-105.966,85.822-131.208,81.108-118.697z"/>
- <path fill="#704C3A" d="M81.146-118.336c-0.679,1.79-3.489,1.06-4.798,3.39c-1.309,2.331-4.579,6.145-2.398,9.958
- s-0.218,4.237,6.324,5.932c6.541,1.695,9.813,2.331,10.903-2.331S85.726-130.413,81.146-118.336z"/>
- <path fill="#6B4C3C" d="M81.183-117.976c-0.658,1.725-3.387,1.021-4.657,3.268c-1.27,2.247-4.444,5.923-2.328,9.599
- c2.117,3.676-0.211,4.084,6.14,5.719c6.35,1.634,9.525,2.247,10.584-2.247C91.979-106.13,85.628-129.618,81.183-117.976z"/>
- <path fill="#664C3E" d="M81.221-117.615c-0.64,1.66-3.285,0.982-4.518,3.146c-1.231,2.162-4.311,5.702-2.258,9.241
- c2.053,3.539-0.205,3.932,5.954,5.505c6.157,1.573,9.238,2.163,10.265-2.163C91.689-106.212,85.531-128.822,81.221-117.615z"/>
- <path fill="#614B3F" d="M81.258-117.254c-0.619,1.596-3.183,0.945-4.376,3.023s-4.177,5.48-2.188,8.882
- c1.989,3.402-0.198,3.78,5.769,5.292c5.966,1.512,8.951,2.079,9.946-2.079C91.401-106.293,85.435-128.027,81.258-117.254z"/>
- <path fill="#5B4940" d="M81.295-116.894c-0.599,1.532-3.08,0.907-4.235,2.902c-1.155,1.995-4.043,5.259-2.117,8.523
- c1.925,3.265-0.192,3.627,5.583,5.078c5.774,1.451,8.663,1.995,9.626-1.995C91.112-106.375,85.338-127.231,81.295-116.894z"/>
- <path fill="#54463F" d="M81.332-116.533c-0.579,1.467-2.978,0.868-4.095,2.779c-1.116,1.911-3.908,5.038-2.047,8.166
- c1.86,3.127-0.187,3.474,5.397,4.864c5.583,1.39,8.376,1.911,9.308-1.911C90.824-106.458,85.241-126.436,81.332-116.533z"/>
- <path fill="#4D423D" d="M81.369-116.173c-0.559,1.403-2.876,0.831-3.954,2.658c-1.078,1.827-3.773,4.817-1.977,7.807
- s-0.18,3.322,5.212,4.651c5.392,1.329,8.089,1.827,8.988-1.827C90.536-106.539,85.145-125.641,81.369-116.173z"/>
- <path fill="#443D39" d="M81.406-115.813c-0.539,1.338-2.773,0.792-3.813,2.536c-1.039,1.743-3.64,4.596-1.906,7.449
- c1.733,2.852-0.173,3.169,5.027,4.437c5.199,1.268,7.802,1.743,8.669-1.744C90.247-106.621,85.047-124.845,81.406-115.813z"/>
- <path fill="#3A3534" d="M81.444-115.452c-0.52,1.274-2.672,0.754-3.673,2.414c-1.002,1.659-3.506,4.375-1.836,7.09
- c1.669,2.715-0.167,3.017,4.841,4.224c5.008,1.207,7.515,1.659,8.35-1.66C89.959-106.703,84.95-124.05,81.444-115.452z"/>
- <path fill="#252423" d="M81.481-115.091c-0.5,1.209-2.569,0.716-3.532,2.292c-0.963,1.575-3.372,4.153-1.766,6.731
- c1.604,2.578-0.161,2.864,4.656,4.01c4.815,1.146,7.227,1.576,8.03-1.576C89.67-106.785,84.854-123.255,81.481-115.091z"/>
- <path d="M81.519-114.73c-0.479,1.145-2.467,0.678-3.392,2.169c-0.925,1.491-3.237,3.932-1.695,6.373
- c1.541,2.44-0.154,2.711,4.471,3.796c4.624,1.084,6.939,1.492,7.711-1.492C89.382-106.866,84.757-122.459,81.519-114.73z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M120.459-103.389c-2.15,0.072-5.5-8.5-11.25-4.75s-8,2.5-9,7.75s0,8.75,5,11.75s6.5,6.25,11.5,2.75
- S127.959-103.639,120.459-103.389z"/>
- <path fill="#82472C" d="M120.177-103.215c-2.079,0.069-5.317-8.218-10.877-4.593c-5.559,3.625-7.734,2.417-8.701,7.493
- c-0.967,5.076,0,8.46,4.834,11.36c4.834,2.9,6.285,6.043,11.119,2.659C121.386-89.68,127.428-103.457,120.177-103.215z"/>
- <path fill="#7D4930" d="M119.895-103.041c-2.008,0.067-5.135-7.936-10.503-4.435c-5.368,3.501-7.47,2.334-8.403,7.236
- c-0.934,4.901,0,8.169,4.669,10.97c4.668,2.801,6.068,5.835,10.736,2.567S126.897-103.274,119.895-103.041z"/>
- <path fill="#794B34" d="M119.613-102.866c-1.938,0.064-4.953-7.654-10.131-4.278c-5.177,3.377-7.204,2.251-8.104,6.979
- c-0.899,4.727,0,7.879,4.503,10.58c4.502,2.702,5.854,5.628,10.355,2.477C120.738-90.26,126.366-103.092,119.613-102.866z"/>
- <path fill="#754C37" d="M119.33-102.693c-1.864,0.063-4.77-7.371-9.757-4.119c-4.986,3.252-6.938,2.167-7.805,6.721
- c-0.867,4.553,0,7.588,4.336,10.19c4.337,2.602,5.638,5.42,9.974,2.385C120.415-90.55,125.835-102.909,119.33-102.693z"/>
- <path fill="#704C3A" d="M119.049-102.519c-1.794,0.06-4.588-7.089-9.384-3.961s-6.673,2.085-7.507,6.464s0,7.298,4.171,9.801
- s5.422,5.213,9.592,2.294C120.091-90.841,125.304-102.727,119.049-102.519z"/>
- <path fill="#6B4C3C" d="M118.767-102.344c-1.723,0.058-4.405-6.808-9.011-3.804c-4.604,3.003-6.407,2.002-7.208,6.208
- c-0.801,4.205,0,7.008,4.005,9.411c4.005,2.402,5.206,5.005,9.21,2.202C119.768-91.131,124.772-102.544,118.767-102.344z"/>
- <path fill="#664C3E" d="M118.484-102.17c-1.651,0.055-4.223-6.525-8.637-3.646s-6.143,1.919-6.91,5.95
- c-0.768,4.03,0,6.717,3.839,9.021s4.991,4.798,8.829,2.111S124.241-102.362,118.484-102.17z"/>
- <path fill="#614B3F" d="M118.202-101.996c-1.58,0.053-4.04-6.244-8.264-3.489c-4.224,2.755-5.876,1.836-6.611,5.693
- c-0.733,3.856,0,6.427,3.674,8.631c3.673,2.204,4.774,4.591,8.446,2.02C119.12-91.712,123.711-102.179,118.202-101.996z"/>
- <path fill="#5B4940" d="M117.92-101.821c-1.508,0.05-3.858-5.962-7.89-3.332c-4.033,2.63-5.611,1.753-6.313,5.436
- c-0.7,3.682,0,6.137,3.508,8.241c3.507,2.104,4.56,4.384,8.065,1.929C118.797-92.002,123.18-101.997,117.92-101.821z"/>
- <path fill="#54463F" d="M117.638-101.647c-1.437,0.048-3.676-5.679-7.517-3.174c-3.842,2.506-5.346,1.67-6.015,5.179
- c-0.667,3.508,0,5.847,3.342,7.852c3.342,2.004,4.344,4.176,7.684,1.837C118.474-92.292,122.648-101.814,117.638-101.647z"/>
- <path fill="#4D423D" d="M117.355-101.473c-1.365,0.045-3.493-5.397-7.144-3.016s-5.08,1.587-5.715,4.921
- c-0.635,3.333,0,5.556,3.176,7.461c3.175,1.905,4.128,3.969,7.302,1.746C118.149-92.583,122.117-101.632,117.355-101.473z"/>
- <path fill="#443D39" d="M117.074-101.299c-1.295,0.043-3.312-5.115-6.771-2.859c-3.46,2.257-4.815,1.505-5.417,4.665
- c-0.602,3.159,0,5.266,3.01,7.072c3.01,1.805,3.912,3.761,6.92,1.654C117.826-92.873,121.586-101.449,117.074-101.299z"/>
- <path fill="#3A3534" d="M116.792-101.125c-1.223,0.041-3.129-4.833-6.397-2.701c-3.27,2.133-4.549,1.422-5.118,4.407
- c-0.567,2.985,0,4.975,2.844,6.682c2.844,1.706,3.697,3.554,6.539,1.563C117.503-93.164,121.056-101.267,116.792-101.125z"/>
- <path fill="#252423" d="M116.51-100.951c-1.151,0.039-2.946-4.551-6.023-2.543c-3.079,2.008-4.284,1.339-4.82,4.15
- c-0.534,2.811,0,4.685,2.679,6.292c2.678,1.606,3.48,3.346,6.156,1.472C117.179-93.454,120.524-101.084,116.51-100.951z"/>
- <path d="M116.228-100.776c-1.08,0.036-2.764-4.269-5.65-2.386c-2.888,1.884-4.019,1.256-4.521,3.893
- c-0.501,2.637,0,4.395,2.513,5.902c2.512,1.507,3.266,3.139,5.775,1.381C116.855-93.744,119.993-100.902,116.228-100.776z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M105.621-77.87c0.447-1.55-1.041-6.809-2.772-7.561c-1.73-0.751-2.913-2.122-9.393-1.308
- c-6.479,0.814-5.552-4.192-10.908-2.451c-5.357,1.741-7.417,8.981-6.272,11.351c1.143,2.369,6.643,14.606,12.956,6.14
- C95.547-80.167,103.613-70.907,105.621-77.87z"/>
- <path fill="#82472C" d="M105.226-77.924c0.438-1.517-1.019-6.661-2.713-7.396c-1.692-0.735-2.85-2.075-9.188-1.279
- s-5.431-4.101-10.67-2.398c-5.241,1.703-7.256,8.786-6.137,11.103c1.118,2.317,6.498,14.288,12.674,6.006
- C95.37-80.172,103.261-71.113,105.226-77.924z"/>
- <path fill="#7D4930" d="M104.829-77.979c0.428-1.482-0.995-6.512-2.651-7.231c-1.655-0.719-2.786-2.029-8.983-1.251
- c-6.196,0.778-5.31-4.009-10.433-2.345c-5.124,1.665-7.094,8.59-5.999,10.856c1.093,2.266,6.354,13.97,12.392,5.872
- C95.194-80.177,102.909-71.32,104.829-77.979z"/>
- <path fill="#794B34" d="M104.433-78.034c0.418-1.448-0.973-6.363-2.591-7.066c-1.617-0.703-2.723-1.983-8.778-1.223
- s-5.188-3.918-10.194-2.291c-5.008,1.627-6.933,8.394-5.862,10.608c1.067,2.214,6.208,13.651,12.108,5.738
- C95.018-80.182,102.557-71.527,104.433-78.034z"/>
- <path fill="#754C37" d="M104.037-78.09c0.408-1.414-0.95-6.214-2.53-6.901s-2.659-1.937-8.574-1.194
- c-5.914,0.743-5.067-3.827-9.956-2.237c-4.891,1.589-6.771,8.198-5.727,10.361s6.063,13.333,11.827,5.604
- C94.842-80.187,102.204-71.733,104.037-78.09z"/>
- <path fill="#704C3A" d="M103.642-78.145c0.397-1.38-0.928-6.066-2.471-6.736c-1.541-0.67-2.596-1.891-8.369-1.166
- c-5.772,0.725-4.946-3.735-9.719-2.184c-4.773,1.551-6.608,8.002-5.589,10.113c1.019,2.111,5.918,13.015,11.544,5.471
- C94.665-80.191,101.853-71.94,103.642-78.145z"/>
- <path fill="#6B4C3C" d="M103.245-78.199c0.389-1.347-0.905-5.918-2.409-6.572c-1.505-0.654-2.532-1.844-8.165-1.137
- c-5.631,0.707-4.825-3.644-9.48-2.131c-4.657,1.513-6.447,7.807-5.453,9.866S83.512-65.477,89-72.836
- C94.488-80.196,101.5-72.147,103.245-78.199z"/>
- <path fill="#664C3E" d="M102.849-78.254c0.379-1.313-0.882-5.77-2.349-6.407c-1.466-0.637-2.469-1.798-7.96-1.108
- c-5.49,0.689-4.704-3.552-9.242-2.078c-4.541,1.476-6.286,7.611-5.316,9.619c0.969,2.008,5.629,12.377,10.979,5.203
- C94.313-80.201,101.147-72.354,102.849-78.254z"/>
- <path fill="#614B3F" d="M102.453-78.309c0.369-1.279-0.859-5.621-2.289-6.242c-1.428-0.621-2.404-1.751-7.755-1.08
- c-5.349,0.672-4.583-3.461-9.005-2.024c-4.424,1.438-6.124,7.416-5.18,9.371c0.944,1.956,5.484,12.059,10.697,5.069
- C94.136-80.206,100.796-72.561,102.453-78.309z"/>
- <path fill="#5B4940" d="M102.057-78.364c0.359-1.245-0.836-5.473-2.228-6.077c-1.391-0.604-2.342-1.706-7.551-1.051
- c-5.207,0.654-4.463-3.37-8.767-1.97c-4.307,1.399-5.963,7.219-5.043,9.123c0.919,1.905,5.339,11.741,10.415,4.935
- C93.96-80.211,100.443-72.767,102.057-78.364z"/>
- <path fill="#54463F" d="M101.661-78.419c0.35-1.211-0.814-5.324-2.168-5.913c-1.353-0.588-2.277-1.659-7.346-1.023
- c-5.065,0.636-4.342-3.278-8.528-1.917c-4.19,1.361-5.802,7.024-4.907,8.876c0.895,1.853,5.195,11.422,10.133,4.801
- C93.783-80.216,100.091-72.974,101.661-78.419z"/>
- <path fill="#4D423D" d="M101.265-78.474c0.34-1.177-0.791-5.176-2.107-5.747c-1.314-0.572-2.214-1.613-7.141-0.995
- c-4.924,0.619-4.221-3.187-8.291-1.864c-4.073,1.323-5.639,6.828-4.77,8.628c0.87,1.801,5.05,11.104,9.85,4.667
- C93.606-80.221,99.739-73.18,101.265-78.474z"/>
- <path fill="#443D39" d="M100.869-78.529c0.33-1.144-0.769-5.027-2.047-5.583c-1.277-0.556-2.15-1.567-6.937-0.966
- c-4.782,0.601-4.1-3.095-8.053-1.81c-3.957,1.285-5.478,6.632-4.634,8.381c0.846,1.75,4.905,10.786,9.568,4.534
- S99.387-73.387,100.869-78.529z"/>
- <path fill="#3A3534" d="M100.473-78.584c0.32-1.11-0.745-4.879-1.986-5.417c-1.239-0.539-2.087-1.521-6.731-0.938
- c-4.642,0.583-3.979-3.004-7.814-1.757c-3.84,1.248-5.316,6.437-4.497,8.134c0.82,1.698,4.76,10.467,9.285,4.399
- S99.034-73.594,100.473-78.584z"/>
- <path fill="#252423" d="M100.077-78.639c0.311-1.076-0.724-4.731-1.926-5.253c-1.202-0.523-2.023-1.475-6.527-0.909
- c-4.5,0.565-3.857-2.913-7.577-1.703c-3.723,1.209-5.154,6.241-4.36,7.886c0.796,1.646,4.616,10.148,9.004,4.266
- S98.683-73.801,100.077-78.639z"/>
- <path d="M99.681-78.694c0.301-1.042-0.7-4.582-1.865-5.088c-1.164-0.506-1.96-1.428-6.322-0.88
- c-4.358,0.547-3.736-2.821-7.339-1.65c-3.606,1.171-4.993,6.045-4.224,7.639c0.771,1.595,4.471,9.83,8.721,4.132
- S98.33-74.007,99.681-78.694z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M72.208-64.639c-2.728,1.784-10.25,7.75-8,11.25s2.5,5.5,5.75,6.75s4.5,4.5,10.501,1.5
- c6-3,10.75-9.25,9.75-13S78.709-68.889,72.208-64.639z"/>
- <path fill="#82472C" d="M72.337-64.323c-2.661,1.725-9.999,7.492-7.805,10.875c2.195,3.383,2.439,5.316,5.609,6.525
- c3.17,1.208,4.39,4.35,10.244,1.45c5.853-2.9,10.486-8.941,9.511-12.566C88.922-61.664,78.678-68.431,72.337-64.323z"/>
- <path fill="#7D4930" d="M72.465-64.006c-2.594,1.665-9.748,7.233-7.607,10.5c2.14,3.267,2.377,5.133,5.468,6.3
- c3.091,1.166,4.28,4.2,9.986,1.4c5.706-2.801,10.224-8.634,9.273-12.134C88.634-61.439,78.647-67.973,72.465-64.006z"/>
- <path fill="#794B34" d="M72.594-63.689c-2.527,1.605-9.497,6.975-7.412,10.125c2.084,3.15,2.316,4.95,5.327,6.075
- c3.012,1.125,4.17,4.05,9.729,1.35s9.96-8.325,9.034-11.7C88.346-61.214,78.617-67.514,72.594-63.689z"/>
- <path fill="#754C37" d="M72.723-63.373c-2.46,1.546-9.246,6.717-7.217,9.75s2.256,4.766,5.187,5.85
- c2.933,1.083,4.06,3.899,9.473,1.3c5.412-2.601,9.697-8.017,8.795-11.267S78.587-67.056,72.723-63.373z"/>
- <path fill="#704C3A" d="M72.852-63.056c-2.394,1.486-8.995,6.458-7.021,9.375c1.975,2.917,2.194,4.583,5.047,5.624
- c2.852,1.042,3.949,3.75,9.214,1.25c5.266-2.5,9.435-7.708,8.557-10.833C87.771-60.764,78.556-66.598,72.852-63.056z"/>
- <path fill="#6B4C3C" d="M72.979-62.739c-2.326,1.427-8.744,6.2-6.824,9c1.919,2.8,2.133,4.399,4.905,5.399
- s3.839,3.601,8.957,1.2c5.118-2.4,9.171-7.4,8.318-10.4C87.482-60.54,78.525-66.139,72.979-62.739z"/>
- <path fill="#664C3E" d="M73.108-62.423c-2.26,1.368-8.493,5.942-6.629,8.625c1.864,2.684,2.071,4.217,4.765,5.175
- c2.692,0.959,3.729,3.45,8.699,1.15c4.972-2.3,8.908-7.092,8.08-9.967C87.194-60.314,78.494-65.681,73.108-62.423z"/>
- <path fill="#614B3F" d="M73.236-62.106c-2.192,1.309-8.241,5.684-6.433,8.25c1.81,2.567,2.011,4.033,4.624,4.95
- c2.613,0.917,3.618,3.3,8.442,1.101c4.825-2.201,8.645-6.783,7.841-9.533S78.464-65.223,73.236-62.106z"/>
- <path fill="#5B4940" d="M73.365-61.789c-2.126,1.249-7.99,5.425-6.237,7.875c1.755,2.45,1.949,3.85,4.483,4.725
- s3.509,3.149,8.186,1.05c4.678-2.1,8.381-6.475,7.602-9.1S78.433-64.764,73.365-61.789z"/>
- <path fill="#54463F" d="M73.494-61.473c-2.06,1.189-7.74,5.167-6.041,7.5s1.888,3.667,4.342,4.5c2.454,0.833,3.398,3,7.929,1
- s8.117-6.167,7.363-8.667C86.331-59.639,78.402-64.306,73.494-61.473z"/>
- <path fill="#4D423D" d="M73.622-61.156c-1.992,1.129-7.488,4.908-5.845,7.125c1.645,2.216,1.827,3.483,4.201,4.275
- c2.375,0.792,3.288,2.85,7.671,0.95c4.384-1.9,7.854-5.858,7.125-8.233C86.044-59.414,78.372-63.848,73.622-61.156z"/>
- <path fill="#443D39" d="M73.751-60.839c-1.926,1.07-7.237,4.65-5.649,6.75c1.589,2.1,1.766,3.3,4.061,4.05
- s3.178,2.699,7.414,0.899s7.592-5.549,6.886-7.799S78.341-63.389,73.751-60.839z"/>
- <path fill="#3A3534" d="M73.88-60.522c-1.859,1.011-6.987,4.392-5.454,6.375c1.534,1.983,1.705,3.117,3.92,3.825
- c2.216,0.708,3.068,2.549,7.157,0.85c4.09-1.7,7.328-5.242,6.646-7.367S78.311-62.931,73.88-60.522z"/>
- <path fill="#252423" d="M74.008-60.206c-1.792,0.951-6.735,4.133-5.257,6s1.643,2.934,3.778,3.6
- c2.136,0.667,2.958,2.4,6.899,0.8c3.943-1.6,7.065-4.934,6.409-6.934C85.181-58.739,78.279-62.473,74.008-60.206z"/>
- <path d="M74.137-59.889c-1.726,0.892-6.484,3.875-5.062,5.625c1.424,1.75,1.582,2.75,3.638,3.375
- c2.057,0.625,2.848,2.25,6.643,0.75c3.796-1.5,6.802-4.625,6.17-6.5C84.893-58.514,78.249-62.014,74.137-59.889z"/>
- </g>
- </g>
- <g>
- <g>
- <path fill="#864428" d="M114.959-70.889c-3.36,2.352-5.25,6.75-4,9.5s5.5,10.5,9.75,7.75s12.5-7.5,8.5-11.75
- S122.459-76.139,114.959-70.889z"/>
- <path fill="#82472C" d="M115.041-70.639c-3.308,2.273-5.167,6.525-3.937,9.183c1.229,2.659,5.413,10.15,9.597,7.492
- c4.183-2.658,12.304-7.25,8.366-11.358C125.13-69.431,122.424-75.714,115.041-70.639z"/>
- <path fill="#7D4930" d="M115.124-70.389c-3.256,2.195-5.086,6.3-3.875,8.867s5.327,9.8,9.443,7.233
- c4.117-2.566,12.108-7,8.233-10.967C125.052-69.222,122.389-75.289,115.124-70.389z"/>
- <path fill="#794B34" d="M115.206-70.139c-3.202,2.116-5.003,6.075-3.812,8.55c1.19,2.475,5.24,9.45,9.29,6.975
- s11.913-6.75,8.101-10.575C124.974-69.014,122.353-74.864,115.206-70.139z"/>
- <path fill="#754C37" d="M115.288-69.889c-3.149,2.038-4.921,5.85-3.749,8.233c1.171,2.383,5.154,9.1,9.138,6.716
- s11.717-6.5,7.967-10.183C124.895-68.806,122.317-74.439,115.288-69.889z"/>
- <path fill="#704C3A" d="M115.37-69.639c-3.097,1.959-4.838,5.625-3.686,7.917c1.151,2.292,5.067,8.75,8.984,6.458
- s11.521-6.25,7.833-9.792C124.816-68.598,122.282-74.014,115.37-69.639z"/>
- <path fill="#6B4C3C" d="M115.453-69.389c-3.044,1.881-4.756,5.4-3.624,7.6s4.981,8.4,8.832,6.2c3.85-2.2,11.324-6,7.7-9.399
- C124.738-68.389,122.247-73.589,115.453-69.389z"/>
- <path fill="#664C3E" d="M115.535-69.139c-2.991,1.803-4.673,5.175-3.561,7.283c1.111,2.108,4.895,8.05,8.679,5.941
- c3.783-2.108,11.128-5.75,7.566-9.008C124.659-68.181,122.212-73.165,115.535-69.139z"/>
- <path fill="#614B3F" d="M115.617-68.889c-2.938,1.724-4.591,4.95-3.498,6.966c1.093,2.017,4.81,7.7,8.525,5.684
- c3.717-2.017,10.934-5.5,7.434-8.617C124.581-67.973,122.177-72.739,115.617-68.889z"/>
- <path fill="#5B4940" d="M115.699-68.639c-2.886,1.646-4.508,4.725-3.435,6.65c1.072,1.925,4.723,7.35,8.372,5.425
- c3.65-1.925,10.737-5.25,7.301-8.225C124.502-67.764,122.142-72.314,115.699-68.639z"/>
- <path fill="#54463F" d="M115.782-68.389c-2.833,1.567-4.426,4.5-3.373,6.333c1.053,1.833,4.637,7,8.22,5.167
- c3.583-1.833,10.541-5,7.167-7.833C124.424-67.556,122.106-71.889,115.782-68.389z"/>
- <path fill="#4D423D" d="M115.864-68.139c-2.78,1.489-4.344,4.275-3.31,6.017c1.033,1.742,4.55,6.65,8.066,4.908
- c3.517-1.741,10.345-4.75,7.033-7.441C124.346-67.348,122.071-71.464,115.864-68.139z"/>
- <path fill="#443D39" d="M115.946-67.889c-2.728,1.411-4.261,4.05-3.247,5.7c1.014,1.65,4.464,6.3,7.914,4.65
- c3.449-1.65,10.148-4.5,6.899-7.05C124.267-67.139,122.035-71.039,115.946-67.889z"/>
- <path fill="#3A3534" d="M116.029-67.639c-2.676,1.333-4.179,3.825-3.185,5.383c0.993,1.559,4.377,5.95,7.76,4.392
- c3.384-1.558,9.954-4.25,6.767-6.658C124.188-66.931,122-70.614,116.029-67.639z"/>
- <path fill="#252423" d="M116.111-67.389c-2.622,1.254-4.097,3.6-3.122,5.066c0.975,1.467,4.291,5.6,7.607,4.134
- c3.316-1.467,9.758-4,6.634-6.267C124.109-66.723,121.965-70.189,116.111-67.389z"/>
- <path d="M116.193-67.139c-2.569,1.176-4.014,3.375-3.059,4.75c0.954,1.375,4.204,5.25,7.454,3.875s9.562-3.75,6.5-5.875
- C124.031-66.514,121.93-69.764,116.193-67.139z"/>
- </g>
- </g>
- <g>
- <path fill="#71462C" d="M26.708-113.473c6.911,0.216,9,8.25,4.75,10.5s-8.75,2.75-8-0.75S18.708-113.723,26.708-113.473z"/>
- <path fill="#71462C" d="M17.993-41.927c-0.065-2.148,1.359-5.311,3.79-4.465c-1.736-0.605,6.823-0.789,3.685,3.672
- C23.84-40.405,18.153-36.626,17.993-41.927z"/>
- <path fill="#71462C" d="M138.125-82.473c-2.361-0.858-11,4-8.75,7.5s1.25,5.75,5,6s4.75-3.25,7-5S140.875-81.473,138.125-82.473z
- "/>
- <path fill="#71462C" d="M13.708-82.473c-2.361-0.858-11,4-8.75,7.5s1.25,5.75,5,6s4.75-3.25,7-5S16.458-81.473,13.708-82.473z"/>
- <path fill="#71462C" d="M15.458-147.973c-2.665,3.635-3.25,7.25-0.5,8.75s4.5,3,7.75,2.75s5.25-3,5.25-6s0.5-8-3.5-8.75
- S18.208-151.723,15.458-147.973z"/>
- <path fill="#71462C" d="M29.708-122.973c-0.901,1.803-2.5,5.5-0.5,6.25s6.5,0.25,7.5-0.75S32.208-127.973,29.708-122.973z"/>
- <path fill="#71462C" d="M54.646-148.348c-1.63,1.63-1.5,7.25,0.25,7.5s4.25-0.5,6.25-2S57.396-151.098,54.646-148.348z"/>
- <path fill="#71462C" d="M37.608-99.422c-3.018,3.42-6,4-5.2,6.4s6.8,6.8,9.6,6.4c2.801-0.4,6.4-0.4,7.4-4.6c1-4.2,1.2-6.2-1-8.4
- C46.208-101.822,40.608-102.822,37.608-99.422z"/>
- <path fill="#71462C" d="M66.208-115.973c3.593,2.053,5,5,1,6.5s-5.5,2.5-5.25-0.5S62.708-117.973,66.208-115.973z"/>
- <path fill="#71462C" d="M59.958-102.723c3.215-0.989,3.5,5.75,2.5,7s-6,8.25-6,6S56.708-101.723,59.958-102.723z"/>
- <path fill="#71462C" d="M54.208-56.222c2.025-1.013,5.5-1,6,2.75s1,5.25-1.25,5.75S49.708-53.972,54.208-56.222z"/>
- <path fill="#71462C" d="M27.958-39.722c4.72,0.539,10,2.5,10.5,5.5s1.25,4.75-0.75,6.75s-4.75,4.75-7.5,2.75
- S19.208-40.722,27.958-39.722z"/>
- <path fill="#71462C" d="M119.709-131.973c0,0,4.75,1.25,4.75,2.25s1.25,3-0.5,4.75s-2.25,5.5-5.5,4.5s-7.5-8.5-5.25-10.75
- S117.709-135.473,119.709-131.973z"/>
- <path fill="#71462C" d="M125.459-116.723c2.559,0.512,6.5,2.5,6.25,4s-0.5,2-2.25,3.25s-3.25,4.25-6,1.25
- S121.709-117.473,125.459-116.723z"/>
- <path fill="#71462C" d="M84.209-141.973c-1.342,0.447-2.75,4-1.5,6.5s2.75,4.5,5.5,4.25S91.709-144.473,84.209-141.973z"/>
- <path fill="#71462C" d="M15.458-23.577c-2.665,3.635-3.25,7.25-0.5,8.75s4.5,3,7.75,2.75s5.25-3,5.25-6s0.5-8-3.5-8.75
- S18.208-27.327,15.458-23.577z"/>
- <path fill="#71462C" d="M54.646-23.952c-1.63,1.631-1.5,7.25,0.25,7.5s4.25-0.5,6.25-2S57.396-26.702,54.646-23.952z"/>
- <path fill="#71462C" d="M125.209-86.973c0.647-0.375,4.5-0.75,2.5,3.75c-2,4.5-3.25,5.5-4.5,6.5s-3.75,1.75-4.25,0.5
- S118.709-83.223,125.209-86.973z"/>
- <path fill="#71462C" d="M69.646-94.535c3.325,2.138,6.751,2.25,6,5c-0.75,2.75-1.5,6-4,7s-7.25-3.5-6-5.25
- S66.146-96.785,69.646-94.535z"/>
- <path fill="#71462C" d="M50.346-36.593c-0.342,2.254-2.35,6.092,0.132,7.777c2.481,1.688,5.082,2.486,7.725,0.945
- s3.934-5.791,7.198-8.602c3.264-2.813,2.581-8.498-1.71-7.449C59.398-42.87,51.123-41.724,50.346-36.593z"/>
- <path fill="#71462C" d="M78.209-40.222c-3.634,2.422-1.25,5.75,0.5,6s5,0.25,7.25-1.25s6.5-5.5,2.5-6.25
- S79.709-41.222,78.209-40.222z"/>
- <path fill="#71462C" d="M95.947-66.035c-2.694,3.203,0.145,7.988,3.88,9.568c3.737,1.58,4.466,5.142,8.021,5.223
- c3.558,0.082,2.765-3.168,1.36-8.979C107.805-66.034,101.536-72.681,95.947-66.035z"/>
- <path fill="#71462C" d="M94.959-95.473c-1.765,0.378-4,3.5-2.25,4.75s2.5,4,4.5,1S98.459-96.223,94.959-95.473z"/>
- <path fill="#71462C" d="M117.459-41.972c-1.273,2.727-3.5,4.75-2.5,5.5s1.75,3,4,1.25s1.75-4.75,2.75-6.25s3-4.75,3.25-5.5
- S120.959-49.472,117.459-41.972z"/>
- <path fill="#71462C" d="M94.823-45.63c-0.574,1.602,0.032,7.521,1.699,8.91s2.671,2.66,5.587,0.854
- c2.917-1.805,4.07-2.146,6.067-4.934c1.999-2.789,6.08-8.076,1.379-6.998C104.855-46.72,96.717-50.897,94.823-45.63z"/>
- </g>
- <g>
- <path fill="#201B1B" d="M25.708-114.139c6.911,0.216,9,8.25,4.75,10.5s-8.75,2.75-8-0.75S17.708-114.389,25.708-114.139z"/>
- <path fill="#201B1B" d="M16.993-42.593c-0.065-2.15,1.359-5.313,3.79-4.467c-1.736-0.604,6.823-0.787,3.685,3.674
- C22.84-41.073,17.153-37.292,16.993-42.593z"/>
- <path fill="#201B1B" d="M137.125-83.139c-2.361-0.858-11,4-8.75,7.5s1.25,5.75,5,6s4.75-3.25,7-5S139.875-82.139,137.125-83.139z
- "/>
- <path fill="#201B1B" d="M12.708-83.139c-2.361-0.858-11,4-8.75,7.5s1.25,5.75,5,6s4.75-3.25,7-5S15.458-82.139,12.708-83.139z"/>
- <path fill="#201B1B" d="M14.458-148.639c-2.665,3.634-3.25,7.25-0.5,8.75s4.5,3,7.75,2.75s5.25-3,5.25-6s0.5-8-3.5-8.75
- S17.208-152.389,14.458-148.639z"/>
- <path fill="#201B1B" d="M28.708-123.639c-0.901,1.803-2.5,5.5-0.5,6.25s6.5,0.25,7.5-0.75S31.208-128.639,28.708-123.639z"/>
- <path fill="#201B1B" d="M53.646-149.014c-1.63,1.63-1.5,7.25,0.25,7.5s4.25-0.5,6.25-2S56.396-151.764,53.646-149.014z"/>
- <path fill="#201B1B" d="M36.608-100.089c-3.018,3.42-6,4-5.2,6.4c0.8,2.4,6.8,6.8,9.6,6.4c2.801-0.4,6.4-0.4,7.4-4.6
- s1.2-6.2-1-8.4C45.208-102.489,39.608-103.489,36.608-100.089z"/>
- <path fill="#201B1B" d="M65.208-116.639c3.593,2.053,5,5,1,6.5s-5.5,2.5-5.25-0.5S61.708-118.639,65.208-116.639z"/>
- <path fill="#201B1B" d="M58.958-103.389c3.215-0.989,3.5,5.75,2.5,7s-6,8.25-6,6S55.708-102.389,58.958-103.389z"/>
- <path fill="#201B1B" d="M53.208-56.889c2.025-1.013,5.5-1,6,2.75s1,5.25-1.25,5.75S48.708-54.639,53.208-56.889z"/>
- <path fill="#201B1B" d="M26.958-40.39c4.72,0.539,10,2.5,10.5,5.5s1.25,4.75-0.75,6.75s-4.75,4.75-7.5,2.75
- S18.208-41.39,26.958-40.39z"/>
- <path fill="#201B1B" d="M118.709-132.639c0,0,4.75,1.25,4.75,2.25s1.25,3-0.5,4.75s-2.25,5.5-5.5,4.5s-7.5-8.5-5.25-10.75
- S116.709-136.139,118.709-132.639z"/>
- <path fill="#201B1B" d="M124.459-117.389c2.559,0.512,6.5,2.5,6.25,4s-0.5,2-2.25,3.25s-3.25,4.25-6,1.25
- S120.709-118.139,124.459-117.389z"/>
- <path fill="#201B1B" d="M83.209-142.639c-1.342,0.447-2.75,4-1.5,6.5s2.75,4.5,5.5,4.25S90.709-145.139,83.209-142.639z"/>
- <path fill="#201B1B" d="M14.458-24.243c-2.665,3.635-3.25,7.25-0.5,8.75s4.5,3,7.75,2.75s5.25-3,5.25-6s0.5-8-3.5-8.75
- S17.208-27.993,14.458-24.243z"/>
- <path fill="#201B1B" d="M53.646-24.618c-1.63,1.629-1.5,7.25,0.25,7.5s4.25-0.5,6.25-2S56.396-27.368,53.646-24.618z"/>
- <path fill="#201B1B" d="M124.209-87.639c0.647-0.375,4.5-0.75,2.5,3.75s-3.25,5.5-4.5,6.5s-3.75,1.75-4.25,0.5
- S117.709-83.889,124.209-87.639z"/>
- <path fill="#201B1B" d="M68.646-95.202c3.325,2.138,6.75,2.25,6,5s-1.5,6-4,7s-7.25-3.5-6-5.25S65.146-97.452,68.646-95.202z"/>
- <path fill="#201B1B" d="M49.346-37.259c-0.342,2.254-2.35,6.092,0.132,7.777s5.082,2.484,7.725,0.943s3.934-5.789,7.198-8.602
- c3.264-2.811,2.581-8.498-1.71-7.447C58.398-43.538,50.123-42.39,49.346-37.259z"/>
- <path fill="#201B1B" d="M77.209-40.89c-3.634,2.422-1.251,5.75,0.5,6c1.75,0.25,5,0.25,7.25-1.25s6.5-5.5,2.5-6.25
- S78.709-41.89,77.209-40.89z"/>
- <path fill="#201B1B" d="M94.947-66.701c-2.694,3.203,0.145,7.988,3.88,9.568c3.737,1.58,4.466,5.141,8.021,5.223
- c3.558,0.081,2.765-3.168,1.36-8.979S100.536-73.349,94.947-66.701z"/>
- <path fill="#201B1B" d="M93.959-96.139c-1.765,0.378-4,3.5-2.25,4.75s2.5,4,4.5,1S97.459-96.889,93.959-96.139z"/>
- <path fill="#201B1B" d="M116.459-42.64c-1.273,2.729-3.5,4.75-2.5,5.5s1.75,3,4,1.25s1.75-4.75,2.75-6.25s3-4.75,3.25-5.5
- S119.959-50.139,116.459-42.64z"/>
- <path fill="#201B1B" d="M93.823-46.296c-0.574,1.602,0.032,7.52,1.699,8.908s2.671,2.66,5.587,0.855
- c2.917-1.805,4.07-2.146,6.067-4.936c1.999-2.787,6.08-8.076,1.379-6.996C103.855-47.386,95.717-51.564,93.823-46.296z"/>
- </g>
- </g>
-</pattern>
-<g>
- <defs>
- <rect id="SVGID_1_" x="0.5" width="941" height="173"/>
- </defs>
- <clipPath id="SVGID_2_">
- <use xlink:href="#SVGID_1_" overflow="visible"/>
- </clipPath>
- <g clip-path="url(#SVGID_2_)">
-
- <radialGradient id="SVGID_3_" cx="-317.2422" cy="277.0957" r="486.2827" gradientTransform="matrix(1.1782 0 0 1.1139 842.376 -222.1572)" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#9E73AB"/>
- <stop offset="0.1113" style="stop-color:#735890"/>
- <stop offset="0.1976" style="stop-color:#493C74"/>
- <stop offset="0.2732" style="stop-color:#2E285F"/>
- <stop offset="0.3345" style="stop-color:#1D1C54"/>
- <stop offset="0.3736" style="stop-color:#17174F"/>
- <stop offset="0.4083" style="stop-color:#131447"/>
- <stop offset="0.5193" style="stop-color:#060D34"/>
- <stop offset="0.6283" style="stop-color:#000524"/>
- <stop offset="0.733" style="stop-color:#000016"/>
- <stop offset="0.8322" style="stop-color:#00000A"/>
- <stop offset="0.9236" style="stop-color:#000002"/>
- <stop offset="1" style="stop-color:#000000"/>
- </radialGradient>
- <rect x="-204.328" y="-340.18" fill="url(#SVGID_3_)" width="1345.86" height="853.359"/>
-
- <radialGradient id="SVGID_4_" cx="-319.7827" cy="273.0684" r="486.282" gradientTransform="matrix(1.1782 0 0 1.1139 842.376 -222.1572)" gradientUnits="userSpaceOnUse">
- <stop offset="0.044" style="stop-color:#E9DC4D"/>
- <stop offset="0.093" style="stop-color:#CFA93D"/>
- <stop offset="0.1677" style="stop-color:#AF6E28"/>
- <stop offset="0.2359" style="stop-color:#964618"/>
- <stop offset="0.2951" style="stop-color:#85290B"/>
- <stop offset="0.343" style="stop-color:#7B1501"/>
- <stop offset="0.3736" style="stop-color:#780A00"/>
- <stop offset="0.5316" style="stop-color:#610000"/>
- <stop offset="0.7249" style="stop-color:#480000"/>
- <stop offset="0.888" style="stop-color:#310000"/>
- <stop offset="1" style="stop-color:#230000"/>
- </radialGradient>
- <rect x="-207.321" y="-344.667" fill="url(#SVGID_4_)" width="1345.859" height="853.359"/>
- <rect x="-209.304" y="-345.728" opacity="0.07" fill="url(#Cheetah)" width="1345.859" height="853.359"/>
- </g>
-</g>
-<g>
- <g>
- <g>
- <g>
- <g>
- <path fill="#FFFFFF" d="M323.68,35.499c0,0,8.117,0.312,8.117,8.051l0.083,45.649c0,0.442,0.083,0.83,0.249,1.161
- s0.442,0.498,0.83,0.498h7.303l8.964-0.033c0,6.799-6.3,6.757-6.3,6.757h-13.79c-6.085,0-5.473-8.218-5.473-8.218
- L323.68,35.499z M334.619,35.499"/>
- <path fill="#FFFFFF" d="M496.406,35.582c0,0,8.309,0.646,8.189,7.968v45.98c0,0,0.211,8.052-8.255,8.052L496.406,35.582z"/>
- <path fill="#FFFFFF" d="M529.996,97.581l-0.003-7.969V42.803l-0.023-7.265l6.579-0.04c0.664,0,1.162,0.153,1.494,0.457
- c0.331,0.305,0.581,0.734,0.747,1.287c0,0.111,0.275,1.052,0.83,2.821c0.553,1.773,1.244,3.972,2.074,6.6
- s1.729,5.505,2.698,8.631c0.967,3.126,1.88,6.114,2.738,8.964c0.857,2.85,1.618,5.353,2.283,7.511
- c0.663,2.157,1.105,3.597,1.327,4.316c0.055,0.111,0.124,0.222,0.208,0.332c0.083,0.112,0.124,0.083,0.124-0.083V43.466
- c0,0-0.407-7.967,7.354-7.967l-0.05,7.884v52.039c0,0.554-0.165,1.053-0.498,1.493c-0.331,0.445-0.83,0.666-1.494,0.666h-4.813
- c-0.719,0-1.231-0.305-1.536-0.915c-0.304-0.607-0.594-1.382-0.871-2.322c-0.11-0.276-0.47-1.371-1.078-3.279
- c-0.609-1.909-1.343-4.203-2.2-6.888c-0.858-2.682-1.771-5.546-2.738-8.59c-0.969-3.042-1.867-5.865-2.697-8.466
- c-0.83-2.601-1.522-4.772-2.076-6.515c-0.554-1.743-0.829-2.642-0.829-2.698c-0.056-0.11-0.111-0.192-0.166-0.249
- c-0.055-0.054-0.083,0.083-0.083,0.415v31.456C537.296,89.529,537.628,97.581,529.996,97.581z"/>
- <g>
- <path fill="#FFFFFF" d="M612.924,89.612c-1.101-6.06-2.132-11.649-3.094-16.788c0.037-0.024,0.074-0.054,0.112-0.079
- c-0.469-2.672-0.92-5.244-1.352-7.699c-0.554-3.099-1.093-6.143-1.618-9.13c-0.526-2.989-0.995-5.686-1.411-8.092
- l-2.271-12.325h-0.574h-10.061h-0.574l-2.272,12.325c-0.415,2.406-0.884,5.104-1.41,8.092
- c-0.525,2.988-1.064,6.031-1.619,9.13c-0.939,5.356-1.971,11.227-3.093,17.611c0.009,0.003,0.02,0.009,0.029,0.014
- c-0.413,2.245-0.834,4.553-1.269,6.941l-1.517,7.969c8.563,0,9.103-7.171,9.103-7.171l0.607-3.566
- c0.041,0.034,0.085,0.062,0.126,0.094c0.11-0.767,0.22-1.493,0.329-2.18c0.111-0.691,0.165-1.175,0.165-1.452
- c0.113-0.664,0.333-1.106,0.665-1.329c0.333-0.22,0.747-0.332,1.244-0.332h7.951h1.512c0.886,0,1.383,0.554,1.492,1.66
- l1.214,7.104c0,0,0.539,7.171,9.102,7.171L612.924,89.612z M593.835,74.756c-0.387,0-0.692-0.137-0.914-0.414
- c-0.22-0.277-0.303-0.582-0.248-0.913c0-0.055,0.083-0.526,0.248-1.412c0.167-0.885,0.361-2.02,0.582-3.403
- c0.222-1.383,0.47-2.946,0.747-4.689c0.277-1.743,0.58-3.528,0.912-5.354l2.49-14.441h0.066l2.489,14.441
- c0.333,1.826,0.636,3.611,0.913,5.354c0.276,1.743,0.525,3.306,0.747,4.689c0.221,1.383,0.416,2.518,0.581,3.403
- c0.166,0.886,0.249,1.357,0.249,1.412c0.055,0.332-0.028,0.636-0.249,0.913c-0.222,0.277-0.526,0.414-0.912,0.414H593.835z"/>
- </g>
- </g>
- <g>
- <path fill="#FFFFFF" d="M465.754,35.499c-0.444,0-0.83,0.083-1.162,0.25c-0.333,0.165-0.61,0.498-0.83,0.995l-7.47,14.276
- c-0.941,1.772-1.867,3.515-2.781,5.229c-0.913,1.716-1.715,3.266-2.407,4.648c-0.692,1.383-1.273,2.49-1.744,3.32
- c-0.47,0.83-0.705,1.274-0.705,1.327c-0.111,0.167-0.236,0.279-0.374,0.333c-0.139,0.055-0.262-0.055-0.374-0.333
- c-0.111-0.109-0.484-0.773-1.121-1.991c-0.636-1.216-1.439-2.739-2.406-4.564c-0.969-1.827-2.021-3.831-3.154-6.018
- c-1.135-2.186-2.228-4.329-3.278-6.432c-1.052-2.103-1.992-4.025-2.822-5.769c-0.83-1.743-1.439-3.083-1.827-4.026
- c-0.166-0.386-0.429-0.69-0.788-0.911c-0.36-0.221-0.706-0.333-1.038-0.333h-5.504V97.59c1.443,0.016,7.828-0.346,7.828-7.978
- v-0.083V55.585c0-0.221,0.042-0.333,0.125-0.333c0.083,0,0.152,0.056,0.208,0.165c1.992,3.653,3.79,7.001,5.395,10.043
- c0.664,1.274,1.341,2.546,2.034,3.819c0.691,1.272,1.313,2.42,1.867,3.443c0.552,1.025,1.009,1.897,1.37,2.615
- c0.359,0.719,0.594,1.162,0.706,1.327c0.166,0.333,0.51,0.596,1.037,0.79c0.525,0.194,1.107,0.291,1.743,0.291
- c0.635,0,1.216-0.097,1.743-0.291c0.525-0.194,0.872-0.484,1.038-0.872c0.054-0.166,0.275-0.607,0.664-1.327
- c0.386-0.719,0.856-1.605,1.41-2.656c0.554-1.051,1.163-2.199,1.827-3.445c0.664-1.244,1.355-2.502,2.075-3.777
- c1.604-2.987,3.43-6.307,5.478-9.96c0.11-0.275,0.234-0.372,0.374-0.289c0.137,0.082,0.207,0.18,0.207,0.289v33.946
- c0,0-0.311,8.029,7.688,8.209V35.499H465.754z"/>
- </g>
- </g>
- <g>
- <path fill="#FFFFFF" d="M392.218,43.549v41.417c0,2.157-0.665,3.747-1.992,4.771c-1.328,1.023-2.739,1.535-4.233,1.535
- c-1.549,0-3.002-0.512-4.357-1.535c-1.356-1.024-2.033-2.614-2.033-4.771v-41.5c0-6.963-7.147-7.863-8.187-7.957V86.58
- c0.097,1.711,0.458,3.234,1.09,4.568c0.747,1.575,1.785,2.878,3.112,3.9c1.328,1.023,2.876,1.785,4.648,2.282
- c1.771,0.498,3.679,0.747,5.727,0.747c2.046,0,3.942-0.249,5.686-0.747c1.742-0.497,3.264-1.259,4.564-2.282
- c1.3-1.022,2.324-2.325,3.071-3.9c0.576-1.216,0.927-2.589,1.059-4.115V35.5C391.849,35.541,392.218,43.549,392.218,43.549z"/>
- </g>
- </g>
- <g>
- <path fill="#FFFFFF" d="M347.217,131.46c0.38,0,0.704,0.051,0.97,0.153c0.265,0.103,0.484,0.245,0.657,0.432
- c0.173,0.187,0.299,0.411,0.379,0.677c0.079,0.267,0.119,0.563,0.119,0.89v5.618c0,0.656-0.166,1.18-0.498,1.574
- c-0.332,0.393-0.874,0.59-1.626,0.59h-2.855v-0.359c0-0.193,0.026-0.342,0.08-0.444c0.053-0.102,0.124-0.174,0.212-0.218
- c0.107-0.062,0.16-0.155,0.16-0.278v-7.331c0-0.08-0.019-0.145-0.053-0.194c-0.036-0.048-0.076-0.081-0.12-0.099
- c-0.089-0.044-0.157-0.114-0.206-0.211c-0.048-0.099-0.073-0.234-0.073-0.413v-0.386H347.217z M348.027,133.585
- c0-0.31-0.064-0.557-0.193-0.743c-0.128-0.186-0.334-0.278-0.617-0.278H346.3c-0.062,0-0.108,0.02-0.139,0.06
- c-0.031,0.039-0.047,0.081-0.047,0.125v7.372c0,0.044,0.013,0.084,0.04,0.125c0.026,0.04,0.062,0.06,0.106,0.06h0.956
- c0.283,0,0.489-0.094,0.617-0.278c0.128-0.187,0.193-0.434,0.193-0.744V133.585z"/>
- <path fill="#FFFFFF" d="M359.892,132.623c-0.04,0.039-0.06,0.087-0.06,0.14v2.775c0,0.123,0.067,0.185,0.2,0.185h1.58
- c0.045,0,0.091,0.017,0.14,0.048c0.049,0.03,0.073,0.081,0.073,0.151v0.744c0,0.125-0.066,0.187-0.199,0.187h-1.594
- c-0.133,0-0.2,0.062-0.2,0.185v3.095c0,0.125,0.054,0.186,0.16,0.186h1.328c0.098,0,0.146-0.057,0.146-0.171
- c0-0.143,0.06-0.254,0.179-0.333c0.12-0.08,0.281-0.12,0.485-0.12h0.505v1.369c0,0.097-0.034,0.176-0.1,0.238
- c-0.067,0.063-0.148,0.093-0.246,0.093h-0.823h-2.589h-0.797v-0.345c0-0.194,0.024-0.344,0.073-0.444
- c0.049-0.103,0.117-0.177,0.205-0.221c0.116-0.062,0.173-0.153,0.173-0.278v-7.343c0-0.08-0.018-0.142-0.053-0.188
- c-0.036-0.044-0.076-0.079-0.121-0.105c-0.088-0.044-0.156-0.114-0.205-0.211c-0.049-0.099-0.073-0.234-0.073-0.413v-0.386h4.209
- c0.107,0,0.19,0.032,0.252,0.094s0.093,0.128,0.093,0.199v1.407h-0.491c-0.186,0-0.343-0.024-0.472-0.072
- c-0.128-0.049-0.192-0.147-0.192-0.299c0-0.053-0.014-0.104-0.04-0.153c-0.026-0.048-0.076-0.072-0.146-0.072h-1.275
- C359.974,132.563,359.932,132.583,359.892,132.623z"/>
- <path fill="#FFFFFF" d="M372.886,134.408c0,0.178,0.084,0.346,0.253,0.506c0.168,0.158,0.376,0.32,0.624,0.484
- c0.247,0.164,0.52,0.337,0.816,0.517c0.296,0.182,0.569,0.384,0.817,0.606c0.248,0.22,0.456,0.469,0.624,0.741
- c0.168,0.275,0.252,0.591,0.252,0.945v1.3c0,0.337-0.066,0.631-0.199,0.883c-0.133,0.253-0.311,0.461-0.531,0.624
- c-0.222,0.164-0.479,0.286-0.771,0.365c-0.292,0.081-0.602,0.12-0.93,0.12c-0.327,0-0.637-0.039-0.929-0.12
- c-0.292-0.079-0.547-0.201-0.764-0.365c-0.217-0.163-0.39-0.371-0.518-0.624c-0.129-0.252-0.192-0.546-0.192-0.883v-0.995h0.637
- c0.239,0,0.418,0.055,0.538,0.165c0.119,0.111,0.179,0.269,0.179,0.473v0.569c0,0.116,0.033,0.219,0.1,0.307
- s0.151,0.164,0.252,0.226s0.214,0.111,0.339,0.146c0.124,0.035,0.243,0.053,0.358,0.053c0.115,0,0.234-0.02,0.359-0.061
- c0.124-0.038,0.239-0.093,0.345-0.158c0.106-0.066,0.193-0.146,0.259-0.239c0.066-0.094,0.099-0.197,0.099-0.313v-1.408
- c0-0.292-0.082-0.542-0.246-0.75s-0.37-0.396-0.617-0.564c-0.248-0.167-0.516-0.335-0.804-0.497
- c-0.288-0.163-0.555-0.344-0.803-0.539c-0.248-0.193-0.454-0.423-0.618-0.684c-0.164-0.261-0.246-0.578-0.246-0.95v-0.942
- c0-0.353,0.057-0.657,0.172-0.909s0.275-0.46,0.479-0.624s0.442-0.284,0.717-0.357c0.274-0.076,0.575-0.113,0.902-0.113
- c0.328,0,0.631,0.041,0.91,0.125c0.279,0.085,0.522,0.208,0.73,0.372s0.37,0.372,0.485,0.624
- c0.115,0.254,0.173,0.546,0.173,0.883v0.983h-0.598c-0.222,0-0.407-0.07-0.558-0.213c-0.151-0.142-0.226-0.317-0.226-0.531
- v-0.491c0-0.105-0.031-0.199-0.093-0.278c-0.062-0.079-0.139-0.145-0.232-0.192c-0.093-0.049-0.195-0.085-0.306-0.107
- c-0.11-0.021-0.21-0.031-0.298-0.031c-0.098,0-0.199,0.012-0.306,0.038c-0.105,0.026-0.208,0.067-0.305,0.12
- s-0.177,0.118-0.239,0.192c-0.062,0.075-0.093,0.162-0.093,0.259V134.408z"/>
- <path fill="#FFFFFF" d="M389.897,140.265c0.097,0.046,0.177,0.108,0.239,0.193c0.062,0.083,0.093,0.228,0.093,0.432v0.504h-0.266
- h-0.61c-0.107,0-0.198-0.007-0.272-0.02c-0.075-0.014-0.142-0.038-0.2-0.073c-0.057-0.035-0.112-0.089-0.166-0.159
- c-0.053-0.07-0.11-0.16-0.172-0.266c-0.027-0.053-0.073-0.142-0.139-0.267c-0.066-0.123-0.142-0.271-0.226-0.443
- c-0.084-0.173-0.175-0.356-0.272-0.552c-0.098-0.194-0.195-0.394-0.292-0.598c-0.23-0.469-0.487-0.987-0.77-1.553l-0.212,0.411
- v2.271c0,0.07,0.01,0.123,0.032,0.158c0.022,0.035,0.055,0.07,0.1,0.105c0.071,0.055,0.142,0.129,0.213,0.226
- c0.071,0.099,0.106,0.223,0.106,0.372v0.386h-2.204v-0.386c0-0.149,0.036-0.273,0.106-0.372c0.071-0.097,0.142-0.171,0.212-0.226
- c0.036-0.035,0.064-0.066,0.086-0.099c0.022-0.031,0.038-0.086,0.046-0.165v-7.425c-0.009-0.07-0.024-0.123-0.046-0.158
- c-0.022-0.035-0.051-0.067-0.086-0.094c-0.071-0.053-0.142-0.129-0.212-0.226c-0.07-0.097-0.106-0.22-0.106-0.372v-0.397h2.191
- v0.397c0,0.152-0.036,0.275-0.106,0.372c-0.071,0.097-0.142,0.173-0.212,0.226c-0.044,0.026-0.078,0.059-0.1,0.094
- c-0.023,0.035-0.033,0.093-0.033,0.173v2.497l1.766-3.188c0.044-0.097,0.106-0.19,0.186-0.278
- c0.062-0.072,0.142-0.138,0.239-0.199c0.097-0.063,0.216-0.093,0.359-0.093h0.836v0.518c0,0.194-0.051,0.34-0.153,0.438
- c-0.101,0.099-0.201,0.169-0.298,0.213c-0.071,0.035-0.122,0.079-0.153,0.132s-0.068,0.116-0.113,0.188
- c-0.018,0.026-0.064,0.107-0.14,0.244c-0.075,0.138-0.166,0.307-0.272,0.506c-0.106,0.199-0.222,0.416-0.346,0.65
- c-0.123,0.234-0.244,0.46-0.358,0.677c-0.116,0.217-0.217,0.412-0.306,0.585c-0.089,0.173-0.15,0.295-0.186,0.365
- c-0.018,0.044-0.031,0.084-0.04,0.119c-0.008,0.036,0,0.094,0.027,0.173c0,0.018,0.028,0.081,0.086,0.192
- c0.057,0.111,0.13,0.256,0.219,0.432c0.088,0.177,0.19,0.377,0.305,0.598c0.115,0.222,0.23,0.447,0.345,0.677
- c0.274,0.541,0.584,1.147,0.93,1.82c0.044,0.07,0.088,0.123,0.133,0.158C389.729,140.193,389.8,140.23,389.897,140.265z"/>
- <path fill="#FFFFFF" d="M404.146,131.573c0.08,0.093,0.12,0.25,0.12,0.472v0.411v0.731h-0.717c-0.125,0-0.222-0.043-0.292-0.126
- c-0.071-0.084-0.106-0.197-0.106-0.34c0-0.114-0.049-0.173-0.146-0.173h-0.65c-0.053,0-0.1,0.018-0.139,0.055
- c-0.041,0.034-0.06,0.092-0.06,0.171v7.346c0,0.088,0.013,0.149,0.04,0.185c0.027,0.035,0.062,0.07,0.106,0.105
- c0.071,0.055,0.139,0.129,0.206,0.226c0.066,0.099,0.1,0.223,0.1,0.372v0.386h-2.205v-0.386c0-0.149,0.036-0.273,0.106-0.372
- c0.07-0.097,0.142-0.171,0.212-0.226c0.035-0.035,0.066-0.07,0.092-0.105c0.027-0.035,0.041-0.097,0.041-0.185v-7.384
- c0-0.063-0.022-0.109-0.067-0.14c-0.044-0.031-0.088-0.048-0.132-0.048h-0.584c-0.036,0-0.078,0.015-0.126,0.041
- s-0.073,0.075-0.073,0.146c0,0.149-0.04,0.262-0.12,0.338c-0.08,0.076-0.226,0.113-0.438,0.113h-0.611v-0.812v-0.384
- c0-0.204,0.055-0.347,0.167-0.432c0.11-0.085,0.281-0.127,0.511-0.127h4.329C403.92,131.434,404.066,131.481,404.146,131.573z"/>
- <path fill="#FFFFFF" d="M415.208,141.514c-0.327,0-0.633-0.041-0.916-0.12s-0.531-0.204-0.744-0.371
- c-0.212-0.168-0.378-0.379-0.498-0.632c-0.12-0.252-0.179-0.546-0.179-0.883v-6.162c0-0.337,0.059-0.629,0.179-0.883
- c0.12-0.252,0.286-0.46,0.498-0.624c0.212-0.164,0.46-0.285,0.744-0.364c0.283-0.08,0.589-0.12,0.916-0.12
- c0.328,0,0.633,0.04,0.917,0.12c0.283,0.079,0.529,0.2,0.737,0.364c0.207,0.164,0.372,0.372,0.491,0.624
- c0.119,0.254,0.18,0.546,0.18,0.883v6.162c0,0.337-0.061,0.631-0.18,0.883c-0.12,0.253-0.284,0.464-0.491,0.632
- c-0.208,0.167-0.454,0.292-0.737,0.371S415.536,141.514,415.208,141.514z M416.23,133.398c0-0.176-0.031-0.324-0.093-0.444
- c-0.062-0.119-0.142-0.217-0.239-0.292c-0.097-0.074-0.206-0.131-0.325-0.166s-0.242-0.053-0.366-0.053s-0.248,0.018-0.371,0.053
- c-0.125,0.035-0.235,0.092-0.332,0.166c-0.098,0.075-0.177,0.173-0.24,0.292c-0.062,0.12-0.093,0.269-0.093,0.444v6.057
- c0,0.177,0.031,0.324,0.093,0.444c0.063,0.12,0.142,0.217,0.24,0.293c0.097,0.075,0.207,0.13,0.332,0.165
- c0.123,0.035,0.247,0.053,0.371,0.053s0.246-0.018,0.366-0.053s0.228-0.09,0.325-0.165c0.097-0.076,0.177-0.173,0.239-0.293
- c0.062-0.12,0.093-0.268,0.093-0.444V133.398z"/>
- <path fill="#FFFFFF" d="M429.125,131.46c0.752,0,1.292,0.195,1.62,0.585c0.327,0.39,0.491,0.917,0.491,1.581v1.446
- c0,0.665-0.164,1.185-0.491,1.562c-0.328,0.376-0.868,0.564-1.62,0.564h-0.863c-0.125,0-0.186,0.053-0.186,0.158v2.764
- c0,0.088,0.011,0.149,0.033,0.185c0.022,0.035,0.055,0.07,0.1,0.105c0.071,0.055,0.142,0.129,0.212,0.226
- c0.071,0.099,0.107,0.223,0.107,0.372v0.386h-2.218v-0.386c0-0.149,0.036-0.273,0.106-0.372c0.071-0.097,0.142-0.171,0.212-0.226
- c0.044-0.035,0.078-0.07,0.1-0.105c0.021-0.035,0.033-0.097,0.033-0.185v-7.372c0-0.132-0.058-0.229-0.172-0.292
- c-0.089-0.053-0.165-0.133-0.226-0.238c-0.062-0.107-0.093-0.248-0.093-0.425v-0.333H429.125z M429.921,133.6
- c0-0.311-0.064-0.559-0.192-0.744c-0.128-0.187-0.33-0.28-0.604-0.28h-0.837c-0.053,0-0.102,0.017-0.146,0.048
- c-0.044,0.03-0.066,0.078-0.066,0.14v3.133c0,0.125,0.057,0.187,0.173,0.187h0.876c0.274,0,0.476-0.093,0.604-0.278
- c0.128-0.187,0.192-0.435,0.192-0.745V133.6z"/>
- <path fill="#FFFFFF" d="M452.876,132.623c-0.041,0.039-0.061,0.087-0.061,0.14v2.775c0,0.123,0.066,0.185,0.2,0.185h1.579
- c0.045,0,0.092,0.017,0.14,0.048c0.048,0.03,0.073,0.081,0.073,0.151v0.744c0,0.125-0.067,0.187-0.199,0.187h-1.593
- c-0.134,0-0.2,0.062-0.2,0.185v3.095c0,0.125,0.054,0.186,0.159,0.186h1.329c0.097,0,0.145-0.057,0.145-0.171
- c0-0.143,0.059-0.254,0.179-0.333c0.12-0.08,0.282-0.12,0.484-0.12h0.505v1.369c0,0.097-0.032,0.176-0.1,0.238
- c-0.067,0.063-0.148,0.093-0.245,0.093h-0.824h-2.589h-0.796v-0.345c0-0.194,0.024-0.344,0.072-0.444
- c0.049-0.103,0.118-0.177,0.206-0.221c0.115-0.062,0.172-0.153,0.172-0.278v-7.343c0-0.08-0.018-0.142-0.053-0.188
- c-0.035-0.044-0.076-0.079-0.12-0.105c-0.088-0.044-0.157-0.114-0.206-0.211c-0.048-0.099-0.072-0.234-0.072-0.413v-0.386h4.21
- c0.105,0,0.19,0.032,0.252,0.094c0.062,0.062,0.092,0.128,0.092,0.199v1.407h-0.491c-0.187,0-0.344-0.024-0.472-0.072
- c-0.128-0.049-0.192-0.147-0.192-0.299c0-0.053-0.013-0.104-0.04-0.153c-0.026-0.048-0.076-0.072-0.146-0.072h-1.275
- C452.957,132.563,452.915,132.583,452.876,132.623z"/>
- <path fill="#FFFFFF" d="M469.734,131.46v0.386c0,0.15-0.036,0.275-0.107,0.372c-0.07,0.097-0.141,0.173-0.211,0.226
- c-0.036,0.035-0.065,0.07-0.087,0.105s-0.037,0.094-0.047,0.173v8.327c0,0.088-0.026,0.167-0.079,0.239
- c-0.053,0.07-0.132,0.105-0.239,0.105h-0.771c-0.115,0-0.197-0.049-0.245-0.146c-0.049-0.098-0.095-0.223-0.139-0.372
- c-0.019-0.044-0.076-0.219-0.173-0.523c-0.098-0.307-0.215-0.674-0.353-1.104c-0.137-0.43-0.284-0.887-0.437-1.374
- c-0.155-0.486-0.299-0.938-0.432-1.354c-0.134-0.418-0.245-0.765-0.333-1.044c-0.088-0.278-0.132-0.423-0.132-0.432
- c-0.009-0.018-0.018-0.031-0.026-0.04s-0.014,0.014-0.014,0.066v5.033c0,0.097,0.014,0.164,0.041,0.199s0.062,0.067,0.106,0.094
- c0.07,0.053,0.139,0.128,0.206,0.226c0.066,0.097,0.099,0.22,0.099,0.371v0.398h-2.071v-0.398c0-0.151,0.036-0.274,0.106-0.371
- c0.07-0.098,0.142-0.173,0.212-0.226c0.036-0.026,0.067-0.059,0.092-0.094c0.028-0.035,0.041-0.097,0.041-0.185v-7.49
- c-0.088-0.035-0.164-0.084-0.226-0.146c-0.062-0.055-0.115-0.127-0.158-0.221c-0.045-0.092-0.067-0.213-0.067-0.365v-0.438h1.501
- c0.105,0,0.186,0.024,0.239,0.074c0.053,0.049,0.093,0.118,0.12,0.206c0,0.018,0.044,0.167,0.132,0.451
- c0.089,0.283,0.199,0.635,0.333,1.056c0.132,0.421,0.276,0.881,0.431,1.382c0.155,0.498,0.301,0.978,0.438,1.435
- c0.138,0.454,0.259,0.856,0.366,1.199c0.106,0.346,0.177,0.577,0.212,0.691c0.009,0.018,0.02,0.035,0.034,0.053
- c0.012,0.018,0.019,0.014,0.019-0.013v-5.258c0-0.089-0.013-0.152-0.04-0.188s-0.057-0.07-0.092-0.105
- c-0.071-0.053-0.143-0.129-0.213-0.226c-0.071-0.097-0.106-0.222-0.106-0.372v-0.386H469.734z"/>
- <path fill="#FFFFFF" d="M483.956,131.475v0.397c0,0.152-0.031,0.275-0.093,0.372c-0.063,0.097-0.129,0.169-0.2,0.212
- c-0.044,0.037-0.083,0.075-0.118,0.119c-0.036,0.046-0.063,0.103-0.081,0.173c-0.229,1.533-0.433,2.904-0.609,4.117
- c-0.081,0.523-0.157,1.032-0.232,1.527c-0.076,0.495-0.142,0.941-0.199,1.334c-0.059,0.395-0.107,0.716-0.146,0.962
- c-0.04,0.249-0.06,0.383-0.06,0.4c-0.009,0.07-0.038,0.14-0.087,0.206c-0.049,0.065-0.117,0.099-0.206,0.099h-1.435
- c-0.22,0-0.345-0.11-0.371-0.331c-0.044-0.257-0.11-0.64-0.199-1.149c-0.089-0.509-0.186-1.065-0.292-1.674
- c-0.106-0.606-0.218-1.229-0.332-1.866c-0.114-0.636-0.219-1.221-0.312-1.752c-0.094-0.532-0.171-0.969-0.233-1.314
- c-0.062-0.345-0.092-0.532-0.092-0.559c-0.019-0.088-0.038-0.149-0.061-0.185c-0.021-0.035-0.056-0.07-0.1-0.107
- c-0.07-0.043-0.137-0.115-0.199-0.212c-0.062-0.097-0.093-0.22-0.093-0.372v-0.397h2.111v0.397c0,0.159-0.028,0.286-0.087,0.379
- c-0.057,0.092-0.121,0.162-0.192,0.205c-0.044,0.037-0.077,0.072-0.099,0.107c-0.022,0.035-0.024,0.097-0.007,0.185
- c0.212,1.382,0.402,2.612,0.571,3.692c0.07,0.46,0.141,0.912,0.211,1.354c0.071,0.442,0.136,0.838,0.194,1.181
- c0.057,0.346,0.12,0.731,0.192,1.156c0.009,0,0.03-0.105,0.066-0.318c0.035-0.212,0.079-0.492,0.133-0.838
- c0.053-0.343,0.11-0.738,0.172-1.181c0.063-0.442,0.129-0.895,0.199-1.354c0.16-1.08,0.332-2.311,0.519-3.692
- c0-0.088-0.009-0.149-0.026-0.185s-0.05-0.07-0.094-0.107c-0.062-0.043-0.124-0.113-0.186-0.205
- c-0.063-0.093-0.093-0.22-0.093-0.379v-0.397H483.956z"/>
- <path fill="#FFFFFF" d="M494.194,140.105v0.026c0,0.079,0.014,0.138,0.04,0.173s0.058,0.067,0.093,0.094
- c0.071,0.053,0.142,0.128,0.213,0.226c0.07,0.097,0.105,0.22,0.105,0.371v0.398h-2.217v-0.398c0-0.151,0.03-0.272,0.093-0.364
- c0.062-0.094,0.137-0.171,0.225-0.232c0.045-0.026,0.078-0.059,0.101-0.094s0.033-0.094,0.033-0.173v-0.026v-7.357
- c0-0.088-0.011-0.149-0.033-0.185s-0.056-0.07-0.101-0.107c-0.07-0.053-0.141-0.127-0.212-0.225
- c-0.07-0.099-0.105-0.222-0.105-0.373v-0.384h2.217v0.384c0,0.151-0.035,0.274-0.105,0.373c-0.071,0.098-0.142,0.172-0.213,0.225
- c-0.044,0.037-0.077,0.072-0.099,0.107c-0.023,0.035-0.034,0.097-0.034,0.185V140.105z"/>
- <path fill="#FFFFFF" d="M508.151,140.372c0.07,0.044,0.14,0.099,0.206,0.165c0.065,0.067,0.099,0.18,0.099,0.339v0.518h-1.101
- c-0.231,0-0.402-0.06-0.513-0.18c-0.109-0.119-0.166-0.276-0.166-0.471v-2.603c0-0.311-0.063-0.552-0.192-0.725
- c-0.129-0.172-0.334-0.259-0.616-0.259h-0.824c-0.115,0-0.173,0.062-0.173,0.187v2.776c0,0.088,0.014,0.149,0.04,0.185
- s0.057,0.07,0.093,0.105c0.071,0.055,0.142,0.129,0.212,0.226c0.071,0.099,0.107,0.223,0.107,0.372v0.386h-2.204v-0.386
- c0-0.149,0.035-0.273,0.105-0.372c0.07-0.097,0.142-0.171,0.213-0.226c0.034-0.035,0.065-0.07,0.092-0.105
- c0.027-0.035,0.04-0.097,0.04-0.185v-7.384c0-0.071-0.013-0.127-0.04-0.168c-0.026-0.039-0.058-0.066-0.092-0.084
- c-0.071-0.045-0.14-0.117-0.206-0.214c-0.067-0.097-0.1-0.239-0.1-0.425v-0.386h2.736c0.38,0,0.703,0.057,0.969,0.166
- c0.266,0.11,0.484,0.264,0.657,0.458c0.173,0.195,0.298,0.428,0.378,0.697c0.08,0.271,0.12,0.569,0.12,0.897v1.367
- c0,0.284-0.058,0.543-0.174,0.777c-0.114,0.234-0.265,0.427-0.451,0.576c-0.079,0.081-0.07,0.169,0.026,0.267
- c0.205,0.151,0.354,0.359,0.451,0.623c0.098,0.267,0.147,0.564,0.147,0.891v1.952c0,0.088,0.015,0.145,0.047,0.166
- C508.068,140.32,508.106,140.346,508.151,140.372z M506.677,133.585c0-0.31-0.063-0.555-0.192-0.736s-0.334-0.273-0.616-0.273
- h-0.784c-0.143,0-0.213,0.063-0.213,0.188v3.159c0,0.046,0.018,0.079,0.054,0.107c0.035,0.026,0.07,0.039,0.105,0.039h0.838
- c0.282,0,0.487-0.094,0.616-0.278c0.129-0.186,0.192-0.434,0.192-0.744V133.585z"/>
- <path fill="#FFFFFF" d="M519.398,141.514c-0.327,0-0.633-0.041-0.916-0.12s-0.531-0.204-0.744-0.371
- c-0.212-0.168-0.377-0.379-0.497-0.632c-0.12-0.252-0.18-0.546-0.18-0.883v-6.162c0-0.337,0.06-0.629,0.18-0.883
- c0.12-0.252,0.285-0.46,0.497-0.624c0.213-0.164,0.461-0.285,0.744-0.364c0.283-0.08,0.589-0.12,0.916-0.12
- c0.328,0,0.633,0.04,0.916,0.12c0.284,0.079,0.529,0.2,0.737,0.364s0.372,0.372,0.491,0.624c0.12,0.254,0.18,0.546,0.18,0.883
- v6.162c0,0.337-0.06,0.631-0.18,0.883c-0.119,0.253-0.283,0.464-0.491,0.632c-0.208,0.167-0.453,0.292-0.737,0.371
- C520.031,141.473,519.727,141.514,519.398,141.514z M520.421,133.398c0-0.176-0.03-0.324-0.092-0.444
- c-0.062-0.119-0.144-0.217-0.24-0.292c-0.097-0.074-0.206-0.131-0.325-0.166s-0.241-0.053-0.365-0.053
- c-0.123,0-0.248,0.018-0.372,0.053c-0.123,0.035-0.234,0.092-0.331,0.166c-0.098,0.075-0.178,0.173-0.24,0.292
- c-0.062,0.12-0.092,0.269-0.092,0.444v6.057c0,0.177,0.03,0.324,0.092,0.444c0.063,0.12,0.143,0.217,0.24,0.293
- c0.097,0.075,0.208,0.13,0.331,0.165c0.124,0.035,0.249,0.053,0.372,0.053c0.124,0,0.246-0.018,0.365-0.053
- s0.229-0.09,0.325-0.165c0.097-0.076,0.179-0.173,0.24-0.293s0.092-0.268,0.092-0.444V133.398z"/>
- <path fill="#FFFFFF" d="M535.905,131.46v0.386c0,0.15-0.035,0.275-0.105,0.372c-0.071,0.097-0.143,0.173-0.214,0.226
- c-0.035,0.035-0.063,0.07-0.086,0.105c-0.021,0.035-0.037,0.094-0.046,0.173v8.327c0,0.088-0.026,0.167-0.079,0.239
- c-0.053,0.07-0.134,0.105-0.24,0.105h-0.77c-0.115,0-0.197-0.049-0.245-0.146c-0.05-0.098-0.096-0.223-0.141-0.372
- c-0.017-0.044-0.074-0.219-0.172-0.523c-0.099-0.307-0.215-0.674-0.352-1.104c-0.138-0.43-0.284-0.887-0.439-1.374
- c-0.154-0.486-0.298-0.938-0.432-1.354c-0.132-0.418-0.243-0.765-0.331-1.044c-0.088-0.278-0.133-0.423-0.133-0.432
- c-0.009-0.018-0.019-0.031-0.026-0.04c-0.01-0.009-0.014,0.014-0.014,0.066v5.033c0,0.097,0.014,0.164,0.04,0.199
- s0.062,0.067,0.105,0.094c0.071,0.053,0.141,0.128,0.207,0.226c0.065,0.097,0.099,0.22,0.099,0.371v0.398h-2.071v-0.398
- c0-0.151,0.035-0.274,0.106-0.371c0.07-0.098,0.141-0.173,0.212-0.226c0.035-0.026,0.066-0.059,0.093-0.094
- s0.041-0.097,0.041-0.185v-7.49c-0.089-0.035-0.164-0.084-0.226-0.146c-0.063-0.055-0.116-0.127-0.16-0.221
- c-0.045-0.092-0.066-0.213-0.066-0.365v-0.438h1.5c0.107,0,0.187,0.024,0.24,0.074c0.053,0.049,0.093,0.118,0.118,0.206
- c0,0.018,0.045,0.167,0.134,0.451c0.088,0.283,0.199,0.635,0.331,1.056c0.133,0.421,0.276,0.881,0.432,1.382
- c0.155,0.498,0.302,0.978,0.439,1.435c0.136,0.454,0.259,0.856,0.364,1.199c0.105,0.346,0.178,0.577,0.213,0.691
- c0.01,0.018,0.02,0.035,0.033,0.053c0.013,0.018,0.021,0.014,0.021-0.013v-5.258c0-0.089-0.015-0.152-0.041-0.188
- s-0.058-0.07-0.093-0.105c-0.071-0.053-0.142-0.129-0.212-0.226s-0.106-0.222-0.106-0.372v-0.386H535.905z"/>
- <path fill="#FFFFFF" d="M552.458,132.237c-0.048,0.094-0.099,0.166-0.152,0.219c-0.071,0.063-0.146,0.107-0.226,0.134v7.476
- c0,0.09,0.014,0.151,0.04,0.187s0.062,0.065,0.106,0.094c0.07,0.053,0.142,0.127,0.212,0.226c0.07,0.097,0.106,0.23,0.106,0.397
- v0.425h-2.179v-0.438c0-0.149,0.035-0.273,0.107-0.372c0.07-0.097,0.142-0.173,0.212-0.226c0.044-0.026,0.079-0.057,0.106-0.093
- c0.027-0.034,0.04-0.098,0.04-0.186v-5.431c0-0.019-0.011-0.034-0.034-0.048c-0.021-0.013-0.042,0.003-0.06,0.048
- c-0.327,0.585-0.619,1.115-0.876,1.593c-0.115,0.204-0.226,0.405-0.331,0.604c-0.107,0.199-0.205,0.384-0.293,0.552
- c-0.089,0.167-0.164,0.31-0.227,0.425c-0.061,0.114-0.097,0.185-0.105,0.211c-0.026,0.063-0.082,0.109-0.166,0.141
- c-0.084,0.03-0.177,0.046-0.279,0.046c-0.102,0-0.194-0.016-0.279-0.046c-0.083-0.031-0.139-0.073-0.165-0.127
- c-0.019-0.026-0.056-0.097-0.113-0.211c-0.057-0.116-0.131-0.256-0.22-0.42c-0.088-0.163-0.188-0.347-0.297-0.551
- c-0.111-0.203-0.221-0.407-0.326-0.61c-0.258-0.488-0.545-1.021-0.863-1.606c-0.01-0.019-0.02-0.027-0.034-0.027
- c-0.012,0-0.02,0.018-0.02,0.054v5.431v0.015c0,0.088,0.011,0.149,0.034,0.185c0.021,0.035,0.055,0.067,0.1,0.094
- c0.07,0.053,0.142,0.128,0.212,0.226c0.07,0.097,0.105,0.22,0.105,0.371v0.398h-2.217v-0.398c0-0.151,0.035-0.274,0.106-0.371
- c0.07-0.098,0.142-0.173,0.212-0.226c0.045-0.026,0.08-0.059,0.106-0.094s0.041-0.097,0.041-0.185v-7.53
- c-0.09-0.026-0.165-0.07-0.227-0.134c-0.063-0.053-0.115-0.125-0.16-0.219c-0.044-0.094-0.066-0.213-0.066-0.365v-0.412h1.382
- c0.053,0,0.108,0.018,0.165,0.053c0.059,0.037,0.101,0.085,0.127,0.146c0.062,0.151,0.16,0.366,0.292,0.645
- c0.133,0.279,0.283,0.587,0.452,0.924c0.167,0.337,0.343,0.679,0.523,1.027c0.182,0.351,0.351,0.672,0.506,0.964
- c0.154,0.293,0.283,0.536,0.384,0.729c0.103,0.196,0.162,0.302,0.18,0.319c0.018,0.044,0.038,0.062,0.06,0.053
- c0.022-0.009,0.043-0.026,0.061-0.053c0-0.009,0.037-0.079,0.112-0.212c0.075-0.134,0.168-0.31,0.278-0.532
- c0.111-0.22,0.24-0.469,0.387-0.743c0.145-0.273,0.293-0.554,0.443-0.835l1.196-2.286c0.034-0.079,0.08-0.132,0.133-0.158
- s0.114-0.041,0.185-0.041h1.276v0.412C552.532,132.024,552.508,132.144,552.458,132.237z"/>
- <path fill="#FFFFFF" d="M562.83,132.623c-0.04,0.039-0.061,0.087-0.061,0.14v2.775c0,0.123,0.066,0.185,0.2,0.185h1.579
- c0.045,0,0.092,0.017,0.139,0.048c0.05,0.03,0.074,0.081,0.074,0.151v0.744c0,0.125-0.066,0.187-0.199,0.187h-1.593
- c-0.134,0-0.2,0.062-0.2,0.185v3.095c0,0.125,0.053,0.186,0.16,0.186h1.328c0.098,0,0.146-0.057,0.146-0.171
- c0-0.143,0.06-0.254,0.179-0.333c0.12-0.08,0.282-0.12,0.484-0.12h0.506v1.369c0,0.097-0.033,0.176-0.1,0.238
- c-0.067,0.063-0.148,0.093-0.245,0.093h-0.824h-2.59h-0.796v-0.345c0-0.194,0.024-0.344,0.072-0.444
- c0.049-0.103,0.118-0.177,0.206-0.221c0.115-0.062,0.173-0.153,0.173-0.278v-7.343c0-0.08-0.018-0.142-0.053-0.188
- c-0.037-0.044-0.076-0.079-0.12-0.105c-0.088-0.044-0.157-0.114-0.206-0.211c-0.048-0.099-0.072-0.234-0.072-0.413v-0.386h4.21
- c0.105,0,0.19,0.032,0.252,0.094s0.093,0.128,0.093,0.199v1.407h-0.491c-0.187,0-0.344-0.024-0.473-0.072
- c-0.128-0.049-0.191-0.147-0.191-0.299c0-0.053-0.014-0.104-0.04-0.153c-0.026-0.048-0.076-0.072-0.147-0.072h-1.273
- C562.912,132.563,562.869,132.583,562.83,132.623z"/>
- <path fill="#FFFFFF" d="M579.688,131.46v0.386c0,0.15-0.035,0.275-0.106,0.372c-0.07,0.097-0.143,0.173-0.213,0.226
- c-0.035,0.035-0.064,0.07-0.086,0.105c-0.022,0.035-0.037,0.094-0.046,0.173v8.327c0,0.088-0.027,0.167-0.08,0.239
- c-0.053,0.07-0.134,0.105-0.239,0.105h-0.77c-0.115,0-0.197-0.049-0.246-0.146c-0.049-0.098-0.096-0.223-0.141-0.372
- c-0.018-0.044-0.074-0.219-0.172-0.523c-0.098-0.307-0.215-0.674-0.352-1.104c-0.138-0.43-0.283-0.887-0.438-1.374
- c-0.155-0.486-0.3-0.938-0.432-1.354c-0.132-0.418-0.243-0.765-0.332-1.044c-0.089-0.278-0.133-0.423-0.133-0.432
- c-0.009-0.018-0.018-0.031-0.026-0.04s-0.013,0.014-0.013,0.066v5.033c0,0.097,0.013,0.164,0.039,0.199
- c0.027,0.035,0.062,0.067,0.106,0.094c0.071,0.053,0.139,0.128,0.205,0.226c0.067,0.097,0.101,0.22,0.101,0.371v0.398h-2.071
- v-0.398c0-0.151,0.034-0.274,0.105-0.371c0.071-0.098,0.142-0.173,0.212-0.226c0.036-0.026,0.067-0.059,0.094-0.094
- s0.04-0.097,0.04-0.185v-7.49c-0.09-0.035-0.164-0.084-0.227-0.146c-0.062-0.055-0.115-0.127-0.159-0.221
- c-0.044-0.092-0.065-0.213-0.065-0.365v-0.438h1.5c0.105,0,0.187,0.024,0.239,0.074c0.053,0.049,0.093,0.118,0.119,0.206
- c0,0.018,0.044,0.167,0.134,0.451c0.088,0.283,0.199,0.635,0.331,1.056s0.276,0.881,0.432,1.382
- c0.155,0.498,0.302,0.978,0.438,1.435c0.137,0.454,0.259,0.856,0.365,1.199c0.105,0.346,0.176,0.577,0.211,0.691
- c0.01,0.018,0.021,0.035,0.034,0.053c0.014,0.018,0.021,0.014,0.021-0.013v-5.258c0-0.089-0.014-0.152-0.04-0.188
- s-0.059-0.07-0.094-0.105c-0.07-0.053-0.141-0.129-0.211-0.226c-0.072-0.097-0.107-0.222-0.107-0.372v-0.386H579.688z"/>
- <path fill="#FFFFFF" d="M593.604,131.573c0.08,0.093,0.12,0.25,0.12,0.472v0.411v0.731h-0.717c-0.124,0-0.222-0.043-0.293-0.126
- c-0.07-0.084-0.105-0.197-0.105-0.34c0-0.114-0.05-0.173-0.146-0.173h-0.65c-0.053,0-0.101,0.018-0.14,0.055
- c-0.04,0.034-0.06,0.092-0.06,0.171v7.346c0,0.088,0.013,0.149,0.04,0.185c0.026,0.035,0.062,0.07,0.106,0.105
- c0.07,0.055,0.139,0.129,0.205,0.226c0.066,0.099,0.1,0.223,0.1,0.372v0.386h-2.204v-0.386c0-0.149,0.035-0.273,0.105-0.372
- c0.072-0.097,0.142-0.171,0.213-0.226c0.035-0.035,0.067-0.07,0.094-0.105s0.04-0.097,0.04-0.185v-7.384
- c0-0.063-0.022-0.109-0.066-0.14c-0.046-0.031-0.089-0.048-0.134-0.048h-0.584c-0.035,0-0.077,0.015-0.126,0.041
- s-0.072,0.075-0.072,0.146c0,0.149-0.041,0.262-0.12,0.338s-0.226,0.113-0.439,0.113h-0.61v-0.812v-0.384
- c0-0.204,0.056-0.347,0.167-0.432c0.11-0.085,0.28-0.127,0.511-0.127h4.329C593.379,131.434,593.525,131.481,593.604,131.573z"/>
- </g>
- <g>
- <path fill="#FFFFFF" d="M610.824,39.996v-3.979h-1.486v-0.531h3.576v0.531h-1.492v3.979H610.824z"/>
- <path fill="#FFFFFF" d="M614.051,39.996v-4.51h0.898l1.066,3.193c0.099,0.298,0.171,0.52,0.217,0.668
- c0.05-0.164,0.13-0.406,0.239-0.723l1.08-3.139h0.802v4.51h-0.574v-3.775l-1.312,3.775h-0.538l-1.305-3.84v3.84H614.051z"/>
- </g>
- </g>
-</g>
-</svg>
diff --git a/Artwork/Web_Print/WEB/Lumina_Button_Gold_100px100px.jpg b/Artwork/Web_Print/WEB/Lumina_Button_Gold_100px100px.jpg Binary files differdeleted file mode 100644 index e298e4c1..00000000 --- a/Artwork/Web_Print/WEB/Lumina_Button_Gold_100px100px.jpg +++ /dev/null diff --git a/Artwork/Web_Print/WEB/Lumina_Button_Green_100px100px.jpg b/Artwork/Web_Print/WEB/Lumina_Button_Green_100px100px.jpg Binary files differdeleted file mode 100644 index 48aaf082..00000000 --- a/Artwork/Web_Print/WEB/Lumina_Button_Green_100px100px.jpg +++ /dev/null diff --git a/Artwork/Web_Print/WEB/Lumina_Button_Purple_100px100px.jpg b/Artwork/Web_Print/WEB/Lumina_Button_Purple_100px100px.jpg Binary files differdeleted file mode 100644 index 9c875323..00000000 --- a/Artwork/Web_Print/WEB/Lumina_Button_Purple_100px100px.jpg +++ /dev/null diff --git a/Artwork/Web_Print/WEB/Lumina_Button_Red_100px100px.jpg b/Artwork/Web_Print/WEB/Lumina_Button_Red_100px100px.jpg Binary files differdeleted file mode 100644 index 4c25edaf..00000000 --- a/Artwork/Web_Print/WEB/Lumina_Button_Red_100px100px.jpg +++ /dev/null diff --git a/Artwork/Web_Print/WEB/Lumina_Horizontal_Banner_Gold_941px173px.jpg b/Artwork/Web_Print/WEB/Lumina_Horizontal_Banner_Gold_941px173px.jpg Binary files differdeleted file mode 100644 index 3b8afefd..00000000 --- a/Artwork/Web_Print/WEB/Lumina_Horizontal_Banner_Gold_941px173px.jpg +++ /dev/null diff --git a/Artwork/Web_Print/WEB/Lumina_Horizontal_Banner_Green_941px173px.jpg b/Artwork/Web_Print/WEB/Lumina_Horizontal_Banner_Green_941px173px.jpg Binary files differdeleted file mode 100644 index 02d3f7cb..00000000 --- a/Artwork/Web_Print/WEB/Lumina_Horizontal_Banner_Green_941px173px.jpg +++ /dev/null diff --git a/Artwork/Web_Print/WEB/Lumina_Horizontal_Banner_Purple_941px173px.jpg b/Artwork/Web_Print/WEB/Lumina_Horizontal_Banner_Purple_941px173px.jpg Binary files differdeleted file mode 100644 index e8d2f913..00000000 --- a/Artwork/Web_Print/WEB/Lumina_Horizontal_Banner_Purple_941px173px.jpg +++ /dev/null diff --git a/Artwork/Web_Print/WEB/Lumina_Horizontal_Banner_Red_941px173px.jpg b/Artwork/Web_Print/WEB/Lumina_Horizontal_Banner_Red_941px173px.jpg Binary files differdeleted file mode 100644 index d5410d0a..00000000 --- a/Artwork/Web_Print/WEB/Lumina_Horizontal_Banner_Red_941px173px.jpg +++ /dev/null diff --git a/Artwork/Web_Print/WEB/Lumina_Mobile_Banner_Gold.jpg b/Artwork/Web_Print/WEB/Lumina_Mobile_Banner_Gold.jpg Binary files differdeleted file mode 100644 index 57e33d53..00000000 --- a/Artwork/Web_Print/WEB/Lumina_Mobile_Banner_Gold.jpg +++ /dev/null diff --git a/Artwork/Web_Print/WEB/Lumina_Mobile_Banner_Green.jpg b/Artwork/Web_Print/WEB/Lumina_Mobile_Banner_Green.jpg Binary files differdeleted file mode 100644 index 7c0c2669..00000000 --- a/Artwork/Web_Print/WEB/Lumina_Mobile_Banner_Green.jpg +++ /dev/null diff --git a/Artwork/Web_Print/WEB/Lumina_Mobile_Banner_Purple.jpg b/Artwork/Web_Print/WEB/Lumina_Mobile_Banner_Purple.jpg Binary files differdeleted file mode 100644 index 6298c280..00000000 --- a/Artwork/Web_Print/WEB/Lumina_Mobile_Banner_Purple.jpg +++ /dev/null diff --git a/Artwork/Web_Print/WEB/Lumina_Mobile_Banner_Red.jpg b/Artwork/Web_Print/WEB/Lumina_Mobile_Banner_Red.jpg Binary files differdeleted file mode 100644 index 266c846f..00000000 --- a/Artwork/Web_Print/WEB/Lumina_Mobile_Banner_Red.jpg +++ /dev/null diff --git a/Artwork/Web_Print/WEB/RGB_InsightFileManager_Logo_L.png b/Artwork/Web_Print/WEB/RGB_InsightFileManager_Logo_L.png Binary files differdeleted file mode 100644 index 4f86a563..00000000 --- a/Artwork/Web_Print/WEB/RGB_InsightFileManager_Logo_L.png +++ /dev/null diff --git a/Artwork/Web_Print/WEB/RGB_InsightFileManager_Logo_S.png b/Artwork/Web_Print/WEB/RGB_InsightFileManager_Logo_S.png Binary files differdeleted file mode 100644 index 3a61f61e..00000000 --- a/Artwork/Web_Print/WEB/RGB_InsightFileManager_Logo_S.png +++ /dev/null diff --git a/Artwork/Web_Print/WEB/RGB_LuminaDesktopEnvironment_Logo_L.jpg b/Artwork/Web_Print/WEB/RGB_LuminaDesktopEnvironment_Logo_L.jpg Binary files differdeleted file mode 100644 index 9eeb0bec..00000000 --- a/Artwork/Web_Print/WEB/RGB_LuminaDesktopEnvironment_Logo_L.jpg +++ /dev/null diff --git a/Artwork/Web_Print/WEB/RGB_LuminaDesktopEnvironment_Logo_S.jpg b/Artwork/Web_Print/WEB/RGB_LuminaDesktopEnvironment_Logo_S.jpg Binary files differdeleted file mode 100644 index d950cce3..00000000 --- a/Artwork/Web_Print/WEB/RGB_LuminaDesktopEnvironment_Logo_S.jpg +++ /dev/null diff --git a/Artwork/Web_Print/WEB/RGB_LuminaLogotype_L.png b/Artwork/Web_Print/WEB/RGB_LuminaLogotype_L.png Binary files differdeleted file mode 100644 index 49a055f2..00000000 --- a/Artwork/Web_Print/WEB/RGB_LuminaLogotype_L.png +++ /dev/null diff --git a/Artwork/Web_Print/WEB/RGB_LuminaLogotype_S.png b/Artwork/Web_Print/WEB/RGB_LuminaLogotype_S.png Binary files differdeleted file mode 100644 index 3181bd9c..00000000 --- a/Artwork/Web_Print/WEB/RGB_LuminaLogotype_S.png +++ /dev/null diff --git a/Artwork/Web_Print/WEB/RGB_Wispy_L.png b/Artwork/Web_Print/WEB/RGB_Wispy_L.png Binary files differdeleted file mode 100644 index 91d89b4f..00000000 --- a/Artwork/Web_Print/WEB/RGB_Wispy_L.png +++ /dev/null diff --git a/Artwork/Web_Print/WEB/RGB_Wispy_S.png b/Artwork/Web_Print/WEB/RGB_Wispy_S.png Binary files differdeleted file mode 100644 index 9a2e54b8..00000000 --- a/Artwork/Web_Print/WEB/RGB_Wispy_S.png +++ /dev/null diff --git a/Artwork/Wispy_Gold_950x950px.png b/Artwork/Wispy_Gold_950x950px.png Binary files differdeleted file mode 100644 index 08a4ea96..00000000 --- a/Artwork/Wispy_Gold_950x950px.png +++ /dev/null diff --git a/Artwork/Wispy_Green_950x950px.png b/Artwork/Wispy_Green_950x950px.png Binary files differdeleted file mode 100644 index 9694b553..00000000 --- a/Artwork/Wispy_Green_950x950px.png +++ /dev/null diff --git a/Artwork/Wispy_Purple_950x950px.png b/Artwork/Wispy_Purple_950x950px.png Binary files differdeleted file mode 100644 index b3f04b79..00000000 --- a/Artwork/Wispy_Purple_950x950px.png +++ /dev/null diff --git a/Artwork/Wispy_Red_950x950px.png b/Artwork/Wispy_Red_950x950px.png Binary files differdeleted file mode 100644 index 64923586..00000000 --- a/Artwork/Wispy_Red_950x950px.png +++ /dev/null @@ -41,7 +41,7 @@ Latest Versions <a name="latestversions"></a> ---- Click [HERE](https://github.com/trueos/lumina/releases) to see all the available releases for the Lumina Desktop. -Click [HERE]() to see all the available branches of the Lumina Desktop source tree (includes development versions: *.*.(X > 0)). +Click [HERE]() to see all the available branches of the Lumina Desktop source tree (includes development versions: X.Y.(Z > 0)). The master branch is where all development is performed and tested before the next version is tagged. Additionally, every version (development **and** release) of the project gets branched off of master at the time the version is tagged, so older versions may be fetched/patched/used as desired. Occasionally there may be patches committed for particular versions which are not included in the static "release" archives. On the release page these can be identified by a note stating the release is a number of commits behind it's corresponding branch. In this situation, it may be preferable to fetch/use the corresponding branch of the source tree rather than the static archive if the patch(es) which were committed impact your particular operating system. @@ -109,6 +109,7 @@ The sub-projects are broken down as follows: * [lumina-coreutils](https://github.com/trueos/lumina/tree/master/src-qt5/core-utils): The core utilities for configuring/managing the desktop * [desktop-utilities](https://github.com/trueos/lumina/tree/master/src-qt5/desktop-utils): Various support utilities for desktop systems. Every one of these utilities should be independently packaged. +--- # General TrueOS Information <a name="gentrosinfo"></a> diff --git a/port-files/FreeBSD/x11/lumina-core/pkg-plist b/port-files/FreeBSD/x11/lumina-core/pkg-plist index 174f3c92..a4bbbf8d 100644 --- a/port-files/FreeBSD/x11/lumina-core/pkg-plist +++ b/port-files/FreeBSD/x11/lumina-core/pkg-plist @@ -1646,6 +1646,11 @@ share/lthemeengine/colors/dusk.conf share/lthemeengine/colors/sand.conf share/lthemeengine/colors/simple.conf share/lthemeengine/colors/waves.conf +share/lthemeengine/desktop_qss/DarkGlass.qss +share/lthemeengine/desktop_qss/Glass.qss +share/lthemeengine/qss/scrollbar-simple.qss +share/lthemeengine/qss/sliders-simple.qss +share/lthemeengine/qss/tooltip-simple.qss share/lumina-desktop/Login.ogg share/lumina-desktop/Logout.ogg share/lumina-desktop/colors/Black.qss.colors diff --git a/src-qt5/OS-detect.pri b/src-qt5/OS-detect.pri index 9f3019e3..3d01ea5f 100644 --- a/src-qt5/OS-detect.pri +++ b/src-qt5/OS-detect.pri @@ -23,7 +23,7 @@ # ============================================= isEmpty(OS){ message("Build OS Info: $${QMAKE_HOST.os}, $${QMAKE_HOST.arch}, $${QMAKE_HOST.version_string}") - + message(" - Detected Qt Version: $${QT_VERSION}") #Load the initial library/includefile search locations (more can be added in the OS-specific sections below) LIBS = -L$${PWD}/core/libLumina -L$$[QT_INSTALL_LIBS] INCLUDEPATH = $${PWD}/core/libLumina $$[QT_INSTALL_HEADERS] $$[QT_INSTALL_PREFIX] @@ -75,12 +75,15 @@ isEmpty(OS){ #Apply any special rules for particular distros equals(LINUX_DISTRO,"Fedora"){ isEmpty(L_ETCDIR){ L_ETCDIR=/etc } - } + } equals(LINUX_DISTRO,"Gentoo"){ isEmpty(L_BINDIR){ L_BINDIR = $${PREFIX}/bin } isEmpty(L_ETCDIR){ L_ETCDIR = $${PREFIX}/../etc } isEmpty(L_MANDIR){ L_MANDIR = $${PREFIX}/share/man } - } + } + equals(LINUX_DISTRO,"Ubuntu"){ + INCLUDEPATH *= /usr/include/poppler/qt5 + } }else{ OS="Unknown"; } diff --git a/src-qt5/core-utils/lumina-config/pages/getPage.cpp b/src-qt5/core-utils/lumina-config/pages/getPage.cpp index 7274ae3f..c3f88e2c 100644 --- a/src-qt5/core-utils/lumina-config/pages/getPage.cpp +++ b/src-qt5/core-utils/lumina-config/pages/getPage.cpp @@ -20,6 +20,7 @@ #include "page_session_locale.h" #include "page_session_options.h" #include "page_compton.h" +#include "page_soundtheme.h" // #include "page_mouse_trueos.h" // #include "page_bluetooth_trueos.h" @@ -51,6 +52,7 @@ QList<PAGEINFO> Pages::KnownPages(){ list << Pages::PageInfo("interface-menu", QObject::tr("Menu"), QObject::tr("Menu Plugins"), "format-list-unordered",QObject::tr("Change what options are shown on the desktop context menu"), "interface", QStringList(), QStringList() << "desktop" << "menu" << "plugins" << "shortcuts"); list << Pages::PageInfo("session-locale", QObject::tr("Localization"), QObject::tr("Locale Settings"), "preferences-desktop-locale",QObject::tr("Change the default locale settings for this user"), "user", QStringList(), QStringList() << "user"<<"locale"<<"language"<<"translations"); list << Pages::PageInfo("session-options", QObject::tr("General Options"), QObject::tr("User Settings"), "configure",QObject::tr("Change basic user settings such as time/date formats"), "user", QStringList(), QStringList() << "user"<<"settings"<<"time"<<"date"<<"icon"<<"reset"<<"numlock"<<"clock"); + list << Pages::PageInfo("soundtheme", QObject::tr("Sound Themeing"), QObject::tr("Theme"), "media-playlist-audio",QObject::tr("Change basic sound settings"), "session", QStringList(), QStringList() << "session"<<"settings"<<"sound"<<"theme"); // list << Pages::PageInfo("mouse-settings", QObject::tr("TrueOS Mouse Settings"), QObject::tr("TrueOS Mouse Settings"), "preferences-desktop-mouse",QObject::tr("Adjust mouse devices"), "user", QStringList(), QStringList() << "user"<<"speed"<<"accel"<<"mouse"); // list << Pages::PageInfo("bluetooth-settings", QObject::tr("TrueOS Bluetooth Settings"), QObject::tr("TrueOS Bluetooth Settings"), "preferences-desktop-bluetooth",QObject::tr("Setup Bluetooth devices"), "user", QStringList(), QStringList() << "user"<<"bluetooth"<<"audio"); @@ -72,7 +74,7 @@ PageWidget* Pages::GetNewPage(QString id, QWidget *parent){ else if(id=="session-locale"){ page = new page_session_locale(parent); } else if(id=="session-options"){ page = new page_session_options(parent); } else if(id=="compton"){ page = new page_compton(parent); } - + else if(id=="soundtheme"){ page = new page_soundtheme(parent); } // else if(id=="mouse-settings"){ page = new page_mouse_trueos(parent); } // else if(id=="bluetooth-settings"){ page = new page_bluetooth_trueos(parent); } //Return the main control_panel page as the fallback/default diff --git a/src-qt5/core-utils/lumina-config/pages/page_defaultapps.cpp b/src-qt5/core-utils/lumina-config/pages/page_defaultapps.cpp index c2d689ec..df7ae516 100644 --- a/src-qt5/core-utils/lumina-config/pages/page_defaultapps.cpp +++ b/src-qt5/core-utils/lumina-config/pages/page_defaultapps.cpp @@ -245,7 +245,7 @@ void page_defaultapps::setdefaultitem(){ //Now set the items for(int i=0; i<list.length(); i++){ //Set it in the back end - LXDG::setDefaultAppForMime(list[i]->whatsThis(0), app.section("/",-1)); + LXDG::setDefaultAppForMime(list[i]->whatsThis(0), app); //Set it in the UI XDGDesktop desk(app); list[i]->setWhatsThis(1,app); //app path diff --git a/src-qt5/core-utils/lumina-config/pages/page_soundtheme.cpp b/src-qt5/core-utils/lumina-config/pages/page_soundtheme.cpp new file mode 100644 index 00000000..fbb0e7e7 --- /dev/null +++ b/src-qt5/core-utils/lumina-config/pages/page_soundtheme.cpp @@ -0,0 +1,113 @@ +//=========================================== +// Lumina Desktop Source Code +// Copyright (c) 2017, JT (q5sys) +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#include "page_soundtheme.h" +#include "ui_page_soundtheme.h" +#include "../AppDialog.h" + +//========== +// PUBLIC +//========== +page_soundtheme::page_soundtheme(QWidget *parent) : PageWidget(parent), ui(new Ui::page_soundtheme()){ + ui->setupUi(this); +} + +page_soundtheme::~page_soundtheme(){ + +} + +//================ +// PUBLIC SLOTS +//================ +void page_soundtheme::SaveSettings(){ + sessionsettings = new QSettings("lumina-desktop", "sessionsettings"); + + sessionsettings->setValue("PlayStartupAudio", ui->checkBox_startup->isChecked()); + sessionsettings->setValue("audiofiles/login", ui->label_startup->whatsThis()); + + sessionsettings->setValue("PlayLogoutAudio", ui->checkBox_logout->isChecked()); + sessionsettings->setValue("audiofiles/logout", ui->label_logout->whatsThis()); + + sessionsettings->setValue("PlayBatteryLowAudio", ui->checkBox_battery->isChecked()); + sessionsettings->setValue("audiofiles/batterylow", ui->label_battery->whatsThis()); + +} + +void page_soundtheme::LoadSettings(int){ + emit ChangePageTitle( tr("Sound Themes") ); + + sessionsettings = new QSettings("lumina-desktop", "sessionsettings"); + + ui->label_startup->setText(sessionsettings->value("audiofiles/login").toString().section("/",-1)); + ui->label_startup->setToolTip(sessionsettings->value("audiofiles/batterylow").toString()); + ui->label_startup->setWhatsThis(sessionsettings->value("audiofiles/login").toString()); + bool playstartup = sessionsettings->value("PlayStartupAudio").toBool(); + if( playstartup ){ ui->checkBox_startup->setChecked(true); } + + ui->label_logout->setText(sessionsettings->value("audiofiles/logout").toString().section("/",-1)); + ui->label_startup->setToolTip(sessionsettings->value("audiofiles/batterylow").toString()); + ui->label_logout->setWhatsThis(sessionsettings->value("audiofiles/logout").toString()); + bool playlogout = sessionsettings->value("PlayLogoutAudio").toBool(); + if( playlogout ){ ui->checkBox_logout->setChecked(true); } + + ui->label_battery->setText(sessionsettings->value("audiofiles/batterylow").toString().section("/",-1)); + ui->label_startup->setToolTip(sessionsettings->value("audiofiles/batterylow").toString()); + ui->label_battery->setWhatsThis(sessionsettings->value("audiofiles/batterylow").toString()); + bool playbattery = sessionsettings->value("PlayBatteryLowAudio").toBool(); + if( playbattery ){ ui->checkBox_battery->setChecked(true);} + emit HasPendingChanges(false); +} + +//================= +// PRIVATE +//================= + +//================= +// PRIVATE SLOTS +//================= + +void page_soundtheme::on_pushButton_startup_clicked(){ + QString startupsound = QFileDialog::getOpenFileName(this, tr("Select Startup Sound"), QDir::homePath()); + if(startupsound.isEmpty()){ return; } + ui->label_startup->setText(startupsound.section("/",-1)); + ui->label_startup->setToolTip(startupsound); + ui->label_startup->setWhatsThis(startupsound); + settingChanged(); + qDebug() << "startup whats this" << startupsound; +} + +void page_soundtheme::on_pushButton_logout_clicked(){ + QString logoutsound = QFileDialog::getOpenFileName(this, tr("Select Logout Sound"), QDir::homePath()); + if(logoutsound.isEmpty()){ return; } + ui->label_logout->setText(logoutsound.section("/",-1)); + ui->label_logout->setToolTip(logoutsound); + ui->label_logout->setWhatsThis(logoutsound); + qDebug() << "startup whats this" << logoutsound; + settingChanged(); +} + +void page_soundtheme::on_pushButton_battery_clicked(){ + QString batterysound = QFileDialog::getOpenFileName(this, tr("Select Low Battery Sound"), QDir::homePath()); + if(batterysound.isEmpty()){ return; } + ui->label_battery->setText(batterysound.section("/",-1)); + ui->label_battery->setToolTip(batterysound); + ui->label_battery->setWhatsThis(batterysound); + qDebug() << "startup whats this" << batterysound; + settingChanged(); +} + + +void page_soundtheme::on_checkBox_startup_toggled(bool checked){ + settingChanged(); +} + +void page_soundtheme::on_checkBox_logout_toggled(bool checked){ + settingChanged(); +} + +void page_soundtheme::on_checkBox_battery_toggled(bool checked){ + settingChanged(); +} diff --git a/src-qt5/core-utils/lumina-config/pages/page_soundtheme.h b/src-qt5/core-utils/lumina-config/pages/page_soundtheme.h new file mode 100644 index 00000000..5d3bed66 --- /dev/null +++ b/src-qt5/core-utils/lumina-config/pages/page_soundtheme.h @@ -0,0 +1,42 @@ +//=========================================== +// Lumina Desktop Source Code +// Copyright (c) 2017, JT (q5sys) +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#ifndef _LUMINA_CONFIG_PAGE_SOUNDTHEME_H +#define _LUMINA_CONFIG_PAGE_SOUNDTHEME_H +#include "../globals.h" +#include "PageWidget.h" + +namespace Ui{ + class page_soundtheme; +}; + +class page_soundtheme : public PageWidget{ + Q_OBJECT +public: + page_soundtheme(QWidget *parent); + ~page_soundtheme(); + +public slots: + + void SaveSettings(); + void LoadSettings(int screennum); + + +private: + Ui::page_soundtheme *ui; + QString startupsound, logoutsound, batterysound; + QSettings *sessionsettings; + +private slots: + + void on_pushButton_startup_clicked(); + void on_pushButton_logout_clicked(); + void on_pushButton_battery_clicked(); + void on_checkBox_startup_toggled(bool checked); + void on_checkBox_logout_toggled(bool checked); + void on_checkBox_battery_toggled(bool checked); +}; +#endif diff --git a/src-qt5/core-utils/lumina-config/pages/page_soundtheme.ui b/src-qt5/core-utils/lumina-config/pages/page_soundtheme.ui new file mode 100644 index 00000000..329b68a4 --- /dev/null +++ b/src-qt5/core-utils/lumina-config/pages/page_soundtheme.ui @@ -0,0 +1,156 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>page_soundtheme</class> + <widget class="QWidget" name="page_soundtheme"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>455</width> + <height>326</height> + </rect> + </property> + <property name="windowTitle"> + <string>Form</string> + </property> + <layout class="QVBoxLayout" name="verticalLayout"> + <item> + <layout class="QHBoxLayout" name="horizontalLayout"> + <item> + <widget class="QCheckBox" name="checkBox_startup"> + <property name="text"> + <string>Enabled</string> + </property> + </widget> + </item> + <item> + <widget class="Line" name="line_3"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + </widget> + </item> + <item> + <widget class="QLabel" name="label_startup"> + <property name="text"> + <string>TextLabel</string> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QPushButton" name="pushButton_startup"> + <property name="text"> + <string>Set Startup Audio</string> + </property> + </widget> + </item> + </layout> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_2"> + <item> + <widget class="QCheckBox" name="checkBox_logout"> + <property name="text"> + <string>Enabled</string> + </property> + </widget> + </item> + <item> + <widget class="Line" name="line_2"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + </widget> + </item> + <item> + <widget class="QLabel" name="label_logout"> + <property name="text"> + <string>TextLabel</string> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer_2"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QPushButton" name="pushButton_logout"> + <property name="text"> + <string>Set Logout Audio</string> + </property> + </widget> + </item> + </layout> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_3"> + <item> + <widget class="QCheckBox" name="checkBox_battery"> + <property name="text"> + <string>Enabled</string> + </property> + </widget> + </item> + <item> + <widget class="Line" name="line"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + </widget> + </item> + <item> + <widget class="QLabel" name="label_battery"> + <property name="text"> + <string>TextLabel</string> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer_3"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QPushButton" name="pushButton_battery"> + <property name="text"> + <string>Set Battery Audio</string> + </property> + </widget> + </item> + </layout> + </item> + </layout> + </widget> + <resources/> + <connections/> +</ui> diff --git a/src-qt5/core-utils/lumina-config/pages/page_wallpaper.cpp b/src-qt5/core-utils/lumina-config/pages/page_wallpaper.cpp index 6842dce4..839269ca 100644 --- a/src-qt5/core-utils/lumina-config/pages/page_wallpaper.cpp +++ b/src-qt5/core-utils/lumina-config/pages/page_wallpaper.cpp @@ -221,7 +221,7 @@ void page_wallpaper::deskbgcoloradded(){ ui->combo_desk_bg->addItem( QString(tr("Solid Color: %1")).arg(color), color); //Now move to the last item in the list (the new image(s)); ui->combo_desk_bg->setCurrentIndex( ui->combo_desk_bg->count()-1 ); - + emit HasPendingChanges(true); } diff --git a/src-qt5/core-utils/lumina-config/pages/pages.pri b/src-qt5/core-utils/lumina-config/pages/pages.pri index ce167d27..585a2922 100644 --- a/src-qt5/core-utils/lumina-config/pages/pages.pri +++ b/src-qt5/core-utils/lumina-config/pages/pages.pri @@ -13,8 +13,9 @@ HEADERS += $${PWD}/getPage.h \ $${PWD}/page_interface_panels.h \ $${PWD}/page_session_locale.h \ $${PWD}/page_session_options.h \ - $${PWD}/page_compton.h -# $${PWD}/page_bluetooth_trueos.h + $${PWD}/page_compton.h \ + $$PWD/page_soundtheme.h +# $${PWD}/page_bluetooth_trueos.h # $${PWD}/page_mouse_trueos.h @@ -31,7 +32,8 @@ SOURCES += $${PWD}/getPage.cpp \ $${PWD}/page_interface_panels.cpp \ $${PWD}/page_session_locale.cpp \ $${PWD}/page_session_options.cpp \ - $${PWD}/page_compton.cpp + $${PWD}/page_compton.cpp \ + $$PWD/page_soundtheme.cpp # $${PWD}/page_bluetooth_trueos.cpp # $${PWD}/page_mouse_trueos.cpp @@ -49,6 +51,7 @@ FORMS += $${PWD}/page_main.ui \ $${PWD}/page_interface_panels.ui \ $${PWD}/page_session_locale.ui \ $${PWD}/page_session_options.ui \ - $${PWD}/page_compton.ui + $${PWD}/page_compton.ui \ + $$PWD/page_soundtheme.ui # $${PWD}/page_bluetooth_trueos.ui # $${PWD}/page_mouse_trueos.ui diff --git a/src-qt5/core-utils/lumina-xconfig/ScreenSettings.cpp b/src-qt5/core-utils/lumina-xconfig/ScreenSettings.cpp index 3c0edc76..a9d40554 100644 --- a/src-qt5/core-utils/lumina-xconfig/ScreenSettings.cpp +++ b/src-qt5/core-utils/lumina-xconfig/ScreenSettings.cpp @@ -13,6 +13,7 @@ void RRSettings::ApplyPrevious(){ QList<ScreenInfo> screens; QSettings set("lumina-desktop","lumina-xconfig"); + if(set.allKeys().isEmpty()){ return; } QString profile = set.value("default_profile","").toString(); if(profile.isEmpty() || !savedProfiles().contains(profile) ){ screens = PreviousSettings(); } else{ screens = PreviousSettings(profile); } @@ -167,6 +168,13 @@ bool RRSettings::SaveScreens(QList<ScreenInfo> screens, QString profile){ //Apply screen configuration void RRSettings::Apply(QList<ScreenInfo> screens){ + //Verify that there is at least 1 active/enabled monitor first + bool foundactive = false; + for(int i=0; i<screens.length() && !foundactive; i++){ + if(screens[i].isactive){ foundactive = (screens[i].applyChange!=1); } //make sure we are not turning it off + else{ foundactive = (screens[i].applyChange==2); } + } + if(!foundactive){ return; } //never disable all screens //Read all the settings and create the xrandr options to maintain these settings QStringList opts; //qDebug() << "Apply:" << screens.length(); diff --git a/src-qt5/core/README.md b/src-qt5/core/README.md index 6a17d900..6ed23f78 100644 --- a/src-qt5/core/README.md +++ b/src-qt5/core/README.md @@ -27,6 +27,7 @@ Other Files that get installed if "core" is built directly: * svg * widgets * x11extras + * NOTE: Qt5 platform theme and developer libraries are also required to build the Lumina theme engine plugin ("qtbase5-*" on Ubuntu 17.10) 2. X11 Libraries * libXdamage 3. XCB Libraries diff --git a/src-qt5/core/libLumina/ExternalProcess.h b/src-qt5/core/libLumina/ExternalProcess.h index b1e56af8..2a6f4949 100644 --- a/src-qt5/core/libLumina/ExternalProcess.h +++ b/src-qt5/core/libLumina/ExternalProcess.h @@ -15,6 +15,7 @@ #include <QString> #include <QTimer> #include <QApplication> +#include <QDebug> class ExternalProcess : public QProcess{ Q_OBJECT @@ -23,18 +24,21 @@ private: private slots: void resetCursor(){ + //qDebug() << "External Process: Reset Mouse Cursor =" << !cursorRestored; if(!cursorRestored){ QApplication::restoreOverrideCursor(); cursorRestored = true; } } void processStarting(){ + //qDebug() << "Starting External Process: Mouse Notification =" << !cursorRestored; if(!cursorRestored){ - QApplication::setOverrideCursor( QCursor(Qt::WaitCursor) ); - QTimer::singleShot(15000, this, SLOT(resetCursor()) ); + QApplication::setOverrideCursor( QCursor(Qt::BusyCursor) ); + QTimer::singleShot(3000, this, SLOT(resetCursor()) ); } } void processFinished(){ + //qDebug() << "External Process Finished: Reset Mouse Cursor =" << !cursorRestored; if(!cursorRestored){ QApplication::restoreOverrideCursor(); cursorRestored = true; @@ -53,6 +57,7 @@ public: this->setStandardOutputFile(logfile); } //Setup the connection for automatic cleanup + connect(this, SIGNAL(started()), this, SLOT(processStarting()) ); connect(this, SIGNAL(finished(int, QProcess::ExitStatus)), this, SLOT(processFinished()) ); } @@ -62,7 +67,7 @@ public: }*/ } - static void launch(QString program, QStringList args = QStringList(), bool manageCursors = false){ + static void launch(QString program, QStringList args = QStringList(), bool manageCursors = true){ //Quick launch of a process with logging disabled and automatic cleanup ExternalProcess *tmp = new ExternalProcess("", manageCursors); if(args.isEmpty()){ tmp->start(program); } diff --git a/src-qt5/core/libLumina/LDesktopUtils.cpp b/src-qt5/core/libLumina/LDesktopUtils.cpp index 54e660e6..f1b3de17 100644 --- a/src-qt5/core/libLumina/LDesktopUtils.cpp +++ b/src-qt5/core/libLumina/LDesktopUtils.cpp @@ -155,8 +155,8 @@ void LDesktopUtils::LoadSystemDefaults(bool skipOS){ if(sysDefaults.isEmpty()){ sysDefaults = LUtils::readFile(LOS::LuminaShare()+"luminaDesktop.conf"); } //Find the number of the left-most desktop screen QString screen = "0"; - QDesktopWidget *desk =QApplication::desktop(); QRect screenGeom; + QDesktopWidget *desk =QApplication::desktop(); for(int i=0; i<desk->screenCount(); i++){ if(desk->screenGeometry(i).x()==0){ screen = QString::number(i); @@ -401,7 +401,7 @@ void LDesktopUtils::LoadSystemDefaults(bool skipOS){ QStringList syscolors = LTHEME::availableSystemColors(); //theme file //qDebug() << "Detected Themes/colors:" << systhemes << syscolors; - if( !themesettings[0].startsWith("/") || !QFile::exists(themesettings[0]) || !themesettings[0].endsWith(".qss.template")){ + if( !themesettings[0].startsWith("/") || !QFile::exists(themesettings[0]) || !themesettings[0].endsWith(".qss")){ themesettings[0] = themesettings[0].section(".qss",0,0).simplified(); for(int i=0; i<systhemes.length(); i++){ if(systhemes[i].startsWith(themesettings[0]+"::::",Qt::CaseInsensitive)){ @@ -411,9 +411,9 @@ void LDesktopUtils::LoadSystemDefaults(bool skipOS){ } } //color file - if( !themesettings[1].startsWith("/") || !QFile::exists(themesettings[1]) || !themesettings[1].endsWith(".qss.colors") ){ + if( !themesettings[1].startsWith("/") || !QFile::exists(themesettings[1]) || !themesettings[1].endsWith(".conf") ){ //Remove any extra/invalid extension - themesettings[1] = themesettings[1].section(".qss",0,0).simplified(); + themesettings[1] = themesettings[1].section(".conf",0,0).simplified(); for(int i=0; i<syscolors.length(); i++){ if(syscolors[i].startsWith(themesettings[1]+"::::",Qt::CaseInsensitive)){ themesettings[1] = syscolors[i].section("::::",1,1); //Replace with the full path @@ -434,13 +434,6 @@ void LDesktopUtils::LoadSystemDefaults(bool skipOS){ //Now save the settings files if(setTheme){ LTHEME::setCurrentSettings( themesettings[0], themesettings[1], themesettings[2], themesettings[3], themesettings[4]); - QSettings themeset("lthemeengine","lthemeengine"); - themeset.setValue("Appearance/icon_theme",themesettings[2]); - //Quick hack for a "dark" theme/color to be uniform across the desktop/applications - if(themesettings[0].contains("DarkGlass") || themesettings[1].contains("Black")){ - themeset.setValue("Appearance/custom_palette", true); - themeset.setValue("Appearance/color_scheme_path", LOS::LuminaShare().section("/",0,-3)+"/lthemeengine/colors/darker.conf"); - } } LUtils::writeFile(setdir+"/sessionsettings.conf", sesset, true); LUtils::writeFile(setdir+"/desktopsettings.conf", deskset, true); @@ -463,12 +456,14 @@ void LDesktopUtils::LoadSystemDefaults(bool skipOS){ } -bool LDesktopUtils::checkUserFiles(QString lastversion){ +bool LDesktopUtils::checkUserFiles(QString lastversion, QString currentversion){ + //WARNING: Make sure you create a QApplication instance before calling this function!!! + //internal version conversion examples: // [1.0.0 -> 1000000], [1.2.3 -> 1002003], [0.6.1 -> 6001] //returns true if something changed int oldversion = LDesktopUtils::VersionStringToNumber(lastversion); - int nversion = LDesktopUtils::VersionStringToNumber(QApplication::applicationVersion()); + int nversion = LDesktopUtils::VersionStringToNumber(currentversion); bool newversion = ( oldversion < nversion ); //increasing version number bool newrelease = ( lastversion.contains("-devel", Qt::CaseInsensitive) && QApplication::applicationVersion().contains("-release", Qt::CaseInsensitive) ); //Moving from devel to release @@ -510,6 +505,43 @@ bool LDesktopUtils::checkUserFiles(QString lastversion){ } LUtils::writeFile(dset, DS, true); } + if(oldversion<1003004){ + //Lumina 1.3.4 - Migrate theme settings from old format to the new theme engine format + QString themefile = QString(getenv("XDG_CONFIG_HOME"))+"/lthemeengine/lthemeengine.conf"; + if(!QFile::exists(themefile)){ + QDir dir; + dir.mkpath(themefile.section("/",0,-2)); //make sure the main directory exists first + //Need to migrate theme settings from the old location to the new one + QSettings newtheme(themefile, QSettings::NativeFormat); + qDebug() << "Migrating Theme settings:" << newtheme.fileName(); + QStringList oldtheme = LUtils::readFile( QString(getenv("XDG_CONFIG_HOME"))+"/lumina-desktop/themesettings.cfg" ); + //Find the system install location for the theme engine for use later + QString enginedir = LOS::LuminaShare()+"/../lthemeengine/"; + //Find/match the icon theme + QString tmp = oldtheme.filter("ICONTHEME=").join("\n").section("=",1,-1).section("\n",0,0).simplified(); + if(tmp.isEmpty()){ tmp = "material-design-light"; } //unknown Icon theme - use the default "light" version + newtheme.setValue("Appearance/icon_theme",tmp); + //Quick detect/adjust of the tone of the color theme based on the icons/colors (no 1-to-1 color theme matching between systems) + bool isdarktheme = tmp.contains("dark"); + isdarktheme = isdarktheme || oldtheme.filter("COLORFILE=").join("\n").section("=",1,-1).section("\n",0,0).contains("DarkGlass"); + //Quick adjust for the material-design icon theme to make it match the current dark/light theme + if(tmp.contains("material-design")){ + newtheme.setValue("Appearance/icon_theme", QString("material-design-")+ (isdarktheme ? "dark" : "light") ); + } + if(isdarktheme){ + newtheme.setValue("Appearance/custom_palette", true); + newtheme.setValue("Appearance/color_scheme_path", enginedir+"colors/darker.conf"); + newtheme.setValue("Interface/desktop_stylesheets", QStringList() << enginedir+"desktop_qss/DarkGlass.qss"); + }else{ + newtheme.setValue("Appearance/custom_palette", true); + newtheme.setValue("Appearance/color_scheme_path", enginedir+"colors/airy.conf"); + newtheme.setValue("Interface/desktop_stylesheets", QStringList() << enginedir+"desktop_qss/Glass.qss"); + } + newtheme.setValue("Appearance/style", "Fusion"); + newtheme.setValue("Interface/stylesheets", QStringList() << enginedir+"qss/tooltip-simple.qss" << enginedir+"qss/scrollbar-simple.qss" << enginedir+"qss/sliders-simple.qss"); + newtheme.sync(); //flush this to file right now + } //end check for theme file existance + } //Check the fluxbox configuration files dset = QString(getenv("XDG_CONFIG_HOME"))+"/lumina-desktop/"; diff --git a/src-qt5/core/libLumina/LDesktopUtils.h b/src-qt5/core/libLumina/LDesktopUtils.h index a9b44c67..b0ce6ba5 100644 --- a/src-qt5/core/libLumina/LDesktopUtils.h +++ b/src-qt5/core/libLumina/LDesktopUtils.h @@ -43,7 +43,7 @@ public: //Load the default setup for the system static void LoadSystemDefaults(bool skipOS = false); - static bool checkUserFiles(QString lastversion); //returns true if something changed + static bool checkUserFiles(QString lastversion, QString currentversion); //returns true if something changed static int VersionStringToNumber(QString version); //convert the lumina version string to a number for comparisons //Migrating desktop settings from one ID to another diff --git a/src-qt5/core/libLumina/LDesktopUtils.pri b/src-qt5/core/libLumina/LDesktopUtils.pri index 80bbcfa8..fcacc586 100644 --- a/src-qt5/core/libLumina/LDesktopUtils.pri +++ b/src-qt5/core/libLumina/LDesktopUtils.pri @@ -5,3 +5,4 @@ INCLUDEPATH *= ${PWD} #Now the other dependendies of it include(LUtils.pri) +include(LuminaThemes.pri) diff --git a/src-qt5/core/libLumina/LUtils.cpp b/src-qt5/core/libLumina/LUtils.cpp index 491778ca..3d3c878a 100644 --- a/src-qt5/core/libLumina/LUtils.cpp +++ b/src-qt5/core/libLumina/LUtils.cpp @@ -14,7 +14,7 @@ #include <unistd.h> -inline QStringList ProcessRun(QString cmd, QStringList args){ +/*inline QStringList ProcessRun(QString cmd, QStringList args){ //Assemble outputs QStringList out; out << "1" << ""; //error code, string output QProcess proc; @@ -38,50 +38,58 @@ inline QStringList ProcessRun(QString cmd, QStringList args){ out[0] = QString::number(proc.exitCode()); out[1] = info+QString(proc.readAllStandardOutput()); return out; -} +}*/ + //============= // LUtils Functions //============= -int LUtils::runCmd(QString cmd, QStringList args){ - /*QProcess proc; - proc.setProcessChannelMode(QProcess::MergedChannels); - if(args.isEmpty()){ - proc.start(cmd); - }else{ - proc.start(cmd, args); +QString LUtils::runCommand(bool &success, QString command, QStringList arguments, QString workdir, QStringList env){ + QProcess proc; + proc.setProcessChannelMode(QProcess::MergedChannels); //need output + //First setup the process environment as necessary + QProcessEnvironment PE = QProcessEnvironment::systemEnvironment(); + if(!env.isEmpty()){ + for(int i=0; i<env.length(); i++){ + if(!env[i].contains("=")){ continue; } + PE.insert(env[i].section("=",0,0), env[i].section("=",1,100)); + } + } + proc.setProcessEnvironment(PE); + //if a working directory is specified, check it and use it + if(!workdir.isEmpty()){ + proc.setWorkingDirectory(workdir); } - //if(!proc.waitForStarted(30000)){ return 1; } //process never started - max wait of 30 seconds - while(!proc.waitForFinished(300)){ + //Now run the command (with any optional arguments) + if(arguments.isEmpty()){ proc.start(command); } + else{ proc.start(command, arguments); } + //Wait for the process to finish (but don't block the event loop) + QString info; + while(!proc.waitForFinished(1000)){ if(proc.state() == QProcess::NotRunning){ break; } //somehow missed the finished signal - QCoreApplication::processEvents(); + QString tmp = proc.readAllStandardOutput(); + if(tmp.isEmpty()){ proc.terminate(); } + else{ info.append(tmp); } } - int ret = proc.exitCode(); - return ret;*/ - QFuture<QStringList> future = QtConcurrent::run(ProcessRun, cmd, args); - return future.result()[0].toInt(); //turn it back into an integer return code + info.append(proc.readAllStandardOutput()); //make sure we don't miss anything in the output + success = (proc.exitCode()==0); //return success/failure + return info; +} + +int LUtils::runCmd(QString cmd, QStringList args){ + bool success; + LUtils::runCommand(success, cmd, args); + return success; + + /*QFuture<QStringList> future = QtConcurrent::run(ProcessRun, cmd, args); + return future.result()[0].toInt(); //turn it back into an integer return code*/ } QStringList LUtils::getCmdOutput(QString cmd, QStringList args){ - /*QProcess proc; - QProcessEnvironment env = QProcessEnvironment::systemEnvironment(); - env.insert("LANG", "C"); - env.insert("LC_MESSAGES", "C"); - proc.setProcessEnvironment(env); - proc.setProcessChannelMode(QProcess::MergedChannels); - if(args.isEmpty()){ - proc.start(cmd); - }else{ - proc.start(cmd,args); - } - //if(!proc.waitForStarted(30000)){ return QStringList(); } //process never started - max wait of 30 seconds - while(!proc.waitForFinished(300)){ - if(proc.state() == QProcess::NotRunning){ break; } //somehow missed the finished signal - QCoreApplication::processEvents(); - } - QStringList out = QString(proc.readAllStandardOutput()).split("\n"); - return out;*/ - QFuture<QStringList> future = QtConcurrent::run(ProcessRun, cmd, args); - return future.result()[1].split("\n"); //Split the return message into lines + bool success; + QString log = LUtils::runCommand(success, cmd, args); + return log.split("\n"); + /*QFuture<QStringList> future = QtConcurrent::run(ProcessRun, cmd, args); + return future.result()[1].split("\n"); //Split the return message into lines*/ } QStringList LUtils::readFile(QString filepath){ @@ -113,6 +121,10 @@ bool LUtils::writeFile(QString filepath, QStringList contents, bool overwrite){ } bool LUtils::isValidBinary(QString& bin){ + //Trim off any quotes + if(bin.startsWith("\"") && bin.endsWith("\"")){ bin.chop(1); bin = bin.remove(0,1); } + if(bin.startsWith("\'") && bin.endsWith("\'")){ bin.chop(1); bin = bin.remove(0,1); } + //Now look for relative/absolute path if(!bin.startsWith("/")){ //Relative path: search for it on the current "PATH" settings QStringList paths = QString(qgetenv("PATH")).split(":"); diff --git a/src-qt5/core/libLumina/LUtils.h b/src-qt5/core/libLumina/LUtils.h index a494d4da..ee04c023 100644 --- a/src-qt5/core/libLumina/LUtils.h +++ b/src-qt5/core/libLumina/LUtils.h @@ -30,6 +30,9 @@ class LUtils{ public: + //Run an external command and return output & exit code + static QString runCommand(bool &success, QString command, QStringList arguments = QStringList(), QString workdir = "", QStringList env = QStringList()); + //Run an external command and return the exit code static int runCmd(QString cmd, QStringList args = QStringList()); //Run an external command and return any text output (one line per entry) diff --git a/src-qt5/core/libLumina/LVideoLabel.cpp b/src-qt5/core/libLumina/LVideoLabel.cpp new file mode 100644 index 00000000..bddb1cba --- /dev/null +++ b/src-qt5/core/libLumina/LVideoLabel.cpp @@ -0,0 +1,120 @@ +#include "LVideoLabel.h" +#include <LuminaXDG.h> +#include <QCoreApplication> + +LVideoLabel::LVideoLabel(QString file, bool icons, QWidget *parent) : QLabel(parent) { + thumbnail = QPixmap(); + entered = false; + this->icons = icons; + filepath = file; + defaultThumbnail = LXDG::findIcon("unknown", "").pixmap(256,256); + + QTimer::singleShot(0, this, SLOT(initializeBackend()) ); +} + +LVideoLabel::~LVideoLabel() { + mediaPlayer->deleteLater(); + surface->deleteLater(); +} + +void LVideoLabel::initializeBackend(){ + mediaPlayer = new QMediaPlayer(this, QMediaPlayer::VideoSurface); + surface = new LVideoSurface(this); + mediaPlayer->setVideoOutput(surface); + mediaPlayer->setPlaybackRate(3); + mediaPlayer->setMuted(true); + + this->setPixmap(defaultThumbnail.scaled(this->size(),Qt::IgnoreAspectRatio)); + mediaPlayer->setMedia(QUrl::fromLocalFile(filepath)); + mediaPlayer->play(); + + this->connect(surface, SIGNAL(frameReceived(QPixmap)), this, SLOT(stopVideo(QPixmap))); + this->connect(mediaPlayer, SIGNAL(stateChanged(QMediaPlayer::State)), this, SLOT(stateChanged(QMediaPlayer::State))); + this->connect(mediaPlayer, SIGNAL(mediaStatusChanged(QMediaPlayer::MediaStatus)), this, SLOT(setDuration(QMediaPlayer::MediaStatus))); + this->connect(this, SIGNAL(rollOver()), surface, SLOT(switchRollOver())); +} + +void LVideoLabel::enableIcons() { + this->setPixmap(thumbnail.scaled(this->size(),Qt::IgnoreAspectRatio)); + icons = true; +} + +void LVideoLabel::disableIcons() { + this->setPixmap(defaultThumbnail.scaled(this->size(),Qt::IgnoreAspectRatio)); + icons = false; +} + +void LVideoLabel::stopVideo(QPixmap pix) { + if(!entered) { + emit frameReceived(pix); + if(thumbnail.isNull()) + thumbnail = pix; + if(icons) + this->setPixmap(thumbnail.scaled(this->size(),Qt::IgnoreAspectRatio)); + mediaPlayer->pause(); + }else { + if(icons) + this->setPixmap(pix.scaled(this->size(),Qt::IgnoreAspectRatio)); + } +} + +void LVideoLabel::stateChanged(QMediaPlayer::State state) { + //qDebug() << state; +} + +void LVideoLabel::setDuration(QMediaPlayer::MediaStatus status) { + //qDebug() << status; + if(status == QMediaPlayer::BufferedMedia && !entered) { //Set duration in the middle to capture the thumbnail + mediaPlayer->setPosition(mediaPlayer->duration() / 2); + mediaPlayer->play(); + }else if(status == QMediaPlayer::EndOfMedia && entered) { //Loop back to the beginning if playback started and at the end of the video + mediaPlayer->setPosition(0); + mediaPlayer->play(); + }else if(status == QMediaPlayer::InvalidMedia){ + mediaPlayer->stop(); + mediaPlayer->play(); + }/*else if(status == QMediaPlayer::LoadingMedia) { + mediaPlayer->pause(); + QTimer timer; + timer.setSingleShot(true); + timer.setInterval(300); + timer.start(); + qDebug() << "Timer Started" << timer.remainingTime(); + while(timer.isActive()) QCoreApplication::processEvents(QEventLoop::AllEvents, 5); + qDebug() << "Timer Finished" << timer.remainingTime(); + mediaPlayer->setPosition(0); + mediaPlayer->play(); + }*/ +} + +void LVideoLabel::resizeEvent(QResizeEvent *event) { + //Resize the current pixmap to match the new size + if(!thumbnail.isNull()){ + if(icons) + this->setPixmap(thumbnail.scaled(this->size(),Qt::IgnoreAspectRatio)); + else + this->setPixmap(defaultThumbnail.scaled(this->size(),Qt::IgnoreAspectRatio)); + } + QLabel::resizeEvent(event); +} + +//Start playing the video from the beginning when the mouse enters the label +void LVideoLabel::enterEvent(QEvent *event) { + if(icons) { + entered=true; + emit rollOver(); + mediaPlayer->setPosition(0); + mediaPlayer->play(); + } + QWidget::enterEvent(event); +} + +//Stop the video and set the thumbnail back to the middle of the video when the mouse leaves the label +void LVideoLabel::leaveEvent(QEvent *event) { + if(icons) { + entered=false; + mediaPlayer->setPosition(mediaPlayer->duration() / 2); + emit rollOver(); + } + QWidget::leaveEvent(event); +} diff --git a/src-qt5/core/libLumina/LVideoLabel.h b/src-qt5/core/libLumina/LVideoLabel.h new file mode 100644 index 00000000..56defb6a --- /dev/null +++ b/src-qt5/core/libLumina/LVideoLabel.h @@ -0,0 +1,42 @@ +#ifndef LVIDEOLABEL_H +#define LVIDEOLABEL_H + +#include <QLabel> +#include <QMediaPlayer> +#include <QTimer> +#include <QResizeEvent> +#include "LVideoSurface.h" + +class LVideoLabel : public QLabel{ + Q_OBJECT + public: + LVideoLabel(QString, bool, QWidget* parent=NULL); + ~LVideoLabel(); + void enableIcons(); + void disableIcons(); + + protected: + void enterEvent(QEvent*); + void leaveEvent(QEvent*); + void resizeEvent(QResizeEvent*); + + signals: + void rollOver(); + void frameReceived(QPixmap); + + private slots: + void initializeBackend(); + void stopVideo(QPixmap); + void setDuration(QMediaPlayer::MediaStatus); + void stateChanged(QMediaPlayer::State); + + private: + QMediaPlayer *mediaPlayer; + LVideoSurface *surface; + QPixmap thumbnail; + QPixmap defaultThumbnail; + bool entered; + bool icons; + QString filepath; +}; +#endif diff --git a/src-qt5/core/libLumina/LVideoLabel.pri b/src-qt5/core/libLumina/LVideoLabel.pri new file mode 100644 index 00000000..06395c8d --- /dev/null +++ b/src-qt5/core/libLumina/LVideoLabel.pri @@ -0,0 +1,13 @@ +QT *= multimedia + +HEADERS *= $${PWD}/LVideoLabel.h +HEADERS *= $${PWD}/LVideoSurface.h +HEADERS *= $${PWD}/LVideoWidget.h +SOURCES *= $${PWD}/LVideoLabel.cpp +SOURCES *= $${PWD}/LVideoSurface.cpp +SOURCES *= $${PWD}/LVideoWidget.cpp + +INCLUDEPATH *= ${PWD} + +#Now the other dependendies of it +#include(LUtils.pri) diff --git a/src-qt5/core/libLumina/LVideoSurface.cpp b/src-qt5/core/libLumina/LVideoSurface.cpp new file mode 100644 index 00000000..3aaa81f0 --- /dev/null +++ b/src-qt5/core/libLumina/LVideoSurface.cpp @@ -0,0 +1,60 @@ +#include "LVideoSurface.h" +#include <QDebug> + +LVideoSurface::LVideoSurface(QObject *parent) : QAbstractVideoSurface(parent) { + frameImage = QPixmap(); + entered = false; +} + +bool LVideoSurface::present(const QVideoFrame &frame) { + //qDebug() << surfaceFormat().frameSize() << frame.size(); + if(!frameImage.isNull() && !entered) { + emit frameReceived(frameImage); + return true; + } + + if(frame.isValid()) { + //qDebug() << "Recording Frame"; + //qDebug() << surfaceFormat().frameSize() << frame.size(); + QVideoFrame icon(frame); + icon.map(QAbstractVideoBuffer::ReadOnly); + QImage img(icon.bits(), icon.width(), icon.height(), icon.bytesPerLine(), QVideoFrame::imageFormatFromPixelFormat(frame.pixelFormat())); + + if((frameImage.isNull() && !entered) or entered) + frameImage = QPixmap::fromImage(img.copy(img.rect())); + + icon.unmap(); + emit frameReceived(frameImage); + return true; + } + return false; +} + +QList<QVideoFrame::PixelFormat> LVideoSurface::supportedPixelFormats(QAbstractVideoBuffer::HandleType type = QAbstractVideoBuffer::NoHandle) const { + Q_UNUSED(type); + return QList<QVideoFrame::PixelFormat>() << QVideoFrame::Format_ARGB32 << QVideoFrame::Format_RGB32 << QVideoFrame::Format_RGB24 + << QVideoFrame::Format_RGB565 << QVideoFrame::Format_RGB555 << QVideoFrame::Format_BGRA32 << QVideoFrame::Format_BGR32; +} + +void LVideoSurface::stop() { + QAbstractVideoSurface::stop(); +} + +void LVideoSurface::switchRollOver() { + entered = !entered; +} + +bool LVideoSurface::start(const QVideoSurfaceFormat &format) { + const QImage::Format imageFormat = QVideoFrame::imageFormatFromPixelFormat(format.pixelFormat()); + const QSize size = format.frameSize(); + + //QVideoSurfaceFormat newFormat = format; + //Shrink the frames passed through the format to a smaller, thumbnail appropriate size and increase the frame rate + //newFormat.setFrameSize(258,258); + //newFormat.setFrameRate(90); + + if (imageFormat != QImage::Format_Invalid && !size.isEmpty()) + QAbstractVideoSurface::start(format); + + return (imageFormat != QImage::Format_Invalid && !size.isEmpty()); +} diff --git a/src-qt5/core/libLumina/LVideoSurface.h b/src-qt5/core/libLumina/LVideoSurface.h new file mode 100644 index 00000000..7a3dcaad --- /dev/null +++ b/src-qt5/core/libLumina/LVideoSurface.h @@ -0,0 +1,26 @@ +#ifndef LVIDEOSURFACE_H +#define LVIDEOSURFACE_H + +#include <QAbstractVideoSurface> +#include <QVideoSurfaceFormat> +#include <QPixmap> +#include <QDebug> + +class LVideoSurface : public QAbstractVideoSurface { + Q_OBJECT + + public: + LVideoSurface(QObject *parent=0); + virtual bool present(const QVideoFrame&); + virtual QList<QVideoFrame::PixelFormat> supportedPixelFormats(QAbstractVideoBuffer::HandleType) const; + bool start(const QVideoSurfaceFormat &format); + void stop(); + signals: + void frameReceived(QPixmap); + public slots: + void switchRollOver(); + private: + QPixmap frameImage; + bool entered; +}; +#endif diff --git a/src-qt5/core/libLumina/LVideoSurface.pri b/src-qt5/core/libLumina/LVideoSurface.pri new file mode 100644 index 00000000..469b8c93 --- /dev/null +++ b/src-qt5/core/libLumina/LVideoSurface.pri @@ -0,0 +1,9 @@ +QT *= multimedia + +HEADERS *= $${PWD}/LVideoSurface.h +SOURCES *= $${PWD}/LVideoSurface.cpp + +INCLUDEPATH *= ${PWD} + +#Now the other dependendies of it +#include(LUtils.pri) diff --git a/src-qt5/core/libLumina/LVideoWidget.cpp b/src-qt5/core/libLumina/LVideoWidget.cpp new file mode 100644 index 00000000..f1f74414 --- /dev/null +++ b/src-qt5/core/libLumina/LVideoWidget.cpp @@ -0,0 +1,38 @@ +#include "LVideoWidget.h" + +LVideoWidget::LVideoWidget(QString file, QSize iconSize, bool icons, QWidget *parent) : QWidget(parent) { + iconLabel = new LVideoLabel(file, icons, parent); + textLabel = new QLabel(parent); + + layout = new QHBoxLayout(this); + layout->setAlignment(Qt::AlignLeft | Qt::AlignCenter); + layout->setContentsMargins(5,5,5,5); + layout->setStretchFactor(textLabel, 1); //make sure this always occupies all extra space + + textLabel->setText(file.section("/", -1)); + iconLabel->setGeometry(QRect(QPoint(0,0), iconSize)); + iconLabel->setFixedSize(iconSize); + iconLabel->setVisible(true); + textLabel->setVisible(true); + + layout->addWidget(iconLabel); + layout->addWidget(textLabel); +} + +LVideoWidget::~LVideoWidget() { + delete iconLabel; + delete textLabel; + delete layout; +} + +void LVideoWidget::setIconSize(QSize iconSize) { + iconLabel->setFixedSize(iconSize); +} + +void LVideoWidget::enableIcons() { + iconLabel->enableIcons(); +} + +void LVideoWidget::disableIcons() { + iconLabel->disableIcons(); +} diff --git a/src-qt5/core/libLumina/LVideoWidget.h b/src-qt5/core/libLumina/LVideoWidget.h new file mode 100644 index 00000000..610fd9e5 --- /dev/null +++ b/src-qt5/core/libLumina/LVideoWidget.h @@ -0,0 +1,22 @@ +#ifndef LVIDEOWIDGET_H +#define LVIDEOWIDGET_H + +#include "LVideoLabel.h" +#include <QHBoxLayout> +#include <QResizeEvent> + +class LVideoWidget : public QWidget { + Q_OBJECT + public: + LVideoWidget(QString, QSize, bool icons, QWidget* parent=NULL); + ~LVideoWidget(); + void setIconSize(QSize); + void disableIcons(); + void enableIcons(); + + private: + LVideoLabel *iconLabel; + QLabel *textLabel; + QHBoxLayout *layout; +}; +#endif diff --git a/src-qt5/core/libLumina/LuminaOS-FreeBSD.cpp b/src-qt5/core/libLumina/LuminaOS-FreeBSD.cpp index b9346565..29a58ec9 100644 --- a/src-qt5/core/libLumina/LuminaOS-FreeBSD.cpp +++ b/src-qt5/core/libLumina/LuminaOS-FreeBSD.cpp @@ -27,12 +27,12 @@ QString LOS::SysPrefix(){ return "/usr/"; } //Prefix for system QString LOS::ControlPanelShortcut(){ return "/usr/local/share/applications/pccontrol.desktop"; } //system control panel QString LOS::AppStoreShortcut(){ return "/usr/local/share/applications/appcafe.desktop"; } //graphical app/pkg manager //OS-specific RSS feeds (Format: QStringList[ <name>::::<url> ]; ) -QStringList LOS::RSSFeeds(){ +QStringList LOS::RSSFeeds(){ QStringList feeds; feeds << "FreeBSD News Feed::::https://www.freebsd.org/news/rss.xml"; feeds << "TrueOS News Feed::::http://www.trueos.org/?feed=rss2"; return feeds; - } + } // ==== ExternalDevicePaths() ==== QStringList LOS::ExternalDevicePaths(){ @@ -59,6 +59,25 @@ QStringList LOS::ExternalDevicePaths(){ i--; } } + //Also add info about anything in the "/media" directory + QDir media("/media"); + QFileInfoList list = media.entryInfoList(QDir::Files | QDir::Dirs | QDir::NoDotAndDotDot, QDir::Type | QDir::Name); + //qDebug() << "Media files found:" << list.length(); + for(int i=0; i<list.length(); i++){ + //qDebug() << "Found media entry:" << list[i].fileName(); + if(list[i].isDir()){ + devs << "UNKNOWN::::::::/media/"+list[i].fileName(); + }else if(list[i].fileName().endsWith(".desktop")){ + QString type = list[i].fileName().section(".desktop",0,-2); + //Determine the type of hardware device based on the dev node + if(type.startsWith("da")){ type = "USB"; } + else if(type.startsWith("ada")){ type = "HDRIVE"; } + else if(type.startsWith("mmsd")){ type = "SDCARD"; } + else if(type.startsWith("cd")||type.startsWith("acd")){ type="DVD"; } + else{ type = "UNKNOWN"; } + devs << type+"::::::::/media/"+list[i].fileName(); + } + } return devs; } diff --git a/src-qt5/core/libLumina/LuminaOS.h b/src-qt5/core/libLumina/LuminaOS.h index e7a72129..98137816 100644 --- a/src-qt5/core/libLumina/LuminaOS.h +++ b/src-qt5/core/libLumina/LuminaOS.h @@ -5,8 +5,8 @@ // See the LICENSE file for full details //=========================================== // This is the main interface for any OS-specific system calls -// To port Lumina to a different operating system, just create a file -// called "LuminaOS-<Operating System>.cpp", and use that file in +// To port Lumina to a different operating system, just create a file +// called "LuminaOS-<Operating System>.cpp", and use that file in // the project (libLumina.pro) instead of LuminaOS-FreeBSD.cpp //=========================================== #ifndef _LUMINA_LIBRARY_OS_H @@ -23,7 +23,7 @@ class LOS{ public: //Return the name of the OS being used - static QString OSName(); + static QString OSName(); //OS-specific prefix(s) static QString LuminaShare(); //Install dir for Lumina share files @@ -34,7 +34,7 @@ public: static QString ControlPanelShortcut(); static QString AppStoreShortcut(); - //OS-specific RSS feeds + //OS-specific RSS feeds static QStringList RSSFeeds(); //Return Format: QStringList[ <name>::::<url> ]; //Scan for mounted external devices @@ -81,13 +81,13 @@ public: static bool batteryIsCharging(); //Battery Time Remaining static int batterySecondsLeft(); //Returns: estimated number of seconds remaining - + //Get the checksum for a file static QStringList Checksums(QStringList filepaths); //Return: checksum of each input file (same order) - + //Get the filesystem capacity static QString FileSystemCapacity(QString dir) ; //Return: percentage capacity as give by the df command - + //System CPU Information static QStringList CPUTemperatures(); //Returns: List containing the temperature of any CPU's ("50C" for example) static int CPUUsagePercent(); //Returns: Overall percentage of the amount of CPU cycles in use (-1 for errors) diff --git a/src-qt5/core/libLumina/LuminaSingleApplication.cpp b/src-qt5/core/libLumina/LuminaSingleApplication.cpp index 6811d147..5d276805 100644 --- a/src-qt5/core/libLumina/LuminaSingleApplication.cpp +++ b/src-qt5/core/libLumina/LuminaSingleApplication.cpp @@ -19,7 +19,7 @@ LSingleApplication::LSingleApplication(int &argc, char **argv, QString appname) if(appname!="lumina-desktop"){ cTrans = LUtils::LoadTranslation(this, appname); }//save the translator for later //Initialize a couple convenience internal variables cfile = QDir::tempPath()+"/.LSingleApp-%1-%2-%3"; - QString username = QString(getlogin()); + QString username = QString(getuid()); //For locking the process use the official process name - not the user input (no masking) appname = this->applicationName(); cfile = cfile.arg( username, appname, QString::number(QX11Info::appScreen()) ); diff --git a/src-qt5/core/libLumina/LuminaThemes.cpp b/src-qt5/core/libLumina/LuminaThemes.cpp index ddbc7b37..857e604b 100644 --- a/src-qt5/core/libLumina/LuminaThemes.cpp +++ b/src-qt5/core/libLumina/LuminaThemes.cpp @@ -25,42 +25,42 @@ QStringList LTHEME::availableSystemThemes(){ //returns: [name::::path] for each item - QDir dir(LOS::LuminaShare()+"themes"); - QStringList list = dir.entryList(QStringList() <<"*.qss.template", QDir::Files, QDir::Name); + QDir dir(LOS::LuminaShare()+"../lthemeengine/desktop_qss"); + QStringList list = dir.entryList(QStringList() <<"*.qss", QDir::Files, QDir::Name); for(int i=0; i<list.length(); i++){ //Format the output entry [<name>::::<fullpath>] - list[i] = list[i].section(".qss.",0,0)+"::::"+dir.absoluteFilePath(list[i]); + list[i] = list[i].section(".qss",0,0)+"::::"+dir.absoluteFilePath(list[i]); } return list; } QStringList LTHEME::availableLocalThemes(){ //returns: [name::::path] for each item - QDir dir( QString(getenv("XDG_CONFIG_HOME"))+"/lumina-desktop/themes"); - QStringList list = dir.entryList(QStringList() <<"*.qss.template", QDir::Files, QDir::Name); + QDir dir( QString(getenv("XDG_CONFIG_HOME"))+"/lthemeengine/desktop_qss"); + QStringList list = dir.entryList(QStringList() <<"*.qss", QDir::Files, QDir::Name); for(int i=0; i<list.length(); i++){ //Format the output entry [<name>::::<fullpath>] - list[i] = list[i].section(".qss.",0,0)+"::::"+dir.absoluteFilePath(list[i]); + list[i] = list[i].section(".qss",0,0)+"::::"+dir.absoluteFilePath(list[i]); } return list; } QStringList LTHEME::availableSystemColors(){ //returns: [name::::path] for each item //returns: [name::::path] for each item - QDir dir(LOS::LuminaShare()+"colors"); - QStringList list = dir.entryList(QStringList() <<"*.qss.colors", QDir::Files, QDir::Name); + QDir dir(LOS::LuminaShare()+"../lthemeengine/colors"); + QStringList list = dir.entryList(QStringList() <<"*.conf", QDir::Files, QDir::Name); for(int i=0; i<list.length(); i++){ //Format the output entry [<name>::::<fullpath>] - list[i] = list[i].section(".qss.",0,0)+"::::"+dir.absoluteFilePath(list[i]); + list[i] = list[i].section(".conf",0,0)+"::::"+dir.absoluteFilePath(list[i]); } return list; } QStringList LTHEME::availableLocalColors(){ //returns: [name::::path] for each item - QDir dir(QString(getenv("XDG_CONFIG_HOME"))+"/lumina-desktop/colors"); - QStringList list = dir.entryList(QStringList() <<"*.qss.colors", QDir::Files, QDir::Name); + QDir dir(QString(getenv("XDG_CONFIG_HOME"))+"/lthemeengine/colors"); + QStringList list = dir.entryList(QStringList() <<"*.conf", QDir::Files, QDir::Name); for(int i=0; i<list.length(); i++){ //Format the output entry [<name>::::<fullpath>] - list[i] = list[i].section(".qss.",0,0)+"::::"+dir.absoluteFilePath(list[i]); + list[i] = list[i].section(".conf",0,0)+"::::"+dir.absoluteFilePath(list[i]); } return list; } @@ -122,15 +122,21 @@ QStringList LTHEME::availableSystemCursors(){ //returns: [name] for each item //Save a new theme/color file bool LTHEME::saveLocalTheme(QString name, QStringList contents){ - QString localdir = QString(getenv("XDG_CONFIG_HOME"))+"/lumina-desktop/themes/"; - if(!QFile::exists(localdir)){ QDir dir; dir.mkpath(localdir); } - return LUtils::writeFile(localdir+name+".qss.template", contents, true); + Q_UNUSED(name); + Q_UNUSED(contents); + return false; //old format - do not use!! + //QString localdir = QString(getenv("XDG_CONFIG_HOME"))+"/lumina-desktop/themes/"; + //if(!QFile::exists(localdir)){ QDir dir; dir.mkpath(localdir); } + //return LUtils::writeFile(localdir+name+".qss.template", contents, true); } bool LTHEME::saveLocalColors(QString name, QStringList contents){ - QString localdir = QString(getenv("XDG_CONFIG_HOME"))+"/lumina-desktop/colors/"; - if(!QFile::exists(localdir)){ QDir dir; dir.mkpath(localdir); } - return LUtils::writeFile(localdir+name+".qss.colors", contents, true); + Q_UNUSED(name); + Q_UNUSED(contents); + return false; //old format - do not use!! + // QString localdir = QString(getenv("XDG_CONFIG_HOME"))+"/lumina-desktop/colors/"; + //if(!QFile::exists(localdir)){ QDir dir; dir.mkpath(localdir); } + //return LUtils::writeFile(localdir+name+".qss.colors", contents, true); } //Return the currently selected Theme/Colors/Icons @@ -180,23 +186,25 @@ QString LTHEME::currentCursor(){ //Change the current Theme/Colors/Icons bool LTHEME::setCurrentSettings(QString themepath, QString colorpath, QString iconname, QString font, QString fontsize){ + Q_UNUSED(font); + Q_UNUSED(fontsize); //QIcon::setThemeName(iconname); + //Save these settings into the theme engine settings QSettings engineset("lthemeengine","lthemeengine"); engineset.setValue("Appearance/icon_theme", iconname); - //engineset.setValue("Appearance/color_scheme_path", colorpath); //re-enable this once the color scheme has been synced with lthemeengine - //Need to add theme path saving here too later - - + engineset.setValue("Appearance/custom_palette", QFile::exists(colorpath) ); + engineset.setValue("Appearance/color_scheme_path", colorpath); + engineset.setValue("Interface/desktop_stylesheets", QStringList() << themepath); + return true; //Now save the theme settings file - QStringList contents; + /*QStringList contents; contents << "THEMEFILE="+themepath; contents << "COLORFILE="+colorpath; contents << "ICONTHEME="+iconname; contents << "FONTFAMILY="+font; contents << "FONTSIZE="+fontsize; bool ok = LUtils::writeFile(QString(getenv("XDG_CONFIG_HOME"))+"/lumina-desktop/themesettings.cfg", contents, true); - - return ok; + return ok;*/ } //Change the current Cursor Theme @@ -299,13 +307,13 @@ QStringList LTHEME::cursorInformation(QString name){ } } return out; -} +} QStringList LTHEME::CustomEnvSettings(bool useronly){ //view all the key=value settings QStringList newinfo; if(!useronly){ QStringList sysfiles; sysfiles << L_ETCDIR+"/lumina_environment.conf" << LOS::LuminaShare()+"lumina_environment.conf"; - for(int i=0; i<sysfiles.length() && newinfo.isEmpty(); i++){ + for(int i=0; i<sysfiles.length() && newinfo.isEmpty(); i++){ newinfo << LUtils::readFile(sysfiles[i]); } } diff --git a/src-qt5/core/libLumina/LuminaThemes.h b/src-qt5/core/libLumina/LuminaThemes.h index 39602f58..ca79e0bd 100644 --- a/src-qt5/core/libLumina/LuminaThemes.h +++ b/src-qt5/core/libLumina/LuminaThemes.h @@ -34,7 +34,7 @@ public: //Save a new theme/color file static bool saveLocalTheme(QString name, QStringList contents); static bool saveLocalColors(QString name, QStringList contents); - + //Return the currently selected Theme/Colors/Icons static QStringList currentSettings(); //returns [theme path, colorspath, iconsname, font, fontsize] static QString currentCursor(); //returns: current cursor theme name @@ -45,16 +45,16 @@ public: //Return the complete stylesheet for a given theme/colors static QString assembleStyleSheet(QString themepath, QString colorpath, QString font, QString fontsize); - + //Additional info for a cursor theme static QStringList cursorInformation(QString name); //returns: [Name, Comment, Sample Image File] - + //Environment settings static QStringList CustomEnvSettings(bool useronly = false); //view all the key=value settings static void LoadCustomEnvSettings(); //will push the custom settings into the environment (recommended before loading the initial QApplication) static bool setCustomEnvSetting(QString var, QString val); //variable/value pair (use an empty val to clear it) static QString readCustomEnvSetting(QString var); - + }; // Qt Style override to allow custom themeing/colors diff --git a/src-qt5/core/libLumina/LuminaXDG.cpp b/src-qt5/core/libLumina/LuminaXDG.cpp index ab1000ab..cf9e0af2 100644 --- a/src-qt5/core/libLumina/LuminaXDG.cpp +++ b/src-qt5/core/libLumina/LuminaXDG.cpp @@ -72,6 +72,7 @@ void XDGDesktop::sync(){ QString loc = var.section("[",1,1).section("]",0,0).simplified(); // localization var = var.section("[",0,0).simplified(); //remove the localization QString val = line.section("=",1,50).simplified(); + if( val.count("\"")==2 && val.startsWith("\"") && val.endsWith("\"")){ val.chop(1); val = val.remove(0,1); } //remove the starting/ending quotes //------------------- if(var=="Name"){ if(insection){ @@ -631,7 +632,7 @@ void XDGDesktopList::populateMenu(QMenu *topmenu, bool byCategory){ void LFileInfo::loadExtraInfo(){ desk = 0; //Now load the extra information - if(this->isDir()){ + if( this->suffix().isEmpty() && (this->absoluteFilePath().startsWith("/net/") || this->isDir()) ){ mime = "inode/directory"; //Special directory icons QString name = this->fileName().toLower(); @@ -644,6 +645,7 @@ void LFileInfo::loadExtraInfo(){ else if(name=="downloads"){ icon = "folder-downloads"; } else if(name=="documents"){ icon = "folder-documents"; } else if(name=="images" || name=="pictures"){ icon = "folder-image"; } + else if(this->absoluteFilePath().startsWith("/net/")){ icon = "folder-shared"; } else if( !this->isReadable() ){ icon = "folder-locked"; } }else if( this->suffix()=="desktop"){ mime = "application/x-desktop"; @@ -664,11 +666,11 @@ LFileInfo::LFileInfo(){ LFileInfo::LFileInfo(QString filepath){ //overloaded contructor this->setFile(filepath); loadExtraInfo(); -} +} LFileInfo::LFileInfo(QFileInfo info){ //overloaded contructor this->swap(info); //use the given QFileInfo without re-loading it loadExtraInfo(); -} +} //Functions for accessing the extra information // -- Return the mimetype for the file @@ -683,7 +685,7 @@ QString LFileInfo::iconfile(){ return icon; }else{ if(!mime.isEmpty()){ - QString tmp = mime; + QString tmp = mime; tmp.replace("/","-"); return tmp; }else if(this->isExecutable()){ @@ -696,7 +698,7 @@ QString LFileInfo::iconfile(){ // -- Check if this is an XDG desktop file bool LFileInfo::isDesktopFile(){ if(desk==0){ return false; } - return (!desk->filePath.isEmpty()); + return (!desk->filePath.isEmpty()); } // -- Allow access to the XDG desktop data structure @@ -726,11 +728,14 @@ bool LFileInfo::isAVFile(){ //==== LXDG Functions ==== bool LXDG::checkExec(QString exec){ //Return true(good) or false(bad) + //Check for quotes around the exec, and remove them as needed + if(exec.startsWith("\"") && exec.count("\"")>=2){ exec = exec.section("\"",1,1).simplified(); } + if(exec.startsWith("\'") && exec.count("\'")>=2){ exec = exec.section("\'",1,1).simplified(); } if(exec.startsWith("/")){ return QFile::exists(exec); } else{ QStringList paths = QString(getenv("PATH")).split(":"); for(int i=0; i<paths.length(); i++){ - if(QFile::exists(paths[i]+"/"+exec)){ return true; } + if(QFile::exists(paths[i]+"/"+exec)){ return true; } } } return false; //could not find the executable in the current path(s) @@ -747,7 +752,7 @@ QStringList LXDG::systemApplicationDirs(){ for(int i=0; i<appDirs.length(); i++){ if( QFile::exists(appDirs[i]+"/applications") ){ out << appDirs[i]+"/applications"; - //Also check any subdirs within this directory + //Also check any subdirs within this directory // (looking at you KDE - stick to the standards!!) out << LUtils::listSubDirectories(appDirs[i]+"/applications"); } @@ -891,7 +896,7 @@ QIcon LXDG::findIcon(QString iconName, QString fallback){ fall << getChildIconDirs(paths[i]+"hicolor"); //XDG fallback (apps add to this) } //Now load all the icon theme dependencies in order (Theme1 -> Theme2 -> Theme3 -> Fallback) - + //fall << LOS::AppPrefix()+"share/pixmaps"; //always use this as well as a final fallback QDir::setSearchPaths("icontheme", theme); QDir::setSearchPaths("default", oxy); @@ -926,7 +931,7 @@ QIcon LXDG::findIcon(QString iconName, QString fallback){ //simple PNG image - load directly into the QIcon structure ico.addFile(srch[i]+":"+iconName+".png"); } - + } //If still no icon found, look for any image format in the "pixmaps" directory if(ico.isNull()){ @@ -946,13 +951,13 @@ QIcon LXDG::findIcon(QString iconName, QString fallback){ break; } } - + } } //Use the fallback icon if necessary if(ico.isNull() ){ if(!fallback.isEmpty()){ ico = LXDG::findIcon(fallback,""); } - else if(iconName.contains("-x-") && !iconName.endsWith("-x-generic")){ + else if(iconName.contains("-x-") && !iconName.endsWith("-x-generic")){ //mimetype - try to use the generic type icon ico = LXDG::findIcon(iconName.section("-x-",0,0)+"-x-generic", ""); } @@ -969,7 +974,7 @@ QStringList LXDG::getChildIconDirs(QString parent){ QDir D(parent); QStringList out; QStringList dirs = D.entryList(QDir::Dirs | QDir::NoDotAndDotDot, QDir::Name); - if(!dirs.isEmpty() && (dirs.contains("32x32") || dirs.contains("scalable")) ){ + if(!dirs.isEmpty() && (dirs.contains("32x32") || dirs.contains("scalable")) ){ //Need to sort these directories by image size //qDebug() << " - Parent:" << parent << "Dirs:" << dirs; for(int i=0; i<dirs.length(); i++){ @@ -1017,7 +1022,7 @@ QStringList LXDG::systemMimeDirs(){ QStringList out; for(int i=0; i<appDirs.length(); i++){ if( QFile::exists(appDirs[i]+"/mime") ){ - out << appDirs[i]+"/mime"; + out << appDirs[i]+"/mime"; } } return out; @@ -1028,7 +1033,7 @@ QIcon LXDG::findMimeIcon(QString extension){ QString mime = LXDG::findAppMimeForFile(extension); if(mime.isEmpty()){ mime = LXDG::findAppMimeForFile(extension.toLower()); } mime.replace("/","-"); //translate to icon mime name - if(!mime.isEmpty()){ ico = LXDG::findIcon(mime, "unknown");} //use the "unknown" mimetype icon as fallback + if(!mime.isEmpty()){ ico = LXDG::findIcon(mime, "unknown");} //use the "unknown" mimetype icon as fallback if(ico.isNull()){ ico = LXDG::findIcon("unknown",""); } //just in case return ico; } @@ -1050,8 +1055,8 @@ while(mimes.isEmpty()){ return extension; } //Look for globs at the end of the filename - if(!extension.isEmpty()){ - mimes = mimefull.filter(":*."+extension); + if(!extension.isEmpty()){ + mimes = mimefull.filter(":*."+extension); //If nothing found, try a case-insensitive search if(mimes.isEmpty()){ mimes = mimefull.filter(":*."+extension, Qt::CaseInsensitive); } //Now ensure that the filter was accurate (*.<extention>.<something> will still be caught) @@ -1062,7 +1067,7 @@ while(mimes.isEmpty()){ } } //Look for globs at the start of the filename - if(mimes.isEmpty()){ + if(mimes.isEmpty()){ mimes = mimefull.filter(":"+filename.left(2)); //look for the first 2 characters initially //Note: This initial filter will only work if the wildcard (*) is not within the first 2 characters of the pattern //Now ensure that the filter was accurate diff --git a/src-qt5/core/libLumina/RootSubWindow-animations.cpp b/src-qt5/core/libLumina/obsolete/RootSubWindow-animations.cpp index efab20fe..efab20fe 100644 --- a/src-qt5/core/libLumina/RootSubWindow-animations.cpp +++ b/src-qt5/core/libLumina/obsolete/RootSubWindow-animations.cpp diff --git a/src-qt5/core/libLumina/RootSubWindow.cpp b/src-qt5/core/libLumina/obsolete/RootSubWindow.cpp index 5fb8ece4..5040f2f9 100644 --- a/src-qt5/core/libLumina/RootSubWindow.cpp +++ b/src-qt5/core/libLumina/obsolete/RootSubWindow.cpp @@ -242,6 +242,16 @@ void RootSubWindow::enableFrame(bool on){ WIN->setProperty(NativeWindow::FrameExtents, QVariant::fromValue< QList<int> >(extents) ); //save to structure now } +void RootSubWindow::enableFrame(QList<NativeWindow::Type> types){ + static QList<NativeWindow::Type> noframe; + if(noframe.isEmpty()){ noframe << NativeWindow::T_DESKTOP << NativeWindow::T_DOCK << NativeWindow::T_TOOLBAR << NativeWindow::T_MENU << NativeWindow::T_SPLASH << NativeWindow::T_DROPDOWN_MENU << NativeWindow::T_POPUP_MENU << NativeWindow::T_TOOLTIP << NativeWindow::T_NOTIFICATION << NativeWindow::T_COMBO << NativeWindow::T_DND; } + for(int i=0; i<types.length(); i++){ + if(noframe.contains(types[i])){ enableFrame(false); return; } + } + enableFrame(true); + //Now make buttons visible as appropriate for the type + //NativeWindow::T_UTILITY, NativeWindow::T_DIALOG, , NativeWindow::T_NORMAL +} void RootSubWindow::LoadProperties( QList< NativeWindow::Property> list){ QList<QVariant> vals; //Always ensure that visibility changes are evaluated last @@ -370,7 +380,7 @@ void RootSubWindow::propertiesChanged(QList<NativeWindow::Property> props, QList switch(props[i]){ case NativeWindow::Visible: if(!WinWidget->isPaused() && (this->isVisible()!=vals[i].toBool()) && activeState==Normal ){ - qDebug() << "Got Visibility Change:" << vals[i] << this->geometry() << WIN->geometry(); + //qDebug() << "Got Visibility Change:" << vals[i] << this->geometry() << WIN->geometry(); if(vals[i].toBool()){ loadAnimation( DesktopSettings::instance()->value(DesktopSettings::Animation, "window/appear", "random").toString(), NativeWindow::Visible, vals[i]); } else{ loadAnimation( DesktopSettings::instance()->value(DesktopSettings::Animation, "window/disappear", "random").toString(), NativeWindow::Visible, vals[i]); } } @@ -397,7 +407,7 @@ void RootSubWindow::propertiesChanged(QList<NativeWindow::Property> props, QList i--; }else if(!WinWidget->isPaused() && activeState==Normal){ if(WIN->property(NativeWindow::Size).toSize() != WinWidget->size()){ - qDebug() << "Got Direct Geometry Change:" << WIN->geometry(); + //qDebug() << "Got Direct Geometry Change:" << WIN->geometry(); this->setGeometry( QRect(this->geometry().topLeft(), WIN->geometry().size()) ); WinWidget->resyncWindow(); } @@ -434,8 +444,8 @@ void RootSubWindow::propertiesChanged(QList<NativeWindow::Property> props, QList mainLayout->setContentsMargins( vals[i].value< QList<int> >().at(0),vals[i].value< QList<int> >().at(2) - titleLabel->height(),vals[i].value< QList<int> >().at(1),vals[i].value< QList<int> >().at(3)); break;*/ case NativeWindow::WinTypes: - qDebug() << "Got Window Types:" << vals[i].value< QList<NativeWindow::Type> >(); - enableFrame(vals[i].value< QList<NativeWindow::Type> >().contains(NativeWindow::T_NORMAL) ); + //qDebug() << "Got Window Types:" << vals[i].value< QList<NativeWindow::Type> >(); + enableFrame(vals[i].value< QList<NativeWindow::Type> >() ); break; default: qDebug() << "Window Property Unused:" << props[i] << vals[i]; diff --git a/src-qt5/core/libLumina/RootSubWindow.h b/src-qt5/core/libLumina/obsolete/RootSubWindow.h index c1964724..598298e2 100644 --- a/src-qt5/core/libLumina/RootSubWindow.h +++ b/src-qt5/core/libLumina/obsolete/RootSubWindow.h @@ -59,12 +59,14 @@ private: void initWindowFrame(); void enableFrame(bool); + void enableFrame(QList<NativeWindow::Type> types); void LoadProperties( QList< NativeWindow::Property> list); static QStringList validAnimations(NativeWindow::Property); public slots: + void ensureVisible(){ WIN->setProperty(NativeWindow::Visible, true); } void giveMouseFocus(){ WinWidget->raiseWindow(); } void removeMouseFocus(){ WinWidget->lowerWindow(); } void giveKeyboardFocus(){ WIN->requestProperty(NativeWindow::Active, true, true); } diff --git a/src-qt5/core/libLumina/RootWindow-mgmt.cpp b/src-qt5/core/libLumina/obsolete/RootWindow-mgmt.cpp index 24ea639b..24ea639b 100644 --- a/src-qt5/core/libLumina/RootWindow-mgmt.cpp +++ b/src-qt5/core/libLumina/obsolete/RootWindow-mgmt.cpp diff --git a/src-qt5/core/libLumina/RootWindow.cpp b/src-qt5/core/libLumina/obsolete/RootWindow.cpp index fdbc1eb8..705297be 100644 --- a/src-qt5/core/libLumina/RootWindow.cpp +++ b/src-qt5/core/libLumina/obsolete/RootWindow.cpp @@ -239,7 +239,9 @@ void RootWindow::NewWindow(NativeWindow *win){ connect(subwin, SIGNAL(windowAnimFinished()), this, SLOT(checkMouseFocus()) ); WINDOWS << subwin; } + //QApplication::processEvents(); CheckWindowPosition(win->id(), true); //first-time run + //QTimer::singleShot(300, subwin, SLOT(ensureVisible())); win->setProperty(NativeWindow::Visible, true); //win->requestProperty( NativeWindow::Active, true); //win->requestProperties(QList<NativeWindow::Property>() << NativeWindow::Visible << NativeWindow::Active, QList<QVariant>() << true << true, true); diff --git a/src-qt5/core/libLumina/RootWindow.h b/src-qt5/core/libLumina/obsolete/RootWindow.h index c5cd44a0..c5cd44a0 100644 --- a/src-qt5/core/libLumina/RootWindow.h +++ b/src-qt5/core/libLumina/obsolete/RootWindow.h diff --git a/src-qt5/core/libLumina/RootWindow.pri b/src-qt5/core/libLumina/obsolete/RootWindow.pri index 9426b6b4..9426b6b4 100644 --- a/src-qt5/core/libLumina/RootWindow.pri +++ b/src-qt5/core/libLumina/obsolete/RootWindow.pri diff --git a/src-qt5/core/lumina-checkpass/main.c b/src-qt5/core/lumina-checkpass/main.c index e12e7c78..2f54c8e6 100644 --- a/src-qt5/core/lumina-checkpass/main.c +++ b/src-qt5/core/lumina-checkpass/main.c @@ -14,23 +14,56 @@ //=========================================== //Standard C libary #include <unistd.h> // Standard C +#include <stdlib.h> #include <stdio.h> // Usage output #include <pwd.h> // User DB information +#include <string.h> //PAM/security libraries #include <sys/types.h> #include <security/pam_appl.h> #include <security/openpam.h> +void showUsage(){ + puts("lumina-checkpass: Simple user-level check for password validity (for screen unlockers and such)."); + puts("Usage:"); + //puts(" lumina-checkpass <password>"); + puts(" lumina-checkpass -fd <file descriptor>"); + puts(" lumina-checkpass -f <file path>"); + puts("Returns: 0 for a valid password, 1 for invalid"); +} + int main(int argc, char** argv){ //Check the inputs - if(argc!=2){ + if(argc!=3){ //Invalid inputs - show the help text - puts("lumina-checkpass: Simple user-level check for password validity (for screen unlockers and such)."); - puts("Usage: lumina-checkpass <password>"); - puts("Returns: 0 for a valid password, 1 for invalid"); + showUsage(); return 1; } + char*pass = 0; + if(argc==3 && 0==strcmp(argv[1],"-fd") ){ + FILE *fp = fdopen(atoi(argv[2]), "r"); + size_t len; + if(fp!=0){ + ssize_t slen = getline(&pass, &len, fp); + if(pass[slen-1]=='\n'){ pass[slen-1] = '\0'; } + } + fclose(fp); + }else if(argc==3 && 0==strcmp(argv[1],"-f") ){ + FILE *fp = fopen(argv[2], "r"); + size_t len; + if(fp!=0){ + ssize_t slen = getline(&pass, &len, fp); + if(pass[slen-1]=='\n'){ pass[slen-1] = '\0'; } + }else{ + puts("[ERROR] Unknown option provided"); + puts("----------------"); + showUsage(); + return 1; + } + fclose(fp); + } + if(pass == 0){ puts("Could not read password!!"); return 1; } //error in reading password //Validate current user (make sure current UID matches the logged-in user, char* cUser = getlogin(); struct passwd *pwd = 0; @@ -44,7 +77,7 @@ int main(int argc, char** argv){ int ret = pam_start( "system", cUser, &pamc, &pamh); if(ret != PAM_SUCCESS){ return 1; } //could not init PAM //char* cPassword = argv[1]; - ret = pam_set_item(pamh, PAM_AUTHTOK, argv[1]); + ret = pam_set_item(pamh, PAM_AUTHTOK, pass); //Authenticate with PAM ret = pam_authenticate(pamh,0); //this can be true without verifying password if pam_self.so is used in the auth procedures (common) if( ret == PAM_SUCCESS ){ ret = pam_acct_mgmt(pamh,0); } //Check for valid, unexpired account and verify access restrictions diff --git a/src-qt5/core/lumina-desktop-unified/LSession.cpp b/src-qt5/core/lumina-desktop-unified/LSession.cpp index d70ff973..e1251c01 100644 --- a/src-qt5/core/lumina-desktop-unified/LSession.cpp +++ b/src-qt5/core/lumina-desktop-unified/LSession.cpp @@ -104,7 +104,7 @@ void LSession::setupSession(){ splash.showScreen("user"); if(DEBUG){ qDebug() << " - Init User Files:" << timer->elapsed();} //checkUserFiles(); //adds these files to the watcher as well - + Lumina::ROOTWIN->start(); //Initialize the internal variables //DESKTOPS.clear(); @@ -116,7 +116,6 @@ void LSession::setupSession(){ if(DEBUG){ qDebug() << " - Populate App List:" << timer->elapsed();} Lumina::APPLIST->updateList(); //appmenu = new AppMenu(); - splash.showScreen("menus"); //if(DEBUG){ qDebug() << " - Init SettingsMenu:" << timer->elapsed();} //settingsmenu = new SettingsMenu(); @@ -129,15 +128,16 @@ void LSession::setupSession(){ QList<QScreen*> scrns= QApplication::screens(); for(int i=0; i<scrns.length(); i++){ qDebug() << " --- Load Wallpaper for Screen:" << scrns[i]->name(); - Lumina::ROOTWIN->ChangeWallpaper(scrns[i]->name(), RootWindow::Stretch, LOS::LuminaShare()+"desktop-background.jpg"); + RootDesktopObject::instance()->ChangeWallpaper(scrns[i]->name(),QUrl::fromLocalFile(LOS::LuminaShare()+"desktop-background.jpg").toString() ); } - Lumina::ROOTWIN->start(); Lumina::NWS->setRoot_numberOfWorkspaces(QStringList() << "one" << "two"); Lumina::NWS->setRoot_currentWorkspace(0); + if(DEBUG){ qDebug() << " - Create Desktop Context Menu"; } - DesktopContextMenu *cmenu = new DesktopContextMenu(Lumina::ROOTWIN); + + /*DesktopContextMenu *cmenu = new DesktopContextMenu(Lumina::ROOTWIN); connect(cmenu, SIGNAL(showLeaveDialog()), this, SLOT(StartLogout()) ); - cmenu->start(); + cmenu->start();*/ //desktopFiles = QDir(QDir::homePath()+"/Desktop").entryInfoList(QDir::NoDotAndDotDot | QDir::Files | QDir::Dirs, QDir::Name | QDir::IgnoreCase | QDir::DirsFirst); //updateDesktops(); @@ -228,7 +228,9 @@ void LSession::setupGlobalConnections(){ //Root window connections connect(Lumina::ROOTWIN, SIGNAL(RegisterVirtualRoot(WId)), Lumina::NWS, SLOT(RegisterVirtualRoot(WId)) ); connect(Lumina::ROOTWIN, SIGNAL(RootResized(QRect)), Lumina::NWS, SLOT(setRoot_desktopGeometry(QRect)) ); - connect(Lumina::ROOTWIN, SIGNAL(MouseMoved()), Lumina::SS, SLOT(newInputEvent()) ); + connect(RootDesktopObject::instance(), SIGNAL(mouseMoved()), Lumina::SS, SLOT(newInputEvent()) ); + connect(RootDesktopObject::instance(), SIGNAL(startLogout()), this, SLOT(StartLogout()) ); + connect(RootDesktopObject::instance(), SIGNAL(lockScreen()), Lumina::SS, SLOT(LockScreenNow()) ); //Native Window Class connections connect(Lumina::NEF, SIGNAL(WindowCreated(WId)), Lumina::NWS, SLOT(NewWindowDetected(WId))); @@ -356,12 +358,12 @@ void LSession::launchStartupApps(){ void LSession::checkUserFiles(){ //internal version conversion examples: // [1.0.0 -> 1000000], [1.2.3 -> 1002003], [0.6.1 -> 6001] - QString OVS = DesktopSettings::instance()->value(DesktopSettings::System,"DesktopVersion","0").toString(); //Old Version String + /*QString OVS = DesktopSettings::instance()->value(DesktopSettings::System,"DesktopVersion","0").toString(); //Old Version String bool changed = LDesktopUtils::checkUserFiles(OVS); if(changed){ //Save the current version of the session to the settings file (for next time) DesktopSettings::instance()->setValue(DesktopSettings::System,"DesktopVersion", this->applicationVersion()); - } + }*/ } diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/audiofiles/LICENCE b/src-qt5/core/lumina-desktop-unified/extrafiles/audiofiles/LICENCE deleted file mode 100644 index aa601d5e..00000000 --- a/src-qt5/core/lumina-desktop-unified/extrafiles/audiofiles/LICENCE +++ /dev/null @@ -1,7 +0,0 @@ -These audio files are BSD-licensed and were created/owned by the TrueOS Project: - - Login.ogg - - Logout.ogg - -These audio files are freely available on jewelbeat.com: -"Music by JewelBeat. Download your free music and free sound effects at www.jewelbeat.com." - - low-battery.ogg (http://www.jewelbeat.com/free/free-sound-effects/musical%20effects/Tympani_2.mp3 - converted to OGG afterward) diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/audiofiles/Login.ogg b/src-qt5/core/lumina-desktop-unified/extrafiles/audiofiles/Login.ogg Binary files differdeleted file mode 100644 index 43a07e27..00000000 --- a/src-qt5/core/lumina-desktop-unified/extrafiles/audiofiles/Login.ogg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/audiofiles/Logout.ogg b/src-qt5/core/lumina-desktop-unified/extrafiles/audiofiles/Logout.ogg Binary files differdeleted file mode 100644 index e63ae07f..00000000 --- a/src-qt5/core/lumina-desktop-unified/extrafiles/audiofiles/Logout.ogg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/audiofiles/low-battery.ogg b/src-qt5/core/lumina-desktop-unified/extrafiles/audiofiles/low-battery.ogg Binary files differdeleted file mode 100644 index d129a2b3..00000000 --- a/src-qt5/core/lumina-desktop-unified/extrafiles/audiofiles/low-battery.ogg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/lumina-desktop.desktop b/src-qt5/core/lumina-desktop-unified/extrafiles/lumina-desktop.desktop deleted file mode 100644 index 7d87f93a..00000000 --- a/src-qt5/core/lumina-desktop-unified/extrafiles/lumina-desktop.desktop +++ /dev/null @@ -1,34 +0,0 @@ -[Desktop Entry] -Exec=start-lumina-desktop -TryExec=start-lumina-desktop -Icon=Lumina-DE -Type=Application -Name=Lumina -Name[de]=Lumina -Name[en_GB]=Lumina -Name[en_ZA]=Lumina -Name[et]=Lumina -Name[fr]=Lumina -Name[fr_CA]=Lumina -Name[hi]=ल्यूमिना -Name[ja]=Lumina -Name[mt]=Lumina -Name[pl]=Lumina -Name[pt_BR]=Lumina -Name[ru]=Lumina -Name[uk]=Lumina -Name[vi]=Lumina -Comment=A Lightweight Desktop for FreeBSD -Comment[de]=Eine leichtgewichtige Arbeitsplatzumgebung für FreeBSD -Comment[en_GB]=A Lightweight Desktop for FreeBSD -Comment[en_ZA]=A Lightweight Desktop for FreeBSD -Comment[et]=Minimalistlik töölauakeskkond FreeBSD-le -Comment[fr]=Un environnement bureau léger pour FreeBSD -Comment[fr_CA]=Un environnement bureau léger pour FreeBSD -Comment[hi]=एक हल्का डेस्कटॉप फ्री बी.एस.डी के लिए -Comment[ja]=FreeBSD の為に作られた軽快なデスクトップ環境 -Comment[mt]=A Desktop irqiq għal FreeBSD -Comment[pl]=Lekkie Środowisko graficzne dla FreeBSD -Comment[pt_BR]=Um ambiente de trabalho leve para FreeBSD -Comment[uk]=Легковісне оточення стільниці для FreeBSD -Comment[vi]=Một máy tính để bàn nhẹ cho FreeBSD diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/Fireflies.json b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/Fireflies.json new file mode 100644 index 00000000..c09de308 --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/Fireflies.json @@ -0,0 +1,26 @@ +{ + "name" : { + "default" : "Fireflies" + }, + "description" : { + "default" : "Dancing balls of light on the screen" + }, + "author" : { + "name" : "Ken Moore", + "email" : "ken@ixsystems.com", + "website" : "https://github.com/beanpole135", + "company" : "iXsystems", + "company_website" : "http://ixsystems.com" + }, + "meta" : { + "license" : "3-clause BSD", + "license_url" : "https://github.com/trueos/lumina/blob/master/LICENSE", + "copyright" : "Copyright (c) 2017, Ken Moore (ken@ixsystems.com)", + "date_created" : "20171010", + "version" : "1.0" + }, + "qml" : { + "exec" : "qml_scripts/Fireflies.qml", + "additional_files" : ["qml_scripts/Firefly.qml"] + } +} diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/README.md b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/README.md new file mode 100644 index 00000000..d9093b44 --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/README.md @@ -0,0 +1,79 @@ +## Screensaver Format +The screensaver system for the Lumina desktop allows for the creation and use of scripts written in the QML language, with a number of screensavers and other examples installed out-of-box. There are only a couple warnings/caveats to consider when developing a new screensaver: + +1. The root object in your QML script will be automatically sized to fit the screen as needed. Avoid trying to hard-code specific screen dimensions within your script as it will not work properly. +2. A JSON manifest file must be created (format listed below) and placed into one of the screensaver plugin directories for it to be recognized as a valid screensaver by the desktop. + + +### JSON Manifest +The manifest file contains all the information needed to actually validate/launch the screensaver, as well as additional information about the author and/or the screensaver itself. + +Example JSON manifest file (sample.json): +``` +{ + "name" : { + "default" : "sample", + "en_US" : "US English localization of the name", + "en" : "Generic english localization of the name" + }, + + "description" : { + "default" : "sample screensaver", + "en_US" : "US English Localization of the description" + }, + + "author" : { + "name" : "Me", + "email" : "Me@myself.net", + "website" : "http://mywebsite.net", + "company" : "iXsystems", + "company_website" : "http://ixsystems.com" + }, + + "meta" : { + "license" : "3-clause BSD", + "license_url" : "https://github.com/trueos/lumina/blob/master/LICENSE", + "copyright" : "Copyright (c) 2017, Ken Moore (ken@ixsystems.com)", + "date_created" : "20171010", + "date_updated" : "20171011", + "version" : "1.0" + }, + + "qml" : { + "exec" : "absolute/or/relative/path/to/script.qml", + "additional_files" : ["file/which/must/exist.png"], + "qt_min_version" : "5.0", + "qt_max_version" : "6.0" + } +} +``` + +Details of the individual items in the manifest: +* NOTE: for locale codes, both long and short version are acceptable: + Example 1: If the current locale is "en_GB", but the JSON manifest lists translations for "en_US" and "en", then the "en" translation will be used. + Example 2: If the current locale is "en_GB", but neither "en_GB" nor "en" translations exist, then the "default" version will be used. + +* **name** : (required) This is the official name of the screensaver to show to users + * *default* : (required) Non-translated name of the screensaver + * *[locale]* : (optional) Translated name for specific [locale] +* **description** : (required) This is a short description of the screensaver to show to users + * *default* : (required) Non-translated description of the screensaver + * *[locale]* : (optional) Translated description for specific [locale] +* **author** : (all optional) Additional information about the author(s) of the screensaver + * *name* : Name of the author + * *email* : Email to contact the author (useful for licensing questions and such) + * *website* : Personal website for the author (github/facebook/twitter profile, etc) + * *company* : Company for which the author is creating this screensaver + * *company_website* : Website for the company +* **meta** : (all optional) Additional information about the screensaver itself + * *license* : License the screensaver is released under + * *license_url* : Website which contains the full text of the license + * *copyright* : Copyright notice for this screensaver + * *date_created* : (yyyyMMdd) Date the screensaver was initially created + * *date_updated* : (yyyyMMdd) Date the screensaver was last updated + * *version* : Current version of the screensaver (typically updated every time "date_updated" is changed) +* **qml** : (required) Information about launching the screensaver and checking validity + * *exec* : (required) Absolute or relative path to the QML script (relative to the directory which contains the JSON manifest) + * *additional_files* : (optional) Array of paths for other files/scripts which must exist for the screensaver to work properly. + * *qt_min_version* : (optional) Minimum version of the Qt libraries that this screensaver supports + * *qt_max_version* : (optional) Maximum version of the Qt libraries that this screensaver supports diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/Video.json b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/Video.json new file mode 100644 index 00000000..2fa6e6da --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/Video.json @@ -0,0 +1,25 @@ +{ + "name" : { + "default" : "Video" + }, + "description" : { + "default" : "Play a single video or a list of videos in a loop" + }, + "author" : { + "name" : "Zackary Welch", + "email" : "zwelch@ixsystems.com", + "website" : "https://github.com/ZackaryWelch", + "company" : "iXsystems", + "company_website" : "http://ixsystems.com" + }, + "meta" : { + "license" : "3-clause BSD", + "license_url" : "https://github.com/trueos/lumina/blob/master/LICENSE", + "copyright" : "Copyright (c) 2017, Ken Moore (ken@ixsystems.com)", + "date_created" : "20171025", + "version" : "1.0" + }, + "qml" : { + "exec" : "qml_scripts/Video.qml" + } +} diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/Warp.json b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/Warp.json new file mode 100644 index 00000000..888df01f --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/Warp.json @@ -0,0 +1,25 @@ +{ + "name" : { + "default" : "Warp" + }, + "description" : { + "default" : "Warp trail through the stars" + }, + "author" : { + "name" : "Ken Moore", + "email" : "ken@ixsystems.com", + "website" : "https://github.com/beanpole135", + "company" : "iXsystems", + "company_website" : "http://ixsystems.com" + }, + "meta" : { + "license" : "3-clause BSD", + "license_url" : "https://github.com/trueos/lumina/blob/master/LICENSE", + "copyright" : "Copyright (c) 2017, Ken Moore (ken@ixsystems.com)", + "date_created" : "20171012", + "version" : "1.0" + }, + "qml" : { + "exec" : "qml_scripts/Warp.qml" + } +} diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/qml_scripts/Fireflies.qml b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/qml_scripts/Fireflies.qml new file mode 100644 index 00000000..d8dcc1ed --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/qml_scripts/Fireflies.qml @@ -0,0 +1,19 @@ +import QtQuick 2.0 +import QtGraphicalEffects 1.0 +import "." as QML + +Rectangle { + id : canvas + anchors.fill: parent + color: "black" + + Repeater { + model: Math.round(Math.random()*canvas.width/10)+100 + QML.Firefly { + parent: canvas + x: Math.round(Math.random()*canvas.width) + y: Math.round(Math.random()*canvas.height) + } + } //end of Repeater + +} //end of canvas rectangle diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/qml_scripts/Firefly.qml b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/qml_scripts/Firefly.qml new file mode 100644 index 00000000..7b65d8ec --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/qml_scripts/Firefly.qml @@ -0,0 +1,63 @@ +import QtQuick 2.0 +import QtQuick.Window 2.2 +import QtGraphicalEffects 1.0 + +Item { + + RectangularGlow { + anchors.fill: fly + glowRadius: Math.round(fly.radius /2) + spread: 0.5 + color: Qt.rgba(1,1,1,0.3) + cornerRadius: fly.radius + glowRadius + } + + Rectangle { + id: fly + width: Math.round(Math.random()*canvas.width/200)+2 + height: width + x: parent.x + y: parent.y + color: Qt.rgba(Math.random(),Math.random(),0,0.5) + radius: Math.floor(width/2) + property int jitterX: Math.round(Math.random()*100)+10 + property int jitterY: Math.round(Math.random()*100)+10 + + Behavior on color { + ColorAnimation { + duration: 500 + } + } + Behavior on x { + SmoothedAnimation { + velocity: 10+Math.random()*canvas.width/100 + } + } + Behavior on y { + SmoothedAnimation { + velocity: 10+Math.random()*canvas.height/100 + } + } + + } + + + + Timer { + interval: 5 + repeat: true + running: true + property bool starting: true + onTriggered: { + if(starting){ interval = Math.round(Math.random()*1000)+500; starting = false; } + if ( (fly.x+fly.jitterX)>parent.width || (fly.x+fly.jitterX)<0 ){ fly.jitterX = 0-fly.jitterX } + fly.x = fly.x+fly.jitterX + if( (fly.y+fly.jitterY)>parent.height || (fly.y+fly.jitterY)<0 ){ fly.jitterY = 0-fly.jitterY } + fly.y = fly.y+fly.jitterY + fly.jitterX = (Math.round(Math.random())*2 - 1) *fly.jitterX + fly.jitterY = (Math.round(Math.random())*2 - 1) *fly.jitterY + fly.color = Qt.rgba(Math.random(),Math.random(),Math.random(),0.5) + + } + } //end of timer +} //end of item diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/qml_scripts/Grav.qml b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/qml_scripts/Grav.qml new file mode 100644 index 00000000..7a3c33cd --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/qml_scripts/Grav.qml @@ -0,0 +1,123 @@ +import QtQuick 2.7 +import QtGraphicalEffects 1.0 + +Rectangle { + id : canvas + anchors.fill: parent + width: 800 + height: 600 + color: "black" + + //TODO Add orbital trails option + + //Between 5 and 15 planets, read from settings + property int planets: Math.round(( Math.random() * 10 ) + 5 ) + property int cx: Math.round(width/2) + property int cy: Math.round(height/2) + + //Create planets + Repeater { + id: planetRepeater + model: planets + + Rectangle { + id : index + parent: canvas + + //Creates random distance for elipse + property double c: Math.random() * 250 + property double b: Math.random() * 150 + c + property double a: Math.sqrt(b*b+c*c) + //Random angle of rotation + property double th: Math.random() * Math.PI + + //Calculates starting position + x: Math.round(cx + a * Math.cos(th)) + y: Math.round(cy + b * Math.sin(th)) + + //Planet size between 14 and 32 pixels + width: Math.round(1.75 * (((Math.random() * 10) + 8 ))) + height: width + + //Make each rectangle look circular + radius: width / 2 + + //Give each planet a random color, semi-transparent + color: Qt.rgba(Math.random(), Math.random(), Math.random(), 0.5) + + Timer { + //Each planet updates between 1ms and 51ms (smaller times=faster) + interval: Math.round(Math.random() * 50 ) + 1 + repeat: true + running: true + property bool starting: true + property int time: 0 + + onTriggered: { + //Move a planet 80 pixels away from the sun if the planet is too close + if(starting) { + if(x > cx && Math.abs(cx-x) < 80) { + x+=80 + }else if(x < cx && Math.abs(cx-x) < 80) { + x-=80 + } + + if(y > cy && Math.abs(cy-y) < 80) { + y+=80 + }else if(y < cy && Math.abs(cy-y) < 80) { + y-=80 + } + starting = false; + } + //Parametric equation that calculates the position of the general ellipse. Completes a loop ever 314 cycles. Credit to + x = cx+a*Math.cos(2*Math.PI*(time/314.0))*Math.cos(th) - b*Math.sin(2*Math.PI*(time/314.0))*Math.sin(th) + y = cy+a*Math.cos(2*Math.PI*(time/314.0))*Math.sin(th) + b*Math.sin(2*Math.PI*(time/314.0))*Math.cos(th) + time++; + } + } + } + } + + //Create the star + Rectangle{ + id: star + parent: canvas + + //Centers in star in the center of the canvas, with an offset to center the animation + x: cx - 30 + y: cy - 30 + + width: 60 + height: width + + //Create the wobble animation + SequentialAnimation on height { + loops: Animation.Infinite + PropertyAnimation { duration: 2000; to: 90 } + PropertyAnimation { duration: 2000; to: 60 } + } + + SequentialAnimation on width { + loops: Animation.Infinite + PropertyAnimation { duration: 2000; to: 90 } + PropertyAnimation { duration: 2000; to: 60 } + } + + color: "black" + radius: width / 2 + + //Creates a radial gradient to make the star look cool + RadialGradient { + anchors.fill: parent + gradient: Gradient { + GradientStop { position:0 ;color: Qt.rgba(0,0,0,0)} + GradientStop { position:0.18 ;color: Qt.rgba(0,0,0,0)} + GradientStop { position:0.2 ;color: Qt.rgba(0.32,0.47,0.30,0.13)} + GradientStop { position:0.3 ;color: Qt.rgba(0.62,0.92,0.58,0.25)} + GradientStop { position:0.4 ;color: Qt.rgba(1.00,0.93,0.59,0.51)} + GradientStop { position:0.5 ;color: Qt.rgba(0,0,0,0)} + } + } + + } +} diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/qml_scripts/Video.qml b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/qml_scripts/Video.qml new file mode 100644 index 00000000..e7d0626d --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/qml_scripts/Video.qml @@ -0,0 +1,50 @@ +import QtQuick 2.0 +import QtMultimedia 5.7 +import QtQuick.Window 2.2 +import Qt.labs.folderlistmodel 2.1 + +Rectangle { + //width: Screen.width + //height: Screen.height + width: 800 + height: 600 + color: "black" + + FolderListModel { + id: folderModel + folder: "/usr/local/videos" + } + + Repeater { + model: folderModel + Component { + Item { + Component.onCompleted: { playlist.addItem(fileURL) } + } + } + } + + Playlist { + id: playlist + playbackMode: Playlist.Random + PlaylistItem { source: "/" } + onError: { console.log("ERROR") } + } + + MediaPlayer { + id: player + autoPlay: true + playlist: playlist + } + + VideoOutput { + id: videoOutput + source: player + anchors.fill: parent + } + + Component.onCompleted: { + playlist.shuffle() + console.log(playlist.itemCount) + } +} diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/qml_scripts/Warp.qml b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/qml_scripts/Warp.qml new file mode 100644 index 00000000..1cf9bc37 --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/extrafiles/screensavers/qml_scripts/Warp.qml @@ -0,0 +1,64 @@ +import QtQuick 2.0 +import QtGraphicalEffects 1.0 + +Rectangle { + id : canvas + anchors.fill: parent + color: "black" + + function getStarColor(num){ + if(num < 1) { return "white" } + if(num < 2) { return "mistyrose" } + return "lightblue" + } + + // CREATE STARFIELD + Repeater { + model: Math.round(Math.random()*canvas.width/10)+500 + Rectangle { + parent: canvas + x: Math.round(Math.random()*canvas.width) + y: Math.round(Math.random()*canvas.height) + width: Math.round(Math.random()*3)+3 + height: width + radius: width/2 + color: getStarColor( (index%3) ) + + } + } //end of Repeater + + // NOW CREATE THE WARP EFFECT + ZoomBlur { + id: blur + anchors.fill: canvas + source: canvas + samples: 24 + length: canvas.width / 20 + horizontalOffset: 0 + verticalOffset: 0 + + Behavior on horizontalOffset{ + NumberAnimation{ + duration: 3000 + } + } + Behavior on verticalOffset{ + NumberAnimation{ + duration: 3000 + } + } + } //end of zoom blur + + Timer { + interval: 5 + repeat: true + running: true + property bool starting: true + onTriggered: { + if(starting){ interval = 3010; starting = false; } + blur.horizontalOffset = (Math.random()*canvas.width/4) - (canvas.width/8) + blur.verticalOffset = (Math.random()*canvas.height/4) - (canvas.height/8) + } + } //end of timer + +} //end of canvas rectangle diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_blue-grey-zoom.jpg b/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_blue-grey-zoom.jpg Binary files differdeleted file mode 100644 index 481ca438..00000000 --- a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_blue-grey-zoom.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_blue-grey.jpg b/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_blue-grey.jpg Binary files differdeleted file mode 100644 index 9da67596..00000000 --- a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_blue-grey.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_gold.jpg b/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_gold.jpg Binary files differdeleted file mode 100644 index cba03cee..00000000 --- a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_gold.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_green.jpg b/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_green.jpg Binary files differdeleted file mode 100644 index 80b0d3e3..00000000 --- a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_green.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_grey-blue-zoom.jpg b/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_grey-blue-zoom.jpg Binary files differdeleted file mode 100644 index 4f753ed5..00000000 --- a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_grey-blue-zoom.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_grey-blue.jpg b/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_grey-blue.jpg Binary files differdeleted file mode 100644 index c214cd78..00000000 --- a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_grey-blue.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_purple.jpg b/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_purple.jpg Binary files differdeleted file mode 100644 index e4c3d7a8..00000000 --- a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_purple.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_red.jpg b/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_red.jpg Binary files differdeleted file mode 100644 index a092f636..00000000 --- a/src-qt5/core/lumina-desktop-unified/extrafiles/wallpapers/Lumina_Wispy_red.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop-unified/global-includes.h b/src-qt5/core/lumina-desktop-unified/global-includes.h index 184f5b8d..91604362 100644 --- a/src-qt5/core/lumina-desktop-unified/global-includes.h +++ b/src-qt5/core/lumina-desktop-unified/global-includes.h @@ -19,6 +19,7 @@ #include <QMouseEvent> #include <QAction> #include <QPoint> +#include <QTemporaryFile> #include <QFile> #include <QDir> #include <QString> @@ -53,7 +54,14 @@ #include <QJsonObject> #include <QJsonArray> #include <QJsonDocument> +#include <QQuickView> +#include <QQmlContext> +#include <QQmlEngine> +#include <QQuickImageProvider> +// C++ Backend classes for QML interface +#include <RootDesktopObject.h> +#include <ScreenObject.h> // libLumina includes #include <LuminaX11.h> @@ -64,7 +72,6 @@ #include <LDesktopUtils.h> #include <LuminaSingleApplication.h> #include <DesktopSettings.h> -#include <RootWindow.h> #include <ExternalProcess.h> #include <NativeWindow.h> #include <NativeWindowSystem.h> @@ -72,8 +79,6 @@ #include <XDGMime.h> #include <LIconCache.h> -// Standard C includes -#include <unistd.h> //Setup any global defines (no classes or global objects: use "global-objects.h" for that) diff --git a/src-qt5/core/lumina-desktop-unified/global-objects.h b/src-qt5/core/lumina-desktop-unified/global-objects.h index 0c990dc6..c204587f 100644 --- a/src-qt5/core/lumina-desktop-unified/global-objects.h +++ b/src-qt5/core/lumina-desktop-unified/global-objects.h @@ -25,8 +25,12 @@ #include "src-screensaver/LScreenSaver.h" //#include "src-WM/LWindowManager.h" +#include <RootWindow.h> #include "LSession.h" +// Standard C includes +#include <unistd.h> + //Any special defines for settings/testing #define ANIMTIME 80 //animation time in milliseconds diff --git a/src-qt5/core/lumina-desktop-unified/lumina-desktop.pro b/src-qt5/core/lumina-desktop-unified/lumina-desktop.pro index e8cf2f28..21e46b22 100644 --- a/src-qt5/core/lumina-desktop-unified/lumina-desktop.pro +++ b/src-qt5/core/lumina-desktop-unified/lumina-desktop.pro @@ -1,26 +1,30 @@ include($${PWD}/../../OS-detect.pri) -QT += core gui network -greaterThan(QT_MAJOR_VERSION, 4): QT += widgets x11extras multimedia multimediawidgets concurrent svg +lessThan(QT_MAJOR_VERSION, 5) { + message("[ERROR] Qt 5.4+ is required to use the Lumina Desktop!") + exit +} +lessThan(QT_MINOR_VERSION, 4){ + message("[ERROR] Qt 5.4+ is required to use the Lumina Desktop!") + exit +} +QT *= core gui network widgets x11extras multimedia multimediawidgets concurrent svg quick qml TARGET = lumina-desktop-unified target.path = $${L_BINDIR} #include all the special classes from the Lumina tree -include(../libLumina/ResizeMenu.pri) include(../libLumina/LDesktopUtils.pri) #includes LUtils and LOS include(../libLumina/LuminaXDG.pri) -#include(../libLumina/LuminaX11.pri) include(../libLumina/LuminaSingleApplication.pri) -include(../libLumina/LuminaThemes.pri) include(../libLumina/DesktopSettings.pri) -include(../libLumina/RootWindow.pri) include(../libLumina/ExternalProcess.pri) -include(../libLumina/NativeWindow.pri) +include(../../src-cpp/NativeWindow.pri) include(../libLumina/XDGMime.pri) -include(../libLumina/LIconCache.pri) + +include(../../src-cpp/plugins-screensaver.pri) #include all the main individual source groups include(src-screensaver/screensaver.pri) @@ -36,8 +40,7 @@ SOURCES += main.cpp \ HEADERS += global-includes.h \ global-objects.h \ LSession.h \ - BootSplash.h \ - JsonMenu.h + BootSplash.h FORMS += BootSplash.ui @@ -54,6 +57,9 @@ desktop.files = lumina-desktop.desktop defaults.path = $${L_SHAREDIR}/lumina-desktop defaults.files = defaults/* +extrafiles.path = $${L_SHAREDIR}/lumina-desktop +extrafiles.files = extrafiles/* + TRANSLATIONS = i18n/lumina-desktop_af.ts \ i18n/lumina-desktop_ar.ts \ i18n/lumina-desktop_az.ts \ @@ -120,7 +126,7 @@ TRANSLATIONS = i18n/lumina-desktop_af.ts \ dotrans.path=$${L_SHAREDIR}/lumina-desktop/i18n/ dotrans.extra=cd i18n && $${LRELEASE} -nounfinished *.ts && cp *.qm $(INSTALL_ROOT)$${L_SHAREDIR}/lumina-desktop/i18n/ -INSTALLS += target desktop defaults +INSTALLS += target desktop defaults extrafiles WITH_I18N{ INSTALLS += dotrans diff --git a/src-qt5/core/lumina-desktop-unified/src-desktop/RootWindow.cpp b/src-qt5/core/lumina-desktop-unified/src-desktop/RootWindow.cpp new file mode 100644 index 00000000..0cfa4e6b --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/src-desktop/RootWindow.cpp @@ -0,0 +1,44 @@ +//=========================================== +// Lumina-desktop source code +// Copyright (c) 2017, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#include "RootWindow.h" + +RootWindow::RootWindow() : QObject(){ + root_win = QWindow::fromWinId( QX11Info::appRootWindow() ); // + root_view = new QQuickView(root_win); //make it a child of the root window + root_obj = RootDesktopObject::instance(); + syncRootSize(); + connect(root_win, SIGNAL(widthChanged(int)), this, SLOT(syncRootSize()) ); + connect(root_win, SIGNAL(heightChanged(int)),this, SLOT(syncRootSize()) ); + //Now setup the QQuickView + root_view->setResizeMode(QQuickView::SizeRootObjectToView); + root_view->engine()->rootContext()->setContextProperty("RootObject", root_obj); + RootDesktopObject::RegisterType(); //make sure object classes are registered with the QML subsystems +} + +RootWindow::~RootWindow(){ + root_view->deleteLater(); + root_obj->deleteLater(); +} + +void RootWindow::start(){ + root_view->setSource(QUrl("qrc:///qml/RootDesktop.qml")); + root_win->show(); + root_view->show(); +} + +void RootWindow::syncRootSize(){ + //qDebug() << "Sync Root Size:" << root_win->width() << root_win->height() << root_view->geometry(); + QList<QScreen*> screens = QApplication::screens(); + QRect unif; + for(int i=0; i<screens.length(); i++){ unif = unif.united(screens[i]->geometry()); } + if(unif.width() != root_view->width() || unif.height() != root_view->height()){ + root_view->setGeometry(0, 0, unif.width(), unif.height() ); + emit RootResized(root_view->geometry()); + } + root_obj->updateScreens(); + //qDebug() << " - after:" << root_view->geometry(); +} diff --git a/src-qt5/core/lumina-desktop-unified/src-desktop/RootWindow.h b/src-qt5/core/lumina-desktop-unified/src-desktop/RootWindow.h new file mode 100644 index 00000000..ba489465 --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/src-desktop/RootWindow.h @@ -0,0 +1,34 @@ +//=========================================== +// Lumina-desktop source code +// Copyright (c) 2017, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#ifndef _LUMINA_DESKTOP_ROOT_WINDOW_H +#define _LUMINA_DESKTOP_ROOT_WINDOW_H +#include <global-includes.h> + +class RootWindow : public QObject{ + Q_OBJECT +private: + QWindow *root_win; + QQuickView *root_view; + RootDesktopObject *root_obj; + +public: + RootWindow(); + ~RootWindow(); + + void start(); + +public slots: + void syncRootSize(); + +signals: + void startLogout(); + void RegisterVirtualRoot(WId); + void RootResized(QRect); + void MouseMoved(); +}; + +#endif diff --git a/src-qt5/core/lumina-desktop-unified/src-desktop/desktop.pri b/src-qt5/core/lumina-desktop-unified/src-desktop/desktop.pri index 75aef8a6..e4c4faeb 100644 --- a/src-qt5/core/lumina-desktop-unified/src-desktop/desktop.pri +++ b/src-qt5/core/lumina-desktop-unified/src-desktop/desktop.pri @@ -1,6 +1,11 @@ -SOURCES *= $${PWD}/ContextMenu.cpp +QT *= gui widgets qml quick -HEADERS *= $${PWD}/ContextMenu.h +SOURCES *= $${PWD}/RootWindow.cpp + +HEADERS *= $${PWD}/RootWindow.h #update the includepath so we can just #include as needed without paths -INCLUDEPATH *= ${PWD} +INCLUDEPATH *= $${PWD} + +include($${PWD}/src-cpp/src-cpp.pri) +include($${PWD}/src-qml/src-qml.pri) diff --git a/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/RootDesktopObject.cpp b/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/RootDesktopObject.cpp new file mode 100644 index 00000000..9842712e --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/RootDesktopObject.cpp @@ -0,0 +1,77 @@ +//=========================================== +// Lumina-desktop source code +// Copyright (c) 2017, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#include "RootDesktopObject.h" +#include <QQmlEngine> +#include <QApplication> +#include <QScreen> + +#include <QDebug> + +// === PUBLIC === +RootDesktopObject::RootDesktopObject(QObject *parent) : QObject(parent){ + updateScreens(); //make sure the internal list is updated right away +} + +RootDesktopObject::~RootDesktopObject(){ + +} + +void RootDesktopObject::RegisterType(){ + qmlRegisterType<RootDesktopObject>("Lumina.Backend.RootDesktopObject", 2, 0, "RootDesktopObject"); + //Also register any types that are needed by this class + ScreenObject::RegisterType(); +} + +RootDesktopObject* RootDesktopObject::instance(){ + static RootDesktopObject* r_obj = new RootDesktopObject(); + return r_obj; +} + +//QML Read Functions +QList<ScreenObject*> RootDesktopObject::screens(){ + return s_objects; +} + +void RootDesktopObject::logout(){ + emit startLogout(); +} + +void RootDesktopObject::lockscreen(){ + emit lockScreen(); +} + +void RootDesktopObject::mousePositionChanged(){ + emit mouseMoved(); +} + +// === PUBLIC SLOTS === +void RootDesktopObject::updateScreens(){ + QList<QScreen*> scrns = QApplication::screens(); + QList<ScreenObject*> tmp; //copy of the internal array initially + for(int i=0; i<scrns.length(); i++){ + bool found = false; + for(int j=0; j<s_objects.length() && !found; j++){ + if(s_objects[j]->name()==scrns[i]->name()){ found = true; tmp << s_objects.takeAt(j); } + } + if(!found){ tmp << new ScreenObject(scrns[i], this); } + } + //Delete any leftover objects + for(int i=0; i<s_objects.length(); i++){ s_objects[i]->deleteLater(); } + s_objects = tmp; + emit screensChanged(); + for(int i=0; i<s_objects.length(); i++){ + s_objects[i]->emit geomChanged(); + } +} + +void RootDesktopObject::ChangeWallpaper(QString screen, QString value){ + for(int i=0; i<s_objects.length(); i++){ + if(s_objects[i]->name()==screen){ s_objects[i]->setBackground(value); break; } + } +} + +// === PRIVATE === diff --git a/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/RootDesktopObject.h b/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/RootDesktopObject.h new file mode 100644 index 00000000..dd7c7ab3 --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/RootDesktopObject.h @@ -0,0 +1,54 @@ +//=========================================== +// Lumina-desktop source code +// Copyright (c) 2017, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +// This is the base C++ object that is used to pass information to the QML "RootDesktop" object +//=========================================== +#ifndef _LUMINA_DESKTOP_QML_BACKEND_ROOT_DESKTOP_OBJECT_H +#define _LUMINA_DESKTOP_QML_BACKEND_ROOT_DESKTOP_OBJECT_H +#include <QObject> +#include <QList> + +#include "ScreenObject.h" + +class RootDesktopObject : public QObject{ + Q_OBJECT + //Define all the QML Properties here (interface between QML and the C++ methods below) + Q_PROPERTY( QList<ScreenObject*> screens READ screens NOTIFY screensChanged) + +public: + //main contructor/destructor + RootDesktopObject(QObject *parent = 0); + ~RootDesktopObject(); + + static void RegisterType(); + + //primary interface to fetch the current instance of the class (so only one is running at any given time) + static RootDesktopObject* instance(); + + //QML Read Functions + QList<ScreenObject*> screens(); + + //QML Access Functions + Q_INVOKABLE void logout(); + Q_INVOKABLE void lockscreen(); + Q_INVOKABLE void mousePositionChanged(); +private: + QList<ScreenObject*> s_objects; + +public slots: + void updateScreens(); //rescan/update screen objects + void ChangeWallpaper(QString screen, QString); + +private slots: + +signals: + void screensChanged(); + void startLogout(); + void mouseMoved(); + void lockScreen(); + +}; +#endif diff --git a/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/ScreenObject.cpp b/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/ScreenObject.cpp new file mode 100644 index 00000000..4c1d6189 --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/ScreenObject.cpp @@ -0,0 +1,31 @@ +//=========================================== +// Lumina-desktop source code +// Copyright (c) 2017, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#include "ScreenObject.h" +#include <QQmlEngine> +#include <QDebug> + +ScreenObject::ScreenObject(QScreen *scrn, QObject *parent) : QObject(parent){ + bg_screen = scrn; +} + +void ScreenObject::RegisterType(){ + qmlRegisterType<ScreenObject>("Lumina.Backend.ScreenObject",2,0, "ScreenObject"); +} + +QString ScreenObject::name(){ return bg_screen->name(); } +QString ScreenObject::background(){ qDebug() << "Got Background:" << bg_screen->name() << bg << bg_screen->geometry(); return bg; } +int ScreenObject::x(){ return bg_screen->geometry().x(); } +int ScreenObject::y(){ return bg_screen->geometry().y(); } +int ScreenObject::width(){ return bg_screen->geometry().width(); } +int ScreenObject::height(){ return bg_screen->geometry().height(); } + +void ScreenObject::setBackground(QString fileOrColor){ + if(bg!=fileOrColor){ + bg = fileOrColor; + emit backgroundChanged(); + } +} diff --git a/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/ScreenObject.h b/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/ScreenObject.h new file mode 100644 index 00000000..8076f1ae --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/ScreenObject.h @@ -0,0 +1,48 @@ +//=========================================== +// Lumina-desktop source code +// Copyright (c) 2017, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +// This is the base C++ object that is used to pass Screen/Wallpaper info to the QML classes +//=========================================== +#ifndef _LUMINA_DESKTOP_SCREEN_DESKTOP_OBJECT_H +#define _LUMINA_DESKTOP_SCREEN_DESKTOP_OBJECT_H +#include <QObject> +#include <QString> +#include <QScreen> + +class ScreenObject : public QObject { + Q_OBJECT + Q_PROPERTY( QString name READ name ) + Q_PROPERTY( QString background READ background NOTIFY backgroundChanged) + Q_PROPERTY( int x READ x NOTIFY geomChanged) + Q_PROPERTY( int y READ y NOTIFY geomChanged) + Q_PROPERTY( int width READ width NOTIFY geomChanged) + Q_PROPERTY( int height READ height NOTIFY geomChanged) + +private: + QScreen *bg_screen; + QString bg; + +public: + ScreenObject(QScreen *scrn = 0, QObject *parent = 0); + + static void RegisterType(); + + Q_INVOKABLE QString name(); + Q_INVOKABLE QString background(); + Q_INVOKABLE int x(); + Q_INVOKABLE int y(); + Q_INVOKABLE int width(); + Q_INVOKABLE int height(); + +public slots: + void setBackground(QString fileOrColor); + +signals: + void backgroundChanged(); + void geomChanged(); +}; + +#endif diff --git a/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/src-cpp.pri b/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/src-cpp.pri new file mode 100644 index 00000000..33b699da --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/src-cpp.pri @@ -0,0 +1,8 @@ +SOURCES *= $${PWD}/RootDesktopObject.cpp \ + $${PWD}/ScreenObject.cpp + +HEADERS *= $${PWD}/RootDesktopObject.h \ + $${PWD}/ScreenObject.h + +INCLUDEPATH *= $${PWD} + diff --git a/src-qt5/core/lumina-desktop-unified/src-desktop/src-qml/ContextMenu.qml b/src-qt5/core/lumina-desktop-unified/src-desktop/src-qml/ContextMenu.qml new file mode 100644 index 00000000..e5bac0b5 --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/src-desktop/src-qml/ContextMenu.qml @@ -0,0 +1,36 @@ +//=========================================== +// Lumina-desktop source code +// Copyright (c) 2017, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +import QtQuick 2.2 +import QtQuick.Window 2.2 +import QtQuick.Controls 2.0 + +import Lumina.Backend.RootDesktopObject 2.0 + +Menu { + id: contextMenu + closePolicy: Popup.CloseOnEscape | Popup.CloseOnPressOutside + MenuItem { + text: "Lock Screen" + onTriggered: { + RootObject.lockscreen() + } + } + + MenuItem { + text: "Logout" + //iconName: "system-log-out" + indicator: Image{ + asynchronous: true + //autoTransform: true + //source: "image://theme/system-logout" + source: "file:///usr/local/share/icons/material-design-light/scalable/actions/system-log-out.svg" + } + onTriggered: { + RootObject.logout() + } + } + } diff --git a/src-qt5/core/lumina-desktop-unified/src-desktop/src-qml/RootDesktop.qml b/src-qt5/core/lumina-desktop-unified/src-desktop/src-qml/RootDesktop.qml new file mode 100644 index 00000000..a1a9164f --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/src-desktop/src-qml/RootDesktop.qml @@ -0,0 +1,57 @@ +//=========================================== +// Lumina-desktop source code +// Copyright (c) 2017, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +// This is the base QML script the launches/controls the desktop interface itself +//=========================================== +// NOTE: This needs to be paired/used with the corresponding C++ class: RootDesktopObject +// Which should be added as the "RootObject" context property to the QML engine +//------------------ +// Example Code: +// RootDesktopObject *rootobj = new RootDesktopObject(); +// QQuickView *root = new QQuickView(); +// root->setResizeMode(QQuickView::SizeRootObjectToView); +// root->engine()->rootContext()->setContextProperty("RootObject", rootobj); +//=========================================== +import QtQuick 2.2 +import QtQuick.Window 2.2 +import QtQuick.Controls 2.0 + +import "." as QML + +import Lumina.Backend.RootDesktopObject 2.0 +import Lumina.Backend.ScreenObject 2.0 + +Rectangle { + id: rootCanvas + color: "black" + + //Setup the right-click context menu + MouseArea { + anchors.fill: rootCanvas + acceptedButtons: Qt.RightButton + onClicked: { + contextMenu.x = mouseX + contextMenu.y = mouseY + contextMenu.open() + } + onPositionChanged: { + RootObject.mousePositionChanged() + } + } + + //Create the context menu itself + QML.ContextMenu { id: contextMenu } + + //Setup the wallpapers + Repeater{ + model: RootObject.screens + QML.WallpaperImage{ + //console.log( modelData.name() ) + object: modelData + z: 0+index + } + } +} diff --git a/src-qt5/core/lumina-desktop-unified/src-desktop/src-qml/WallpaperImage.qml b/src-qt5/core/lumina-desktop-unified/src-desktop/src-qml/WallpaperImage.qml new file mode 100644 index 00000000..4d39b0b8 --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/src-desktop/src-qml/WallpaperImage.qml @@ -0,0 +1,25 @@ +//=========================================== +// Lumina-desktop source code +// Copyright (c) 2017, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +import QtQuick 2.2 +import QtQuick.Window 2.2 +import QtQuick.Controls 2.0 + +import Lumina.Backend.ScreenObject 2.0 + +AnimatedImage { + //C++ backend object + property ScreenObject object + + //Normal geometries/placements + asynchronous: true + clip: true + source: object.background + x: object.x + y: object.y + width: object.width + height: object.height + } diff --git a/src-qt5/core/lumina-desktop-unified/src-desktop/src-qml/src-qml.pri b/src-qt5/core/lumina-desktop-unified/src-desktop/src-qml/src-qml.pri new file mode 100644 index 00000000..99905253 --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/src-desktop/src-qml/src-qml.pri @@ -0,0 +1,7 @@ +#Show the QML files to lupdate for translation purposes - not for the actual build +lupdate_only{ + SOURCES *= $${PWD}/RootDesktop.qml \ + $${PWD}/ContextMenu.qml +} + +RESOURCES *= $${PWD}/src-qml.qrc diff --git a/src-qt5/core/lumina-desktop-unified/src-desktop/src-qml/src-qml.qrc b/src-qt5/core/lumina-desktop-unified/src-desktop/src-qml/src-qml.qrc new file mode 100644 index 00000000..ebdcc606 --- /dev/null +++ b/src-qt5/core/lumina-desktop-unified/src-desktop/src-qml/src-qml.qrc @@ -0,0 +1,7 @@ +<RCC> + <qresource prefix="qml"> + <file>RootDesktop.qml</file> + <file>ContextMenu.qml</file> + <file>WallpaperImage.qml</file> + </qresource> +</RCC> diff --git a/src-qt5/core/lumina-desktop-unified/src-screensaver/LLockScreen.cpp b/src-qt5/core/lumina-desktop-unified/src-screensaver/LLockScreen.cpp index 0ff70142..b791ffd2 100644 --- a/src-qt5/core/lumina-desktop-unified/src-screensaver/LLockScreen.cpp +++ b/src-qt5/core/lumina-desktop-unified/src-screensaver/LLockScreen.cpp @@ -77,7 +77,18 @@ void LLockScreen::TryUnlock(){ this->setEnabled(false); QString pass = ui->line_password->text(); ui->line_password->clear(); - bool ok = (LUtils::runCmd("lumina-checkpass", QStringList() << pass) == 0); + //Create a temporary file for the password, then pass that file descriptor to lumina-checkpass + QTemporaryFile *TF = new QTemporaryFile(".XXXXXXXXXX"); + TF->setAutoRemove(true); + bool ok = false; + if( TF->open() ){ + QTextStream in(TF); + in << pass; + in.flush(); //make sure we push it to the file **right now** since we need to keep the file open + ok = (LUtils::runCmd("lumina-checkpass", QStringList() << "-f" << TF->fileName() ) == 0); + TF->close(); + } + delete TF; if(ok){ emit ScreenUnlocked(); this->setEnabled(true); diff --git a/src-qt5/core/lumina-desktop-unified/src-screensaver/SSBaseWidget.cpp b/src-qt5/core/lumina-desktop-unified/src-screensaver/SSBaseWidget.cpp index a6d5be60..122307b3 100644 --- a/src-qt5/core/lumina-desktop-unified/src-screensaver/SSBaseWidget.cpp +++ b/src-qt5/core/lumina-desktop-unified/src-screensaver/SSBaseWidget.cpp @@ -12,19 +12,19 @@ // ======== // PUBLIC // ======== -SSBaseWidget::SSBaseWidget(QWidget *parent) : QWidget(parent){ +SSBaseWidget::SSBaseWidget(QWidget *parent) : QQuickView(parent->windowHandle()){ this->setObjectName("LuminaBaseSSWidget"); - ANIM = 0; - this->setMouseTracking(true); + this->setResizeMode(QQuickView::SizeRootObjectToView); + this->setColor(QColor("black")); //default color for the view + this->setCursor(Qt::BlankCursor); plugType="none"; restartTimer = new QTimer(this); - restartTimer->setInterval( DesktopSettings::instance()->value(DesktopSettings::ScreenSaver, "globals/plugin_time_seconds", 60).toInt() * 1000); + restartTimer->setInterval( DesktopSettings::instance()->value(DesktopSettings::ScreenSaver, "globals/plugin_time_seconds", 120).toInt() * 1000); restartTimer->setSingleShot(true); connect(restartTimer, SIGNAL(timeout()), this, SLOT(startPainting()) ); } SSBaseWidget::~SSBaseWidget(){ - if(ANIM!=0){ this->stopPainting(); } } void SSBaseWidget::setPlugin(QString plug){ @@ -35,54 +35,27 @@ void SSBaseWidget::setPlugin(QString plug){ // PUBLIC SLOTS // ============= void SSBaseWidget::startPainting(){ - cplug = plugType; //free up any old animation instance - if(ANIM!=0){ - stopPainting(); - } + stopPainting(); //If a random plugin - grab one of the known plugins - if(cplug=="random"){ - QStringList valid = BaseAnimGroup::KnownAnimations(); - valid.removeAll("none"); //they want a screensaver - remove the "none" option from the valid list - if(valid.isEmpty()){ cplug = "none"; } //no known plugins - else{ cplug = valid[ qrand()%valid.length() ]; } //grab a random plugin - } - if(DEBUG){ qDebug() << " - Screen Saver:" << plugType << cplug; } - //Now list all the various plugins and start them appropriately - QString style; - if(cplug=="none"){ - style = "background: black;"; //show the underlying black parent widget - }else{ - style = "background: black;"; + if(plugType=="random"){ + QList<SSPlugin> valid = SSPluginSystem::findAllPlugins(); + if(!valid.isEmpty()){ cplug = valid[ qrand()%valid.length() ]; } //grab a random plugin + }else if(plugType!="none"){ + cplug = SSPluginSystem::findPlugin(plugType); } - this->setStyleSheet("QWidget#LuminaBaseSSWidget{ "+style+"}"); - this->repaint(); - //If not a stylesheet-based plugin - set it here - if(cplug!="none"){ - ANIM = BaseAnimGroup::NewAnimation(cplug, this); - connect(ANIM, SIGNAL(finished()), this, SLOT(startPainting()) ); //repeat the plugin as needed - ANIM->LoadAnimations(); + if(DEBUG){ qDebug() << " - Screen Saver:" << plugType << cplug.scriptURL() << cplug.isValid(); } + if(cplug.isValid()){ + this->setSource( cplug.scriptURL() ); + if(plugType=="random"){ restartTimer->start(); } } - //Now start the animation(s) - if(ANIM!=0){ - if(ANIM->animationCount()>0){ - if(DEBUG){ qDebug() << " - Starting SS Plugin:" << cplug << ANIM->animationCount() << ANIM->duration() << ANIM->loopCount(); } - ANIM->start(); - } - } - restartTimer->start(); + } void SSBaseWidget::stopPainting(){ - if(ANIM!=0){ - if(DEBUG){ qDebug() << "Stopping Animation!!"; } - ANIM->stop(); - //ANIM->clear(); - ANIM->deleteLater(); - ANIM = 0; - //Delete any child widgets of the canvas - QList<QWidget*> widgets = this->findChildren<QWidget*>("",Qt::FindDirectChildrenOnly); - for(int i=0; i<widgets.length(); i++){ widgets[i]->deleteLater(); } + if(!this->source().isEmpty()){ + this->setSource(QUrl()); + cplug = SSPlugin(); //empty structure } if(restartTimer->isActive()){ restartTimer->stop(); } } diff --git a/src-qt5/core/lumina-desktop-unified/src-screensaver/SSBaseWidget.h b/src-qt5/core/lumina-desktop-unified/src-screensaver/SSBaseWidget.h index af809127..72e02702 100644 --- a/src-qt5/core/lumina-desktop-unified/src-screensaver/SSBaseWidget.h +++ b/src-qt5/core/lumina-desktop-unified/src-screensaver/SSBaseWidget.h @@ -10,9 +10,9 @@ #define _LUMINA_DESKTOP_SCREEN_SAVER_BASE_WIDGET_H #include "global-includes.h" -#include "animations/BaseAnimGroup.h" +#include <plugins-screensaver.h> -class SSBaseWidget : public QWidget{ +class SSBaseWidget : public QQuickView{ Q_OBJECT public: SSBaseWidget(QWidget *parent); @@ -25,8 +25,8 @@ public slots: void stopPainting(); private: - QString plugType, cplug; //type of custom painting to do - BaseAnimGroup *ANIM; + QString plugType; + SSPlugin cplug; QTimer *restartTimer; private slots: @@ -43,12 +43,6 @@ protected: ev->accept(); emit InputDetected(); } - void paintEvent(QPaintEvent*){ - QStyleOption opt; - opt.init(this); - QPainter p(this); - style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); - } }; diff --git a/src-qt5/core/lumina-desktop-unified/src-screensaver/screensaver.pri b/src-qt5/core/lumina-desktop-unified/src-screensaver/screensaver.pri index f95891c1..92cc7bd2 100644 --- a/src-qt5/core/lumina-desktop-unified/src-screensaver/screensaver.pri +++ b/src-qt5/core/lumina-desktop-unified/src-screensaver/screensaver.pri @@ -9,7 +9,7 @@ HEADERS *= $${PWD}/LLockScreen.h \ FORMS *= $${PWD}/LLockScreen.ui #update the includepath so we can just (#include <LScreenSaver.h>) as needed without paths -INCLUDEPATH *= ${PWD} +INCLUDEPATH *= $${PWD} #Now include all the screensaver animations/options -include(animations/animations.pri) +#include(animations/animations.pri) diff --git a/src-qt5/core/lumina-desktop/LDesktop.cpp b/src-qt5/core/lumina-desktop/LDesktop.cpp index f9ea1534..71b10bd5 100644 --- a/src-qt5/core/lumina-desktop/LDesktop.cpp +++ b/src-qt5/core/lumina-desktop/LDesktop.cpp @@ -341,7 +341,7 @@ void LDesktop::UpdateMenu(bool fast){ void LDesktop::UpdateWinMenu(){ winMenu->clear(); //Get the current list of windows - QList<WId> wins = LSession::handle()->XCB->WindowList(); + QList<WId> wins = LSession::handle()->XCB->WindowList(); //Now add them to the menu for(int i=0; i<wins.length(); i++){ LWinInfo info(wins[i]); @@ -352,7 +352,7 @@ void LDesktop::UpdateWinMenu(){ } void LDesktop::winClicked(QAction* act){ - LSession::handle()->XCB->ActivateWindow( act->data().toString().toULong() ); + LSession::handle()->XCB->ActivateWindow( act->data().toString().toULong() ); } void LDesktop::UpdateDesktop(){ @@ -393,7 +393,7 @@ void LDesktop::UpdateDesktop(){ if(settings->value(DPREFIX+"generateMediaIcons",true).toBool()){ QDir media("/media"); QStringList mediadirs = media.entryList(QDir::Dirs | QDir::Files | QDir::NoDotAndDotDot, QDir::Name); - for(int i=0; i<mediadirs.length(); i++){ + for(int i=0; i<mediadirs.length(); i++){ filelist << media.absoluteFilePath(mediadirs[i]); } } @@ -406,8 +406,8 @@ void LDesktop::RemoveDeskPlugin(QString ID){ //This is called after a plugin is manually removed by the user // just need to ensure that the plugin is also removed from the settings file QStringList plugs = settings->value(DPREFIX+"pluginlist", QStringList()).toStringList(); - if(plugs.contains(ID)){ - plugs.removeAll(ID); + if(plugs.contains(ID)){ + plugs.removeAll(ID); issyncing=true; //don't let the change cause a refresh settings->setValue(DPREFIX+"pluginlist", plugs); settings->sync(); @@ -437,7 +437,7 @@ void LDesktop::DecreaseDesktopPluginIcons(){ settings->setValue(DPREFIX+"GridSize",cur); settings->sync(); QTimer::singleShot(200, this, SLOT(UnlockSettings()) ); - bgDesktop->SetIconSize(cur); + bgDesktop->SetIconSize(cur); } void LDesktop::UpdatePanels(){ @@ -484,18 +484,18 @@ void LDesktop::UpdateDesktopPluginArea(){ QRegion shifted = visReg; QString loc = settings->value(PANELS[i]->prefix()+"location","top").toString().toLower(); int vis = PANELS[i]->visibleWidth(); - if(loc=="top"){ + if(loc=="top"){ if(!shifted.contains(QRect(rawRect.x(), rawRect.y(), rawRect.width(), vis))){ continue; } - shifted.translate(0, (rawRect.top()+vis)-shifted.boundingRect().top() ); + shifted.translate(0, (rawRect.top()+vis)-shifted.boundingRect().top() ); }else if(loc=="bottom"){ - if(!shifted.contains(QRect(rawRect.x(), rawRect.bottom()-vis, rawRect.width(), vis))){ continue; } - shifted.translate(0, (rawRect.bottom()-vis)-shifted.boundingRect().bottom()); - }else if(loc=="left"){ + if(!shifted.contains(QRect(rawRect.x(), rawRect.bottom()-vis, rawRect.width(), vis))){ continue; } + shifted.translate(0, (rawRect.bottom()-vis)-shifted.boundingRect().bottom()); + }else if(loc=="left"){ if( !shifted.contains(QRect(rawRect.x(), rawRect.y(), vis,rawRect.height())) ){ continue; } - shifted.translate((rawRect.left()+vis)-shifted.boundingRect().left() ,0); + shifted.translate((rawRect.left()+vis)-shifted.boundingRect().left() ,0); }else{ //right if(!shifted.contains(QRect(rawRect.right()-vis, rawRect.y(), vis,rawRect.height())) ){ continue; } - shifted.translate((rawRect.right()-vis)-shifted.boundingRect().right(),0); + shifted.translate((rawRect.right()-vis)-shifted.boundingRect().right(),0); } visReg = visReg.intersected( shifted ); } @@ -535,11 +535,20 @@ void LDesktop::UpdateBackground(){ //Get the list of background(s) to show QStringList bgL = settings->value(DPREFIX+"background/filelist-workspace-"+QString::number( LSession::handle()->XCB->CurrentWorkspace()), QStringList()).toStringList(); if(bgL.isEmpty()){ bgL = settings->value(DPREFIX+"background/filelist", QStringList()).toStringList(); } - + //qDebug() << " - List:" << bgL << CBG; //Remove any invalid files for(int i=0; i<bgL.length(); i++){ - if( (!QFile::exists(bgL[i]) && bgL[i]!="default" && !bgL[i].startsWith("rgb(") ) || bgL[i].isEmpty()){ bgL.removeAt(i); i--; } + if(bgL[i]=="default" || bgL[i].startsWith("rgb(") ){ continue; } //built-in definitions - treat them as valid + if(bgL[i].isEmpty()){ bgL.removeAt(i); i--; } + if( !QFile::exists(bgL[i]) ){ + //Quick Detect/replace for new path for Lumina wallpapers (change in 1.3.4) + if(bgL[i].contains("/wallpapers/Lumina-DE/")){ + bgL[i] = bgL[i].replace("/wallpapers/Lumina-DE/", "/wallpapers/lumina-desktop/"); i--; //modify the path and re-check it + }else{ + bgL.removeAt(i); i--; + } + } } if(bgL.isEmpty()){ bgL << "default"; } //always fall back on the default //Determine if the background needs to be changed @@ -552,13 +561,32 @@ void LDesktop::UpdateBackground(){ } oldBGL = bgL; //save this for later //Determine which background to use next - int index ( qrand() % bgL.length() ); - if(index== bgL.indexOf(CBG)){ //if the current wallpaper was selected by the randomization again - //Go to the next in the list - if(index < 0 || index >= bgL.length()-1){ index = 0; } //if invalid or last item in the list - go to first - else{ index++; } //go to next + QString bgFile; + while(bgFile.isEmpty() || QFileInfo(bgFile).isDir()){ + QString prefix; + if(!bgFile.isEmpty()){ + //Got a directory - update the list of files and re-randomize the selection + QStringList imgs = LUtils::imageExtensions(); + for(int i=0; i<imgs.length(); i++){ imgs[i].prepend("*."); } + QDir tdir(bgFile); + prefix=bgFile+"/"; + bgL = tdir.entryList(imgs, QDir::Files | QDir::NoDotAndDotDot, QDir::Name); + //If directory no longer has any valid images - remove it from list and try again + if(bgL.isEmpty()){ + oldBGL.removeAll(bgFile); //invalid directory - remove it from the list for the moment + bgL = oldBGL; //reset the list back to the original list (not within a directory) + } + } + //Verify that there are files in the list - otherwise use the default + if(bgL.isEmpty()){ bgFile="default"; break; } + int index = ( qrand() % bgL.length() ); + if(index== bgL.indexOf(CBG)){ //if the current wallpaper was selected by the randomization again + //Go to the next in the list + if(index < 0 || index >= bgL.length()-1){ index = 0; } //if invalid or last item in the list - go to first + else{ index++; } //go to next + } + bgFile = prefix+bgL[index]; } - QString bgFile = bgL[index]; //Save this file as the current background CBG = bgFile; //qDebug() << " - Set Background to:" << CBG << index << bgL; @@ -570,7 +598,7 @@ void LDesktop::UpdateBackground(){ bgDesktop->setBackground(backPix); //Now reset the timer for the next change (if appropriate) if(bgtimer->isActive()){ bgtimer->stop(); } - if(bgL.length() > 1){ + if(bgL.length()>1 || oldBGL.length()>1){ //get the length of the timer (in minutes) int min = settings->value(DPREFIX+"background/minutesToChange",5).toInt(); //restart the internal timer @@ -633,9 +661,9 @@ void LDesktop::NewDesktopFile(QString name){ QDir desktop(QDir::homePath()); if(desktop.exists(tr("Desktop"))){ desktop.cd(tr("Desktop")); } //translated folder else{ desktop.cd("Desktop"); } //default/english folder - if(!desktop.exists(name)){ + if(!desktop.exists(name)){ QFile file(desktop.absoluteFilePath(name)); - if(file.open(QIODevice::WriteOnly) ){ file.close(); } + if(file.open(QIODevice::WriteOnly) ){ file.close(); } } } } diff --git a/src-qt5/core/lumina-desktop/LDesktopPluginSpace.cpp b/src-qt5/core/lumina-desktop/LDesktopPluginSpace.cpp index 41a1017d..9e964f5d 100644 --- a/src-qt5/core/lumina-desktop/LDesktopPluginSpace.cpp +++ b/src-qt5/core/lumina-desktop/LDesktopPluginSpace.cpp @@ -21,7 +21,7 @@ LDesktopPluginSpace::LDesktopPluginSpace() : QWidget(){ //this->setAttribute(Qt::WA_TranslucentBackground); //this->setAttribute(Qt::WA_NoSystemBackground); this->setAutoFillBackground(false); - this->setStyleSheet("QWidget#LuminaDesktopPluginSpace{ border: none; background: transparent; }"); + this->setStyleSheet("QWidget#LuminaDesktopPluginSpace{ border: none; background: transparent; }"); this->setWindowFlags(Qt::WindowStaysOnBottomHint | Qt::CustomizeWindowHint | Qt::FramelessWindowHint); this->setAcceptDrops(true); this->setContextMenuPolicy(Qt::NoContextMenu); @@ -34,7 +34,7 @@ LDesktopPluginSpace::LDesktopPluginSpace() : QWidget(){ } LDesktopPluginSpace::~LDesktopPluginSpace(){ - + } void LDesktopPluginSpace::LoadItems(QStringList plugs, QStringList files){ @@ -76,7 +76,7 @@ void LDesktopPluginSpace::setBackground(QPixmap pix){ void LDesktopPluginSpace::setDesktopArea(QRect area){ //qDebug() << "Setting Desktop Plugin Area:" << area; desktopRect = area; - + } // =================== @@ -222,7 +222,7 @@ QRect LDesktopPluginSpace::findOpenSpot(int gridwidth, int gridheight, int start //else{ row++; } } if(!found){ col++; row=0; } //go to the next column - } + } }else if(reversed && (startRow>0 || startCol>0) ){ //Arrange Left->Right (work backwards) while(row>=0 && !found){ @@ -242,7 +242,7 @@ QRect LDesktopPluginSpace::findOpenSpot(int gridwidth, int gridheight, int start //else{ col++; } } if(!found){ row--; col=colCount-gridwidth;} //go to the previous row - } + } }else{ //Arrange Left->Right while(row<(rowCount-gridheight) && !found){ @@ -296,8 +296,8 @@ void LDesktopPluginSpace::reloadPlugins(bool ForceIconUpdate ){ QStringList plugs = plugins; QStringList items = deskitems; for(int i=0; i<ITEMS.length(); i++){ - - if( ITEMS[i]->whatsThis().startsWith("applauncher") && ForceIconUpdate){ + + if( ITEMS[i]->whatsThis().startsWith("applauncher") && ForceIconUpdate){ //Change the size of the existing plugin - preserving the location if possible /*QRect geom = ITEMS[i]->loadPluginGeometry(); //pixel coords if(!geom.isNull()){ @@ -306,14 +306,14 @@ void LDesktopPluginSpace::reloadPlugins(bool ForceIconUpdate ){ ITEMS[i]->savePluginGeometry( gridToGeom(geom)); //save it back in pixel coords }*/ //Now remove the plugin for the moment - run it through the re-creation routine below - ITEMS.takeAt(i)->deleteLater(); + ITEMS.takeAt(i)->deleteLater(); i--; } else if(plugs.contains(ITEMS[i]->whatsThis())){ plugs.removeAll(ITEMS[i]->whatsThis()); } else if(items.contains(ITEMS[i]->whatsThis().section("---",0,0).section("::",1,50))){ items.removeAll(ITEMS[i]->whatsThis().section("---",0,0).section("::",1,50)); } else{ ITEMS[i]->removeSettings(true); ITEMS.takeAt(i)->deleteLater(); i--; } //this is considered a permanent removal (cleans settings) } - + //Now create any new items //First load the plugins (almost always have fixed locations) for(int i=0; i<plugs.length(); i++){ diff --git a/src-qt5/core/lumina-desktop/LSession.cpp b/src-qt5/core/lumina-desktop/LSession.cpp index 2a1ec783..dab30f01 100644 --- a/src-qt5/core/lumina-desktop/LSession.cpp +++ b/src-qt5/core/lumina-desktop/LSession.cpp @@ -98,7 +98,7 @@ void LSession::setupSession(){ qDebug() << "Initializing Session"; if(QFile::exists("/tmp/.luminastopping")){ QFile::remove("/tmp/.luminastopping"); } QTime* timer = 0; - //if(DEBUG){ timer = new QTime(); timer->start(); qDebug() << " - Init srand:" << timer->elapsed();} + if(DEBUG){ timer = new QTime(); timer->start(); qDebug() << " - Init srand:" << timer->elapsed();} //Setup the QSettings default paths splash.showScreen("settings"); @@ -118,9 +118,9 @@ void LSession::setupSession(){ } //use the system settings //Setup the user's lumina settings directory as necessary - splash.showScreen("user"); - if(DEBUG){ qDebug() << " - Init User Files:" << timer->elapsed();} - checkUserFiles(); //adds these files to the watcher as well + //splash.showScreen("user"); + //if(DEBUG){ qDebug() << " - Init User Files:" << timer->elapsed();} + //checkUserFiles(); //adds these files to the watcher as well //Initialize the internal variables DESKTOPS.clear(); @@ -147,11 +147,12 @@ void LSession::setupSession(){ if(DEBUG){ qDebug() << " - Init Desktops:" << timer->elapsed();} desktopFiles = QDir(QDir::homePath()+"/Desktop").entryInfoList(QDir::NoDotAndDotDot | QDir::Files | QDir::Dirs, QDir::Name | QDir::IgnoreCase | QDir::DirsFirst); updateDesktops(); - for(int i=0; i<6; i++){ LSession::processEvents(); } //Run through this a few times so the interface systems get up and running + //if(DEBUG){ qDebug() << " - Process Events (6x):" << timer->elapsed();} + //for(int i=0; i<6; i++){ LSession::processEvents(); } //Run through this a few times so the interface systems get up and running //Now setup the system watcher for changes splash.showScreen("final"); - qDebug() << " - Initialize file system watcher"; + //qDebug() << " - Initialize file system watcher"; if(DEBUG){ qDebug() << " - Init QFileSystemWatcher:" << timer->elapsed();} watcher = new QFileSystemWatcher(this); QString confdir = sessionsettings->fileName().section("/",0,-2); @@ -171,14 +172,18 @@ void LSession::setupSession(){ connect(watcher, SIGNAL(directoryChanged(QString)), this, SLOT(watcherChange(QString)) ); connect(watcher, SIGNAL(fileChanged(QString)), this, SLOT(watcherChange(QString)) ); connect(this, SIGNAL(aboutToQuit()), this, SLOT(SessionEnding()) ); - if(DEBUG){ qDebug() << " - Init Finished:" << timer->elapsed(); delete timer;} - for(int i=0; i<4; i++){ LSession::processEvents(); } //Again, just a few event loops here so thing can settle before we close the splash screen + //if(DEBUG){ qDebug() << " - Process Events (4x):" << timer->elapsed();} + //for(int i=0; i<4; i++){ LSession::processEvents(); } //Again, just a few event loops here so thing can settle before we close the splash screen + if(DEBUG){ qDebug() << " - Launch Startup Apps:" << timer->elapsed();} //launchStartupApps(); QTimer::singleShot(500, this, SLOT(launchStartupApps()) ); - splash.hide(); - LSession::processEvents(); + //if(DEBUG){ qDebug() << " - Hide Splashscreen:" << timer->elapsed();} + //splash.hide(); + //LSession::processEvents(); + if(DEBUG){ qDebug() << " - Close Splashscreen:" << timer->elapsed();} splash.close(); - LSession::processEvents(); + //LSession::processEvents(); + if(DEBUG){ qDebug() << " - Init Finished:" << timer->elapsed(); delete timer;} } void LSession::CleanupSession(){ @@ -289,7 +294,7 @@ void LSession::launchStartupApps(){ qDebug() << " - - Screen Brightness:" << QString::number(tmp)+"%"; } //QProcess::startDetached("nice lumina-open -autostart-apps"); - ExternalProcess::launch("nice lumina-open -autostart-apps"); + ExternalProcess::launch("lumina-open", QStringList() << "-autostart-apps", false); //Re-load the screen brightness and volume settings from the previous session // Wait until after the XDG-autostart functions, since the audio system might be started that way @@ -303,7 +308,7 @@ void LSession::launchStartupApps(){ QString sfile = sessionsettings->value("audiofiles/login", LOS::LuminaShare()+"Login.ogg").toString(); playAudioFile(sfile); } - qDebug() << "[DESKTOP INIT FINISHED]"; + //qDebug() << "[DESKTOP INIT FINISHED]"; } void LSession::StartLogout(){ @@ -384,15 +389,26 @@ void LSession::checkWindowGeoms(){ } } -void LSession::checkUserFiles(){ +bool LSession::checkUserFiles(){ //internal version conversion examples: // [1.0.0 -> 1000000], [1.2.3 -> 1002003], [0.6.1 -> 6001] - QString OVS = sessionsettings->value("DesktopVersion","0").toString(); //Old Version String - bool changed = LDesktopUtils::checkUserFiles(OVS); + qDebug() << "Check User Files"; + //char tmp[] = "junk\0"; + //int tmpN = 0; + //QApplication A(tmpN, (char **)&tmp); + QSettings sset("lumina-desktop", "sessionsettings"); + QString OVS = sset.value("DesktopVersion","0").toString(); //Old Version String + qDebug() << " - Old Version:" << OVS; + qDebug() << " - Current Version:" << LDesktopUtils::LuminaDesktopVersion(); + bool changed = LDesktopUtils::checkUserFiles(OVS, LDesktopUtils::LuminaDesktopVersion()); + qDebug() << " - Made Changes:" << changed; if(changed){ //Save the current version of the session to the settings file (for next time) - sessionsettings->setValue("DesktopVersion", this->applicationVersion()); + sset.setValue("DesktopVersion", LDesktopUtils::LuminaDesktopVersion()); } + qDebug() << "Finished with user files check"; + //delete A; + return changed; } void LSession::refreshWindowManager(){ @@ -573,7 +589,7 @@ void LSession::SessionEnding(){ //=============== void LSession::LaunchApplication(QString cmd){ //LSession::setOverrideCursor(QCursor(Qt::BusyCursor)); - ExternalProcess::launch(cmd); + ExternalProcess::launch(cmd, QStringList(), true); //QProcess::startDetached(cmd); } @@ -674,7 +690,7 @@ void LSession::WindowPropertyEvent(){ if(RunningApps.length() < newapps.length()){ //New Window found //qDebug() << "New window found"; - LSession::restoreOverrideCursor(); //restore the mouse cursor back to normal (new window opened?) + //LSession::restoreOverrideCursor(); //restore the mouse cursor back to normal (new window opened?) //Perform sanity checks on any new window geometries for(int i=0; i<newapps.length() && !TrayStopping; i++){ if(!RunningApps.contains(newapps[i])){ @@ -826,7 +842,7 @@ void LSession::attachTrayWindow(WId win){ if(RunningTrayApps.contains(win)){ return; } //already managed qDebug() << "Session Tray: Window Added"; RunningTrayApps << win; - LSession::restoreOverrideCursor(); + //LSession::restoreOverrideCursor(); if(DEBUG){ qDebug() << "Tray List Changed"; } emit TrayListChanged(); } diff --git a/src-qt5/core/lumina-desktop/LSession.h b/src-qt5/core/lumina-desktop/LSession.h index 0d69df84..a25f3c15 100644 --- a/src-qt5/core/lumina-desktop/LSession.h +++ b/src-qt5/core/lumina-desktop/LSession.h @@ -39,7 +39,7 @@ #define SYSTEM_TRAY_CANCEL_MESSAGE 2 /*class MenuProxyStyle : public QProxyStyle{ -public: +public: int pixelMetric(PixelMetric metric, const QStyleOption *option=0, const QWidget *widget=0) const{ if(metric==PM_SmallIconSize){ return 22; } //override QMenu icon size (make it larger) else{ return QProxyStyle::pixelMetric(metric, option, widget); } //use the current style for everything else @@ -51,6 +51,8 @@ class LSession : public LSingleApplication{ public: LSession(int &argc, char **argv); ~LSession(); + + static bool checkUserFiles(); //Functions to be called during startup void setupSession(); @@ -63,7 +65,7 @@ public: bool registerStartButton(QString ID); void unregisterStartButton(QString ID); - //Special functions for XCB event filter parsing only + //Special functions for XCB event filter parsing only // (DO NOT USE MANUALLY) void RootSizeChange(); void WindowPropertyEvent(); @@ -73,37 +75,37 @@ public: void WindowConfigureEvent(WId); void WindowDamageEvent(WId); void WindowSelectionClearEvent(WId); - + //System Access //Return a pointer to the current session static LSession* handle(){ return static_cast<LSession*>(LSession::instance()); } - + static void LaunchApplication(QString cmd); QFileInfoList DesktopFiles(); - + QRect screenGeom(int num); - + AppMenu* applicationMenu(); void systemWindow(); SettingsMenu* settingsMenu(); LXCB *XCB; //class for XCB usage - + QSettings* sessionSettings(); QSettings* DesktopPluginSettings(); - + //Keep track of which non-desktop window should be treated as active WId activeWindow(); //This will return the last active window if a desktop element is currently active - + //Temporarily change the session locale (nothing saved between sessions) void switchLocale(QString localeCode); - + //Play System Audio void playAudioFile(QString filepath); //Window Adjustment Routine (due to Fluxbox not respecting _NET_WM_STRUT) void adjustWindowGeom(WId win, bool maximize = false); - + private: //WMProcess *WM; QList<LDesktop*> DESKTOPS; @@ -136,9 +138,9 @@ private: QFileInfoList desktopFiles; void CleanupSession(); - + int VersionStringToNumber(QString version); - + public slots: void StartLogout(); void StartShutdown(bool skipupdates = false); @@ -161,7 +163,6 @@ private slots: void removeTrayWindow(WId); //Internal simplification functions - void checkUserFiles(); void refreshWindowManager(); void updateDesktops(); void registerDesktopWindows(); @@ -189,7 +190,7 @@ signals: void DesktopFilesChanged(); void MediaFilesChanged(); void WorkspaceChanged(); - + }; #endif diff --git a/src-qt5/core/lumina-desktop/LXcbEventFilter.cpp b/src-qt5/core/lumina-desktop/LXcbEventFilter.cpp index ca7fb38d..038872ff 100644 --- a/src-qt5/core/lumina-desktop/LXcbEventFilter.cpp +++ b/src-qt5/core/lumina-desktop/LXcbEventFilter.cpp @@ -52,8 +52,8 @@ bool XCBEventFilter::nativeEventFilter(const QByteArray &eventType, void *messag session->emit WorkspaceChanged(); }else if( SysNotifyAtoms.contains( ((xcb_property_notify_event_t*)ev)->atom ) ){ //Update the status/list of all running windows - session->WindowPropertyEvent(); - + session->WindowPropertyEvent(); + //window-specific property change }else if( WinNotifyAtoms.contains( ((xcb_property_notify_event_t*)ev)->atom ) ){ //Ping only that window @@ -61,7 +61,7 @@ bool XCBEventFilter::nativeEventFilter(const QByteArray &eventType, void *messag session->WindowPropertyEvent(); } break; -//============================== +//============================== case XCB_CLIENT_MESSAGE: //qDebug() << "Client Message Event"; //qDebug() << " - Root Window:" << QX11Info::appRootWindow(); @@ -72,7 +72,7 @@ bool XCBEventFilter::nativeEventFilter(const QByteArray &eventType, void *messag session->SysTrayDockRequest( ((xcb_client_message_event_t*)ev)->data.data32[2] ); } //Ignore the System Tray messages at the moment (let the WM handle it) - + //window-specific property changes /*}else if( ((xcb_client_message_event_t*)ev)->type == session->XCB->EWMH._NET_WM_STATE ){ if( session->XCB->WindowIsMaximized( ((xcb_client_message_event_t*)ev)->window ) ){ @@ -86,22 +86,22 @@ bool XCBEventFilter::nativeEventFilter(const QByteArray &eventType, void *messag session->WindowPropertyEvent(); } break; -//============================== +//============================== case XCB_DESTROY_NOTIFY: //qDebug() << "Window Closed Event"; session->WindowClosedEvent( ( (xcb_destroy_notify_event_t*)ev )->window ); break; -//============================== +//============================== case XCB_CONFIGURE_NOTIFY: //qDebug() << "Configure Notify Event"; session->WindowConfigureEvent( ((xcb_configure_notify_event_t*)ev)->window ); break; -//============================== +//============================== case XCB_SELECTION_CLEAR: //qDebug() << "Selection Clear Event"; - session->WindowSelectionClearEvent( ((xcb_selection_clear_event_t*)ev)->owner ); + session->WindowSelectionClearEvent( ((xcb_selection_clear_event_t*)ev)->owner ); break; -//============================== +//============================== default: if(TrayDmgFlag!=0){ //if( (ev->response_type & ~0x80)==TrayDmgFlag){ diff --git a/src-qt5/core/lumina-desktop/WMProcess.cpp b/src-qt5/core/lumina-desktop/WMProcess.cpp index aa01b730..0687c1fe 100644 --- a/src-qt5/core/lumina-desktop/WMProcess.cpp +++ b/src-qt5/core/lumina-desktop/WMProcess.cpp @@ -30,7 +30,7 @@ void WMProcess::startWM(){ if(!isRunning()){this->start(cmd); } /*if(ssaver->state() == QProcess::NotRunning \ && LSession::handle()->sessionSettings()->value("WindowManager", "fluxbox").toString() != "lumina-wm"){ - ssaver->start("xscreensaver -no-splash"); + ssaver->start("xscreensaver -no-splash"); }*/ } @@ -52,8 +52,8 @@ void WMProcess::restartWM(){ inShutdown = true; this->kill(); if(!this->waitForFinished(5000) ){ this->terminate(); }; - inShutdown = false; - } + inShutdown = false; + } this->startWM(); } diff --git a/src-qt5/core/lumina-desktop/defaults/luminaDesktop-TrueOS.conf b/src-qt5/core/lumina-desktop/defaults/luminaDesktop-TrueOS.conf index e453c0b8..e9520a3c 100644 --- a/src-qt5/core/lumina-desktop/defaults/luminaDesktop-TrueOS.conf +++ b/src-qt5/core/lumina-desktop/defaults/luminaDesktop-TrueOS.conf @@ -53,7 +53,7 @@ mime_default_application/x-tar_ifexists=lumina-archiver.desktop #THEME SETTINGS theme_themefile=DarkGlass #Name of the theme to use (disable for Lumina-Default) -theme_colorfile=Black #Name of the color spec file to use for theming +theme_colorfile=darker #Name of the color spec file to use for theming theme_iconset=material-design-dark #Name of the icon theme to use theme_font=Noto Sans #Name of the font family to use theme_fontsize=10pt #Default size of the fonts to use on the desktop (can also use a percentage of the screen height (<number>%) ) diff --git a/src-qt5/core/lumina-desktop/defaults/luminaDesktop.conf b/src-qt5/core/lumina-desktop/defaults/luminaDesktop.conf index 1327f148..40ece4f0 100644 --- a/src-qt5/core/lumina-desktop/defaults/luminaDesktop.conf +++ b/src-qt5/core/lumina-desktop/defaults/luminaDesktop.conf @@ -51,7 +51,7 @@ mime_default_application/x-shellscript=lumina-textedit.desktop #THEME SETTINGS theme_themefile=DarkGlass #Name of the theme to use (disable for Lumina-Default) -theme_colorfile=Black #Name of the color spec file to use for theming +theme_colorfile=darker #Name of the color spec file to use for theming theme_iconset=material-design-dark #Name of the icon theme to use theme_font=Arial #Name of the font family to use theme_fontsize=10pt #Default size of the fonts to use on the desktop (can also use a percentage of the screen height (<number>%) ) diff --git a/src-qt5/core/lumina-desktop/desktop-plugins/applauncher/AppLauncherPlugin.cpp b/src-qt5/core/lumina-desktop/desktop-plugins/applauncher/AppLauncherPlugin.cpp index 0258d561..0bf087c1 100644 --- a/src-qt5/core/lumina-desktop/desktop-plugins/applauncher/AppLauncherPlugin.cpp +++ b/src-qt5/core/lumina-desktop/desktop-plugins/applauncher/AppLauncherPlugin.cpp @@ -44,7 +44,8 @@ void AppLauncherPlugin::loadButton(){ QFileInfo info(path); this->contextMenu()->clear(); //qDebug() << "Default Application Launcher:" << def << path; - bool ok = QFile::exists(path); + bool ok = info.canonicalPath().startsWith("/net/"); + if(!ok){ ok = QFile::exists(path); } //do it this way to ensure the file existance check never runs for /net/ files if(!ok){ emit RemovePlugin(this->ID()); return;} icosize = this->height()-4 - 2.2*button->fontMetrics().height(); button->setFixedSize( this->width()-4, this->height()-4); diff --git a/src-qt5/core/lumina-desktop/i18n/lumina-desktop_et.ts b/src-qt5/core/lumina-desktop/i18n/lumina-desktop_et.ts index ef19e5a0..456d5aff 100644 --- a/src-qt5/core/lumina-desktop/i18n/lumina-desktop_et.ts +++ b/src-qt5/core/lumina-desktop/i18n/lumina-desktop_et.ts @@ -40,47 +40,47 @@ <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="73"/> <source>Launch %1</source> - <translation type="unfinished">Käivita %1</translation> + <translation>Käivita %1</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="134"/> <source>Open</source> - <translation type="unfinished">Ava</translation> + <translation>Ava</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="136"/> <source>Open With</source> - <translation type="unfinished"></translation> + <translation>Ava Kasutades</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="139"/> <source>View Properties</source> - <translation type="unfinished"></translation> + <translation>Vaata Omadusi</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="141"/> <source>File Operations</source> - <translation type="unfinished"></translation> + <translation>Failioperatsioonid</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="143"/> <source>Rename</source> - <translation type="unfinished"></translation> + <translation>Nimeta Ümber</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="146"/> <source>Copy</source> - <translation type="unfinished">Kopeeri</translation> + <translation>Kopeeri</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="149"/> <source>Cut</source> - <translation type="unfinished">Lõika</translation> + <translation>Lõika</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="151"/> <source>Delete</source> - <translation type="unfinished">Kustuta</translation> + <translation>Kustuta</translation> </message> <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="213"/> @@ -95,7 +95,7 @@ <message> <location filename="../desktop-plugins/applauncher/AppLauncherPlugin.cpp" line="299"/> <source>New Filename</source> - <translation type="unfinished"></translation> + <translation>Uus Failinimi</translation> </message> </context> <context> @@ -103,12 +103,12 @@ <message> <location filename="../AppMenu.cpp" line="48"/> <source>Desktop</source> - <translation type="unfinished">Töölaud</translation> + <translation>Töölaud</translation> </message> <message> <location filename="../AppMenu.cpp" line="85"/> <source>Manage Applications</source> - <translation type="unfinished"></translation> + <translation>Halda Rakendusi</translation> </message> <message> <location filename="../AppMenu.cpp" line="90"/> @@ -196,47 +196,47 @@ <message> <location filename="../BootSplash.ui" line="94"/> <source>Starting the Lumina Desktop...</source> - <translation type="unfinished"></translation> + <translation>Lumina Töölaua käivitumine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="17"/> <source>Version %1</source> - <translation type="unfinished"></translation> + <translation>Versioon %1</translation> </message> <message> <location filename="../BootSplash.cpp" line="41"/> <source>This desktop is powered by coffee, coffee, and more coffee.</source> - <translation type="unfinished"></translation> + <translation>Töölaua valmimist on toetanud kohvi, kohvi ja veel rohkem kohvi.</translation> </message> <message> <location filename="../BootSplash.cpp" line="43"/> <source>Keep up with desktop news!</source> - <translation type="unfinished"></translation> + <translation>Pea silm peal töölaua uudistel!</translation> </message> <message> <location filename="../BootSplash.cpp" line="45"/> <source>There is a full handbook of information about the desktop available online.</source> - <translation type="unfinished"></translation> + <translation>Võrgus on Töölaua kohta olemas täiemahuline käsiraamat (ingl.k)</translation> </message> <message> <location filename="../BootSplash.cpp" line="47"/> <source>Want to change the interface? Everything is customizable in the desktop configuration!</source> - <translation type="unfinished"></translation> + <translation>Soovid muuta kasutajaliidest? Kõik töölaua konfiguratsioonis on muudetav!</translation> </message> <message> <location filename="../BootSplash.cpp" line="49"/> <source>Lumina can easily reproduce the interface from most other desktop environments.</source> - <translation type="unfinished"></translation> + <translation>Lumina võimaldab kergesti taasluua kasutajaliideseid enamikest muudest töölauakeskkondadest</translation> </message> <message> <location filename="../BootSplash.cpp" line="51"/> <source>This desktop is generously sponsored by iXsystems</source> - <translation type="unfinished"></translation> + <translation>Selle töölaua valmimist on heldelt toetanud iXsystems</translation> </message> <message> <location filename="../BootSplash.cpp" line="53"/> <source>I have never been hurt by what I have not said</source> - <translation type="unfinished"></translation> + <translation>Mulle ei ole kunagi haiget teenud ütlemata jäänud asjad</translation> </message> <message> <location filename="../BootSplash.cpp" line="55"/> @@ -246,22 +246,22 @@ <message> <location filename="../BootSplash.cpp" line="57"/> <source>Everything has its beauty but not everyone sees it.</source> - <translation type="unfinished"></translation> + <translation>Kõigel on oma ilu kuid mitte kõik ei oska seda näha</translation> </message> <message> <location filename="../BootSplash.cpp" line="59"/> <source>Before God we are all equally wise - and equally foolish.</source> - <translation type="unfinished"></translation> + <translation>Jumala ees oleme kõik võrdselt targad - ja võrdselt lollid.</translation> </message> <message> <location filename="../BootSplash.cpp" line="61"/> <source>We cannot do everything at once, but we can do something at once.</source> - <translation type="unfinished"></translation> + <translation>Me ei saa teha kõike ühekorraga, kuid me saame teha midagi kohe.</translation> </message> <message> <location filename="../BootSplash.cpp" line="63"/> <source>One with the law is a majority.</source> - <translation type="unfinished"></translation> + <translation type="unfinished></translation> </message> <message> <location filename="../BootSplash.cpp" line="65"/> @@ -271,217 +271,218 @@ <message> <location filename="../BootSplash.cpp" line="67"/> <source>You can't know too much, but you can say too much.</source> - <translation type="unfinished"></translation> + <translation>Sa ei saa kunagi teada liiga palju, kuid saad öelda.</translation> </message> <message> <location filename="../BootSplash.cpp" line="69"/> <source>Duty is not collective; it is personal.</source> - <translation type="unfinished"></translation> + <translation>Kohusetunne ei ole kollektiivne, see on isiklik</translation> </message> <message> <location filename="../BootSplash.cpp" line="71"/> <source>Any society that would give up a little liberty to gain a little security will deserve neither and lose both.</source> - <translation type="unfinished"></translation> + <translation>Ühiskond, mis annab ära veidikene vabadust et lisada veidikene turvalisust, ei vääri kumbagi ning kaotab mõlemad.</translation> </message> <message> <location filename="../BootSplash.cpp" line="73"/> <source>Never trust a computer you can’t throw out a window.</source> - <translation type="unfinished"></translation> + <translation>Ära kunagi usalda kompuutrit, mida ei ole võimalik aknast välja visata.</translation> </message> <message> <location filename="../BootSplash.cpp" line="75"/> <source>Study the past if you would define the future.</source> - <translation type="unfinished"></translation> + <translation>Tuleviku ennustamiseks õpi minevikku.</translation> </message> <message> <location filename="../BootSplash.cpp" line="77"/> <source>The way to get started is to quit talking and begin doing.</source> - <translation type="unfinished"></translation> + <translation>Meetod alustamiseks: lõpeta seletamine ja hakka tegema.</translation> </message> <message> <location filename="../BootSplash.cpp" line="79"/> <source>Ask and it will be given to you; search, and you will find; knock and the door will be opened for you.</source> - <translation type="unfinished"></translation> + <translation>Küsi, ja sulle antakse; Otsi, ning sa leiad; Koputa, ning uks avatakse sulle.</translation> </message> <message> <location filename="../BootSplash.cpp" line="81"/> <source>Start where you are. Use what you have. Do what you can.</source> - <translation type="unfinished"></translation> + <translation>Alusta, sealt kus sa oled. Kasuta, mis sul on. Tee, mis saad.</translation> </message> <message> <location filename="../BootSplash.cpp" line="83"/> <source>A person who never made a mistake never tried anything new.</source> - <translation type="unfinished"></translation> + <translation>Inimene, kes kunagi pole eksinud, ei ole kunagi proovinud teha midagi uut.</translation> </message> <message> <location filename="../BootSplash.cpp" line="85"/> <source>It does not matter how slowly you go as long as you do not stop.</source> - <translation type="unfinished"></translation> + <translation>Pole oluline kui aeglaselt sa kulged, kuni sa ei peatu.</translation> </message> <message> <location filename="../BootSplash.cpp" line="87"/> <source>Do what you can, where you are, with what you have.</source> - <translation type="unfinished"></translation> + <translation>Tee mis saad, kus parajasti oled, mis käepärast on.</translation> </message> <message> <location filename="../BootSplash.cpp" line="89"/> <source>Remember no one can make you feel inferior without your consent.</source> - <translation type="unfinished"></translation> + <translation>Pea meeles et mitte keegi ei saa sind panna tundma alaväärtuslikuna ilma su enda nõusolekuta</translation> </message> <message> <location filename="../BootSplash.cpp" line="91"/> <source>It’s not the years in your life that count. It’s the life in your years.</source> - <translation type="unfinished"></translation> + <translation>Olulised pole elatud aastad. Oluline on elada igas aastas.</translation> </message> <message> <location filename="../BootSplash.cpp" line="93"/> <source>Either write something worth reading or do something worth writing.</source> - <translation type="unfinished"></translation> + <translation>Kirjuta midagi väärt lugemist või tee midagi väärt kirjutamist.</translation> </message> <message> <location filename="../BootSplash.cpp" line="95"/> <source>The only way to do great work is to love what you do.</source> - <translation type="unfinished"></translation> + <translation>Ainus valem heaks tööks on armastada seda.</translation> </message> <message> <location filename="../BootSplash.cpp" line="97"/> <source>Political correctness is tyranny with manners.</source> - <translation type="unfinished"></translation> + <translation>Poliitkorrektsus on kommetega türannia.</translation> </message> <message> <location filename="../BootSplash.cpp" line="99"/> <source>Only two things are infinite, the universe and human stupidity, and I'm not sure about the former.</source> - <translation type="unfinished"></translation> + <translation>Ainult kaks asja on lõputud. Universum ja inimese lollus. Ma ei ole kusjuures esimeses kindel.</translation> </message> + <message> <location filename="../BootSplash.cpp" line="101"/> <source>I find that the harder I work, the more luck I seem to have.</source> - <translation type="unfinished"></translation> + <translation>Olen avastanud et mida rohkem ma tööd raban, seda rohkem õnne näib mul olevat.</translation> </message> <message> <location filename="../BootSplash.cpp" line="103"/> <source>Do, or do not. There is no 'try'.</source> - <translation type="unfinished"></translation> + <translation>Tee, või ära tee. Lihtsalt proovimine ei ole variant.</translation> </message> <message> <location filename="../BootSplash.cpp" line="105"/> <source>A mathematician is a device for turning coffee into theorems.</source> - <translation type="unfinished"></translation> + <translation>Matemaatik on seade, mis muudab kohvi teoreemideks.</translation> </message> <message> <location filename="../BootSplash.cpp" line="107"/> <source>Good people do not need laws to tell them to act responsibly, while bad people will find a way around the laws.</source> - <translation type="unfinished"></translation> + <translation>Head inimesed ei vaja seadusi käitumaks vastutustundlikult, sellal kui halvad inimesed leiavad tee seadustest möödahiilimiseks.</translation> </message> <message> <location filename="../BootSplash.cpp" line="109"/> <source>Black holes are where God divided by zero.</source> - <translation type="unfinished"></translation> + <translation>Mustad augud Universumis on kohad, kus Jumal jagas nulliga.</translation> </message> <message> <location filename="../BootSplash.cpp" line="111"/> <source>It's kind of fun to do the impossible.</source> - <translation type="unfinished"></translation> + <translation>On omamoodi lõbus saata korda võimatut.</translation> </message> <message> <location filename="../BootSplash.cpp" line="113"/> <source>Knowledge speaks, but wisdom listens.</source> - <translation type="unfinished"></translation> + <translation>Teadmised räägivad, tarkus kuulab.</translation> </message> <message> <location filename="../BootSplash.cpp" line="115"/> <source>A witty saying proves nothing.</source> - <translation type="unfinished"></translation> + <translation>Kaval ütlus ei tõesta midagi.</translation> </message> <message> <location filename="../BootSplash.cpp" line="117"/> <source>Success usually comes to those who are too busy to be looking for it.</source> - <translation type="unfinished"></translation> + <translation>Edu tuleb tavaliselt nende juurde, kel on liiga kiire, selleks et seda otsida.</translation> </message> <message> <location filename="../BootSplash.cpp" line="119"/> <source>Well-timed silence hath more eloquence than speech.</source> - <translation type="unfinished"></translation> + <translation>Hästiajastatud vaikus on väljendusrikkam kui kõne</translation> </message> <message> <location filename="../BootSplash.cpp" line="121"/> <source>I have never let my schooling interfere with my education.</source> - <translation type="unfinished"></translation> + <translation>Ma ei ole kunagi lasknud koolil segada enda harimist.</translation> </message> <message> <location filename="../BootSplash.cpp" line="123"/> <source>The best way to predict the future is to invent it.</source> - <translation type="unfinished"></translation> + <translation>Parim meetod tuleviku ennustamiseks on see leiutada</translation> </message> <message> <location filename="../BootSplash.cpp" line="125"/> <source>Well done is better than well said.</source> - <translation type="unfinished"></translation> + <translation>Hästitehtu on parem kui hästiöeldu.</translation> </message> <message> <location filename="../BootSplash.cpp" line="127"/> <source>Sometimes it is not enough that we do our best; we must do what is required.</source> - <translation type="unfinished"></translation> + <translation>Vahel ei piisa meie parimast; Peame tegema seda, mis on vaja.</translation> </message> <message> <location filename="../BootSplash.cpp" line="129"/> <source>The truth is more important than the facts.</source> - <translation type="unfinished"></translation> + <translation>Tõde on olulisem kui faktid.</translation> </message> <message> <location filename="../BootSplash.cpp" line="131"/> <source>Better to remain silent and be thought a fool than to speak out and remove all doubt.</source> - <translation type="unfinished"></translation> + <translation>Parem olla vait ja lasta endast mõelda kui lollist kui teha suu lahti ja eemaldada kõik kahtlused.</translation> </message> <message> <location filename="../BootSplash.cpp" line="142"/> <source>Initializing Session …</source> - <translation type="unfinished"></translation> + <translation>Seansi käivitumine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="145"/> <source>Loading System Settings …</source> - <translation type="unfinished"></translation> + <translation>Süsteemi Seadete laadimine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="148"/> <source>Loading User Preferences …</source> - <translation type="unfinished"></translation> + <translation>Kasutajaeelistuste laadimine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="151"/> <source>Preparing System Tray …</source> - <translation type="unfinished"></translation> + <translation>Süsteemi tööriba ettevalimistamine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="154"/> <source>Starting Window Manager …</source> - <translation type="unfinished"></translation> + <translation>Aknahalduri käivitumine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="157"/> <source>Detecting Applications …</source> - <translation type="unfinished"></translation> + <translation>Olemasolevate programmide tuvastamine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="160"/> <source>Preparing Menus …</source> - <translation type="unfinished"></translation> + <translation>Kasutajamenüüde ettevalmistamine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="163"/> <source>Preparing Workspace …</source> - <translation type="unfinished"></translation> + <translation>Töölaua ettevalmistamine...</translation> </message> <message> <location filename="../BootSplash.cpp" line="166"/> <source>Finalizing …</source> - <translation type="unfinished"></translation> + <translation>Viimased liigutused...</translation> </message> <message> <location filename="../BootSplash.cpp" line="169"/> <source>Starting App: %1</source> - <translation type="unfinished"></translation> + <translation>Käivitan rakenduse: %1</translation> </message> </context> <context> @@ -527,7 +528,7 @@ <message> <location filename="../panel-plugins/systemstart/ItemWidget.cpp" line="44"/> <source>Go Back</source> - <translation type="unfinished">Mine tagasi</translation> + <translation>Mine tagasi</translation> </message> <message> <location filename="../panel-plugins/systemstart/ItemWidget.cpp" line="190"/> @@ -547,12 +548,12 @@ <message> <location filename="../panel-plugins/systemstart/ItemWidget.cpp" line="204"/> <source>Remove from Quicklaunch</source> - <translation type="unfinished"></translation> + <translation>Eemalda Kiirkäivitusest</translation> </message> <message> <location filename="../panel-plugins/systemstart/ItemWidget.cpp" line="208"/> <source>Add to Quicklaunch</source> - <translation type="unfinished"></translation> + <translation>Lisa Kiirkäivitusse</translation> </message> </context> <context> @@ -560,7 +561,7 @@ <message> <location filename="../JsonMenu.h" line="60"/> <source>Error parsing script output: %1</source> - <translation type="unfinished"></translation> + <translation>Viga skripti väljundi töötlemisel: %1</translation> </message> </context> <context> @@ -573,92 +574,92 @@ <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="38"/> <source>Applications</source> - <translation type="unfinished">Rakendused</translation> + <translation>Rakendused</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="68"/> <source>Browse Files</source> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="73"/> <source>Install Applications</source> - <translation type="unfinished">Paigalda rakendusi</translation> + <translation>Paigalda rakendusi</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="79"/> <source>Control Panel</source> - <translation type="unfinished">Juhtpaneel</translation> + <translation>Juhtpaneel</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="90"/> <source>Multimedia</source> - <translation type="unfinished">Multimeedia</translation> + <translation>Multimeedia</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="91"/> <source>Development</source> - <translation type="unfinished">Arendus</translation> + <translation>Arendustarkvara</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="92"/> <source>Education</source> - <translation type="unfinished">Haridus</translation> + <translation>Haridus</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="93"/> <source>Games</source> - <translation type="unfinished">Mängud</translation> + <translation>Mängud</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="94"/> <source>Graphics</source> - <translation type="unfinished">Graafika</translation> + <translation>Graafika</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="95"/> <source>Network</source> - <translation type="unfinished">Võrk</translation> + <translation>Võrk</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="96"/> <source>Office</source> - <translation type="unfinished">Kontor</translation> + <translation>Kontor</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="97"/> <source>Science</source> - <translation type="unfinished">Teadus</translation> + <translation>Teadus</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="98"/> <source>Settings</source> - <translation type="unfinished">Sätted</translation> + <translation>Sätted</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="99"/> <source>System</source> - <translation type="unfinished">Süsteem</translation> + <translation>Süsteem</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="100"/> <source>Utility</source> - <translation type="unfinished">Tööriistad</translation> + <translation>Tööriistad</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="101"/> <source>Wine</source> - <translation type="unfinished">Wine</translation> + <translation>Wine</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="102"/> <source>Unsorted</source> - <translation type="unfinished">Sortimata</translation> + <translation>Sortimata</translation> </message> <message> <location filename="../panel-plugins/appmenu/LAppMenuPlugin.cpp" line="139"/> <source>Leave</source> - <translation type="unfinished"></translation> + <translation>Lahku</translation> </message> </context> <context> @@ -679,12 +680,12 @@ <message> <location filename="../panel-plugins/clock/LClock.cpp" line="139"/> <source>Time Zone (%1)</source> - <translation type="unfinished"></translation> + <translation>Ajavöönd (%1)</translation> </message> <message> <location filename="../panel-plugins/clock/LClock.cpp" line="161"/> <source>Use System Time</source> - <translation type="unfinished"></translation> + <translation>Kasuta süsteemiaega</translation> </message> </context> <context> @@ -692,32 +693,32 @@ <message> <location filename="../desktop-plugins/LDPlugin.cpp" line="37"/> <source>Modify Item</source> - <translation type="unfinished"></translation> + <translation>Muuda</translation> </message> <message> <location filename="../desktop-plugins/LDPlugin.cpp" line="45"/> <source>Start Moving Item</source> - <translation type="unfinished"></translation> + <translation>Alusta liigutamist</translation> </message> <message> <location filename="../desktop-plugins/LDPlugin.cpp" line="46"/> <source>Start Resizing Item</source> - <translation type="unfinished"></translation> + <translation>Alusta suuruse muutmist</translation> </message> <message> <location filename="../desktop-plugins/LDPlugin.cpp" line="48"/> <source>Increase Item Sizes</source> - <translation type="unfinished"></translation> + <translation>Suurenda mõõte</translation> </message> <message> <location filename="../desktop-plugins/LDPlugin.cpp" line="49"/> <source>Decrease Item Sizes</source> - <translation type="unfinished"></translation> + <translation>Vähenda mõõte</translation> </message> <message> <location filename="../desktop-plugins/LDPlugin.cpp" line="51"/> <source>Remove Item</source> - <translation type="unfinished"></translation> + <translation>Eemalda</translation> </message> </context> <context> @@ -773,24 +774,24 @@ <message> <location filename="../LDesktop.cpp" line="255"/> <source>Desktop Actions</source> - <translation type="unfinished"></translation> + <translation>Töölauategevused</translation> </message> <message> <location filename="../LDesktop.cpp" line="257"/> <location filename="../LDesktop.cpp" line="608"/> <source>New Folder</source> - <translation type="unfinished"></translation> + <translation>Uus Kaust</translation> </message> <message> <location filename="../LDesktop.cpp" line="258"/> <location filename="../LDesktop.cpp" line="628"/> <source>New File</source> - <translation type="unfinished"></translation> + <translation>Uus Fail</translation> </message> <message> <location filename="../LDesktop.cpp" line="259"/> <source>Paste</source> - <translation type="unfinished"></translation> + <translation>Aseta</translation> </message> <message> <location filename="../LDesktop.cpp" line="291"/> @@ -810,24 +811,24 @@ <message> <location filename="../LDesktop.cpp" line="303"/> <source>Lock Session</source> - <translation type="unfinished"></translation> + <translation>Lukusta sessioon</translation> </message> <message> <location filename="../LDesktop.cpp" line="304"/> <source>Browse Files</source> - <translation type="unfinished"></translation> + <translation>Sirvi Faile</translation> </message> <message> <location filename="../LDesktop.cpp" line="338"/> <source>Leave</source> - <translation type="unfinished"></translation> + <translation>Lahku</translation> </message> <message> <location filename="../LDesktop.cpp" line="614"/> <location filename="../LDesktop.cpp" line="634"/> <location filename="../LDesktop.cpp" line="655"/> <source>Desktop</source> - <translation type="unfinished">Töölaud</translation> + <translation>Töölaud</translation> </message> </context> <context> @@ -835,7 +836,7 @@ <message> <location filename="../panel-plugins/desktopswitcher/LDesktopSwitcher.cpp" line="19"/> <source>Workspace 1</source> - <translation type="unfinished"></translation> + <translation>Tööruum 1</translation> </message> <message> <location filename="../panel-plugins/desktopswitcher/LDesktopSwitcher.cpp" line="135"/> @@ -848,8 +849,8 @@ <name>LQuickLaunchButton</name> <message> <location filename="../panel-plugins/systemstart/LStartButton.h" line="52"/> - <source>Remove from Quicklaunch</source> - <translation type="unfinished"></translation> + <source>Remove from QuickLaunch</source> + <translation>Eemalda Kiirkäivitusest</translation> </message> </context> <context> @@ -858,7 +859,7 @@ <location filename="../LSession.cpp" line="164"/> <location filename="../LSession.cpp" line="347"/> <source>Desktop</source> - <translation type="unfinished">Töölaud</translation> + <translation>Töölaud</translation> </message> </context> <context> @@ -879,7 +880,7 @@ <message> <location filename="../panel-plugins/systemdashboard/SysMenuQuick.ui" line="50"/> <source>Volume</source> - <translation type="unfinished"></translation> + <translation>Helitugevus</translation> </message> <message> <location filename="../panel-plugins/systemdashboard/SysMenuQuick.ui" line="111"/> @@ -954,17 +955,17 @@ <message> <location filename="../panel-plugins/taskmanager/LTaskButton.cpp" line="160"/> <source>Show All Windows</source> - <translation type="unfinished"></translation> + <translation>Näita kõiki aknaid</translation> </message> <message> <location filename="../panel-plugins/taskmanager/LTaskButton.cpp" line="161"/> <source>Minimize All Windows</source> - <translation type="unfinished"></translation> + <translation>Minimeeri kõik aknad</translation> </message> <message> <location filename="../panel-plugins/taskmanager/LTaskButton.cpp" line="162"/> <source>Close All Windows</source> - <translation type="unfinished"></translation> + <translation>Sulge kõik aknad</translation> </message> </context> <context> @@ -1005,7 +1006,7 @@ <message> <location filename="../desktop-plugins/systemmonitor/MonitorWidget.ui" line="85"/> <source>Disk I/O</source> - <translation type="unfinished"></translation> + <translation>Ketta I/O</translation> </message> </context> <context> @@ -1028,37 +1029,37 @@ <message> <location filename="../desktop-plugins/notepad/NotepadPlugin.cpp" line="138"/> <source>Name:</source> - <translation type="unfinished">Nimi:</translation> + <translation>Nimi:</translation> </message> <message> <location filename="../desktop-plugins/notepad/NotepadPlugin.cpp" line="140"/> <source>Invalid Note Name: Try Again</source> - <translation type="unfinished"></translation> + <translation>Vigane märkmenimi: Proovi uuesti</translation> </message> <message> <location filename="../desktop-plugins/notepad/NotepadPlugin.cpp" line="141"/> <source>Select a Note Name</source> - <translation type="unfinished"></translation> + <translation>Vali märkmenimi</translation> </message> <message> <location filename="../desktop-plugins/notepad/NotepadPlugin.cpp" line="168"/> <source>Open Text File</source> - <translation type="unfinished"></translation> + <translation>Ava tekstifail</translation> </message> <message> <location filename="../desktop-plugins/notepad/NotepadPlugin.cpp" line="169"/> <source>Create a Note</source> - <translation type="unfinished"></translation> + <translation>Loo märge</translation> </message> <message> <location filename="../desktop-plugins/notepad/NotepadPlugin.cpp" line="172"/> <source>Rename Note</source> - <translation type="unfinished"></translation> + <translation>Nimeta märge ümber</translation> </message> <message> <location filename="../desktop-plugins/notepad/NotepadPlugin.cpp" line="173"/> <source>Delete Note</source> - <translation type="unfinished"></translation> + <translation>Kustuta märge</translation> </message> </context> <context> @@ -1066,57 +1067,57 @@ <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.ui" line="14"/> <source>Form</source> - <translation type="unfinished">Vorm</translation> + <translation>Vorm</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="69"/> <source>Clear Playlist</source> - <translation type="unfinished">Tühjenda esitusloend</translation> + <translation>Tühjenda esitusloend</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="70"/> <source>Shuffle Playlist</source> - <translation type="unfinished">Sega loendi järjekord</translation> + <translation>Sega loendi järjekord</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="72"/> <source>Add Files</source> - <translation type="unfinished">Lisa faile</translation> + <translation>Lisa faile</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="73"/> <source>Add Directory</source> - <translation type="unfinished">Lisa kaust</translation> + <translation>Lisa kaust</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="74"/> <source>Add URL</source> - <translation type="unfinished">Lisa URL</translation> + <translation>Lisa URL</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="102"/> <source>Multimedia Files</source> - <translation type="unfinished">Multimeediafailid</translation> + <translation>Multimeediafailid</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="103"/> <source>Select Multimedia Files</source> - <translation type="unfinished">Vali multimeediafailid</translation> + <translation>Vali multimeediafailid</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="130"/> <source>Select Multimedia Directory</source> - <translation type="unfinished">Vali multimeedia kaust</translation> + <translation>Vali multimeedia kaust</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="159"/> <source>Enter a valid URL for a multimedia file or stream:</source> - <translation type="unfinished">Sisesta multimeediafaili või -voo URL</translation> + <translation>Sisesta multimeediafaili või -voo URL</translation> </message> <message> <location filename="../panel-plugins/audioplayer/PPlayerWidget.cpp" line="161"/> <source>Multimedia URL</source> - <translation type="unfinished">Multimeedia URL</translation> + <translation>Multimeedia URL</translation> </message> </context> <context> @@ -1182,155 +1183,155 @@ <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="14"/> <source>Form</source> - <translation type="unfinished">Vorm</translation> + <translation>Vorm</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="62"/> <source>View Options</source> - <translation type="unfinished"></translation> + <translation>Vaata valikuid</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="89"/> <source>Open Website</source> - <translation type="unfinished"></translation> + <translation>Ava veebileht</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="92"/> <source>More</source> - <translation type="unfinished"></translation> + <translation>Rohkem</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="154"/> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="245"/> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="391"/> <source>Back to Feeds</source> - <translation type="unfinished"></translation> + <translation>Tagasi voo juurde</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="172"/> <source>Feed Information</source> - <translation type="unfinished"></translation> + <translation>Voo informatsioon</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="212"/> <source>Remove Feed</source> - <translation type="unfinished"></translation> + <translation>Eemalda voog</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="263"/> <source>New Feed Subscription</source> - <translation type="unfinished"></translation> + <translation>Uuele voole registreerumine</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="287"/> <source>RSS URL</source> - <translation type="unfinished"></translation> + <translation>RSS URL aadress</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="302"/> <source>Load a preset RSS Feed</source> - <translation type="unfinished"></translation> + <translation>Lae eelseadistatud RSS voog</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="332"/> <source>Add to Feeds</source> - <translation type="unfinished"></translation> + <translation>Lisa voogudele</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="409"/> <source>Feed Reader Settings</source> - <translation type="unfinished"></translation> + <translation>Uudisvoogude lugeja seaded</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="430"/> <source>Manual Sync Only</source> - <translation type="unfinished"></translation> + <translation>Ainult käsitsi sünkroniseerimine</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="437"/> <source>Some RSS feeds may request custom update intervals instead of using this setting</source> - <translation type="unfinished"></translation> + <translation>Mõned uudisvood võivad nõuda erinevaid uuendusintervalle, selle seade kasutamise asemel.</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="440"/> <source>Default Sync Interval</source> - <translation type="unfinished"></translation> + <translation>Vaikimisi sünkroniseerimise intervall</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="471"/> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="483"/> <source>Hour(s)</source> - <translation type="unfinished"></translation> + <translation>Tundides</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="478"/> <source>Minutes</source> - <translation type="unfinished"></translation> + <translation>Minutites</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.ui" line="522"/> <source>Save Settings</source> - <translation type="unfinished"></translation> + <translation>Salvesta seaded</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="70"/> <source>Add RSS Feed</source> - <translation type="unfinished"></translation> + <translation>Lisa uudisvoog</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="71"/> <source>View Feed Details</source> - <translation type="unfinished"></translation> + <translation>Vaata uudisvoo detaile</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="72"/> <source>Settings</source> - <translation type="unfinished">Sätted</translation> + <translation>Sätted</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="74"/> <source>Update Feeds Now</source> - <translation type="unfinished"></translation> + <translation>Uuenda uudisvooge</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="78"/> <source>Lumina Desktop RSS</source> - <translation type="unfinished"></translation> + <translation>Lumina Töölaua RSS</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="143"/> <source>Feed URL: %1</source> - <translation type="unfinished"></translation> + <translation>Uudisvoo URL: %1</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="144"/> <source>Title: %1</source> - <translation type="unfinished"></translation> + <translation>Pealkiri: %1</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="145"/> <source>Description: %1</source> - <translation type="unfinished"></translation> + <translation>Kirjeldus: %1</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="146"/> <source>Website: %1</source> - <translation type="unfinished"></translation> + <translation>Veebileht: %1</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="147"/> <source>Last Build Date: %1</source> - <translation type="unfinished"></translation> + <translation>Viimane koostamise aeg: %1</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="148"/> <source>Last Sync: %1</source> - <translation type="unfinished"></translation> + <translation>Viimane sünkr.: %1</translation> </message> <message> <location filename="../desktop-plugins/rssreader/RSSFeedPlugin.cpp" line="149"/> <source>Next Sync: %1</source> - <translation type="unfinished"></translation> + <translation>Järgmine sünkr.: %1</translation> </message> </context> <context> @@ -1343,22 +1344,22 @@ <message> <location filename="../SettingsMenu.cpp" line="26"/> <source>Preferences</source> - <translation type="unfinished"></translation> + <translation>Eelistus</translation> </message> <message> <location filename="../SettingsMenu.cpp" line="33"/> <source>Wallpaper</source> - <translation type="unfinished"></translation> + <translation>Taustapilt</translation> </message> <message> <location filename="../SettingsMenu.cpp" line="36"/> <source>Display</source> - <translation type="unfinished"></translation> + <translation>Ekraan</translation> </message> <message> <location filename="../SettingsMenu.cpp" line="39"/> <source>All Desktop Settings</source> - <translation type="unfinished"></translation> + <translation>Kõik ekraaniseaded</translation> </message> <message> <location filename="../SettingsMenu.cpp" line="54"/> @@ -1376,42 +1377,42 @@ <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="14"/> <source>Form</source> - <translation type="unfinished">Vorm</translation> + <translation>Vorm</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="38"/> <source>Type to search</source> - <translation type="unfinished"></translation> + <translation>Trüki millegi otsimiseks</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="171"/> <source>Browse Files</source> - <translation type="unfinished"></translation> + <translation>Sirvi faile</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="199"/> <source>Browse Applications</source> - <translation type="unfinished"></translation> + <translation>Sirvi programme</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="234"/> <source>Control Panel</source> - <translation type="unfinished">Juhtpaneel</translation> + <translation>Juhtpaneel</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="305"/> <source>Leave</source> - <translation type="unfinished"></translation> + <translation>Lahku</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="379"/> <source>Manage Applications</source> - <translation type="unfinished"></translation> + <translation>Halda programme</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="408"/> <source>Show Categories</source> - <translation type="unfinished"></translation> + <translation>Näita kategooriaid</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="488"/> @@ -1421,32 +1422,32 @@ <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="924"/> <source>Suspend</source> - <translation type="unfinished">Arvuti peatamine</translation> + <translation>Arvuti unerežiim</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="989"/> <source>Restart</source> - <translation type="unfinished">Taaskäivita</translation> + <translation>Taaskäivita</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="1017"/> <source>Power Off</source> - <translation type="unfinished"></translation> + <translation>Lülita välja</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="1065"/> <source>Log Out</source> - <translation type="unfinished">Logi välja</translation> + <translation>Logi välja</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="262"/> <source>Preferences</source> - <translation type="unfinished"></translation> + <translation>Eelistused</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="1036"/> <source>(System Performing Updates)</source> - <translation type="unfinished"></translation> + <translation>(Süsteem paigaldab uuendusi)</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.ui" line="1125"/> @@ -1456,49 +1457,49 @@ <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="290"/> <source>Apply Updates?</source> - <translation type="unfinished"></translation> + <translation>Alusta uuenduste paigaldamist?</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="290"/> <source>You have system updates waiting to be applied! Do you wish to install them now?</source> - <translation type="unfinished"></translation> + <translation>Sul on ootel süsteemiuuendused. Kas soovid neid nüüd paigaldada?</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="291"/> <source>Yes</source> - <translation type="unfinished"></translation> + <translation>Jah</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="292"/> <source>No</source> - <translation type="unfinished"></translation> + <translation>Ei</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="293"/> <source>Cancel</source> - <translation type="unfinished">Loobu</translation> + <translation>Loobu</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="475"/> <source>%1% (Plugged In)</source> - <translation type="unfinished"></translation> + <translation>%1% (ühendatud)</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="479"/> <source>%1% (%2 Estimated)</source> - <translation type="unfinished"></translation> + <translation>%1% (%2 hinnanguliselt)</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="480"/> <source>%1% Remaining</source> - <translation type="unfinished"></translation> + <translation>%1% jäänud</translation> </message> <message> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="496"/> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="655"/> <location filename="../panel-plugins/systemstart/StartMenu.cpp" line="666"/> <source>Workspace %1/%2</source> - <translation type="unfinished">Tööruum %1/%2</translation> + <translation>Tööruum %1/%2</translation> </message> </context> <context> @@ -1521,7 +1522,7 @@ <message> <location filename="../SystemWindow.ui" line="87"/> <source>Power Off</source> - <translation type="unfinished"></translation> + <translation>Lülita välja</translation> </message> <message> <location filename="../SystemWindow.ui" line="127"/> @@ -1542,22 +1543,22 @@ <message> <location filename="../SystemWindow.cpp" line="57"/> <source>Apply Updates?</source> - <translation type="unfinished"></translation> + <translation>Paigalda uuendused?</translation> </message> <message> <location filename="../SystemWindow.cpp" line="57"/> <source>You have system updates waiting to be applied! Do you wish to install them now?</source> - <translation type="unfinished"></translation> + <translation>Sul on ootel süsteemiuuendused! Kas soovid neid kohe lasta paigaldada?</translation> </message> <message> <location filename="../SystemWindow.cpp" line="58"/> <source>Yes</source> - <translation type="unfinished"></translation> + <translation>Jah</translation> </message> <message> <location filename="../SystemWindow.cpp" line="59"/> <source>No</source> - <translation type="unfinished"></translation> + <translation>Ei</translation> </message> </context> <context> @@ -1588,7 +1589,7 @@ <message> <location filename="../panel-plugins/userbutton/UserWidget.ui" line="14"/> <source>UserWidget</source> - <translation>UserWidget</translation> + <translation>Kasutajavidin</translation> </message> <message> <location filename="../panel-plugins/userbutton/UserWidget.ui" line="24"/> @@ -1769,67 +1770,67 @@ <message> <location filename="../../libLumina/LuminaXDG.cpp" line="603"/> <source>Multimedia</source> - <translation type="unfinished">Multimeedia</translation> + <translation>Multimeedia</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="604"/> <source>Development</source> - <translation type="unfinished">Arendus</translation> + <translation>Arendus</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="605"/> <source>Education</source> - <translation type="unfinished">Haridus</translation> + <translation>Haridus</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="606"/> <source>Games</source> - <translation type="unfinished">Mängud</translation> + <translation>Mängud</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="607"/> <source>Graphics</source> - <translation type="unfinished">Graafika</translation> + <translation>Graafika</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="608"/> <source>Network</source> - <translation type="unfinished">Võrk</translation> + <translation>Võrk</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="609"/> <source>Office</source> - <translation type="unfinished">Kontor</translation> + <translation>Kontor</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="610"/> <source>Science</source> - <translation type="unfinished">Teadus</translation> + <translation>Teadus</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="611"/> <source>Settings</source> - <translation type="unfinished">Sätted</translation> + <translation>Sätted</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="612"/> <source>System</source> - <translation type="unfinished">Süsteem</translation> + <translation>Süsteem</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="613"/> <source>Utility</source> - <translation type="unfinished">Tööriistad</translation> + <translation>Tööriistad</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="614"/> <source>Wine</source> - <translation type="unfinished">Wine</translation> + <translation>Wine</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="615"/> <source>Unsorted</source> - <translation type="unfinished">Sortimata</translation> + <translation>Sortimata</translation> </message> </context> </TS> diff --git a/src-qt5/core/lumina-desktop/lumina-desktop.pro b/src-qt5/core/lumina-desktop/lumina-desktop.pro index d4e57c5c..2c944a11 100644 --- a/src-qt5/core/lumina-desktop/lumina-desktop.pro +++ b/src-qt5/core/lumina-desktop/lumina-desktop.pro @@ -77,17 +77,6 @@ fluxconf.files = fluxboxconf/fluxbox-init-rc \ fluxboxconf/fluxbox-keys fluxconf.path = $${L_SHAREDIR}/lumina-desktop/ -wallpapers.files = wallpapers/Lumina_Wispy_gold.jpg \ - wallpapers/Lumina_Wispy_green.jpg \ - wallpapers/Lumina_Wispy_purple.jpg \ - wallpapers/Lumina_Wispy_red.jpg \ - wallpapers/Lumina_Wispy_blue-grey.jpg \ - wallpapers/Lumina_Wispy_blue-grey-zoom.jpg \ - wallpapers/Lumina_Wispy_grey-blue.jpg \ - wallpapers/Lumina_Wispy_grey-blue-zoom.jpg -wallpapers.path = $${L_SHAREDIR}/wallpapers/Lumina-DE - - defaults.files = defaults/luminaDesktop.conf \ defaults/compton.conf \ audiofiles/Logout.ogg \ diff --git a/src-qt5/core/lumina-desktop/main.cpp b/src-qt5/core/lumina-desktop/main.cpp index b2bfa9be..826d697c 100644 --- a/src-qt5/core/lumina-desktop/main.cpp +++ b/src-qt5/core/lumina-desktop/main.cpp @@ -78,33 +78,19 @@ int main(int argc, char ** argv) //Startup the session LSession a(argc, argv); if(!a.isPrimaryProcess()){ return 0; } + //Ensure that the user's config files exist + /*if( LSession::checkUserFiles() ){ //make sure to create any config files before creating the QApplication + qDebug() << "User files changed - restarting the desktop session"; + return 787; //return special restart code + }*/ //Setup the log file - /* logfile.setFileName( QString(getenv("XDG_CONFIG_HOME"))+"/lumina-desktop/logs/runtime.log" ); - qDebug() << "Lumina Log File:" << logfile.fileName(); - if(QFile::exists(logfile.fileName()+".old")){ QFile::remove(logfile.fileName()+".old"); } - if(logfile.exists()){ QFile::rename(logfile.fileName(), logfile.fileName()+".old"); } - //Make sure the parent directory exists - if(!QFile::exists(QDir::homePath()+"/.lumina/logs")){ - QDir dir; - dir.mkpath(QDir::homePath()+"/.lumina/logs"); - } - logfile.open(QIODevice::WriteOnly | QIODevice::Append);*/ QTime *timer=0; if(DEBUG){ timer = new QTime(); timer->start(); } - //Setup Log File - //qInstallMessageHandler(MessageOutput); - //if(DEBUG){ qDebug() << "Theme Init:" << timer->elapsed(); } - //LuminaThemeEngine theme(&a); - //QObject::connect(&theme, SIGNAL(updateIcons()), &a, SLOT(reloadIconTheme()) ); - //if(DEBUG){ qDebug() << "Load Locale:" << timer->elapsed(); } - //LUtils::LoadTranslation(&a, "lumina-desktop"); if(DEBUG){ qDebug() << "Session Setup:" << timer->elapsed(); } a.setupSession(); - //theme.refresh(); if(DEBUG){ qDebug() << "Exec Time:" << timer->elapsed(); delete timer;} int retCode = a.exec(); //qDebug() << "Stopping the window manager"; qDebug() << "Finished Closing Down Lumina"; - //logfile.close(); return retCode; } diff --git a/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.cpp b/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.cpp index cae73d13..7a6b0e7c 100644 --- a/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.cpp +++ b/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.cpp @@ -20,6 +20,7 @@ LBattery::LBattery(QWidget *parent, QString id, bool horizontal) : LPPlugin(pare connect(timer,SIGNAL(timeout()), this, SLOT(updateBattery()) ); timer->start(); QTimer::singleShot(0,this,SLOT(OrientationChange()) ); //update the sizing/icon + sessionsettings = new QSettings("lumina-desktop", "sessionsettings"); } LBattery::~LBattery(){ @@ -78,7 +79,8 @@ void LBattery::updateBattery(bool force){ } if(icon<iconOld && icon==0){ //Play some audio warning chime when - QString sfile = LSession::handle()->sessionSettings()->value("audiofiles/batterylow", LOS::LuminaShare()+"low-battery.ogg").toString(); + bool playaudio = sessionsettings->value("PlayBatteryLowAudio",true).toBool(); + if( playaudio ){ QString sfile = LSession::handle()->sessionSettings()->value("audiofiles/batterylow", LOS::LuminaShare()+"low-battery.ogg").toString(); LSession::handle()->playAudioFile(sfile); } @@ -95,6 +97,7 @@ void LBattery::updateBattery(bool force){ else{ tt = QString( tr("%1 % (%2 Remaining)") ).arg(QString::number(charge), getRemainingTime() ); } label->setToolTip(tt); } +} QString LBattery::getRemainingTime(){ int secs = LOS::batterySecondsLeft(); diff --git a/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.h b/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.h index d14cfc53..3c23be1c 100644 --- a/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.h +++ b/src-qt5/core/lumina-desktop/panel-plugins/battery/LBattery.h @@ -30,6 +30,7 @@ private: QTimer *timer; QLabel *label; int iconOld; + QSettings *sessionsettings; private slots: void updateBattery(bool force = false); diff --git a/src-qt5/core/lumina-desktop/panel-plugins/systemstart/LStartButton.cpp b/src-qt5/core/lumina-desktop/panel-plugins/systemstart/LStartButton.cpp index f44add77..30e82c47 100644 --- a/src-qt5/core/lumina-desktop/panel-plugins/systemstart/LStartButton.cpp +++ b/src-qt5/core/lumina-desktop/panel-plugins/systemstart/LStartButton.cpp @@ -26,9 +26,10 @@ LStartButtonPlugin::LStartButtonPlugin(QWidget *parent, QString id, bool horizon connect(startmenu, SIGNAL(CloseMenu()), this, SLOT(closeMenu()) ); connect(startmenu, SIGNAL(UpdateQuickLaunch(QStringList)), this, SLOT(updateQuickLaunch(QStringList))); menu->setContents(startmenu); - QSize saved = LSession::handle()->DesktopPluginSettings()->value("panelPlugs/"+this->type()+"/MenuSize", QSize(0,0)).toSize(); + QRect screenSize = QApplication::desktop()->availableGeometry(this); + QSize saved = LSession::handle()->DesktopPluginSettings()->value("panelPlugs/"+this->type()+"/MenuSize", QSize(screenSize.width() * 0.2, screenSize.height())).toSize(); if(!saved.isNull()){ startmenu->setFixedSize(saved); } //re-load the previously saved value - + button->setMenu(menu); connect(menu, SIGNAL(aboutToHide()), this, SLOT(updateButtonVisuals()) ); QTimer::singleShot(0,this, SLOT(OrientationChange())); //Update icons/sizes diff --git a/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.cpp b/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.cpp index e8df8390..c99e2b4b 100644 --- a/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.cpp +++ b/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.cpp @@ -138,7 +138,7 @@ void StartMenu::UpdateMenu(bool forceall){ } void StartMenu::ReLoadQuickLaunch(){ - emit UpdateQuickLaunch( LSession::handle()->sessionSettings()->value("QuicklaunchApps",QStringList()).toStringList() ); + emit UpdateQuickLaunch( LSession::handle()->sessionSettings()->value("QuicklaunchApps",QStringList()).toStringList() ); } void StartMenu::UpdateQuickLaunch(QString path, bool keep){ @@ -431,7 +431,9 @@ void StartMenu::UpdateFavs(){ tmp.sort(); //Sort alphabetically by name (dirs/files) for(int i=0; i<tmp.length(); i++){ if(type<2){ rest.removeAll(tmp[i]); } - if( !QFile::exists(tmp[i].section("::::",2,-1)) ){ continue; } //invalid favorite - skip it + if( !tmp[i].section("::::",2,-1).startsWith("/net/") ){ + if( !QFile::exists(tmp[i].section("::::",2,-1)) ){ continue; } //invalid favorite - skip it + } ItemWidget *it = 0; if( tmp[i].section("::::",2,-1).endsWith(".desktop")){ XDGDesktop item(tmp[i].section("::::",2,-1)); @@ -493,7 +495,7 @@ void StartMenu::on_stackedWidget_currentChanged(int val){ if(tot>1){ ui->frame_wkspace->setVisible(true); int cur = LSession::handle()->XCB->CurrentWorkspace(); - ui->label_wkspace->setText( QString(tr("Workspace %1/%2")).arg(QString::number(cur+1), QString::number(tot)) ); + ui->label_wkspace->setText( QString(tr("Workspace %1/%2")).arg(QString::number(cur+1), QString::number(tot)) ); }else{ ui->frame_wkspace->setVisible(false); } @@ -635,14 +637,14 @@ void StartMenu::on_tool_mute_audio_clicked(){ ui->slider_volume->setValue(0); } } - + //Screen Brightness void StartMenu::on_slider_bright_valueChanged(int val){ ui->label_bright->setText(QString::number(val)+"%"); LOS::setScreenBrightness(val); } - + //Workspace void StartMenu::on_tool_set_nextwkspace_clicked(){ int cur = LSession::handle()->XCB->CurrentWorkspace(); @@ -663,10 +665,10 @@ void StartMenu::on_tool_set_prevwkspace_clicked(){ if(cur<0){ cur = tot-1; } //back to end //qDebug() << " - New Current:" << cur; LSession::handle()->XCB->SetCurrentWorkspace(cur); - ui->label_wkspace->setText( QString(tr("Workspace %1/%2")).arg(QString::number(cur+1), QString::number(tot)) ); + ui->label_wkspace->setText( QString(tr("Workspace %1/%2")).arg(QString::number(cur+1), QString::number(tot)) ); } - + //Locale void StartMenu::on_combo_locale_currentIndexChanged(int){ //Get the currently selected Locale @@ -677,7 +679,7 @@ void StartMenu::on_combo_locale_currentIndexChanged(int){ LSession::handle()->switchLocale(locale); } - + //Search void StartMenu::on_line_search_textEdited(QString){ if(searchTimer->isActive()){ searchTimer->stop(); } diff --git a/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.h b/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.h index 8ab04d94..e2dbb273 100644 --- a/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.h +++ b/src-qt5/core/lumina-desktop/panel-plugins/systemstart/StartMenu.h @@ -34,13 +34,13 @@ private: Ui::StartMenu *ui; QStringList favs; QString CCat, CSearch, topsearch; //current category/search - QTimer *searchTimer; + QTimer *searchTimer; //Simple utility functions //void deleteChildren(QWidget *obj); //recursive function void ClearScrollArea(QScrollArea *area); void SortScrollArea(QScrollArea *area); - void do_search(QString search, bool force); + void do_search(QString search, bool force); bool promptAboutUpdates(bool &skip); diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_blue-grey-zoom.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_blue-grey-zoom.jpg Binary files differdeleted file mode 100644 index 481ca438..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_blue-grey-zoom.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_blue-grey.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_blue-grey.jpg Binary files differdeleted file mode 100644 index 9da67596..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_blue-grey.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_gold.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_gold.jpg Binary files differdeleted file mode 100644 index cba03cee..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_gold.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_green.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_green.jpg Binary files differdeleted file mode 100644 index 80b0d3e3..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_green.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_grey-blue-zoom.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_grey-blue-zoom.jpg Binary files differdeleted file mode 100644 index 4f753ed5..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_grey-blue-zoom.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_grey-blue.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_grey-blue.jpg Binary files differdeleted file mode 100644 index c214cd78..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_grey-blue.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_purple.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_purple.jpg Binary files differdeleted file mode 100644 index e4c3d7a8..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_purple.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_red.jpg b/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_red.jpg Binary files differdeleted file mode 100644 index a092f636..00000000 --- a/src-qt5/core/lumina-desktop/wallpapers/Lumina_Wispy_red.jpg +++ /dev/null diff --git a/src-qt5/core/lumina-info/i18n/lumina-info_et.ts b/src-qt5/core/lumina-info/i18n/lumina-info_et.ts index 90c031e5..09142c95 100644 --- a/src-qt5/core/lumina-info/i18n/lumina-info_et.ts +++ b/src-qt5/core/lumina-info/i18n/lumina-info_et.ts @@ -16,17 +16,17 @@ <message> <location filename="../MainUI.ui" line="89"/> <source>Source Repository</source> - <translation type="unfinished"></translation> + <translation>Lähtekoodi repositoorium</translation> </message> <message> <location filename="../MainUI.ui" line="124"/> <source>Lumina Website</source> - <translation type="unfinished"></translation> + <translation>Lumina veebileht</translation> </message> <message> <location filename="../MainUI.ui" line="152"/> <source>Bug Reports</source> - <translation type="unfinished"></translation> + <translation>Puukide raporteerimine</translation> </message> <message> <location filename="../MainUI.ui" line="179"/> @@ -46,7 +46,7 @@ <message> <location filename="../MainUI.ui" line="276"/> <source>Ask the Community</source> - <translation type="unfinished"></translation> + <translation>Küsi kommuunilt</translation> </message> <message> <location filename="../MainUI.ui" line="233"/> @@ -99,67 +99,67 @@ <message> <location filename="../../libLumina/LuminaXDG.cpp" line="603"/> <source>Multimedia</source> - <translation type="unfinished"></translation> + <translation>Multimeedia</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="604"/> <source>Development</source> - <translation type="unfinished"></translation> + <translation>Arendustegevus</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="605"/> <source>Education</source> - <translation type="unfinished"></translation> + <translation>Haridus</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="606"/> <source>Games</source> - <translation type="unfinished"></translation> + <translation>Mängud</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="607"/> <source>Graphics</source> - <translation type="unfinished"></translation> + <translation>Graafika</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="608"/> <source>Network</source> - <translation type="unfinished"></translation> + <translation>Võrk</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="609"/> <source>Office</source> - <translation type="unfinished"></translation> + <translation>Kontor</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="610"/> <source>Science</source> - <translation type="unfinished"></translation> + <translation>Teadus</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="611"/> <source>Settings</source> - <translation type="unfinished"></translation> + <translation>Sätted</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="612"/> <source>System</source> - <translation type="unfinished"></translation> + <translation>Süsteem</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="613"/> <source>Utility</source> - <translation type="unfinished"></translation> + <translation>Tööriistad</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="614"/> <source>Wine</source> - <translation type="unfinished"></translation> + <translation>Wine</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="615"/> <source>Unsorted</source> - <translation type="unfinished"></translation> + <translation>Sorteerimata</translation> </message> </context> </TS> diff --git a/src-qt5/core/lumina-open/LFileDialog.cpp b/src-qt5/core/lumina-open/LFileDialog.cpp index ce7c6a6f..dbdb6362 100644 --- a/src-qt5/core/lumina-open/LFileDialog.cpp +++ b/src-qt5/core/lumina-open/LFileDialog.cpp @@ -54,9 +54,9 @@ QString LFileDialog::getDefaultApp(QString extension){ void LFileDialog::setDefaultApp(QString extension, QString appFile){ if(!extension.contains("/")){ extension = LXDG::findAppMimeForFile(appFile); } - //mime type default: set on the system itself - if(appFile.endsWith(".desktop")){ appFile = appFile.section("/",-1); } //only need the relative path - LXDG::setDefaultAppForMime(extension, appFile); + //mime type default: set on the system itself + //if(appFile.endsWith(".desktop")){ appFile = appFile.section("/",-1); } //only need the relative path + LXDG::setDefaultAppForMime(extension, appFile); } // ----------- diff --git a/src-qt5/core/lumina-open/i18n/lumina-open_et.ts b/src-qt5/core/lumina-open/i18n/lumina-open_et.ts index df9c029b..ee6afe8b 100644 --- a/src-qt5/core/lumina-open/i18n/lumina-open_et.ts +++ b/src-qt5/core/lumina-open/i18n/lumina-open_et.ts @@ -166,7 +166,7 @@ <message> <location filename="../main.cpp" line="267"/> <source>Application entry is invalid: %1</source> - <translation type="unfinished"></translation> + <translation>Rakenduse %1 kirje on vigane.</translation> </message> <message> <location filename="../main.cpp" line="278"/> @@ -191,12 +191,12 @@ <message> <location filename="../main.cpp" line="370"/> <source>Binary Missing</source> - <translation type="unfinished"></translation> + <translation>Binaarfail puudub</translation> </message> <message> <location filename="../main.cpp" line="370"/> <source>Could not find "%1". Please ensure it is installed first.</source> - <translation type="unfinished"></translation> + <translation>Ei leidnud "%1" . Palun veendu et see on paigaldatud.</translation> </message> <message> <location filename="../main.cpp" line="421"/> @@ -214,67 +214,67 @@ <message> <location filename="../../libLumina/LuminaXDG.cpp" line="603"/> <source>Multimedia</source> - <translation type="unfinished">Multimeedia</translation> + <translation>Multimeedia</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="604"/> <source>Development</source> - <translation type="unfinished">Arendus</translation> + <translation>Arendus</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="605"/> <source>Education</source> - <translation type="unfinished">Haridus</translation> + <translation>Haridus</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="606"/> <source>Games</source> - <translation type="unfinished"></translation> + <translation>Mängud</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="607"/> <source>Graphics</source> - <translation type="unfinished">Graafika</translation> + <translation>Graafika</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="608"/> <source>Network</source> - <translation type="unfinished">Võrk</translation> + <translation>Võrk</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="609"/> <source>Office</source> - <translation type="unfinished">Kontor</translation> + <translation>Kontor</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="610"/> <source>Science</source> - <translation type="unfinished">Teadus</translation> + <translation>Teadus</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="611"/> <source>Settings</source> - <translation type="unfinished">Sätted</translation> + <translation>Sätted</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="612"/> <source>System</source> - <translation type="unfinished">Süsteem</translation> + <translation>Süsteem</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="613"/> <source>Utility</source> - <translation type="unfinished"></translation> + <translation>Tööriistad</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="614"/> <source>Wine</source> - <translation type="unfinished"></translation> + <translation>Wine</translation> </message> <message> <location filename="../../libLumina/LuminaXDG.cpp" line="615"/> <source>Unsorted</source> - <translation type="unfinished"></translation> + <translation>Sorteerimata</translation> </message> </context> </TS> diff --git a/src-qt5/core/lumina-open/lumina-open.1 b/src-qt5/core/lumina-open/lumina-open.1 index e8c555ee..cb671da3 100644 --- a/src-qt5/core/lumina-open/lumina-open.1 +++ b/src-qt5/core/lumina-open/lumina-open.1 @@ -19,7 +19,7 @@ .Sh DESCRIPTION Given a file with an absolute pathway or URL, the .Nm -utility finds the appropriate application which which to open the +utility finds the appropriate application with which to open the file. If the file is a *.desktop application shortcut, .Nm starts the application automatically. Using the appropriate flags diff --git a/src-qt5/core/lumina-open/main.cpp b/src-qt5/core/lumina-open/main.cpp index 72d09f42..2b9e9184 100644 --- a/src-qt5/core/lumina-open/main.cpp +++ b/src-qt5/core/lumina-open/main.cpp @@ -29,6 +29,8 @@ #include <LuminaOS.h> #include <LuminaThemes.h> +#define DEBUG 0 + void printUsageInfo(){ qDebug() << "lumina-open: Application launcher for the Lumina Desktop Environment"; qDebug() << "Description: Given a file (with absolute path) or URL, this utility will try to find the appropriate application with which to open the file. If the file is a *.desktop application shortcut, it will just start the application appropriately. It can also perform a few specific system operations if given special flags."; @@ -48,7 +50,6 @@ void ShowErrorDialog(int argc, char **argv, QString message){ //Setup the application QApplication App(argc, argv); App.setAttribute(Qt::AA_UseHighDpiPixmaps); - LuminaThemeEngine theme(&App); LUtils::LoadTranslation(&App,"lumina-open"); QMessageBox dlg(QMessageBox::Critical, QObject::tr("File Error"), message ); dlg.exec(); @@ -68,7 +69,7 @@ void showOSD(int argc, char **argv, QString message){ splash.setAlignment(Qt::AlignCenter); - qDebug() << "Display OSD"; + if(DEBUG) qDebug() << "Display OSD"; splash.setText(message); //Make sure it is centered on the current screen QPoint center = App.desktop()->screenGeometry(QCursor::pos()).center(); @@ -89,7 +90,7 @@ void LaunchAutoStart(){ if(cmd.contains("%")){cmd = cmd.remove("%U").remove("%u").remove("%F").remove("%f").remove("%i").remove("%c").remove("%k").simplified(); } //Now run the command if(!cmd.isEmpty()){ - qDebug() << " - Auto-Starting File:" << xdgapps[i]->filePath; + if(DEBUG) qDebug() << " - Auto-Starting File:" << xdgapps[i]->filePath; QProcess::startDetached(cmd); } } @@ -98,130 +99,129 @@ void LaunchAutoStart(){ } QString cmdFromUser(int argc, char **argv, QString inFile, QString extension, QString& path, bool showDLG=false){ - //First check to see if there is a default for this extension - QString defApp; - if(extension=="mimetype"){ + //First check to see if there is a default for this extension + QString defApp; + if(extension=="mimetype"){ //qDebug() << "inFile:" << inFile; QStringList matches = LXDG::findAppMimeForFile(inFile, true).split("::::"); //allow multiple matches - qDebug() << "Mimetype Matches:" << matches; + if(DEBUG) qDebug() << "Mimetype Matches:" << matches; for(int i=0; i<matches.length(); i++){ defApp = LXDG::findDefaultAppForMime(matches[i]); - //qDebug() << "MimeType:" << matches[i] << defApp; + //qDebug() << "MimeType:" << matches[i] << defApp; if(!defApp.isEmpty()){ extension = matches[i]; break; } else if(i+1==matches.length()){ extension = matches[0]; } } - }else{ defApp = LFileDialog::getDefaultApp(extension); } - qDebug() << "Mimetype:" << extension << "defApp:" << defApp; - if( !defApp.isEmpty() && !showDLG ){ - if(defApp.endsWith(".desktop")){ - XDGDesktop DF(defApp); - if(DF.isValid()){ - QString exec = DF.getDesktopExec(); - if(!exec.isEmpty()){ - qDebug() << "[lumina-open] Using default application:" << DF.name << "File:" << inFile; - if(!DF.path.isEmpty()){ path = DF.path; } - return exec; - } + }else{ defApp = LFileDialog::getDefaultApp(extension); } + if(DEBUG) qDebug() << "Mimetype:" << extension << "defApp:" << defApp; + if( !defApp.isEmpty() && !showDLG ){ + if(defApp.endsWith(".desktop")){ + XDGDesktop DF(defApp); + if(DF.isValid()){ + QString exec = DF.getDesktopExec(); + if(!exec.isEmpty()){ + if(DEBUG) qDebug() << "[lumina-open] Using default application:" << DF.name << "File:" << inFile; + if(!DF.path.isEmpty()){ path = DF.path; } + return exec; } - }else{ - //Only binary given - if(LUtils::isValidBinary(defApp)){ - qDebug() << "[lumina-open] Using default application:" << defApp << "File:" << inFile; - return defApp; //just use the binary - } } - //invalid default - reset it and continue on - LFileDialog::setDefaultApp(extension, ""); - } - //Final catch: directory given - no valid default found - use lumina-fm - if(extension=="inode/directory" && !showDLG){ return "lumina-fm"; } - //No default set -- Start up the application selection dialog - LTHEME::LoadCustomEnvSettings(); - QApplication App(argc, argv); - App.setAttribute(Qt::AA_UseHighDpiPixmaps); - LuminaThemeEngine theme(&App); - LUtils::LoadTranslation(&App,"lumina-open"); - - LFileDialog w; - if(extension=="email" || extension.startsWith("x-scheme-handler/")){ - //URL - w.setFileInfo(inFile, extension, false); }else{ - //File - if(inFile.endsWith("/")){ inFile.chop(1); } - w.setFileInfo(inFile.section("/",-1), extension, true); + //Only binary given + if(LUtils::isValidBinary(defApp)){ + if(DEBUG) qDebug() << "[lumina-open] Using default application:" << defApp << "File:" << inFile; + return defApp; //just use the binary } + } + //invalid default - reset it and continue on + LFileDialog::setDefaultApp(extension, ""); + } + //Final catch: directory given - no valid default found - use lumina-fm + if(extension=="inode/directory" && !showDLG){ return "lumina-fm"; } + //No default set -- Start up the application selection dialog + LTHEME::LoadCustomEnvSettings(); + QApplication App(argc, argv); + App.setAttribute(Qt::AA_UseHighDpiPixmaps); + LUtils::LoadTranslation(&App,"lumina-open"); - w.show(); - App.exec(); - if(!w.appSelected){ return ""; } - //Return the run path if appropriate - if(!w.appPath.isEmpty()){ path = w.appPath; } - //Just do the default application registration here for now - // might move it to the runtime phase later after seeing that the app has successfully started - if(w.setDefault){ - if(!w.appFile.isEmpty()){ LFileDialog::setDefaultApp(extension, w.appFile); } - else{ LFileDialog::setDefaultApp(extension, w.appExec); } - } - //Now return the resulting application command - return w.appExec; + LFileDialog w; + if(extension=="email" || extension.startsWith("x-scheme-handler/")){ + //URL + w.setFileInfo(inFile, extension, false); + }else{ + //File + if(inFile.endsWith("/")){ inFile.chop(1); } + w.setFileInfo(inFile.section("/",-1), extension, true); + } + + w.show(); + App.exec(); + if(!w.appSelected){ return ""; } + //Return the run path if appropriate + if(!w.appPath.isEmpty()){ path = w.appPath; } + //Just do the default application registration here for now + // might move it to the runtime phase later after seeing that the app has successfully started + if(w.setDefault){ + if(!w.appFile.isEmpty()){ LFileDialog::setDefaultApp(extension, w.appFile); } + else{ LFileDialog::setDefaultApp(extension, w.appExec); } + } + //Now return the resulting application command + return w.appExec; } void getCMD(int argc, char ** argv, QString& binary, QString& args, QString& path, bool& watch){ - //Get the input file - //Make sure to load the proper system encoding first - LUtils::LoadTranslation(0,""); //bypass application modification - QString inFile, ActionID; - bool showDLG = false; //flag to bypass any default application setting - if(argc > 1){ - for(int i=1; i<argc; i++){ - if(QString(argv[i]).simplified() == "-select"){ - showDLG = true; - }else if(QString(argv[i]).simplified() == "-testcrash"){ - //Test the crash handler - binary = "internalcrashtest"; watch=true; - return; - }else if(QString(argv[i]).simplified() == "-autostart-apps"){ - LaunchAutoStart(); - return; - }else if(QString(argv[i]).simplified() == "-volumeup"){ - int vol = LOS::audioVolume()+5; //increase 5% - if(vol>100){ vol=100; } - LOS::setAudioVolume(vol); - showOSD(argc,argv, QString(QObject::tr("Audio Volume %1%")).arg(QString::number(vol)) ); - return; - }else if(QString(argv[i]).simplified() == "-volumedown"){ - int vol = LOS::audioVolume()-5; //decrease 5% - if(vol<0){ vol=0; } - LOS::setAudioVolume(vol); - showOSD(argc,argv, QString(QObject::tr("Audio Volume %1%")).arg(QString::number(vol)) ); - return; - }else if(QString(argv[i]).simplified() == "-brightnessup"){ - int bright = LOS::ScreenBrightness(); - if(bright > 0){ //brightness control available - bright = bright+5; //increase 5% - if(bright>100){ bright = 100; } - LOS::setScreenBrightness(bright); - showOSD(argc,argv, QString(QObject::tr("Screen Brightness %1%")).arg(QString::number(bright)) ); - } - return; - }else if(QString(argv[i]).simplified() == "-brightnessdown"){ - int bright = LOS::ScreenBrightness(); - if(bright > 0){ //brightness control available - bright = bright-5; //decrease 5% - if(bright<0){ bright = 0; } - LOS::setScreenBrightness(bright); - showOSD(argc,argv, QString(QObject::tr("Screen Brightness %1%")).arg(QString::number(bright)) ); - } - return; - }else if( (QString(argv[i]).simplified() =="-action") && (argc>(i+1)) ){ - ActionID = QString(argv[i+1]); - i++; //skip the next input - }else if(QString(argv[i]).simplified()=="-terminal"){ - inFile = LXDG::findDefaultAppForMime("application/terminal"); - break; - }else{ - inFile = QString::fromLocal8Bit(argv[i]); +//Get the input file + //Make sure to load the proper system encoding first + LUtils::LoadTranslation(0,""); //bypass application modification +QString inFile, ActionID; +bool showDLG = false; //flag to bypass any default application setting +if(argc > 1){ + for(int i=1; i<argc; i++){ + if(QString(argv[i]).simplified() == "-select"){ + showDLG = true; + }else if(QString(argv[i]).simplified() == "-testcrash"){ +//Test the crash handler +binary = "internalcrashtest"; watch=true; +return; + }else if(QString(argv[i]).simplified() == "-autostart-apps"){ +LaunchAutoStart(); +return; + }else if(QString(argv[i]).simplified() == "-volumeup"){ +int vol = LOS::audioVolume()+5; //increase 5% +if(vol>100){ vol=100; } +LOS::setAudioVolume(vol); +showOSD(argc,argv, QString(QObject::tr("Audio Volume %1%")).arg(QString::number(vol)) ); +return; + }else if(QString(argv[i]).simplified() == "-volumedown"){ +int vol = LOS::audioVolume()-5; //decrease 5% +if(vol<0){ vol=0; } +LOS::setAudioVolume(vol); +showOSD(argc,argv, QString(QObject::tr("Audio Volume %1%")).arg(QString::number(vol)) ); +return; + }else if(QString(argv[i]).simplified() == "-brightnessup"){ +int bright = LOS::ScreenBrightness(); +if(bright > 0){ //brightness control available + bright = bright+5; //increase 5% + if(bright>100){ bright = 100; } + LOS::setScreenBrightness(bright); + showOSD(argc,argv, QString(QObject::tr("Screen Brightness %1%")).arg(QString::number(bright)) ); +} +return; + }else if(QString(argv[i]).simplified() == "-brightnessdown"){ +int bright = LOS::ScreenBrightness(); +if(bright > 0){ //brightness control available + bright = bright-5; //decrease 5% + if(bright<0){ bright = 0; } + LOS::setScreenBrightness(bright); + showOSD(argc,argv, QString(QObject::tr("Screen Brightness %1%")).arg(QString::number(bright)) ); +} +return; + }else if( (QString(argv[i]).simplified() =="-action") && (argc>(i+1)) ){ + ActionID = QString(argv[i+1]); +i++; //skip the next input + }else if(QString(argv[i]).simplified()=="-terminal"){ + inFile = LXDG::findDefaultAppForMime("application/terminal"); + break; + }else{ + inFile = QString::fromLocal8Bit(argv[i]); break; } } @@ -268,14 +268,14 @@ void getCMD(int argc, char ** argv, QString& binary, QString& args, QString& pat } switch(DF.type){ case XDGDesktop::APP: - qDebug() << "Found .desktop application:" << ActionID; + if(DEBUG) qDebug() << "Found .desktop application:" << ActionID; if(!DF.exec.isEmpty()){ cmd = DF.getDesktopExec(ActionID); - qDebug() << "Got command:" << cmd; + if(DEBUG) qDebug() << "Got command:" << cmd; if(!DF.path.isEmpty()){ path = DF.path; } - watch = DF.startupNotify || !DF.filePath.contains("/xdg/autostart/"); + watch = DF.startupNotify || !DF.filePath.contains("/xdg/autostart/"); }else{ - ShowErrorDialog( argc, argv, QString(QObject::tr("Application shortcut is missing the launching information (malformed shortcut): %1")).arg(inFile) ); + ShowErrorDialog( argc, argv, QString(QObject::tr("Application shortcut is missing the launching information (malformed shortcut): %1")).arg(inFile) ); } break; case XDGDesktop::LINK: @@ -284,11 +284,11 @@ void getCMD(int argc, char ** argv, QString& binary, QString& args, QString& pat inFile = DF.url; cmd.clear(); extension = inFile.section(":",0,0); - if(extension=="file"){ extension = "http"; } //local file URL - Make sure we use the default browser for a LINK type + if(extension=="file"){ extension = "http"; } //local file URL - Make sure we use the default browser for a LINK type extension.prepend("x-scheme-handler/"); - watch = DF.startupNotify || !DF.filePath.contains("/xdg/autostart/"); + watch = DF.startupNotify || !DF.filePath.contains("/xdg/autostart/"); }else{ - ShowErrorDialog( argc, argv, QString(QObject::tr("URL shortcut is missing the URL: %1")).arg(inFile) ); + ShowErrorDialog( argc, argv, QString(QObject::tr("URL shortcut is missing the URL: %1")).arg(inFile) ); } break; case XDGDesktop::DIR: @@ -297,14 +297,14 @@ void getCMD(int argc, char ** argv, QString& binary, QString& args, QString& pat inFile = DF.path; cmd.clear(); extension = "inode/directory"; - watch = DF.startupNotify || !DF.filePath.contains("/xdg/autostart/"); + watch = DF.startupNotify || !DF.filePath.contains("/xdg/autostart/"); }else{ - ShowErrorDialog( argc, argv, QString(QObject::tr("Directory shortcut is missing the path to the directory: %1")).arg(inFile) ); + ShowErrorDialog( argc, argv, QString(QObject::tr("Directory shortcut is missing the path to the directory: %1")).arg(inFile) ); } break; default: - qDebug() << DF.type << DF.name << DF.icon << DF.exec; - ShowErrorDialog( argc, argv, QString(QObject::tr("Unknown type of shortcut : %1")).arg(inFile) ); + if(DEBUG) qDebug() << DF.type << DF.name << DF.icon << DF.exec; + ShowErrorDialog( argc, argv, QString(QObject::tr("Unknown type of shortcut : %1")).arg(inFile) ); } } if(cmd.isEmpty()){ @@ -344,7 +344,7 @@ void getCMD(int argc, char ** argv, QString& binary, QString& args, QString& pat cmd.append(" \""+inFile+"\""); } } - qDebug() << "Found Command:" << cmd << "Extension:" << extension; + if(DEBUG) qDebug() << "Found Command:" << cmd << "Extension:" << extension; //Clean up any leftover "Exec" field codes (should have already been replaced earlier) if(cmd.contains("%")){cmd = cmd.remove("%U").remove("%u").remove("%F").remove("%f").remove("%i").remove("%c").remove("%k").simplified(); } binary = cmd; //pass this string to the calling function @@ -367,10 +367,10 @@ int main(int argc, char **argv){ QString bin = cmd.section(" ",0,0); if( !LUtils::isValidBinary(bin) ){ //invalid binary for some reason - open a dialog to warn the user instead - QMessageBox::warning(0, QObject::tr("Binary Missing"), QString(QObject::tr("Could not find \"%1\". Please ensure it is installed first.")).arg(bin)+"\n\n"+cmd); + ShowErrorDialog(argc,argv, QString(QObject::tr("Could not find \"%1\". Please ensure it is installed first.")).arg(bin)+"\n\n"+cmd); return 1; } - qDebug() << "[lumina-open] Running Cmd:" << cmd; + if(DEBUG) qDebug() << "[lumina-open] Running Cmd:" << cmd; int retcode = 0; //Provide an override file for never watching running processes. if(watch){ watch = !QFile::exists( QString(getenv("XDG_CONFIG_HOME"))+"/lumina-desktop/nowatch" ); } @@ -391,12 +391,12 @@ int main(int argc, char **argv){ }else{ QProcess *p = new QProcess(); p->setProcessEnvironment(QProcessEnvironment::systemEnvironment()); - if(!path.isEmpty() && QFile::exists(path)){ + if(!path.isEmpty() && QFile::exists(path)){ //qDebug() << " - Setting working path:" << path; - p->setWorkingDirectory(path); + p->setWorkingDirectory(path); } p->start(cmd); - + //Now check up on it once every minute until it is finished while(!p->waitForFinished(60000)){ //qDebug() << "[lumina-open] process check:" << p->state(); @@ -410,19 +410,17 @@ int main(int argc, char **argv){ //qDebug() << "[lumina-open] Finished Cmd:" << cmd << retcode << p->exitStatus(); if( QFile::exists("/tmp/.luminastopping") ){ watch = false; } //closing down session - ignore "crashes" (app could have been killed during cleanup) if( (retcode < 0) && watch){ //-1 is used internally for crashed processes - most apps return >=0 - qDebug() << "[lumina-open] Application Error:" << retcode; - //Setup the application - QApplication App(argc, argv); - App.setAttribute(Qt::AA_UseHighDpiPixmaps); - LuminaThemeEngine theme(&App); - LUtils::LoadTranslation(&App,"lumina-open"); + //Setup the application + QApplication App(argc, argv); + App.setAttribute(Qt::AA_UseHighDpiPixmaps); + LUtils::LoadTranslation(&App,"lumina-open"); //App.setApplicationName("LuminaOpen"); - QMessageBox dlg(QMessageBox::Critical, QObject::tr("Application Error"), QObject::tr("The following application experienced an error and needed to close:")+"\n\n"+cmd ); - dlg.setWindowFlags(Qt::Window); - if(!log.isEmpty()){ dlg.setDetailedText(log); } - dlg.exec(); - } + QMessageBox dlg(QMessageBox::Critical, QObject::tr("Application Error"), QObject::tr("The following application experienced an error and needed to close:")+"\n\n"+cmd ); + dlg.setWindowFlags(Qt::Window); + if(!log.isEmpty()){ dlg.setDetailedText(log); } + dlg.exec(); + } } return retcode; } diff --git a/src-qt5/core/lumina-session/main.cpp b/src-qt5/core/lumina-session/main.cpp index 71244a8b..3b71bdca 100644 --- a/src-qt5/core/lumina-session/main.cpp +++ b/src-qt5/core/lumina-session/main.cpp @@ -55,14 +55,6 @@ int main(int argc, char ** argv) return QProcess::execute("xinit", args); } qDebug() << "Starting the Lumina desktop on current X11 session:" << disp; - //Setup any initialization values - LTHEME::LoadCustomEnvSettings(); - LXDG::setEnvironmentVars(); - setenv("DESKTOP_SESSION","Lumina",1); - setenv("XDG_CURRENT_DESKTOP","Lumina",1); - unsetenv("QT_QPA_PLATFORMTHEME"); //causes issues with Lumina themes - not many people have this by default... - //Check for any missing user config files - //Check for any stale desktop lock files and clean them up QString cfile = QDir::tempPath()+"/.LSingleApp-%1-%2-%3"; @@ -81,14 +73,22 @@ int main(int argc, char ** argv) } //Configure X11 monitors if needed - if(LUtils::isValidBinary("lumina-xconfig")){ + if(LUtils::isValidBinary("lumina-xconfig")){ qDebug() << " - Resetting monitor configuration to last-used settings"; QProcess::execute("lumina-xconfig --reset-monitors"); } qDebug() << " - Starting the session..."; + //Setup any initialization values + LTHEME::LoadCustomEnvSettings(); + LXDG::setEnvironmentVars(); + setenv("DESKTOP_SESSION","Lumina",1); + setenv("XDG_CURRENT_DESKTOP","Lumina",1); + unsetenv("QT_QPA_PLATFORMTHEME"); //causes issues with Lumina themes - not many people have this by default... //Startup the session - QCoreApplication a(argc, argv); + QApplication a(argc, argv); + setenv("QP_QPA_PLATFORMTHEME","lthemeengine",1); //make sure this is after the QApplication - not actually using the theme plugin for **this** process LSession sess; + sess.checkFiles(); //Make sure user files are created/installed first sess.start(unified); int retCode = a.exec(); qDebug() << "Finished Closing Down Lumina"; diff --git a/src-qt5/core/lumina-session/session.cpp b/src-qt5/core/lumina-session/session.cpp index 3fdf9e66..743fc396 100644 --- a/src-qt5/core/lumina-session/session.cpp +++ b/src-qt5/core/lumina-session/session.cpp @@ -15,6 +15,7 @@ #include <LUtils.h> #include <LuminaOS.h> +#include <LDesktopUtils.h> void LSession::stopall(){ stopping = true; @@ -38,8 +39,12 @@ void LSession::procFinished(){ stopped++; if(!stopping){ //See if this process is the main desktop binary - if(PROCS[i]->objectName()=="runtime"){ stopall(); } - else if(PROCS[i]->objectName()=="wm" && wmfails<2){ wmfails++; PROCS[i]->start(QIODevice::ReadOnly); wmTimer->start(); } //restart the WM + if(PROCS[i]->objectName()=="runtime"){ + qDebug() << "Got Desktop Process Finished:" << PROCS[i]->exitCode(); + //if(PROCS[i]->exitCode()==787){ PROCS[i]->start(QIODevice::ReadOnly); } //special internal restart code + //else{ + stopall(); //} + }else if(PROCS[i]->objectName()=="wm" && wmfails<2){ wmfails++; PROCS[i]->start(QIODevice::ReadOnly); wmTimer->start(); } //restart the WM //if(PROCS[i]->program().section("/",-1) == "lumina-desktop"){ stopall(); } //start closing down everything //else{ PROCS[i]->start(QIODevice::ReadOnly); } //restart the process //break; @@ -164,3 +169,20 @@ void LSession::start(bool unified){ startProcess("runtime","lumina-desktop-unified"); } } + +void LSession::checkFiles(){ +//internal version conversion examples: + // [1.0.0 -> 1000000], [1.2.3 -> 1002003], [0.6.1 -> 6001] + qDebug() << "[Lumina] Checking User Files"; + QSettings sset("lumina-desktop", "sessionsettings"); + QString OVS = sset.value("DesktopVersion","0").toString(); //Old Version String + qDebug() << " - Old Version:" << OVS; + qDebug() << " - Current Version:" << LDesktopUtils::LuminaDesktopVersion(); + bool changed = LDesktopUtils::checkUserFiles(OVS, LDesktopUtils::LuminaDesktopVersion()); + qDebug() << " - Made Changes:" << changed; + if(changed){ + //Save the current version of the session to the settings file (for next time) + sset.setValue("DesktopVersion", LDesktopUtils::LuminaDesktopVersion()); + } + qDebug() << "Finished with user files check"; +} diff --git a/src-qt5/core/lumina-session/session.h b/src-qt5/core/lumina-session/session.h index 5cf1ccfa..3bbcbb8e 100644 --- a/src-qt5/core/lumina-session/session.h +++ b/src-qt5/core/lumina-session/session.h @@ -83,4 +83,6 @@ public: void start(bool unified = false); + void checkFiles(); + }; diff --git a/src-qt5/core/lumina-theme-engine/qss/scrollbar-simple.qss b/src-qt5/core/lumina-theme-engine/qss/scrollbar-simple.qss index 265ff20c..d0c9b448 100644 --- a/src-qt5/core/lumina-theme-engine/qss/scrollbar-simple.qss +++ b/src-qt5/core/lumina-theme-engine/qss/scrollbar-simple.qss @@ -11,7 +11,7 @@ QScrollBar:vertical{ QScrollBar::handle{ background: palette(base); border: 1px solid transparent; - border-radius: 7px; + border-radius: 1px; } QScrollBar::handle:hover, QScrollBar::add-line:hover, QScrollBar::sub-line:hover{ background: palette(highlight); diff --git a/src-qt5/core/lumina-theme-engine/qss/sliders-simple.qss b/src-qt5/core/lumina-theme-engine/qss/sliders-simple.qss new file mode 100644 index 00000000..e8311e92 --- /dev/null +++ b/src-qt5/core/lumina-theme-engine/qss/sliders-simple.qss @@ -0,0 +1,70 @@ +/* SLIDERS */ +QSlider::groove:horizontal { +border: 1px solid transparent; +background: palette(alternate-window); +height: 10px; +border-radius: 3px; +} +QSlider::groove:vertical { +border: 1px solid transparent; +background: palette(alternate-window); +width: 10px; +border-radius: 3px; +} +QSlider::sub-page:horizontal { +background: qlineargradient(x1: 0, y1: 0, x2: 1, y2: 1, + stop: 0 palette(highlight), stop: 1 palette(window)); +border: 1px solid transparent; +height: 10px; +border-radius: 3px; +} +QSlider::sub-page:vertical { +background: qlineargradient(x1: 0, y1: 0, x2: 1, y2: 1, + stop: 0 palette(highlight), stop: 1 palette(window)); +border: 1px solid transparent; +width: 10px; +border-radius: 3px; +} +QSlider::add-page:horizontal{ +background: palette(alternate-window); +border: 1px solid transparent; +height: 10px; +border-radius: 3px; +} +QSlider::add-page:vertical{ +background: palette(alternate-window); +border: 1px solid transparent; +width: 10px; +border-radius: 3px; +} +QSlider::handle:horizontal{ +background: palette(mid); +border: 1px solid palette(mid); +width: 1em; +border-radius: 1px; +} +QSlider::handle:vertical{ +background: palette(mid); +border: 1px solid palette(mid); +height: 1em; +border-radius: 1px; +} +QSlider::handle:horizontal:hover, QSlider::handle:vertical:hover{ +border: 1px solid palette(highlight); +background: palette(highlight); +} + +QSlider::sub-page:horizontal:disabled { +background: palette(highlight); +border-color: palette(highlight); +} + +QSlider::add-page:horizontal:disabled { +background: palette(highlight); +border-color: palette(highlight); +} + +QSlider::handle:horizontal:disabled { +background: palette(alternate-window); +border: 1px solid palette(highlight); +} diff --git a/src-qt5/core/lumina-theme-engine/qss/tooltip-simple.qss b/src-qt5/core/lumina-theme-engine/qss/tooltip-simple.qss new file mode 100644 index 00000000..9bee3e08 --- /dev/null +++ b/src-qt5/core/lumina-theme-engine/qss/tooltip-simple.qss @@ -0,0 +1,7 @@ +QToolTip{ + background: QLinearGradient(x1: 0, y1: 0, x2: 1, y2: 1, stop: 0 palette(window), stop: 1 palette(alternate-window)); + border-radius: 3px; + border: 1px solid palette(highlight); + padding: 1px; + color: palette(text); +} diff --git a/src-qt5/core/lumina-theme-engine/src/lthemeengine/mainwindow.cpp b/src-qt5/core/lumina-theme-engine/src/lthemeengine/mainwindow.cpp index d4544c7b..28a5e558 100644 --- a/src-qt5/core/lumina-theme-engine/src/lthemeengine/mainwindow.cpp +++ b/src-qt5/core/lumina-theme-engine/src/lthemeengine/mainwindow.cpp @@ -55,7 +55,7 @@ void MainWindow::on_buttonBox_clicked(QAbstractButton *button){ if(p) { p->writeSettings(); } } } - if(id == QDialogButtonBox::Ok || id == QDialogButtonBox::Cancel){ + if(id == QDialogButtonBox::Ok || id == QDialogButtonBox::Cancel || id== QDialogButtonBox::Close){ close(); qApp->quit(); } diff --git a/src-qt5/core/lumina-theme-engine/src/lthemeengine/mainwindow.ui b/src-qt5/core/lumina-theme-engine/src/lthemeengine/mainwindow.ui index dd676c37..0dc3245d 100644 --- a/src-qt5/core/lumina-theme-engine/src/lthemeengine/mainwindow.ui +++ b/src-qt5/core/lumina-theme-engine/src/lthemeengine/mainwindow.ui @@ -293,7 +293,7 @@ Styles</string> <item> <widget class="QDialogButtonBox" name="buttonBox"> <property name="standardButtons"> - <set>QDialogButtonBox::Apply|QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set> + <set>QDialogButtonBox::Apply|QDialogButtonBox::Close</set> </property> </widget> </item> diff --git a/src-qt5/core/lumina-theme-engine/src/lthemeengine/qsspage.cpp b/src-qt5/core/lumina-theme-engine/src/lthemeengine/qsspage.cpp index cd88fb56..6377016c 100644 --- a/src-qt5/core/lumina-theme-engine/src/lthemeengine/qsspage.cpp +++ b/src-qt5/core/lumina-theme-engine/src/lthemeengine/qsspage.cpp @@ -31,6 +31,7 @@ QSSPage::QSSPage(QWidget *parent, bool desktop) : TabPage(parent), m_ui(new Ui:: m_ui->removeButton->setIcon(QIcon::fromTheme("edit-delete")); m_ui->tool_enable->setEnabled(false); m_ui->tool_disable->setEnabled(false); + m_ui->copyButton->setEnabled(false); } QSSPage::~QSSPage(){ @@ -56,6 +57,7 @@ void QSSPage::on_qssListWidget_currentItemChanged(QListWidgetItem *current, QLis } //qDebug() << "Got Current Item Changed"; m_ui->tool_disable->setEnabled(current!=0); + m_ui->copyButton->setEnabled(current!=0); if(current){ m_ui->editButton->setEnabled(current->data(QSS_WRITABLE_ROLE).toBool()); m_ui->removeButton->setEnabled(current->data(QSS_WRITABLE_ROLE).toBool()); @@ -76,6 +78,7 @@ void QSSPage::on_list_disabled_currentItemChanged(QListWidgetItem *current, QLis } //qDebug() << "Got Current Item Changed"; m_ui->tool_enable->setEnabled(current!=0); + m_ui->copyButton->setEnabled(current!=0); if(current){ m_ui->editButton->setEnabled(current->data(QSS_WRITABLE_ROLE).toBool()); m_ui->removeButton->setEnabled(current->data(QSS_WRITABLE_ROLE).toBool()); @@ -127,6 +130,36 @@ void QSSPage::on_editButton_clicked(){ } } +void QSSPage::on_copyButton_clicked(){ + QListWidgetItem *sel = currentSelection(); + if(sel==0){ return; } + QString name = QInputDialog::getText(this, tr("Enter Style Sheet Name"), tr("File name:"), QLineEdit::Normal, sel->text().section(".qss",0,0)+"_copy"); + if(name.isEmpty()){ return; } + if(!name.endsWith(".qss", Qt::CaseInsensitive)){ name.append(".qss"); } + QString filePath; + if(desktop_qss){ filePath = lthemeengine::userDesktopStyleSheetPath() + name; } + else{ filePath = lthemeengine::userStyleSheetPath() + name; } + if(QFile::exists(filePath)){ + QMessageBox::warning(this, tr("Error"), tr("The file \"%1\" already exists").arg(filePath)); + return; + } + // Make sure the directory exists + QString dir = filePath.section("/",0,-2); + if(!QFile::exists(dir)){ + QDir D(dir); + D.mkpath(dir); + } + //Copy the file over + QFile::copy(sel->data(QSS_FULL_PATH_ROLE).toString(), filePath); + //creating item + QFileInfo info(filePath); + QListWidgetItem *item = new QListWidgetItem(info.fileName(), m_ui->list_disabled); + item->setToolTip(info.filePath()); + item->setData(QSS_FULL_PATH_ROLE, info.filePath()); + item->setData(QSS_WRITABLE_ROLE, info.isWritable()); + m_ui->list_disabled->setCurrentRow(m_ui->list_disabled->count()-1); +} + void QSSPage::on_removeButton_clicked(){ QListWidgetItem *item = currentSelection(); if(!item){ return; } diff --git a/src-qt5/core/lumina-theme-engine/src/lthemeengine/qsspage.h b/src-qt5/core/lumina-theme-engine/src/lthemeengine/qsspage.h index 5b0025c5..07df4ac2 100644 --- a/src-qt5/core/lumina-theme-engine/src/lthemeengine/qsspage.h +++ b/src-qt5/core/lumina-theme-engine/src/lthemeengine/qsspage.h @@ -24,6 +24,7 @@ private slots: void on_qssListWidget_currentItemChanged(QListWidgetItem *current, QListWidgetItem *); void on_list_disabled_currentItemChanged(QListWidgetItem *current, QListWidgetItem *); void on_createButton_clicked(); + void on_copyButton_clicked(); void on_editButton_clicked(); void on_removeButton_clicked(); void on_renameButton_clicked(); diff --git a/src-qt5/core/lumina-theme-engine/src/lthemeengine/qsspage.ui b/src-qt5/core/lumina-theme-engine/src/lthemeengine/qsspage.ui index f9a980f3..def99dd0 100644 --- a/src-qt5/core/lumina-theme-engine/src/lthemeengine/qsspage.ui +++ b/src-qt5/core/lumina-theme-engine/src/lthemeengine/qsspage.ui @@ -63,7 +63,7 @@ <item> <spacer name="horizontalSpacer_2"> <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> + <sizepolicy hsizetype="Fixed" vsizetype="Minimum"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> @@ -168,7 +168,7 @@ <item> <spacer name="horizontalSpacer_3"> <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> + <sizepolicy hsizetype="Fixed" vsizetype="Minimum"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> @@ -222,16 +222,41 @@ <property name="enabled"> <bool>true</bool> </property> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> <property name="text"> <string>Create</string> </property> </widget> </item> <item> + <widget class="QToolButton" name="copyButton"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string>Copy</string> + </property> + </widget> + </item> + <item> <widget class="QPushButton" name="editButton"> <property name="enabled"> <bool>false</bool> </property> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> <property name="text"> <string>Edit</string> </property> @@ -242,6 +267,12 @@ <property name="enabled"> <bool>false</bool> </property> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> <property name="text"> <string>Rename</string> </property> @@ -252,6 +283,12 @@ <property name="enabled"> <bool>false</bool> </property> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> <property name="text"> <string>Remove</string> </property> diff --git a/src-qt5/desktop-utils/lumina-archiver/MainUI.cpp b/src-qt5/desktop-utils/lumina-archiver/MainUI.cpp index 9d220824..79c023dc 100644 --- a/src-qt5/desktop-utils/lumina-archiver/MainUI.cpp +++ b/src-qt5/desktop-utils/lumina-archiver/MainUI.cpp @@ -20,7 +20,11 @@ MainUI::MainUI() : QMainWindow(), ui(new Ui::MainUI){ ui->setupUi(this); - auto_extract_close = false; + delayClose = new QTimer(this); + delayClose->setInterval(500); + delayClose->setSingleShot(true); + connect(delayClose, SIGNAL(timeout()), this, SLOT(close()) ); + QString title = tr("Archive Manager"); if( getuid()==0){ title.append(" ("+tr("Admin Mode")+")"); } this->setWindowTitle(title); @@ -70,33 +74,42 @@ MainUI::~MainUI(){ } void MainUI::LoadArguments(QStringList args){ - bool burnIMG = false; - bool autoExtract = false; - //bool autoArchive = false; + int action = -1; // 0: burnIMG, 1: autoExtract, 2: autoArchive + QStringList files; for(int i=0; i<args.length(); i++){ - if(args[i]=="--burn-img"){ burnIMG = true; continue; } - if(args[i]=="--ax"){ autoExtract = true; continue; } - //if(args[i]=="--aa"){ autoArchive = true; continue; } - if(QFile::exists(args[i])){ - ui->label_progress->setText(tr("Opening Archive...")); - if(autoExtract){ - connect(BACKEND, SIGNAL(FileLoaded()), this, SLOT(autoextractFiles()) ); - connect(BACKEND, SIGNAL(ExtractSuccessful()), this, SLOT(close()) ); - } - BACKEND->loadFile(args[i]); - ui->actionUSB_Image->setEnabled(args[i].simplified().endsWith(".img")); - if(burnIMG){ BurnImgToUSB(); } //Go ahead and launch the burn dialog right away - break; + if(args[i].startsWith("--") ){ + if(action>=0){ break; } + else if(args[i]=="--burn-img"){ action = 0; continue; } + else if(args[i]=="--ax"){ action = 1; continue; } + else if(args[i]=="--aa"){ action = 2; continue; } + else if(args[i]=="--sx"){ action = 3; continue; } + }else{ + files << args[i]; } - //if(autoArchive){ - //get rest of arguments - //for(int i=1; i<args.length(); i++){ - // aaFileList << args[i];} - // now launch autoarchive method with arg list - // autoArchiveFiles(aaFileList); - // connect(BACKEND, SIGNAL(ArchivalSuccessful()), this, SLOT(close()) ); - //} } + if(files.isEmpty()){ return; } + //Now go through and do any actions as needed + ui->label_progress->setText(tr("Opening Archive...")); + if(action==1){ + //qDebug() << "blah"; + connect(BACKEND, SIGNAL(FileLoaded()), this, SLOT(autoextractFiles()) ); + connect(BACKEND, SIGNAL(ExtractSuccessful()), delayClose, SLOT(start()) ); + }else if(action==2){ + aaFileList.clear(); + for(int j=1; j<files.length(); j++){ aaFileList << files[j]; } + qDebug() << "AA Files:" << aaFileList; + connect(BACKEND, SIGNAL(FileLoaded()), this, SLOT(autoArchiveFiles()) ); + connect(BACKEND, SIGNAL(ArchivalSuccessful()), delayClose, SLOT(start()) ); + }else if(action==3 && files.length()==2){ + sxFile = files[0]; + sxPath = files[1]; + connect(BACKEND, SIGNAL(FileLoaded()), this, SLOT(simpleExtractFiles()) ); + connect(BACKEND, SIGNAL(ExtractSuccessful()), delayClose, SLOT(start()) ); + } + BACKEND->loadFile(files[0]); + ui->actionUSB_Image->setEnabled(files[0].simplified().endsWith(".img")); + if(action==0){ BurnImgToUSB(); } //Go ahead and launch the burn dialog right away + } void MainUI::loadIcons(){ @@ -255,16 +268,35 @@ void MainUI::extractFiles(){ } void MainUI::autoextractFiles(){ - disconnect(BACKEND, SIGNAL(FileLoaded()), this, SLOT(autoextractFiles()) ); - QString dir = BACKEND->currentFile().section("/",0,-2); //parent directory of the archive - if(dir.isEmpty()){ return; } - ui->label_progress->setText(tr("Extracting...")); - BACKEND->startExtract(dir, true); + disconnect(BACKEND, SIGNAL(FileLoaded()), this, SLOT(autoextractFiles()) ); + QString dir = BACKEND->currentFile().section("/",0,-2); //parent directory of the archive + if(dir.isEmpty()){ return; } + QDir tmp(dir); + QString name = BACKEND->currentFile().section("/",-1).section(".",0,0); + if(QFile::exists(dir+"/"+name)){ + int num = 1; + while( QFile::exists(dir+"/"+name+"_"+QString::number(num))){ num++; } + name = name+"_"+QString::number(num); + } + if(tmp.mkdir(name) ){ + dir.append("/"+name); //created sub directory } + ui->label_progress->setText(tr("Extracting...")); + BACKEND->startExtract(dir, true); +} -/* -void MainUI::autoArchiveFiles(aaFileList){ -*/ +void MainUI::simpleExtractFiles(){ + disconnect(BACKEND, SIGNAL(FileLoaded()), this, SLOT(autoextractFiles()) ); + QString dir = sxPath; + ui->label_progress->setText(tr("Extracting...")); + BACKEND->startExtract(dir, true); +} + +void MainUI::autoArchiveFiles(){ + qDebug() << "Auto Archive Files:" << aaFileList; + ui->label_progress->setText(tr("Adding Items...")); + BACKEND->startAdd(aaFileList); +} void MainUI::extractSelection(){ if(ui->tree_contents->currentItem()==0){ return; } //nothing selected diff --git a/src-qt5/desktop-utils/lumina-archiver/MainUI.h b/src-qt5/desktop-utils/lumina-archiver/MainUI.h index a2687895..1a9d287c 100644 --- a/src-qt5/desktop-utils/lumina-archiver/MainUI.h +++ b/src-qt5/desktop-utils/lumina-archiver/MainUI.h @@ -10,6 +10,7 @@ #include <QMainWindow> #include <QString> #include <QTreeWidgetItem> +#include <QTimer> #include "TarBackend.h" @@ -24,20 +25,21 @@ public: ~MainUI(); void LoadArguments(QStringList); - void loadIcons(); - //QStringList aaFileList; + void loadIcons(); private: Ui::MainUI *ui; Backend *BACKEND; - bool auto_extract_close; + QStringList aaFileList, sxList; + QString sxPath, sxFile; + QTimer *delayClose; QTreeWidgetItem* findItem(QString path, QTreeWidgetItem *start = 0); bool cleanItems(QStringList list, QTreeWidgetItem *start = 0); //returns true if anything gets cleaned //Functions for setting the valid file extensions ("tar" limitations) QString CreateFileTypes(); - QString OpenFileTypes(); + QString OpenFileTypes(); private slots: void NewArchive(); @@ -45,14 +47,15 @@ private slots: void addFiles(); void addDirs(); void remFiles(); - void extractFiles(); - void autoextractFiles(); - //void autoArchiveFiles(QStringList aaFileList); + void extractFiles(); + void autoextractFiles(); + void autoArchiveFiles(); + void simpleExtractFiles(); void extractSelection(); void ViewFile(QTreeWidgetItem *it); void UpdateTree(); - void BurnImgToUSB(); + void BurnImgToUSB(); //Backend Handling void ProcStarting(); diff --git a/src-qt5/desktop-utils/lumina-archiver/TarBackend.cpp b/src-qt5/desktop-utils/lumina-archiver/TarBackend.cpp index e0b802a4..f110624b 100644 --- a/src-qt5/desktop-utils/lumina-archiver/TarBackend.cpp +++ b/src-qt5/desktop-utils/lumina-archiver/TarBackend.cpp @@ -36,7 +36,7 @@ void Backend::loadFile(QString path){ flags.clear(); flags << "-f" << filepath; //add the actual archive path if(QFile::exists(path)){ startList(); qDebug () << "BACKEND LOAD startList has started";} - else{ contents.clear(); emit ProcessFinished(true, ""); } + else{ contents.clear(); emit FileLoaded(); emit ProcessFinished(true, ""); } } bool Backend::canModify(){ @@ -262,8 +262,7 @@ void Backend::procFinished(int retcode, QProcess::ExitStatus){ } } if(args.contains("-x")){ result = tr("Extraction Finished"); emit ExtractSuccessful(); } - //if(args.contains("-aa")){ result = tr("Archival Finished"); emit ArchivalSuccessful(); } - else if(args.contains("-c")){ result = tr("Modification Finished"); } + else if(args.contains("-c")){ result = tr("Modification Finished"); emit ArchivalSuccessful(); } if(needupdate){ startList(); } else{ emit ProcessFinished(retcode==0, result); result.clear(); } } diff --git a/src-qt5/desktop-utils/lumina-archiver/TarBackend.h b/src-qt5/desktop-utils/lumina-archiver/TarBackend.h index d86ecf7c..183cb610 100644 --- a/src-qt5/desktop-utils/lumina-archiver/TarBackend.h +++ b/src-qt5/desktop-utils/lumina-archiver/TarBackend.h @@ -64,7 +64,7 @@ signals: void ProcessStarting(); void ProgressUpdate(int, QString); //percentage, text void ProcessFinished(bool, QString); //success, text - //void ArchivalSuccessful(); + void ArchivalSuccessful(); }; #endif diff --git a/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_ca.ts b/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_ca.ts index 98930879..9e347a2a 100644 --- a/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_ca.ts +++ b/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_ca.ts @@ -6,7 +6,7 @@ <message> <location filename="../TarBackend.cpp" line="229"/> <source>Could not read archive</source> - <translation>No s'ha pogut llegir l'arxiu</translation> + <translation>No s'ha pogut llegir l'arxiu</translation> </message> <message> <location filename="../TarBackend.cpp" line="231"/> @@ -81,7 +81,7 @@ <message> <location filename="../MainUI.ui" line="202"/> <source>Add files to archive</source> - <translation>Afegiu fitxers a l'arxiu</translation> + <translation>Afegiu fitxers a l'arxiu</translation> </message> <message> <location filename="../MainUI.ui" line="207"/> @@ -91,7 +91,7 @@ <message> <location filename="../MainUI.ui" line="210"/> <source>Remove selection from archive</source> - <translation>Elimina la selecció de l'arxiu</translation> + <translation>Elimina la selecció de l'arxiu</translation> </message> <message> <location filename="../MainUI.ui" line="215"/> @@ -101,7 +101,7 @@ <message> <location filename="../MainUI.ui" line="218"/> <source>Extract archive into a directory</source> - <translation>Extreu l'arxiu en un directori</translation> + <translation>Extreu l'arxiu en un directori</translation> </message> <message> <location filename="../MainUI.ui" line="223"/> @@ -111,7 +111,7 @@ <message> <location filename="../MainUI.ui" line="226"/> <source>Add directory to archive</source> - <translation>Afegeix un directori a l'arxiu</translation> + <translation>Afegeix un directori a l'arxiu</translation> </message> <message> <location filename="../MainUI.ui" line="231"/> @@ -131,17 +131,17 @@ <message> <location filename="../MainUI.ui" line="242"/> <source>Copy an IMG to a USB device (may require admin permission)</source> - <translation>Copia una IMG en un dispositiu USB (pot caldre permís d'administrador)</translation> + <translation>Copia una IMG en un dispositiu USB (pot caldre permís d'administrador)</translation> </message> <message> <location filename="../MainUI.cpp" line="24"/> <source>Archive Manager</source> - <translation>Gestor d'arxius</translation> + <translation>Gestor d'arxius</translation> </message> <message> <location filename="../MainUI.cpp" line="25"/> <source>Admin Mode</source> - <translation>Mode d'administrador</translation> + <translation>Mode d'administrador</translation> </message> <message> <location filename="../MainUI.cpp" line="51"/> @@ -179,7 +179,7 @@ <location filename="../MainUI.cpp" line="81"/> <location filename="../MainUI.cpp" line="220"/> <source>Opening Archive...</source> - <translation>S'obre l'arxiu...</translation> + <translation>S'obre l'arxiu...</translation> </message> <message> <location filename="../MainUI.cpp" line="164"/> @@ -301,7 +301,7 @@ <message> <location filename="../MainUI.cpp" line="210"/> <source>Could not overwrite file:</source> - <translation>No s'ha pogut sobreescriure el fitxer:</translation> + <translation>No s'ha pogut sobreescriure el fitxer:</translation> </message> <message> <location filename="../MainUI.cpp" line="218"/> @@ -312,18 +312,18 @@ <location filename="../MainUI.cpp" line="226"/> <location filename="../MainUI.cpp" line="233"/> <source>Add to Archive</source> - <translation>Afegeix a l'arxiu</translation> + <translation>Afegeix a l'arxiu</translation> </message> <message> <location filename="../MainUI.cpp" line="228"/> <location filename="../MainUI.cpp" line="235"/> <source>Adding Items...</source> - <translation>S'afegeixen elements...</translation> + <translation>S'afegeixen elements...</translation> </message> <message> <location filename="../MainUI.cpp" line="246"/> <source>Removing Items...</source> - <translation>S'eliminen elements...</translation> + <translation>S'eliminen elements...</translation> </message> <message> <location filename="../MainUI.cpp" line="251"/> @@ -337,7 +337,7 @@ <location filename="../MainUI.cpp" line="278"/> <location filename="../MainUI.cpp" line="290"/> <source>Extracting...</source> - <translation>S'extreu...</translation> + <translation>S'extreu...</translation> </message> <message> <location filename="../MainUI.cpp" line="310"/> @@ -350,67 +350,67 @@ <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="603"/> <source>Multimedia</source> - <translation type="unfinished"></translation> + <translation>Multimèdia</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="604"/> <source>Development</source> - <translation type="unfinished"></translation> + <translation>Desenvolupament</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="605"/> <source>Education</source> - <translation type="unfinished"></translation> + <translation>Educació</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="606"/> <source>Games</source> - <translation type="unfinished"></translation> + <translation>Jocs</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="607"/> <source>Graphics</source> - <translation type="unfinished"></translation> + <translation>Gràfics</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="608"/> <source>Network</source> - <translation type="unfinished"></translation> + <translation>Xarxa</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="609"/> <source>Office</source> - <translation type="unfinished"></translation> + <translation>Oficina</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="610"/> <source>Science</source> - <translation type="unfinished"></translation> + <translation>Ciència</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="611"/> <source>Settings</source> - <translation type="unfinished"></translation> + <translation>Paràmetres</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="612"/> <source>System</source> - <translation type="unfinished"></translation> + <translation>Sistema</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="613"/> <source>Utility</source> - <translation type="unfinished"></translation> + <translation>Utilitat</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="614"/> <source>Wine</source> - <translation type="unfinished"></translation> + <translation>Wine</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="615"/> <source>Unsorted</source> - <translation type="unfinished"></translation> + <translation>Sense classificar</translation> </message> </context> <context> @@ -443,7 +443,7 @@ <message> <location filename="../imgDialog.ui" line="108"/> <source>Wipe all extra space on device (conv = sync)</source> - <translation>Neteja tot l'espai extra al dispositiu (conv = sync)</translation> + <translation>Neteja tot l'espai extra al dispositiu (conv = sync)</translation> </message> <message> <location filename="../imgDialog.ui" line="132"/> @@ -473,7 +473,7 @@ <message> <location filename="../imgDialog.cpp" line="22"/> <source>Admin Mode</source> - <translation>Mode d'administrador</translation> + <translation>Mode d'administrador</translation> </message> <message> <location filename="../imgDialog.cpp" line="36"/> @@ -508,12 +508,12 @@ <message> <location filename="../imgDialog.cpp" line="170"/> <source>Administrator Permissions Needed</source> - <translation>Calen permisos d'administrador</translation> + <translation>Calen permisos d'administrador</translation> </message> <message> <location filename="../imgDialog.cpp" line="170"/> <source>This operation requires administrator priviledges.</source> - <translation>Aquesta operació requereix privilegis d'administrador.</translation> + <translation>Aquesta operació requereix privilegis d'administrador.</translation> </message> <message> <location filename="../imgDialog.cpp" line="170"/> @@ -528,7 +528,7 @@ <message> <location filename="../imgDialog.cpp" line="175"/> <source>The process could not be completed:</source> - <translation>El procés no s'ha pogut completar:</translation> + <translation>El procés no s'ha pogut completar:</translation> </message> <message> <location filename="../imgDialog.cpp" line="178"/> @@ -538,7 +538,7 @@ <message> <location filename="../imgDialog.cpp" line="178"/> <source>The image was successfully burned to the USB device</source> - <translation>La imatge s'ha gravat correctament al dispositiu USB.</translation> + <translation>La imatge s'ha gravat correctament al dispositiu USB.</translation> </message> </context> </TS> diff --git a/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_cs.ts b/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_cs.ts index c2c5a26e..0e3d0da8 100644 --- a/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_cs.ts +++ b/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_cs.ts @@ -350,67 +350,67 @@ <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="603"/> <source>Multimedia</source> - <translation type="unfinished"></translation> + <translation>Multimédia</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="604"/> <source>Development</source> - <translation type="unfinished"></translation> + <translation>Vývoj</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="605"/> <source>Education</source> - <translation type="unfinished"></translation> + <translation>Výuka</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="606"/> <source>Games</source> - <translation type="unfinished"></translation> + <translation>Hry</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="607"/> <source>Graphics</source> - <translation type="unfinished"></translation> + <translation>Grafika</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="608"/> <source>Network</source> - <translation type="unfinished"></translation> + <translation>Sítě</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="609"/> <source>Office</source> - <translation type="unfinished"></translation> + <translation>Kancelář</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="610"/> <source>Science</source> - <translation type="unfinished"></translation> + <translation>Věda</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="611"/> <source>Settings</source> - <translation type="unfinished"></translation> + <translation>Nastavení</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="612"/> <source>System</source> - <translation type="unfinished"></translation> + <translation>Systém</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="613"/> <source>Utility</source> - <translation type="unfinished"></translation> + <translation>Nástroje</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="614"/> <source>Wine</source> - <translation type="unfinished"></translation> + <translation>Wine</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="615"/> <source>Unsorted</source> - <translation type="unfinished"></translation> + <translation>Různé</translation> </message> </context> <context> diff --git a/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_da.ts b/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_da.ts index de00be03..ad4de0bd 100644 --- a/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_da.ts +++ b/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_da.ts @@ -350,67 +350,67 @@ <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="603"/> <source>Multimedia</source> - <translation type="unfinished"></translation> + <translation>Multimedie</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="604"/> <source>Development</source> - <translation type="unfinished"></translation> + <translation>Udvikling</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="605"/> <source>Education</source> - <translation type="unfinished"></translation> + <translation>Uddannelse</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="606"/> <source>Games</source> - <translation type="unfinished"></translation> + <translation>Spil</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="607"/> <source>Graphics</source> - <translation type="unfinished"></translation> + <translation>Grafik</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="608"/> <source>Network</source> - <translation type="unfinished"></translation> + <translation>Netværk</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="609"/> <source>Office</source> - <translation type="unfinished"></translation> + <translation>Kontor</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="610"/> <source>Science</source> - <translation type="unfinished"></translation> + <translation>Videnskab</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="611"/> <source>Settings</source> - <translation type="unfinished"></translation> + <translation>Indstillinger</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="612"/> <source>System</source> - <translation type="unfinished"></translation> + <translation>System</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="613"/> <source>Utility</source> - <translation type="unfinished"></translation> + <translation>Hjælpeværktøj</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="614"/> <source>Wine</source> - <translation type="unfinished"></translation> + <translation>Wine</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="615"/> <source>Unsorted</source> - <translation type="unfinished"></translation> + <translation>Usorteret</translation> </message> </context> <context> diff --git a/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_de.ts b/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_de.ts index 8869e707..52faac28 100644 --- a/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_de.ts +++ b/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_de.ts @@ -6,22 +6,22 @@ <message> <location filename="../TarBackend.cpp" line="229"/> <source>Could not read archive</source> - <translation type="unfinished"></translation> + <translation>Archiv konnte nicht gelesen werden</translation> </message> <message> <location filename="../TarBackend.cpp" line="231"/> <source>Archive Loaded</source> - <translation type="unfinished"></translation> + <translation>Archiv geladen</translation> </message> <message> <location filename="../TarBackend.cpp" line="264"/> <source>Extraction Finished</source> - <translation type="unfinished"></translation> + <translation>Extrahierung abgeschlossen</translation> </message> <message> <location filename="../TarBackend.cpp" line="266"/> <source>Modification Finished</source> - <translation type="unfinished"></translation> + <translation>Modifikation abgeschlossen</translation> </message> </context> <context> @@ -29,307 +29,307 @@ <message> <location filename="../MainUI.ui" line="35"/> <source>Archive:</source> - <translation type="unfinished"></translation> + <translation>Archiv:</translation> </message> <message> <location filename="../MainUI.ui" line="125"/> <location filename="../MainUI.cpp" line="65"/> <location filename="../MainUI.cpp" line="296"/> <source>File</source> - <translation type="unfinished"></translation> + <translation>Datei</translation> </message> <message> <location filename="../MainUI.ui" line="134"/> <source>Edit</source> - <translation type="unfinished"></translation> + <translation>Bearbeiten</translation> </message> <message> <location filename="../MainUI.ui" line="145"/> <source>Burn to Disk</source> - <translation type="unfinished"></translation> + <translation>Auf Disc brennen</translation> </message> <message> <location filename="../MainUI.ui" line="178"/> <source>&Open Archive</source> - <translation type="unfinished"></translation> + <translation>Archiv &öffnen</translation> </message> <message> <location filename="../MainUI.ui" line="181"/> <source>Open archive</source> - <translation type="unfinished"></translation> + <translation>Archiv öffnen</translation> </message> <message> <location filename="../MainUI.ui" line="186"/> <source>&New Archive</source> - <translation type="unfinished"></translation> + <translation>&Neues Archiv</translation> </message> <message> <location filename="../MainUI.ui" line="189"/> <source>New archive</source> - <translation type="unfinished"></translation> + <translation>Neues Archiv</translation> </message> <message> <location filename="../MainUI.ui" line="194"/> <source>&Quit</source> - <translation type="unfinished"></translation> + <translation>&Beenden</translation> </message> <message> <location filename="../MainUI.ui" line="199"/> <source>Add File(s)</source> - <translation type="unfinished"></translation> + <translation>Datei(en) hinzufügen</translation> </message> <message> <location filename="../MainUI.ui" line="202"/> <source>Add files to archive</source> - <translation type="unfinished"></translation> + <translation>Dateien zum Archiv hinzufügen</translation> </message> <message> <location filename="../MainUI.ui" line="207"/> <source>Remove File(s)</source> - <translation type="unfinished"></translation> + <translation>Datei(en) entfernen</translation> </message> <message> <location filename="../MainUI.ui" line="210"/> <source>Remove selection from archive</source> - <translation type="unfinished"></translation> + <translation>Auswahl aus Archiv entfernen</translation> </message> <message> <location filename="../MainUI.ui" line="215"/> <source>Extract All</source> - <translation type="unfinished"></translation> + <translation>Alles extrahieren</translation> </message> <message> <location filename="../MainUI.ui" line="218"/> <source>Extract archive into a directory</source> - <translation type="unfinished"></translation> + <translation>Archiv in ein Verzeichnis extrahieren</translation> </message> <message> <location filename="../MainUI.ui" line="223"/> <source>Add Directory</source> - <translation type="unfinished"></translation> + <translation>Verzeichnis hinzufügen</translation> </message> <message> <location filename="../MainUI.ui" line="226"/> <source>Add directory to archive</source> - <translation type="unfinished"></translation> + <translation>Verzeichnis zum Archiv hinzufügen</translation> </message> <message> <location filename="../MainUI.ui" line="231"/> <source>Extract Selection</source> - <translation type="unfinished"></translation> + <translation>Auswahl extrahieren</translation> </message> <message> <location filename="../MainUI.ui" line="234"/> <source>Extract Selected Items</source> - <translation type="unfinished"></translation> + <translation>Ausgewählte Elemente extrahieren</translation> </message> <message> <location filename="../MainUI.ui" line="239"/> <source>USB Image</source> - <translation type="unfinished"></translation> + <translation>USB-Abbild</translation> </message> <message> <location filename="../MainUI.ui" line="242"/> <source>Copy an IMG to a USB device (may require admin permission)</source> - <translation type="unfinished"></translation> + <translation>IMG auf ein USB-Gerät kopieren (eventuell Administratorberechtigung erforderlich)</translation> </message> <message> <location filename="../MainUI.cpp" line="24"/> <source>Archive Manager</source> - <translation type="unfinished"></translation> + <translation>Archivverwaltung</translation> </message> <message> <location filename="../MainUI.cpp" line="25"/> <source>Admin Mode</source> - <translation type="unfinished"></translation> + <translation>Administratormodus</translation> </message> <message> <location filename="../MainUI.cpp" line="51"/> <source>CTRL+N</source> - <translation type="unfinished"></translation> + <translation>STRG+N</translation> </message> <message> <location filename="../MainUI.cpp" line="52"/> <source>CTRL+O</source> - <translation type="unfinished"></translation> + <translation>STRG+Ö</translation> </message> <message> <location filename="../MainUI.cpp" line="53"/> <source>CTRL+Q</source> - <translation type="unfinished"></translation> + <translation>STRG+B</translation> </message> <message> <location filename="../MainUI.cpp" line="54"/> <source>CTRL+E</source> - <translation type="unfinished"></translation> + <translation>STRG+E</translation> </message> <message> <location filename="../MainUI.cpp" line="65"/> <location filename="../MainUI.cpp" line="296"/> <source>MimeType</source> - <translation type="unfinished"></translation> + <translation>MimeType</translation> </message> <message> <location filename="../MainUI.cpp" line="65"/> <location filename="../MainUI.cpp" line="296"/> <source>Size</source> - <translation type="unfinished"></translation> + <translation>Größe</translation> </message> <message> <location filename="../MainUI.cpp" line="81"/> <location filename="../MainUI.cpp" line="220"/> <source>Opening Archive...</source> - <translation type="unfinished"></translation> + <translation>Archiv wird geöffnet...</translation> </message> <message> <location filename="../MainUI.cpp" line="164"/> <source>All Types %1</source> - <translation type="unfinished"></translation> + <translation>Alle Typen %1</translation> </message> <message> <location filename="../MainUI.cpp" line="165"/> <location filename="../MainUI.cpp" line="183"/> <source>Uncompressed Archive (*.tar)</source> - <translation type="unfinished"></translation> + <translation>Unkomprimiertes Archiv (*.tar)</translation> </message> <message> <location filename="../MainUI.cpp" line="166"/> <location filename="../MainUI.cpp" line="184"/> <source>GZip Compressed Archive (*.tar.gz *.tgz)</source> - <translation type="unfinished"></translation> + <translation>GZip-komprimiertes Archiv (*.tar.gz *.tgz)</translation> </message> <message> <location filename="../MainUI.cpp" line="167"/> <location filename="../MainUI.cpp" line="185"/> <source>BZip Compressed Archive (*.tar.bz *.tbz)</source> - <translation type="unfinished"></translation> + <translation>BZip-komprimiertes Archiv (*.tar.bz *.tbz)</translation> </message> <message> <location filename="../MainUI.cpp" line="168"/> <location filename="../MainUI.cpp" line="186"/> <source>BZip2 Compressed Archive (*.tar.bz2 *.tbz2)</source> - <translation type="unfinished"></translation> + <translation>BZip2-komprimiertes Archiv (*.tar.bz2 *.tbz2)</translation> </message> <message> <location filename="../MainUI.cpp" line="169"/> <location filename="../MainUI.cpp" line="188"/> <source>LMZA Compressed Archive (*.tar.lzma *.tlz)</source> - <translation type="unfinished"></translation> + <translation>LMZA-komprimiertes Archiv (*.tar.lzma *.tlz)</translation> </message> <message> <location filename="../MainUI.cpp" line="170"/> <location filename="../MainUI.cpp" line="187"/> <source>XZ Compressed Archive (*.tar.xz *.txz)</source> - <translation type="unfinished"></translation> + <translation>XZ-komprimiertes Archiv (*.tar.xz *.txz)</translation> </message> <message> <location filename="../MainUI.cpp" line="171"/> <location filename="../MainUI.cpp" line="189"/> <source>CPIO Archive (*.cpio)</source> - <translation type="unfinished"></translation> + <translation>CPIO-Archiv (*.cpio)</translation> </message> <message> <location filename="../MainUI.cpp" line="172"/> <location filename="../MainUI.cpp" line="190"/> <source>PAX Archive (*.pax)</source> - <translation type="unfinished"></translation> + <translation>PAX-Archiv (*.pax)</translation> </message> <message> <location filename="../MainUI.cpp" line="173"/> <location filename="../MainUI.cpp" line="191"/> <source>AR Archive (*.ar)</source> - <translation type="unfinished"></translation> + <translation>AR-Archiv (*.ar)</translation> </message> <message> <location filename="../MainUI.cpp" line="174"/> <location filename="../MainUI.cpp" line="192"/> <source>SHAR Archive (*.shar)</source> - <translation type="unfinished"></translation> + <translation>SHAR-Archiv (*.shar)</translation> </message> <message> <location filename="../MainUI.cpp" line="175"/> <location filename="../MainUI.cpp" line="193"/> <source>Zip Archive (*.zip)</source> - <translation type="unfinished"></translation> + <translation>Zip-Archiv (*.zip)</translation> </message> <message> <location filename="../MainUI.cpp" line="176"/> <location filename="../MainUI.cpp" line="194"/> <source>7-Zip Archive (*.7z)</source> - <translation type="unfinished"></translation> + <translation>7-Zip-Archiv (*.7z)</translation> </message> <message> <location filename="../MainUI.cpp" line="182"/> <source>All Known Types %1</source> - <translation type="unfinished"></translation> + <translation>Alle bekannten Typen %1</translation> </message> <message> <location filename="../MainUI.cpp" line="195"/> <source>READ-ONLY: ISO image (*.iso *.img)</source> - <translation type="unfinished"></translation> + <translation>NUR LESEN: ISO-Abbild (*.iso *.img)</translation> </message> <message> <location filename="../MainUI.cpp" line="196"/> <source>READ-ONLY: XAR archive (*.xar)</source> - <translation type="unfinished"></translation> + <translation>NUR LESEN: XAR-Archiv (*.xar)</translation> </message> <message> <location filename="../MainUI.cpp" line="197"/> <source>READ-ONLY: Java archive (*.jar)</source> - <translation type="unfinished"></translation> + <translation>NUR LESEN: Java-Archiv (*.jar)</translation> </message> <message> <location filename="../MainUI.cpp" line="198"/> <source>READ-ONLY: RedHat Package (*.rpm)</source> - <translation type="unfinished"></translation> + <translation>NUR LESEN: RedHat-Paket (*.rpm)</translation> </message> <message> <location filename="../MainUI.cpp" line="199"/> <source>Show All Files (*)</source> - <translation type="unfinished"></translation> + <translation>Alle Dateien anzeigen (*)</translation> </message> <message> <location filename="../MainUI.cpp" line="207"/> <source>Create Archive</source> - <translation type="unfinished"></translation> + <translation>Archiv erstellen</translation> </message> <message> <location filename="../MainUI.cpp" line="210"/> <source>Error</source> - <translation type="unfinished"></translation> + <translation>Fehler</translation> </message> <message> <location filename="../MainUI.cpp" line="210"/> <source>Could not overwrite file:</source> - <translation type="unfinished"></translation> + <translation>Datei konnte nicht überschrieben werden:</translation> </message> <message> <location filename="../MainUI.cpp" line="218"/> <source>Open Archive</source> - <translation type="unfinished"></translation> + <translation>Archiv öffnen</translation> </message> <message> <location filename="../MainUI.cpp" line="226"/> <location filename="../MainUI.cpp" line="233"/> <source>Add to Archive</source> - <translation type="unfinished"></translation> + <translation>Zum Archiv hinzufügen</translation> </message> <message> <location filename="../MainUI.cpp" line="228"/> <location filename="../MainUI.cpp" line="235"/> <source>Adding Items...</source> - <translation type="unfinished"></translation> + <translation>Elemente werden hinzugefügt...</translation> </message> <message> <location filename="../MainUI.cpp" line="246"/> <source>Removing Items...</source> - <translation type="unfinished"></translation> + <translation>Elemente werden entfernt...</translation> </message> <message> <location filename="../MainUI.cpp" line="251"/> <location filename="../MainUI.cpp" line="276"/> <source>Extract Into Directory</source> - <translation type="unfinished"></translation> + <translation>In Verzeichnis extrahieren</translation> </message> <message> <location filename="../MainUI.cpp" line="253"/> @@ -337,12 +337,12 @@ <location filename="../MainUI.cpp" line="278"/> <location filename="../MainUI.cpp" line="290"/> <source>Extracting...</source> - <translation type="unfinished"></translation> + <translation>Extrahierungsvorgang...</translation> </message> <message> <location filename="../MainUI.cpp" line="310"/> <source>Link To: %1</source> - <translation type="unfinished"></translation> + <translation>Link auf: %1</translation> </message> </context> <context> @@ -350,67 +350,67 @@ <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="603"/> <source>Multimedia</source> - <translation type="unfinished"></translation> + <translation>Multimedia</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="604"/> <source>Development</source> - <translation type="unfinished"></translation> + <translation>Entwicklung</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="605"/> <source>Education</source> - <translation type="unfinished"></translation> + <translation>Bildung</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="606"/> <source>Games</source> - <translation type="unfinished"></translation> + <translation>Spiele</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="607"/> <source>Graphics</source> - <translation type="unfinished"></translation> + <translation>Grafik</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="608"/> <source>Network</source> - <translation type="unfinished"></translation> + <translation>Netzwerk</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="609"/> <source>Office</source> - <translation type="unfinished"></translation> + <translation>Büro</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="610"/> <source>Science</source> - <translation type="unfinished"></translation> + <translation>Wissenschaft</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="611"/> <source>Settings</source> - <translation type="unfinished"></translation> + <translation>Einstellungen</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="612"/> <source>System</source> - <translation type="unfinished"></translation> + <translation>System</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="613"/> <source>Utility</source> - <translation type="unfinished"></translation> + <translation>Dienstprogramm</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="614"/> <source>Wine</source> - <translation type="unfinished"></translation> + <translation>Wine</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="615"/> <source>Unsorted</source> - <translation type="unfinished"></translation> + <translation>Unsortiert</translation> </message> </context> <context> @@ -418,127 +418,127 @@ <message> <location filename="../imgDialog.ui" line="14"/> <source>Burn IMG to device</source> - <translation type="unfinished"></translation> + <translation>IMG auf Gerät brennen</translation> </message> <message> <location filename="../imgDialog.ui" line="29"/> <source>IMG File</source> - <translation type="unfinished"></translation> + <translation>IMG-Datei</translation> </message> <message> <location filename="../imgDialog.ui" line="54"/> <source>Block Size</source> - <translation type="unfinished"></translation> + <translation>Blockgröße</translation> </message> <message> <location filename="../imgDialog.ui" line="84"/> <source>USB Device</source> - <translation type="unfinished"></translation> + <translation>USB-Gerät</translation> </message> <message> <location filename="../imgDialog.ui" line="96"/> <source>Refresh Device List</source> - <translation type="unfinished"></translation> + <translation>Geräteliste aktualisieren</translation> </message> <message> <location filename="../imgDialog.ui" line="108"/> <source>Wipe all extra space on device (conv = sync)</source> - <translation type="unfinished"></translation> + <translation>Sämtlichen zusätzlichen Speicherplatz auf Gerät löschen (conv = sync)</translation> </message> <message> <location filename="../imgDialog.ui" line="132"/> <source>Burning to USB:</source> - <translation type="unfinished"></translation> + <translation>Auf USB brennen:</translation> </message> <message> <location filename="../imgDialog.ui" line="166"/> <source>Time Elapsed:</source> - <translation type="unfinished"></translation> + <translation>Vergangene Zeit:</translation> </message> <message> <location filename="../imgDialog.ui" line="222"/> <source>Cancel</source> - <translation type="unfinished"></translation> + <translation>Abbrechen</translation> </message> <message> <location filename="../imgDialog.ui" line="229"/> <source>Start</source> - <translation type="unfinished"></translation> + <translation>Start</translation> </message> <message> <location filename="../imgDialog.cpp" line="21"/> <source>Burn IMG to Device</source> - <translation type="unfinished"></translation> + <translation>IMG auf Gerät brennen</translation> </message> <message> <location filename="../imgDialog.cpp" line="22"/> <source>Admin Mode</source> - <translation type="unfinished"></translation> + <translation>Administratormodus</translation> </message> <message> <location filename="../imgDialog.cpp" line="36"/> <source>Kilobyte(s)</source> - <translation type="unfinished"></translation> + <translation>Kilobyte(s)</translation> </message> <message> <location filename="../imgDialog.cpp" line="37"/> <source>Megabyte(s)</source> - <translation type="unfinished"></translation> + <translation>Megabyte(s)</translation> </message> <message> <location filename="../imgDialog.cpp" line="38"/> <source>Gigabyte(s)</source> - <translation type="unfinished"></translation> + <translation>Gigabyte(s)</translation> </message> <message> <location filename="../imgDialog.cpp" line="110"/> <source>Cancel Image Burn?</source> - <translation type="unfinished"></translation> + <translation>Brennen des Abbildes abbrechen?</translation> </message> <message> <location filename="../imgDialog.cpp" line="110"/> <source>Do you wish to stop the current IMG burn process?</source> - <translation type="unfinished"></translation> + <translation>Möchten Sie den laufenden IMG-Brennprozess stoppen?</translation> </message> <message> <location filename="../imgDialog.cpp" line="110"/> <source>Warning: This will leave the USB device in an inconsistent state</source> - <translation type="unfinished"></translation> + <translation>Warnung: Dies wird das USB-Gerät in einem inkonsistenten Zustand zurücklassen</translation> </message> <message> <location filename="../imgDialog.cpp" line="170"/> <source>Administrator Permissions Needed</source> - <translation type="unfinished"></translation> + <translation>Administratorberechtigungen erforderlich</translation> </message> <message> <location filename="../imgDialog.cpp" line="170"/> <source>This operation requires administrator priviledges.</source> - <translation type="unfinished"></translation> + <translation>Dieser Vorgang erfordert Administratorrechte.</translation> </message> <message> <location filename="../imgDialog.cpp" line="170"/> <source>Would you like to enable these priviledges?</source> - <translation type="unfinished"></translation> + <translation>Möchten Sie diese Rechte aktivieren?</translation> </message> <message> <location filename="../imgDialog.cpp" line="175"/> <source>ERROR</source> - <translation type="unfinished"></translation> + <translation>FEHLER</translation> </message> <message> <location filename="../imgDialog.cpp" line="175"/> <source>The process could not be completed:</source> - <translation type="unfinished"></translation> + <translation>Der Prozess konnte nicht abgeschlossen werden:</translation> </message> <message> <location filename="../imgDialog.cpp" line="178"/> <source>SUCCESS</source> - <translation type="unfinished"></translation> + <translation>ERFOLG</translation> </message> <message> <location filename="../imgDialog.cpp" line="178"/> <source>The image was successfully burned to the USB device</source> - <translation type="unfinished"></translation> + <translation>Das Abbild wurde erfolgreich auf das USB-Gerät gebrannt</translation> </message> </context> </TS> diff --git a/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_fi.ts b/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_fi.ts index 5b1d98dc..8467eb99 100644 --- a/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_fi.ts +++ b/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_fi.ts @@ -6,22 +6,22 @@ <message> <location filename="../TarBackend.cpp" line="229"/> <source>Could not read archive</source> - <translation type="unfinished"></translation> + <translation>Arkistoa ei voitu lukea</translation> </message> <message> <location filename="../TarBackend.cpp" line="231"/> <source>Archive Loaded</source> - <translation type="unfinished"></translation> + <translation>Arkisto ladattu</translation> </message> <message> <location filename="../TarBackend.cpp" line="264"/> <source>Extraction Finished</source> - <translation type="unfinished"></translation> + <translation>Purku valmis</translation> </message> <message> <location filename="../TarBackend.cpp" line="266"/> <source>Modification Finished</source> - <translation type="unfinished"></translation> + <translation>Muutos valmis</translation> </message> </context> <context> @@ -29,307 +29,307 @@ <message> <location filename="../MainUI.ui" line="35"/> <source>Archive:</source> - <translation type="unfinished"></translation> + <translation>Arkisto:</translation> </message> <message> <location filename="../MainUI.ui" line="125"/> <location filename="../MainUI.cpp" line="65"/> <location filename="../MainUI.cpp" line="296"/> <source>File</source> - <translation type="unfinished"></translation> + <translation>Tiedosto</translation> </message> <message> <location filename="../MainUI.ui" line="134"/> <source>Edit</source> - <translation type="unfinished"></translation> + <translation>Muokkaa</translation> </message> <message> <location filename="../MainUI.ui" line="145"/> <source>Burn to Disk</source> - <translation type="unfinished"></translation> + <translation>Polta levylle</translation> </message> <message> <location filename="../MainUI.ui" line="178"/> <source>&Open Archive</source> - <translation type="unfinished"></translation> + <translation>&Avaa arkisto</translation> </message> <message> <location filename="../MainUI.ui" line="181"/> <source>Open archive</source> - <translation type="unfinished"></translation> + <translation>Avaa arkisto</translation> </message> <message> <location filename="../MainUI.ui" line="186"/> <source>&New Archive</source> - <translation type="unfinished"></translation> + <translation>&Uusi arkisto</translation> </message> <message> <location filename="../MainUI.ui" line="189"/> <source>New archive</source> - <translation type="unfinished"></translation> + <translation>Uusi arkisto</translation> </message> <message> <location filename="../MainUI.ui" line="194"/> <source>&Quit</source> - <translation type="unfinished"></translation> + <translation>&Lopeta</translation> </message> <message> <location filename="../MainUI.ui" line="199"/> <source>Add File(s)</source> - <translation type="unfinished"></translation> + <translation>Lisää tiedostoja</translation> </message> <message> <location filename="../MainUI.ui" line="202"/> <source>Add files to archive</source> - <translation type="unfinished"></translation> + <translation>Lisää arkistoon tiedostoja</translation> </message> <message> <location filename="../MainUI.ui" line="207"/> <source>Remove File(s)</source> - <translation type="unfinished"></translation> + <translation>Poista tiedostoja</translation> </message> <message> <location filename="../MainUI.ui" line="210"/> <source>Remove selection from archive</source> - <translation type="unfinished"></translation> + <translation>Poista arkistosta tiedostoja</translation> </message> <message> <location filename="../MainUI.ui" line="215"/> <source>Extract All</source> - <translation type="unfinished"></translation> + <translation>Pura kaikki</translation> </message> <message> <location filename="../MainUI.ui" line="218"/> <source>Extract archive into a directory</source> - <translation type="unfinished"></translation> + <translation>Pura arkisto kansioon</translation> </message> <message> <location filename="../MainUI.ui" line="223"/> <source>Add Directory</source> - <translation type="unfinished"></translation> + <translation>Lisää kansio</translation> </message> <message> <location filename="../MainUI.ui" line="226"/> <source>Add directory to archive</source> - <translation type="unfinished"></translation> + <translation>Lisää arkistoon kansio</translation> </message> <message> <location filename="../MainUI.ui" line="231"/> <source>Extract Selection</source> - <translation type="unfinished"></translation> + <translation>Pura valinta</translation> </message> <message> <location filename="../MainUI.ui" line="234"/> <source>Extract Selected Items</source> - <translation type="unfinished"></translation> + <translation>Pura valitut kohteet</translation> </message> <message> <location filename="../MainUI.ui" line="239"/> <source>USB Image</source> - <translation type="unfinished"></translation> + <translation>USB-levykuva</translation> </message> <message> <location filename="../MainUI.ui" line="242"/> <source>Copy an IMG to a USB device (may require admin permission)</source> - <translation type="unfinished"></translation> + <translation>Kopioi IMG-levykuva USB-laitteeseen (voi vaatia ylläpitäjän oikeuksia)</translation> </message> <message> <location filename="../MainUI.cpp" line="24"/> <source>Archive Manager</source> - <translation type="unfinished"></translation> + <translation>Arkistonhallinta</translation> </message> <message> <location filename="../MainUI.cpp" line="25"/> <source>Admin Mode</source> - <translation type="unfinished"></translation> + <translation>Ylläpitäjän tila</translation> </message> <message> <location filename="../MainUI.cpp" line="51"/> <source>CTRL+N</source> - <translation type="unfinished"></translation> + <translation>Ctrl+N</translation> </message> <message> <location filename="../MainUI.cpp" line="52"/> <source>CTRL+O</source> - <translation type="unfinished"></translation> + <translation>Ctrl+O</translation> </message> <message> <location filename="../MainUI.cpp" line="53"/> <source>CTRL+Q</source> - <translation type="unfinished"></translation> + <translation>Ctrl+Q</translation> </message> <message> <location filename="../MainUI.cpp" line="54"/> <source>CTRL+E</source> - <translation type="unfinished"></translation> + <translation>Ctrl+E</translation> </message> <message> <location filename="../MainUI.cpp" line="65"/> <location filename="../MainUI.cpp" line="296"/> <source>MimeType</source> - <translation type="unfinished"></translation> + <translation>MIME-tyyppi</translation> </message> <message> <location filename="../MainUI.cpp" line="65"/> <location filename="../MainUI.cpp" line="296"/> <source>Size</source> - <translation type="unfinished"></translation> + <translation>Koko</translation> </message> <message> <location filename="../MainUI.cpp" line="81"/> <location filename="../MainUI.cpp" line="220"/> <source>Opening Archive...</source> - <translation type="unfinished"></translation> + <translation>Avataan arkistoa...</translation> </message> <message> <location filename="../MainUI.cpp" line="164"/> <source>All Types %1</source> - <translation type="unfinished"></translation> + <translation>Kaikki tyypit %1</translation> </message> <message> <location filename="../MainUI.cpp" line="165"/> <location filename="../MainUI.cpp" line="183"/> <source>Uncompressed Archive (*.tar)</source> - <translation type="unfinished"></translation> + <translation>Pakkaamaton arkisto (*.tar)</translation> </message> <message> <location filename="../MainUI.cpp" line="166"/> <location filename="../MainUI.cpp" line="184"/> <source>GZip Compressed Archive (*.tar.gz *.tgz)</source> - <translation type="unfinished"></translation> + <translation>GZip-pakattu arkisto (*.tar.gz *.tgz)</translation> </message> <message> <location filename="../MainUI.cpp" line="167"/> <location filename="../MainUI.cpp" line="185"/> <source>BZip Compressed Archive (*.tar.bz *.tbz)</source> - <translation type="unfinished"></translation> + <translation>BZip-pakattu arkisto (*.tar.bz *.tbz)</translation> </message> <message> <location filename="../MainUI.cpp" line="168"/> <location filename="../MainUI.cpp" line="186"/> <source>BZip2 Compressed Archive (*.tar.bz2 *.tbz2)</source> - <translation type="unfinished"></translation> + <translation>BZip2-pakattu arkisto (*.tar.bz2 *.tbz2)</translation> </message> <message> <location filename="../MainUI.cpp" line="169"/> <location filename="../MainUI.cpp" line="188"/> <source>LMZA Compressed Archive (*.tar.lzma *.tlz)</source> - <translation type="unfinished"></translation> + <translation>LMZA-pakattu arkisto (*.tar.lzma *.tlz)</translation> </message> <message> <location filename="../MainUI.cpp" line="170"/> <location filename="../MainUI.cpp" line="187"/> <source>XZ Compressed Archive (*.tar.xz *.txz)</source> - <translation type="unfinished"></translation> + <translation>XZ-pakattu arkisto (*.tar.xz *.txz)</translation> </message> <message> <location filename="../MainUI.cpp" line="171"/> <location filename="../MainUI.cpp" line="189"/> <source>CPIO Archive (*.cpio)</source> - <translation type="unfinished"></translation> + <translation>CPIO-arkisto (*.cpio)</translation> </message> <message> <location filename="../MainUI.cpp" line="172"/> <location filename="../MainUI.cpp" line="190"/> <source>PAX Archive (*.pax)</source> - <translation type="unfinished"></translation> + <translation>PAX-arkisto (*.pax)</translation> </message> <message> <location filename="../MainUI.cpp" line="173"/> <location filename="../MainUI.cpp" line="191"/> <source>AR Archive (*.ar)</source> - <translation type="unfinished"></translation> + <translation>AR-arkisto (*.ar)</translation> </message> <message> <location filename="../MainUI.cpp" line="174"/> <location filename="../MainUI.cpp" line="192"/> <source>SHAR Archive (*.shar)</source> - <translation type="unfinished"></translation> + <translation>SHAR-arkisto (*.shar)</translation> </message> <message> <location filename="../MainUI.cpp" line="175"/> <location filename="../MainUI.cpp" line="193"/> <source>Zip Archive (*.zip)</source> - <translation type="unfinished"></translation> + <translation>Zip-arkisto (*.zip)</translation> </message> <message> <location filename="../MainUI.cpp" line="176"/> <location filename="../MainUI.cpp" line="194"/> <source>7-Zip Archive (*.7z)</source> - <translation type="unfinished"></translation> + <translation>7-Zip-arkisto (*.7z)</translation> </message> <message> <location filename="../MainUI.cpp" line="182"/> <source>All Known Types %1</source> - <translation type="unfinished"></translation> + <translation>Kaikki tunnetut tyypit %1</translation> </message> <message> <location filename="../MainUI.cpp" line="195"/> <source>READ-ONLY: ISO image (*.iso *.img)</source> - <translation type="unfinished"></translation> + <translation>VAIN LUKU: ISO-levykuva (*.iso *.img)</translation> </message> <message> <location filename="../MainUI.cpp" line="196"/> <source>READ-ONLY: XAR archive (*.xar)</source> - <translation type="unfinished"></translation> + <translation>VAIN LUKU: XAR-arkisto (*.xar)</translation> </message> <message> <location filename="../MainUI.cpp" line="197"/> <source>READ-ONLY: Java archive (*.jar)</source> - <translation type="unfinished"></translation> + <translation>VAIN LUKU: Java-arkisto (*.jar)</translation> </message> <message> <location filename="../MainUI.cpp" line="198"/> <source>READ-ONLY: RedHat Package (*.rpm)</source> - <translation type="unfinished"></translation> + <translation>VAIN LUKU: RedHat-paketti (*.rpm)</translation> </message> <message> <location filename="../MainUI.cpp" line="199"/> <source>Show All Files (*)</source> - <translation type="unfinished"></translation> + <translation>Näytä kaikki tiedostot (*)</translation> </message> <message> <location filename="../MainUI.cpp" line="207"/> <source>Create Archive</source> - <translation type="unfinished"></translation> + <translation>Luo arkisto</translation> </message> <message> <location filename="../MainUI.cpp" line="210"/> <source>Error</source> - <translation type="unfinished"></translation> + <translation>Virhe</translation> </message> <message> <location filename="../MainUI.cpp" line="210"/> <source>Could not overwrite file:</source> - <translation type="unfinished"></translation> + <translation>Ei voitu korvata tiedostoa:</translation> </message> <message> <location filename="../MainUI.cpp" line="218"/> <source>Open Archive</source> - <translation type="unfinished"></translation> + <translation>Avaa arkisto</translation> </message> <message> <location filename="../MainUI.cpp" line="226"/> <location filename="../MainUI.cpp" line="233"/> <source>Add to Archive</source> - <translation type="unfinished"></translation> + <translation>Lisää arkistoon</translation> </message> <message> <location filename="../MainUI.cpp" line="228"/> <location filename="../MainUI.cpp" line="235"/> <source>Adding Items...</source> - <translation type="unfinished"></translation> + <translation>Lisätään kohteita...</translation> </message> <message> <location filename="../MainUI.cpp" line="246"/> <source>Removing Items...</source> - <translation type="unfinished"></translation> + <translation>Poistetaan kohteita...</translation> </message> <message> <location filename="../MainUI.cpp" line="251"/> <location filename="../MainUI.cpp" line="276"/> <source>Extract Into Directory</source> - <translation type="unfinished"></translation> + <translation>Pura kansioon</translation> </message> <message> <location filename="../MainUI.cpp" line="253"/> @@ -337,12 +337,12 @@ <location filename="../MainUI.cpp" line="278"/> <location filename="../MainUI.cpp" line="290"/> <source>Extracting...</source> - <translation type="unfinished"></translation> + <translation>Puretaan...</translation> </message> <message> <location filename="../MainUI.cpp" line="310"/> <source>Link To: %1</source> - <translation type="unfinished"></translation> + <translation>Linkki kohteeseen: %1</translation> </message> </context> <context> @@ -350,37 +350,37 @@ <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="603"/> <source>Multimedia</source> - <translation type="unfinished"></translation> + <translation>Multimedia</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="604"/> <source>Development</source> - <translation type="unfinished"></translation> + <translation>Kehitys</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="605"/> <source>Education</source> - <translation type="unfinished"></translation> + <translation>Kasvatus</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="606"/> <source>Games</source> - <translation type="unfinished"></translation> + <translation>Pelit</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="607"/> <source>Graphics</source> - <translation type="unfinished"></translation> + <translation>Grafiikka</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="608"/> <source>Network</source> - <translation type="unfinished"></translation> + <translation>Verkko</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="609"/> <source>Office</source> - <translation type="unfinished"></translation> + <translation>Toimisto</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="610"/> @@ -418,127 +418,127 @@ <message> <location filename="../imgDialog.ui" line="14"/> <source>Burn IMG to device</source> - <translation type="unfinished"></translation> + <translation>Polta IMG-levykuva laitteelle</translation> </message> <message> <location filename="../imgDialog.ui" line="29"/> <source>IMG File</source> - <translation type="unfinished"></translation> + <translation>IMG-tiedosto</translation> </message> <message> <location filename="../imgDialog.ui" line="54"/> <source>Block Size</source> - <translation type="unfinished"></translation> + <translation>Lohkokoko</translation> </message> <message> <location filename="../imgDialog.ui" line="84"/> <source>USB Device</source> - <translation type="unfinished"></translation> + <translation>USB-laite</translation> </message> <message> <location filename="../imgDialog.ui" line="96"/> <source>Refresh Device List</source> - <translation type="unfinished"></translation> + <translation>Virkistä laiteluettelo</translation> </message> <message> <location filename="../imgDialog.ui" line="108"/> <source>Wipe all extra space on device (conv = sync)</source> - <translation type="unfinished"></translation> + <translation>Pyyhi laitteen kaikki ylimääräinen tila (conv=sync)</translation> </message> <message> <location filename="../imgDialog.ui" line="132"/> <source>Burning to USB:</source> - <translation type="unfinished"></translation> + <translation>Poltetaan USB:lle:</translation> </message> <message> <location filename="../imgDialog.ui" line="166"/> <source>Time Elapsed:</source> - <translation type="unfinished"></translation> + <translation>Aikaa kulunut:</translation> </message> <message> <location filename="../imgDialog.ui" line="222"/> <source>Cancel</source> - <translation type="unfinished"></translation> + <translation>Peru</translation> </message> <message> <location filename="../imgDialog.ui" line="229"/> <source>Start</source> - <translation type="unfinished"></translation> + <translation>Käynnistä</translation> </message> <message> <location filename="../imgDialog.cpp" line="21"/> <source>Burn IMG to Device</source> - <translation type="unfinished"></translation> + <translation>Polta IMG-levykuva laitteelle</translation> </message> <message> <location filename="../imgDialog.cpp" line="22"/> <source>Admin Mode</source> - <translation type="unfinished"></translation> + <translation>Ylläpitäjän tila</translation> </message> <message> <location filename="../imgDialog.cpp" line="36"/> <source>Kilobyte(s)</source> - <translation type="unfinished"></translation> + <translation>kilotavu(a)</translation> </message> <message> <location filename="../imgDialog.cpp" line="37"/> <source>Megabyte(s)</source> - <translation type="unfinished"></translation> + <translation>megatavu(a)</translation> </message> <message> <location filename="../imgDialog.cpp" line="38"/> <source>Gigabyte(s)</source> - <translation type="unfinished"></translation> + <translation>gigatavu(a)</translation> </message> <message> <location filename="../imgDialog.cpp" line="110"/> <source>Cancel Image Burn?</source> - <translation type="unfinished"></translation> + <translation>Perutaanko levykuvan poltto?</translation> </message> <message> <location filename="../imgDialog.cpp" line="110"/> <source>Do you wish to stop the current IMG burn process?</source> - <translation type="unfinished"></translation> + <translation>Haluatko pysäyttää käynnissä olevan IMG-levykuvan polton?</translation> </message> <message> <location filename="../imgDialog.cpp" line="110"/> <source>Warning: This will leave the USB device in an inconsistent state</source> - <translation type="unfinished"></translation> + <translation>Varoitus: Tämä jättää USB-laitteesi epävakaaseen tilaan</translation> </message> <message> <location filename="../imgDialog.cpp" line="170"/> <source>Administrator Permissions Needed</source> - <translation type="unfinished"></translation> + <translation>Ylläpitäjäoikeudet vaaditaan</translation> </message> <message> <location filename="../imgDialog.cpp" line="170"/> <source>This operation requires administrator priviledges.</source> - <translation type="unfinished"></translation> + <translation>Tämä toiminto vaatii ylläpitäjän oikeuksia.</translation> </message> <message> <location filename="../imgDialog.cpp" line="170"/> <source>Would you like to enable these priviledges?</source> - <translation type="unfinished"></translation> + <translation>Haluatko ottaa nämä oikeudet käyttöön?</translation> </message> <message> <location filename="../imgDialog.cpp" line="175"/> <source>ERROR</source> - <translation type="unfinished"></translation> + <translation>VIRHE</translation> </message> <message> <location filename="../imgDialog.cpp" line="175"/> <source>The process could not be completed:</source> - <translation type="unfinished"></translation> + <translation>Toimenpidettä ei saatu loppuun:</translation> </message> <message> <location filename="../imgDialog.cpp" line="178"/> <source>SUCCESS</source> - <translation type="unfinished"></translation> + <translation>ONNISTUI</translation> </message> <message> <location filename="../imgDialog.cpp" line="178"/> <source>The image was successfully burned to the USB device</source> - <translation type="unfinished"></translation> + <translation>Levykuva poltettiin ongelmitta USB-laitteelle</translation> </message> </context> </TS> diff --git a/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_lt.ts b/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_lt.ts index 1c53233d..d8faaae4 100644 --- a/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_lt.ts +++ b/src-qt5/desktop-utils/lumina-archiver/i18n/l-archiver_lt.ts @@ -350,7 +350,7 @@ <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="603"/> <source>Multimedia</source> - <translation type="unfinished"></translation> + <translation>Multimedija</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="604"/> @@ -360,42 +360,42 @@ <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="605"/> <source>Education</source> - <translation type="unfinished"></translation> + <translation>Švietimas</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="606"/> <source>Games</source> - <translation type="unfinished"></translation> + <translation>Žaidimai</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="607"/> <source>Graphics</source> - <translation type="unfinished"></translation> + <translation>Grafika</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="608"/> <source>Network</source> - <translation type="unfinished"></translation> + <translation>Tinklas</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="609"/> <source>Office</source> - <translation type="unfinished"></translation> + <translation>Raštinė</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="610"/> <source>Science</source> - <translation type="unfinished"></translation> + <translation>Mokslas</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="611"/> <source>Settings</source> - <translation type="unfinished"></translation> + <translation>Nustatymai</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="612"/> <source>System</source> - <translation type="unfinished"></translation> + <translation>Sistema</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="613"/> @@ -405,7 +405,7 @@ <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="614"/> <source>Wine</source> - <translation type="unfinished"></translation> + <translation>Wine</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="615"/> @@ -513,12 +513,12 @@ <message> <location filename="../imgDialog.cpp" line="170"/> <source>This operation requires administrator priviledges.</source> - <translation type="unfinished"></translation> + <translation>Ši operacija reikalauja administratoriaus teisių.</translation> </message> <message> <location filename="../imgDialog.cpp" line="170"/> <source>Would you like to enable these priviledges?</source> - <translation type="unfinished"></translation> + <translation>Ar norėtumėte leisti šias teises?</translation> </message> <message> <location filename="../imgDialog.cpp" line="175"/> diff --git a/src-qt5/desktop-utils/lumina-archiver/main.cpp b/src-qt5/desktop-utils/lumina-archiver/main.cpp index 40cd7967..01e7bda1 100644 --- a/src-qt5/desktop-utils/lumina-archiver/main.cpp +++ b/src-qt5/desktop-utils/lumina-archiver/main.cpp @@ -15,7 +15,7 @@ int main(int argc, char *argv[]) { LTHEME::LoadCustomEnvSettings(); QApplication a(argc, argv); - a.setAttribute(Qt::AA_UseHighDpiPixmaps); + a.setAttribute(Qt::AA_UseHighDpiPixmaps); LUtils::LoadTranslation(&a, "l-archiver"); //Now go ahead and setup the app QStringList args; diff --git a/src-qt5/desktop-utils/lumina-fileinfo/MainUI.cpp b/src-qt5/desktop-utils/lumina-fileinfo/MainUI.cpp index d82f09ce..e64346ae 100644 --- a/src-qt5/desktop-utils/lumina-fileinfo/MainUI.cpp +++ b/src-qt5/desktop-utils/lumina-fileinfo/MainUI.cpp @@ -8,21 +8,25 @@ #include "MainUI.h" #include "ui_MainUI.h" +#include <QVideoFrame> #include <QFileDialog> #include <QMessageBox> #include <LUtils.h> #include <LuminaOS.h> -//LFileInfo INFO = LFileInfo(""); - -MainUI::MainUI() : QDialog(), ui(new Ui::MainUI){ +MainUI::MainUI() : QMainWindow(), ui(new Ui::MainUI){ ui->setupUi(this); //load the designer form canwrite = false; terminate_thread = false; + INFO = new LFileInfo(); UpdateIcons(); //Set all the icons in the dialog SetupConnections(); - INFO = 0; + + //Disable buttons that are not working yet + //ui->actionOpen_File->setVisible(false); + //ui->actionOpen_Directory->setVisible(false); + //ui->menuSave_As->setEnabled(false); } MainUI::~MainUI(){ @@ -38,133 +42,38 @@ void MainUI::LoadFile(QString path, QString type){ //Do the first file information tab qDebug() << "Load File:" << path << type; INFO = new LFileInfo(path); - if(INFO->exists()){ canwrite = INFO->isWritable(); } - else if(!INFO->filePath().isEmpty()){ - //See if the containing directory can be written - //QFileInfo chk(INFO->absolutePath()); - canwrite = (INFO->isDir() && INFO->isWritable()); - }else{ - canwrite = true; //no associated file yet - } - if(!INFO->exists() && !type.isEmpty()){ - //Set the proper type flag on the shortcut - if(type=="APP"){ INFO->XDG()->type = XDGDesktop::APP; } - else if(type=="LINK"){ INFO->XDG()->type = XDGDesktop::LINK; } - } //First load the general file information if(!INFO->filePath().isEmpty()){ - ui->label_file_name->setText( INFO->fileName() ); - ui->label_file_mimetype->setText( INFO->mimetype() ); - if(!INFO->isDir()){ ui->label_file_size->setText( LUtils::BytesToDisplaySize( INFO->size() ) ); } - else { - ui->label_file_size->setText(tr("---Calculating---")); - QtConcurrent::run(this, &MainUI::GetDirSize, INFO->absoluteFilePath()); - } - ui->label_file_owner->setText(INFO->owner()); - ui->label_file_group->setText(INFO->group()); - ui->label_file_created->setText( INFO->created().toString(Qt::SystemLocaleLongDate) ); - ui->label_file_modified->setText( INFO->lastModified().toString(Qt::SystemLocaleLongDate) ); - //Get the file permissions - QString perms; - if(INFO->isReadable() && INFO->isWritable()){ perms = tr("Read/Write"); } - else if(INFO->isReadable()){ perms = tr("Read Only"); } - else if(INFO->isWritable()){ perms = tr("Write Only"); } - else{ perms = tr("No Access"); } - ui->label_file_perms->setText(perms); - //Now the special "type" for the file - QString ftype; - if(INFO->suffix().toLower()=="desktop"){ ftype = tr("XDG Shortcut"); } - else if(INFO->isDir()){ ftype = tr("Directory"); } - else if(INFO->isExecutable()){ ftype = tr("Binary"); } - else{ ftype = INFO->suffix().toUpper(); } - if(INFO->isHidden()){ ftype = QString(tr("Hidden %1")).arg(type); } - ui->label_file_type->setText(ftype); - //Now load the icon for the file - if(INFO->isImage()){ - //qDebug() << "Set Image:"; - QPixmap pix(INFO->absoluteFilePath()); - ui->label_file_icon->setPixmap( pix.scaledToHeight(64) ); - ui->label_file_size->setText( ui->label_file_size->text()+" ("+QString::number(pix.width())+" x "+QString::number(pix.height())+" px)" ); - //qDebug() << " - done with image"; - }else{ - ui->label_file_icon->setPixmap( LXDG::findIcon( INFO->iconfile(), "unknown").pixmap(QSize(64,64)) ); - } - //Now verify the tab is available in the widget - //qDebug() << "Check tab widget"; - if(ui->tabWidget->indexOf(ui->tab_file)<0){ - //qDebug() << "Add File Info Tab"; - ui->tabWidget->addTab(ui->tab_file, tr("File Information")); - } - //qDebug() << "Done with Tab Check"; + SyncFileInfo(); }else{ - if(ui->tabWidget->indexOf(ui->tab_file)>=0){ - ui->tabWidget->removeTab( ui->tabWidget->indexOf(ui->tab_file) ); - } + SetupNewFile(); } - //Now load the special XDG desktop info - qDebug() << "Check XDG Info:" << type; - //qDebug() << INFO->isDesktopFile() << type; - if(INFO->isDesktopFile() || !type.isEmpty()){ - - if(INFO->XDG()->type == XDGDesktop::APP){ - ui->line_xdg_command->setText(INFO->XDG()->exec); - ui->line_xdg_wdir->setText(INFO->XDG()->path); - ui->check_xdg_useTerminal->setChecked( INFO->XDG()->useTerminal ); - ui->check_xdg_startupNotify->setChecked( INFO->XDG()->startupNotify ); - }else if(INFO->XDG()->type==XDGDesktop::LINK){ - //Hide the options that are unavailable for links - //Command line (exec) - ui->line_xdg_command->setVisible(false); - ui->tool_xdg_getCommand->setVisible(false); - ui->lblCommand->setVisible(false); - //Options - ui->lblOptions->setVisible(false); - ui->check_xdg_useTerminal->setVisible(false); - ui->check_xdg_startupNotify->setVisible(false); - //Now load the variables for this type of shortcut - ui->lblWorkingDir->setText(tr("URL:")); - ui->line_xdg_wdir->setText( INFO->XDG()->url ); - ui->tool_xdg_getDir->setVisible(false); //the dir selection button - - } - ui->line_xdg_name->setText(INFO->XDG()->name); - ui->line_xdg_comment->setText(INFO->XDG()->comment); - ui->push_xdg_getIcon->setWhatsThis( INFO->XDG()->icon ); - ReloadAppIcon(); - ui->push_save->setVisible(true); - ui->push_save->setEnabled(false); - //Now ensure the xdg tab exists in the widget - if(ui->tabWidget->indexOf(ui->tab_deskedit)<0){ - qDebug() << "Adding the deskedit tab"; - ui->tabWidget->addTab(ui->tab_deskedit, tr("Edit Shortcut")); - } - }else{ - xdgvaluechanged(); //just do the disables here - //Also remove the xdg tab - if(ui->tabWidget->indexOf(ui->tab_deskedit) >= 0){ - qDebug() << "Removing the deskedit tab"; - ui->tabWidget->removeTab( ui->tabWidget->indexOf(ui->tab_deskedit) ); - } - } - //Setup the tab - if(type.isEmpty()){ ui->tabWidget->setCurrentIndex(0); } - else if(ui->tabWidget->count()>1){ ui->tabWidget->setCurrentIndex(1); } - qDebug() << "Done Loading File"; } void MainUI::UpdateIcons(){ - this->setWindowIcon(LXDG::findIcon("document-preview","unknown")); - ui->push_close->setIcon( LXDG::findIcon("dialog-close","") ); - ui->push_save->setIcon( LXDG::findIcon("document-save","") ); - ui->tool_xdg_getCommand->setIcon( LXDG::findIcon("edit-find-page","") ); - ui->tool_xdg_getDir->setIcon( LXDG::findIcon("document-open","") ); + } //============== // PRIVATE //============== void MainUI::ReloadAppIcon(){ - ui->push_xdg_getIcon->setIcon( LXDG::findIcon(ui->push_xdg_getIcon->whatsThis(),"") ); + //qDebug() << "Reload App Icon:"; + ui->label_xdg_icon->setPixmap( LXDG::findIcon(ui->line_xdg_icon->text(),"").pixmap(64,64) ); + //qDebug() << "Check Desktop File entry"; + if(INFO->iconfile()!=ui->line_xdg_icon->text()){ + xdgvaluechanged(); + } + //qDebug() << "Done with app icon"; +} + +void MainUI::stopDirSize(){ + if(sizeThread.isRunning()){ + terminate_thread = true; + sizeThread.waitForFinished(); + QApplication::processEvents(); //throw away any last signals waiting to be processed + } + terminate_thread = false; } void MainUI::GetDirSize(const QString dirname) const { @@ -215,10 +124,201 @@ void MainUI::GetDirSize(const QString dirname) const { emit folder_size_changed(filesize, file_number, dir_number, true); } +void MainUI::SyncFileInfo(){ + qDebug() << "Sync File Info"; + stopDirSize(); + if(INFO->filePath().isEmpty()){ return; } + if(INFO->exists()){ canwrite = INFO->isWritable(); } + else{ + //See if the containing directory can be written + QFileInfo chk(INFO->absolutePath()); + canwrite = (chk.isDir() && chk.isWritable()); + } + ui->label_file_name->setText( INFO->fileName() ); + ui->label_file_mimetype->setText( INFO->mimetype() ); + if(!INFO->isDir()){ ui->label_file_size->setText( LUtils::BytesToDisplaySize( INFO->size() ) ); } + else { + ui->label_file_size->setText(tr("---Calculating---")); + sizeThread = QtConcurrent::run(this, &MainUI::GetDirSize, INFO->absoluteFilePath()); + } + ui->label_file_owner->setText(INFO->owner()); + ui->label_file_group->setText(INFO->group()); + ui->label_file_created->setText( INFO->created().toString(Qt::SystemLocaleLongDate) ); + ui->label_file_modified->setText( INFO->lastModified().toString(Qt::SystemLocaleLongDate) ); + //Get the file permissions + QString perms; + if(INFO->isReadable() && INFO->isWritable()){ perms = tr("Read/Write"); } + else if(INFO->isReadable()){ perms = tr("Read Only"); } + else if(INFO->isWritable()){ perms = tr("Write Only"); } + else{ perms = tr("No Access"); } + ui->label_file_perms->setText(perms); + //Now the special "type" for the file + QString ftype; + if(INFO->suffix().toLower()=="desktop"){ ftype = tr("XDG Shortcut"); } + else if(INFO->isDir()){ ftype = tr("Directory"); } + else if(INFO->isExecutable()){ ftype = tr("Binary"); } + else{ ftype = INFO->suffix().toUpper(); } + if(INFO->isHidden()){ ftype = QString(tr("Hidden %1")).arg(ftype); } + ui->label_file_type->setText(ftype); + + //Now load the icon for the file + if(INFO->isImage()){ + QPixmap pix(INFO->absoluteFilePath()); + ui->label_file_icon->setPixmap(pix.scaledToHeight(64)); + ui->label_file_size->setText( ui->label_file_size->text()+" ("+QString::number(pix.width())+" x "+QString::number(pix.height())+" px)" ); + }else if(INFO->isVideo()){ + ui->label_file_icon->hide(); + LVideoLabel *mediaLabel = new LVideoLabel(INFO->absoluteFilePath(), true, ui->tab_file); + mediaLabel->setFixedSize(64,64); + ui->formLayout->replaceWidget(ui->label_file_icon, mediaLabel); + }else{ + ui->label_file_icon->setPixmap( LXDG::findIcon( INFO->iconfile(), "unknown").pixmap(QSize(64,64)) ); + } + + //qDebug() << "Check XDG Info:" + //qDebug() << INFO->isDesktopFile() << type; + syncXdgStruct(INFO->XDG()); + //Make sure the right tabs are available + if(ui->tabWidget->indexOf(ui->tab_file)<0){ + //qDebug() << "Add File Info Tab"; + ui->tabWidget->insertTab(0, ui->tab_file, tr("File Information")); + } + if(!INFO->isDesktopFile()){ + if(ui->tabWidget->indexOf(ui->tab_deskedit)>=0){ + ui->tabWidget->removeTab( ui->tabWidget->indexOf(ui->tab_deskedit) ); + } + }else if(ui->tabWidget->indexOf(ui->tab_deskedit)<0){ + ui->tabWidget->addTab( ui->tab_deskedit, tr("XDG Shortcut") ); + } + ui->tabWidget->setCurrentIndex(ui->tabWidget->indexOf(ui->tab_file) ); +} + +void MainUI::SetupNewFile(){ + //qDebug() << "Setup New File"; + if(!INFO->filePath().isEmpty()){ + INFO = new LFileInfo(); + } + stopDirSize(); + canwrite = true; //can always write a new file + syncXdgStruct(INFO->XDG()); + //Make sure the right tabs are enabled + if(ui->tabWidget->indexOf(ui->tab_file)>=0){ + ui->tabWidget->removeTab( ui->tabWidget->indexOf(ui->tab_file) ); + } + if(ui->tabWidget->indexOf(ui->tab_deskedit)<0){ + //qDebug() << "Adding the deskedit tab"; + ui->tabWidget->addTab(ui->tab_deskedit, tr("XDG Shortcut")); + } + ui->tabWidget->setCurrentIndex(ui->tabWidget->indexOf(ui->tab_deskedit) ); +} + +void MainUI::syncXdgStruct(XDGDesktop *XDG){ + bool cleanup = false; + if(XDG==0){ XDG = new XDGDesktop(); cleanup = true;} //make sure nothing crashes + if(XDG->type == XDGDesktop::APP){ + ui->line_xdg_command->setText(XDG->exec); + ui->line_xdg_wdir->setText(XDG->path); + ui->check_xdg_useTerminal->setChecked( XDG->useTerminal ); + ui->check_xdg_startupNotify->setChecked( XDG->startupNotify ); + }else if(XDG->type==XDGDesktop::LINK){ + //Hide the options that are unavailable for links + //Command line (exec) + ui->line_xdg_command->setVisible(false); + ui->tool_xdg_getCommand->setVisible(false); + ui->lblCommand->setVisible(false); + //Options + ui->lblOptions->setVisible(false); + ui->check_xdg_useTerminal->setVisible(false); + ui->check_xdg_startupNotify->setVisible(false); + //Now load the variables for this type of shortcut + ui->lblWorkingDir->setText(tr("URL:")); + ui->line_xdg_wdir->setText( XDG->url ); + ui->tool_xdg_getDir->setVisible(false); //the dir selection button + } + ui->line_xdg_name->setText(XDG->name); + ui->line_xdg_comment->setText(XDG->comment); + ui->line_xdg_icon->setText( XDG->icon ); + ReloadAppIcon(); + ui->actionSave_Shortcut->setVisible(true); + ui->actionSave_Shortcut->setEnabled(false); + if(cleanup){ delete XDG; } + checkXDGValidity(); +} + +bool MainUI::saveFile(QString path){ + //qDebug() << "Request save file:" << path; + XDGDesktop *XDG = INFO->XDG(); + if(XDG==0){ XDG = new XDGDesktop(); } + if(XDG->type == XDGDesktop::BAD){ XDG->type = XDGDesktop::APP; } + //Update the file path in the data structure + XDG->filePath = path; + //Now change the structure + XDG->name = ui->line_xdg_name->text(); + XDG->genericName = ui->line_xdg_name->text().toLower(); + XDG->comment = ui->line_xdg_comment->text(); + XDG->icon = ui->line_xdg_icon->text(); + //Now do the type-specific fields + if(XDG->type == XDGDesktop::APP){ + XDG->exec = ui->line_xdg_command->text(); + XDG->tryexec = ui->line_xdg_command->text().section(" ",0,0); //use the first word/binary for the existance check + XDG->path = ui->line_xdg_wdir->text(); //working dir/path + XDG->useTerminal = ui->check_xdg_useTerminal->isChecked(); + XDG->startupNotify = ui->check_xdg_startupNotify->isChecked(); + }else if(XDG->type==XDGDesktop::LINK){ + XDG->url = ui->line_xdg_wdir->text(); //we re-used this field + } + //Clear any info which this utility does not support at the moment + XDG->actionList.clear(); + XDG->actions.clear(); + //Now save the structure to file + //qDebug() << "Saving File:" << XDG->filePath; + return XDG->saveDesktopFile(true); //Try to merge the file/structure as necessary +} + +QString MainUI::findOpenDirFile(bool isdir){ + static QList<QUrl> urls; + if(urls.isEmpty()){ + urls << QUrl::fromLocalFile("/"); + QStringList dirs = QString(getenv("XDG_DATA_DIRS")).split(":"); + for(int i=0; i<dirs.length(); i++){ + if(QFile::exists(dirs[i]+"/applications")){ urls << QUrl::fromLocalFile(dirs[i]+"/applications"); } + } + //Now do the home-directory folders + urls << QUrl::fromLocalFile(QDir::homePath()); + QString localapps = QString(getenv("XDG_DATA_HOME"))+"/applications"; + if(QFile::exists(localapps)){ urls << QUrl::fromLocalFile(localapps); } + } + static QString lastdir = QDir::homePath(); + QFileDialog dlg(this); + dlg.setAcceptMode(QFileDialog::AcceptOpen); + dlg.setFileMode( isdir ? QFileDialog::Directory : QFileDialog::ExistingFiles ); + dlg.setOptions(QFileDialog::ReadOnly | QFileDialog::HideNameFilterDetails); + dlg.setViewMode(QFileDialog::Detail); + dlg.setSidebarUrls( urls ); + dlg.setDirectory(lastdir); + if(!dlg.exec() ){ return ""; } //cancelled + if(dlg.selectedFiles().isEmpty()){ return ""; } + QString path = dlg.selectedFiles().first(); + //Update the last used directory + if(isdir){ lastdir = path; } //save this for next time + else{ lastdir = path.section("/",0,-2); } + //return the path + return path; +} + + // Initialization procedures void MainUI::SetupConnections(){ + connect(ui->actionQuit, SIGNAL(triggered()), this, SLOT(closeApplication()) ); + connect(ui->actionSave_Shortcut, SIGNAL(triggered()), this, SLOT(save_clicked()) ); + connect(ui->actionLocal_Shortcut, SIGNAL(triggered()), this, SLOT(save_as_local_clicked()) ); + connect(ui->actionRegister_Shortcut, SIGNAL(triggered()), this, SLOT(save_as_register_clicked()) ); + connect(ui->actionNew_Shortcut, SIGNAL(triggered()), this, SLOT(SetupNewFile()) ); + connect(ui->actionOpen_File, SIGNAL(triggered()), this, SLOT(open_file_clicked()) ); + connect(ui->actionOpen_Directory, SIGNAL(triggered()), this, SLOT(open_dir_clicked()) ); connect(ui->line_xdg_command, SIGNAL(editingFinished()), this, SLOT(xdgvaluechanged()) ); connect(ui->line_xdg_comment, SIGNAL(editingFinished()), this, SLOT(xdgvaluechanged()) ); + connect(ui->line_xdg_icon, SIGNAL(textChanged(QString)), this, SLOT(ReloadAppIcon()) ); connect(ui->tool_xdg_getCommand, SIGNAL(clicked()), this, SLOT(getXdgCommand()) ); connect(ui->line_xdg_name, SIGNAL(editingFinished()), this, SLOT(xdgvaluechanged()) ); connect(ui->line_xdg_wdir, SIGNAL(editingFinished()), this, SLOT(xdgvaluechanged()) ); @@ -228,58 +328,81 @@ void MainUI::SetupConnections(){ } //UI Buttons -void MainUI::on_push_close_clicked(){ +void MainUI::closeApplication(){ terminate_thread = true; - if(ui->push_save->isEnabled()){ + if(ui->actionSave_Shortcut->isEnabled()){ //Still have unsaved changes //TO-DO - prompt for whether to save the changes } this->close(); } -void MainUI::on_push_save_clicked(){ +void MainUI::save_clicked(){ //Save all the xdg values into the structure - if( (!INFO->isDesktopFile() && !INFO->filePath().isEmpty()) || !canwrite){ return; } - if(INFO->filePath().isEmpty()){ + QString filePath = INFO->filePath(); + if( !filePath.isEmpty() && !INFO->isDesktopFile() ){ return; } + if(filePath.isEmpty() || !canwrite){ //Need to prompt for where to save the file and what to call it QString appdir = QString(getenv("XDG_DATA_HOME"))+"/applications/"; if(!QFile::exists(appdir)){ QDir dir; dir.mkpath(appdir); } - QString filePath = QFileDialog::getSaveFileName(this, tr("Save Application File"), appdir, tr("Application Registrations (*.desktop)") ); + filePath = QFileDialog::getSaveFileName(this, tr("Save Application File"), appdir, tr("XDG Shortcuts (*.desktop)") ); if(filePath.isEmpty()){ return; } if(!filePath.endsWith(".desktop")){ filePath.append(".desktop"); } - //Update the file paths in the data structure - INFO->setFile(filePath); - INFO->XDG()->filePath = filePath; } - XDGDesktop *XDG = INFO->XDG(); - //Now change the structure - XDG->name = ui->line_xdg_name->text(); - XDG->genericName = ui->line_xdg_name->text().toLower(); - XDG->comment = ui->line_xdg_comment->text(); - XDG->icon = ui->push_xdg_getIcon->whatsThis(); - //Now do the type-specific fields - if(XDG->type == XDGDesktop::APP){ - XDG->exec = ui->line_xdg_command->text(); - XDG->tryexec = ui->line_xdg_command->text().section(" ",0,0); //use the first word/binary for the existance check - XDG->path = ui->line_xdg_wdir->text(); //working dir/path - XDG->useTerminal = ui->check_xdg_useTerminal->isChecked(); - XDG->startupNotify = ui->check_xdg_startupNotify->isChecked(); - }else if(XDG->type==XDGDesktop::LINK){ - XDG->url = ui->line_xdg_wdir->text(); //we re-used this field + //qDebug() << " -Try Saving File:" << filePath; + bool saved = saveFile(filePath); + //qDebug() << "File Saved:" << saved; + ui->actionSave_Shortcut->setEnabled( !saved ); + if(saved){ + //Re-load the file info + LoadFile(filePath); } - //Clear any info which this utility does not support at the moment - XDG->actionList.clear(); - XDG->actions.clear(); - //Now save the structure to file - bool saved = XDG->saveDesktopFile(true); //Try to merge the file/structure as necessary - qDebug() << "File Saved:" << saved; - ui->push_save->setEnabled( !saved ); +} + +void MainUI::save_as_local_clicked(){ + QString filePath = QFileDialog::getSaveFileName(this, tr("Save Application File"), QDir::homePath(), tr("XDG Shortcuts (*.desktop)") ); + if(filePath.isEmpty()){ return; } + if(!filePath.endsWith(".desktop")){ filePath.append(".desktop"); } + + //qDebug() << " -Try Saving File:" << filePath; + bool saved = saveFile(filePath); + //qDebug() << "File Saved:" << saved; + ui->actionSave_Shortcut->setEnabled( !saved ); if(saved){ //Re-load the file info - LoadFile(INFO->absoluteFilePath()); + LoadFile(filePath); } } +void MainUI::save_as_register_clicked(){ + QString appdir = QString(getenv("XDG_DATA_HOME"))+"/applications/"; + if(!QFile::exists(appdir)){ QDir dir; dir.mkpath(appdir); } + QString filePath = QFileDialog::getSaveFileName(this, tr("Save Application File"), appdir, tr("XDG Shortcuts (*.desktop)") ); + if(filePath.isEmpty()){ return; } + if(!filePath.endsWith(".desktop")){ filePath.append(".desktop"); } + + //qDebug() << " -Try Saving File:" << filePath; + bool saved = saveFile(filePath); + //qDebug() << "File Saved:" << saved; + ui->actionSave_Shortcut->setEnabled( !saved ); + if(saved){ + //Re-load the file info + LoadFile(filePath); + } +} + +void MainUI::open_dir_clicked(){ + QString path = findOpenDirFile(true); //directory only + if(path.isEmpty()){ return; } + LoadFile(path, ""); +} + +void MainUI::open_file_clicked(){ + QString path = findOpenDirFile(false); //files only + if(path.isEmpty()){ return; } + LoadFile(path, ""); +} + void MainUI::getXdgCommand(QString prev){ //Find a binary to run QString dir = prev; //start with the previous attempt (if there was one) @@ -315,22 +438,45 @@ void MainUI::on_push_xdg_getIcon_clicked(){ for(int i=0; i<ext.length(); i++){ ext[i].prepend("*."); } //turn them into valid filters QString file = QFileDialog::getOpenFileName(this, tr("Select an icon"), dir ,QString(tr("Images (%1);; All Files (*)")).arg(ext.join(" ")) ); if(file.isEmpty()){ return; } //cancelled - ui->push_xdg_getIcon->setWhatsThis(file); + ui->line_xdg_icon->setText(file); ReloadAppIcon(); xdgvaluechanged(); } //XDG Value Changed +bool MainUI::checkXDGValidity(){ + XDGDesktop tmp; + tmp.type = XDGDesktop::APP; //make this adjustable later (GUI radio buttons?) + tmp.name = ui->line_xdg_name->text(); + tmp.genericName = ui->line_xdg_name->text().toLower(); + tmp.comment = ui->line_xdg_comment->text(); + tmp.icon = ui->line_xdg_icon->text(); + //Now do the type-specific fields + if(tmp.type == XDGDesktop::APP){ + tmp.exec = ui->line_xdg_command->text(); + tmp.tryexec = ui->line_xdg_command->text().section(" ",0,0); //use the first word/binary for the existance check + tmp.path = ui->line_xdg_wdir->text(); //working dir/path + tmp.useTerminal = ui->check_xdg_useTerminal->isChecked(); + tmp.startupNotify = ui->check_xdg_startupNotify->isChecked(); + }else if(tmp.type==XDGDesktop::LINK){ + tmp.url = ui->line_xdg_wdir->text(); //we re-used this field + } + bool valid = tmp.isValid(); + ui->label_xdg_statusicon->setPixmap( LXDG::findIcon( valid ? "dialog-ok" : "dialog-cancel", "").pixmap(32,32) ); + ui->label_xdg_status->setText( valid ? tr("Valid Settings") : tr("Invalid Settings") ); + return tmp.isValid(); +} + void MainUI::xdgvaluechanged(){ - if(INFO!=0 && (INFO->isDesktopFile() || INFO->filePath().isEmpty() ) ){ - ui->push_save->setVisible(true); + //qDebug() << "xdgvaluechanged"; + if( INFO->isDesktopFile() || INFO->filePath().isEmpty() ){ + bool valid = checkXDGValidity(); //Compare the current UI values to the file values - ui->push_save->setEnabled(canwrite); //assume changed at this point - // TO-DO + ui->menuSave_As->setEnabled(valid); + ui->actionSave_Shortcut->setEnabled(canwrite && valid); //assume changed at this point }else{ - ui->push_save->setVisible(false); - ui->push_save->setEnabled(false); + ui->actionSave_Shortcut->setEnabled(false); } } diff --git a/src-qt5/desktop-utils/lumina-fileinfo/MainUI.h b/src-qt5/desktop-utils/lumina-fileinfo/MainUI.h index cbe23d9e..d7b17207 100644 --- a/src-qt5/desktop-utils/lumina-fileinfo/MainUI.h +++ b/src-qt5/desktop-utils/lumina-fileinfo/MainUI.h @@ -13,15 +13,20 @@ #ifndef _LUMINA_FILE_INFO_MAIN_UI_H #define _LUMINA_FILE_INFO_MAIN_UI_H -#include <QDialog> +#include <QMainWindow> +#include <QMediaPlayer> +#include <LVideoSurface.h> +#include <LVideoLabel.h> +#include <QElapsedTimer> +#include <QFuture> #include <LuminaXDG.h> namespace Ui{ - class MainUI; + class MainUI; }; -class MainUI : public QDialog{ +class MainUI : public QMainWindow{ Q_OBJECT public: MainUI(); @@ -31,36 +36,55 @@ public: public slots: void UpdateIcons(); + void ReloadAppIcon(); private: Ui::MainUI *ui; LFileInfo *INFO; + LVideoSurface *surface; + QMediaPlayer *player; + bool flag; + QElapsedTimer timer; + QFuture<void> sizeThread; bool canwrite; bool terminate_thread; //flag for terminating the GetDirSize task - void ReloadAppIcon(); + void stopDirSize(); + void GetDirSize(const QString dirname) const; //function to get folder size + void SyncFileInfo(); + + void syncXdgStruct(XDGDesktop*); + + bool saveFile(QString path); + QString findOpenDirFile(bool isdir = false); + signals: void folder_size_changed(quint64 size, quint64 files, quint64 folders, bool finished) const; //Signal for updating the folder size asynchronously private slots: + void SetupNewFile(); //Initialization functions void SetupConnections(); //UI Buttons - void on_push_close_clicked(); - void on_push_save_clicked(); + void closeApplication(); + void save_clicked(); + void save_as_local_clicked(); + void save_as_register_clicked(); + void open_dir_clicked(); + void open_file_clicked(); void getXdgCommand(QString prev = ""); - //void on_tool_xdg_getCommand_clicked(QString prev = ""); void on_tool_xdg_getDir_clicked(); void on_push_xdg_getIcon_clicked(); //XDG Value Changed + bool checkXDGValidity(); void xdgvaluechanged(); - //Folder size - void refresh_folder_size(quint64 size, quint64 files, quint64 folders, bool finished); //Slot for updating the folder size asynchronously + //Folder size + void refresh_folder_size(quint64 size, quint64 files, quint64 folders, bool finished); //Slot for updating the folder size asynchronously }; #endif diff --git a/src-qt5/desktop-utils/lumina-fileinfo/MainUI.ui b/src-qt5/desktop-utils/lumina-fileinfo/MainUI.ui index 51657ba1..217c1a10 100644 --- a/src-qt5/desktop-utils/lumina-fileinfo/MainUI.ui +++ b/src-qt5/desktop-utils/lumina-fileinfo/MainUI.ui @@ -1,432 +1,652 @@ <?xml version="1.0" encoding="UTF-8"?> <ui version="4.0"> <class>MainUI</class> - <widget class="QDialog" name="MainUI"> + <widget class="QMainWindow" name="MainUI"> <property name="geometry"> <rect> <x>0</x> <y>0</y> - <width>349</width> - <height>354</height> + <width>800</width> + <height>658</height> </rect> </property> <property name="windowTitle"> <string>File Information</string> </property> - <layout class="QVBoxLayout" name="verticalLayout"> - <item> - <widget class="QTabWidget" name="tabWidget"> - <property name="currentIndex"> - <number>1</number> - </property> - <widget class="QWidget" name="tab_file"> - <attribute name="title"> - <string>File Information</string> - </attribute> - <layout class="QFormLayout" name="formLayout"> - <property name="labelAlignment"> - <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> - </property> - <item row="0" column="0"> - <widget class="QLabel" name="label_file_icon"> - <property name="text"> - <string notr="true">icon</string> - </property> - <property name="alignment"> - <set>Qt::AlignCenter</set> - </property> - </widget> - </item> - <item row="4" column="0" colspan="2"> - <widget class="Line" name="line_2"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - </widget> - </item> - <item row="5" column="0"> - <widget class="QLabel" name="label"> - <property name="text"> - <string>Owner:</string> - </property> - </widget> - </item> - <item row="5" column="1"> - <widget class="QLabel" name="label_file_owner"> - <property name="text"> - <string notr="true"/> - </property> - <property name="textInteractionFlags"> - <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> - </property> - </widget> - </item> - <item row="6" column="0"> - <widget class="QLabel" name="label_3"> - <property name="text"> - <string>Group:</string> - </property> - </widget> - </item> - <item row="6" column="1"> - <widget class="QLabel" name="label_file_group"> - <property name="text"> - <string notr="true"/> - </property> - <property name="textInteractionFlags"> - <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> - </property> - </widget> - </item> - <item row="7" column="0"> - <widget class="QLabel" name="label_11"> - <property name="text"> - <string>Permissions:</string> - </property> - </widget> - </item> - <item row="10" column="0" colspan="2"> - <widget class="Line" name="line_3"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - </widget> - </item> - <item row="11" column="0"> - <widget class="QLabel" name="label_7"> - <property name="text"> - <string>Created:</string> - </property> - </widget> - </item> - <item row="11" column="1"> - <widget class="QLabel" name="label_file_created"> - <property name="toolTip"> - <string>Note: The time a file was created might be more recent than the time modified if the file permissions were changed recently.</string> - </property> - <property name="text"> - <string notr="true"/> - </property> - <property name="textInteractionFlags"> - <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> - </property> - </widget> - </item> - <item row="12" column="0"> - <widget class="QLabel" name="label_2"> - <property name="text"> - <string>Last Modified:</string> - </property> - </widget> - </item> - <item row="1" column="0"> - <widget class="QLabel" name="label_5"> - <property name="text"> - <string>Type:</string> - </property> - </widget> - </item> - <item row="2" column="0"> - <widget class="QLabel" name="label_6"> - <property name="text"> - <string>MimeType:</string> - </property> - </widget> - </item> - <item row="2" column="1"> - <widget class="QLabel" name="label_file_mimetype"> - <property name="text"> - <string notr="true"/> - </property> - <property name="textInteractionFlags"> - <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> - </property> - </widget> - </item> - <item row="1" column="1"> - <widget class="QLabel" name="label_file_type"> - <property name="text"> - <string notr="true"/> - </property> - <property name="textInteractionFlags"> - <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> - </property> - </widget> - </item> - <item row="7" column="1"> - <widget class="QLabel" name="label_file_perms"> - <property name="text"> - <string notr="true"/> - </property> - <property name="textInteractionFlags"> - <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> - </property> - </widget> - </item> - <item row="12" column="1"> - <widget class="QLabel" name="label_file_modified"> - <property name="text"> - <string notr="true"/> - </property> - <property name="textInteractionFlags"> - <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> - </property> - </widget> - </item> - <item row="3" column="0"> - <widget class="QLabel" name="label_4"> - <property name="text"> - <string>File Size:</string> - </property> - </widget> - </item> - <item row="3" column="1"> - <widget class="QLabel" name="label_file_size"> - <property name="text"> - <string notr="true"/> - </property> - <property name="textInteractionFlags"> - <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> - </property> - </widget> - </item> - <item row="0" column="1"> - <widget class="QLabel" name="label_file_name"> - <property name="text"> - <string notr="true"/> - </property> - <property name="wordWrap"> - <bool>true</bool> - </property> - <property name="textInteractionFlags"> - <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> - </property> - </widget> - </item> - </layout> - </widget> - <widget class="QWidget" name="tab_deskedit"> - <attribute name="title"> - <string>Edit Shortcut</string> - </attribute> - <layout class="QVBoxLayout" name="verticalLayout_2"> - <property name="spacing"> - <number>2</number> - </property> - <property name="leftMargin"> - <number>4</number> - </property> - <property name="topMargin"> - <number>4</number> - </property> - <property name="rightMargin"> - <number>4</number> - </property> - <property name="bottomMargin"> - <number>4</number> - </property> - <item> - <layout class="QGridLayout" name="gridLayout"> - <item row="3" column="0" alignment="Qt::AlignRight"> - <widget class="QLabel" name="lblWorkingDir"> - <property name="text"> - <string>Working Dir:</string> - </property> - </widget> - </item> - <item row="5" column="1"> - <widget class="QCheckBox" name="check_xdg_startupNotify"> - <property name="text"> - <string>Use startup notification</string> - </property> - </widget> - </item> - <item row="3" column="1"> - <widget class="QLineEdit" name="line_xdg_wdir"> - <property name="enabled"> - <bool>true</bool> - </property> - </widget> - </item> - <item row="4" column="0" alignment="Qt::AlignRight"> - <widget class="QLabel" name="lblIcon"> - <property name="text"> - <string>Icon:</string> - </property> - </widget> - </item> - <item row="2" column="0" alignment="Qt::AlignRight"> - <widget class="QLabel" name="lblCommand"> - <property name="text"> - <string>Command:</string> - </property> - </widget> - </item> - <item row="1" column="0" alignment="Qt::AlignRight"> - <widget class="QLabel" name="lblComment"> - <property name="text"> - <string>Comment:</string> - </property> - </widget> - </item> - <item row="2" column="1"> - <widget class="QLineEdit" name="line_xdg_command"/> - </item> - <item row="6" column="1"> - <widget class="QCheckBox" name="check_xdg_useTerminal"> - <property name="text"> - <string>Run in terminal</string> - </property> - </widget> - </item> - <item row="0" column="0" alignment="Qt::AlignRight"> - <widget class="QLabel" name="lblName"> - <property name="text"> - <string>Name:</string> - </property> - </widget> - </item> - <item row="5" column="0" alignment="Qt::AlignRight"> - <widget class="QLabel" name="lblOptions"> - <property name="text"> - <string>Options</string> - </property> - </widget> - </item> - <item row="0" column="1" colspan="2"> - <widget class="QLineEdit" name="line_xdg_name"/> - </item> - <item row="1" column="1" colspan="2"> - <widget class="QLineEdit" name="line_xdg_comment"/> - </item> - <item row="2" column="2"> - <widget class="QToolButton" name="tool_xdg_getCommand"> - <property name="text"> - <string notr="true"/> - </property> - </widget> - </item> - <item row="3" column="2"> - <widget class="QToolButton" name="tool_xdg_getDir"> - <property name="enabled"> - <bool>true</bool> - </property> - <property name="text"> - <string notr="true"/> - </property> - </widget> - </item> - <item row="4" column="1"> - <layout class="QHBoxLayout" name="horizontalLayout"> - <item> - <widget class="QToolButton" name="push_xdg_getIcon"> - <property name="maximumSize"> - <size> - <width>275</width> - <height>16777215</height> - </size> - </property> - <property name="text"> - <string>No Icon</string> - </property> - <property name="iconSize"> - <size> - <width>64</width> - <height>64</height> - </size> - </property> - </widget> - </item> - <item> - <spacer name="horizontalSpacer"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - </layout> - </item> - </layout> - </item> - <item> - <widget class="Line" name="line"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - </widget> - </item> - </layout> - </widget> - </widget> - </item> - <item> - <layout class="QHBoxLayout" name="horizontalLayout_2"> - <item> - <spacer name="horizontalSpacer_2"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QToolButton" name="push_save"> - <property name="text"> - <string>Save</string> - </property> - <property name="popupMode"> - <enum>QToolButton::InstantPopup</enum> - </property> - <property name="toolButtonStyle"> - <enum>Qt::ToolButtonTextBesideIcon</enum> - </property> + <property name="windowIcon"> + <iconset theme="document-search"> + <normaloff>.</normaloff>.</iconset> + </property> + <widget class="QWidget" name="centralwidget"> + <layout class="QVBoxLayout" name="verticalLayout"> + <item> + <widget class="QTabWidget" name="tabWidget"> + <property name="currentIndex"> + <number>1</number> + </property> + <widget class="QWidget" name="tab_file"> + <attribute name="title"> + <string>File Information</string> + </attribute> + <layout class="QFormLayout" name="formLayout"> + <property name="labelAlignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + <item row="0" column="0"> + <widget class="QLabel" name="label_file_icon"> + <property name="text"> + <string notr="true">icon</string> + </property> + <property name="alignment"> + <set>Qt::AlignCenter</set> + </property> + </widget> + </item> + <item row="4" column="0" colspan="2"> + <widget class="Line" name="line_2"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + </widget> + </item> + <item row="5" column="0"> + <widget class="QLabel" name="label"> + <property name="text"> + <string>Owner:</string> + </property> + </widget> + </item> + <item row="5" column="1"> + <widget class="QLabel" name="label_file_owner"> + <property name="text"> + <string notr="true"/> + </property> + <property name="textInteractionFlags"> + <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> + </property> + </widget> + </item> + <item row="6" column="0"> + <widget class="QLabel" name="label_3"> + <property name="text"> + <string>Group:</string> + </property> + </widget> + </item> + <item row="6" column="1"> + <widget class="QLabel" name="label_file_group"> + <property name="text"> + <string notr="true"/> + </property> + <property name="textInteractionFlags"> + <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> + </property> + </widget> + </item> + <item row="7" column="0"> + <widget class="QLabel" name="label_11"> + <property name="text"> + <string>Permissions:</string> + </property> + </widget> + </item> + <item row="10" column="0" colspan="2"> + <widget class="Line" name="line_3"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + </widget> + </item> + <item row="11" column="0"> + <widget class="QLabel" name="label_7"> + <property name="text"> + <string>Created:</string> + </property> + </widget> + </item> + <item row="11" column="1"> + <widget class="QLabel" name="label_file_created"> + <property name="toolTip"> + <string>Note: The time a file was created might be more recent than the time modified if the file permissions were changed recently.</string> + </property> + <property name="text"> + <string notr="true"/> + </property> + <property name="textInteractionFlags"> + <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> + </property> + </widget> + </item> + <item row="12" column="0"> + <widget class="QLabel" name="label_2"> + <property name="text"> + <string>Last Modified:</string> + </property> + </widget> + </item> + <item row="1" column="0"> + <widget class="QLabel" name="label_5"> + <property name="text"> + <string>Type:</string> + </property> + </widget> + </item> + <item row="2" column="0"> + <widget class="QLabel" name="label_6"> + <property name="text"> + <string>MimeType:</string> + </property> + </widget> + </item> + <item row="2" column="1"> + <widget class="QLabel" name="label_file_mimetype"> + <property name="text"> + <string notr="true"/> + </property> + <property name="textInteractionFlags"> + <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> + </property> + </widget> + </item> + <item row="1" column="1"> + <widget class="QLabel" name="label_file_type"> + <property name="text"> + <string notr="true"/> + </property> + <property name="textInteractionFlags"> + <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> + </property> + </widget> + </item> + <item row="7" column="1"> + <widget class="QLabel" name="label_file_perms"> + <property name="text"> + <string notr="true"/> + </property> + <property name="textInteractionFlags"> + <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> + </property> + </widget> + </item> + <item row="12" column="1"> + <widget class="QLabel" name="label_file_modified"> + <property name="text"> + <string notr="true"/> + </property> + <property name="textInteractionFlags"> + <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> + </property> + </widget> + </item> + <item row="3" column="0"> + <widget class="QLabel" name="label_4"> + <property name="text"> + <string>File Size:</string> + </property> + </widget> + </item> + <item row="3" column="1"> + <widget class="QLabel" name="label_file_size"> + <property name="text"> + <string notr="true"/> + </property> + <property name="textInteractionFlags"> + <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> + </property> + </widget> + </item> + <item row="0" column="1"> + <widget class="QLabel" name="label_file_name"> + <property name="text"> + <string notr="true"/> + </property> + <property name="wordWrap"> + <bool>true</bool> + </property> + <property name="textInteractionFlags"> + <set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set> + </property> + </widget> + </item> + </layout> </widget> - </item> - <item> - <widget class="QToolButton" name="push_close"> - <property name="text"> - <string>Close</string> - </property> - <property name="popupMode"> - <enum>QToolButton::DelayedPopup</enum> - </property> - <property name="toolButtonStyle"> - <enum>Qt::ToolButtonTextBesideIcon</enum> - </property> + <widget class="QWidget" name="tab_deskedit"> + <attribute name="title"> + <string>XDG Shortcut</string> + </attribute> + <layout class="QVBoxLayout" name="verticalLayout_2"> + <property name="spacing"> + <number>2</number> + </property> + <property name="leftMargin"> + <number>4</number> + </property> + <property name="topMargin"> + <number>4</number> + </property> + <property name="rightMargin"> + <number>4</number> + </property> + <property name="bottomMargin"> + <number>4</number> + </property> + <item> + <layout class="QGridLayout" name="gridLayout"> + <item row="3" column="0" alignment="Qt::AlignRight"> + <widget class="QLabel" name="lblWorkingDir"> + <property name="text"> + <string>Working Dir:</string> + </property> + </widget> + </item> + <item row="5" column="1"> + <widget class="QCheckBox" name="check_xdg_startupNotify"> + <property name="text"> + <string>Use startup notification</string> + </property> + </widget> + </item> + <item row="3" column="1"> + <widget class="QLineEdit" name="line_xdg_wdir"> + <property name="enabled"> + <bool>true</bool> + </property> + </widget> + </item> + <item row="4" column="0" alignment="Qt::AlignRight"> + <widget class="QLabel" name="lblIcon"> + <property name="text"> + <string>Icon:</string> + </property> + </widget> + </item> + <item row="2" column="0" alignment="Qt::AlignRight"> + <widget class="QLabel" name="lblCommand"> + <property name="text"> + <string>Command:</string> + </property> + </widget> + </item> + <item row="1" column="0" alignment="Qt::AlignRight"> + <widget class="QLabel" name="lblComment"> + <property name="text"> + <string>Comment:</string> + </property> + </widget> + </item> + <item row="2" column="1"> + <widget class="QLineEdit" name="line_xdg_command"/> + </item> + <item row="6" column="1"> + <widget class="QCheckBox" name="check_xdg_useTerminal"> + <property name="text"> + <string>Run in terminal</string> + </property> + </widget> + </item> + <item row="0" column="0" alignment="Qt::AlignRight"> + <widget class="QLabel" name="lblName"> + <property name="text"> + <string>Name:</string> + </property> + </widget> + </item> + <item row="5" column="0" alignment="Qt::AlignRight"> + <widget class="QLabel" name="lblOptions"> + <property name="text"> + <string>Options</string> + </property> + </widget> + </item> + <item row="0" column="1" colspan="2"> + <widget class="QLineEdit" name="line_xdg_name"/> + </item> + <item row="1" column="1" colspan="2"> + <widget class="QLineEdit" name="line_xdg_comment"/> + </item> + <item row="2" column="2"> + <widget class="QToolButton" name="tool_xdg_getCommand"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="maximumSize"> + <size> + <width>16777215</width> + <height>42</height> + </size> + </property> + <property name="text"> + <string notr="true"/> + </property> + <property name="icon"> + <iconset theme="edit-find"> + <normaloff>.</normaloff>.</iconset> + </property> + </widget> + </item> + <item row="3" column="2"> + <widget class="QToolButton" name="tool_xdg_getDir"> + <property name="enabled"> + <bool>true</bool> + </property> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="maximumSize"> + <size> + <width>16777215</width> + <height>42</height> + </size> + </property> + <property name="text"> + <string notr="true"/> + </property> + <property name="icon"> + <iconset theme="edit-find"> + <normaloff>.</normaloff>.</iconset> + </property> + </widget> + </item> + <item row="4" column="1"> + <layout class="QHBoxLayout" name="horizontalLayout"> + <item> + <widget class="QLabel" name="label_xdg_icon"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>64</width> + <height>64</height> + </size> + </property> + <property name="maximumSize"> + <size> + <width>64</width> + <height>64</height> + </size> + </property> + <property name="frameShape"> + <enum>QFrame::StyledPanel</enum> + </property> + <property name="text"> + <string notr="true"/> + </property> + </widget> + </item> + <item> + <widget class="QLineEdit" name="line_xdg_icon"/> + </item> + </layout> + </item> + <item row="4" column="2"> + <widget class="QToolButton" name="push_xdg_getIcon"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>0</width> + <height>0</height> + </size> + </property> + <property name="maximumSize"> + <size> + <width>20000</width> + <height>42</height> + </size> + </property> + <property name="sizeIncrement"> + <size> + <width>2</width> + <height>2</height> + </size> + </property> + <property name="baseSize"> + <size> + <width>0</width> + <height>0</height> + </size> + </property> + <property name="text"> + <string notr="true"/> + </property> + <property name="icon"> + <iconset theme="edit-find"> + <normaloff>.</normaloff>.</iconset> + </property> + <property name="iconSize"> + <size> + <width>24</width> + <height>24</height> + </size> + </property> + </widget> + </item> + </layout> + </item> + <item> + <spacer name="verticalSpacer"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>40</height> + </size> + </property> + </spacer> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_2"> + <item> + <widget class="QLabel" name="label_xdg_statusicon"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>32</width> + <height>32</height> + </size> + </property> + <property name="maximumSize"> + <size> + <width>32</width> + <height>32</height> + </size> + </property> + <property name="text"> + <string notr="true"/> + </property> + </widget> + </item> + <item> + <widget class="QLabel" name="label_xdg_status"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>0</width> + <height>32</height> + </size> + </property> + <property name="maximumSize"> + <size> + <width>16777215</width> + <height>32</height> + </size> + </property> + <property name="font"> + <font> + <italic>true</italic> + </font> + </property> + <property name="text"> + <string notr="true"/> + </property> + </widget> + </item> + </layout> + </item> + <item> + <widget class="Line" name="line"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + </widget> + </item> + </layout> </widget> - </item> - </layout> - </item> - </layout> + </widget> + </item> + </layout> + </widget> + <widget class="QMenuBar" name="menubar"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>800</width> + <height>39</height> + </rect> + </property> + <widget class="QMenu" name="menuFile"> + <property name="title"> + <string>File</string> + </property> + <widget class="QMenu" name="menuSave_As"> + <property name="title"> + <string>Save As</string> + </property> + <property name="icon"> + <iconset theme="document-save"> + <normaloff>.</normaloff>.</iconset> + </property> + <addaction name="actionLocal_Shortcut"/> + <addaction name="actionRegister_Shortcut"/> + </widget> + <addaction name="actionNew_Shortcut"/> + <addaction name="separator"/> + <addaction name="actionOpen_File"/> + <addaction name="actionOpen_Directory"/> + <addaction name="separator"/> + <addaction name="actionSave_Shortcut"/> + <addaction name="menuSave_As"/> + <addaction name="separator"/> + <addaction name="actionQuit"/> + </widget> + <addaction name="menuFile"/> + </widget> + <widget class="QStatusBar" name="statusbar"/> + <action name="actionOpen_File"> + <property name="icon"> + <iconset theme="document-open"> + <normaloff>.</normaloff>.</iconset> + </property> + <property name="text"> + <string>Open File</string> + </property> + <property name="shortcut"> + <string>Ctrl+O</string> + </property> + <property name="shortcutContext"> + <enum>Qt::ApplicationShortcut</enum> + </property> + </action> + <action name="actionQuit"> + <property name="icon"> + <iconset theme="window-close"> + <normaloff>.</normaloff>.</iconset> + </property> + <property name="text"> + <string>Quit</string> + </property> + <property name="shortcut"> + <string>Ctrl+Q</string> + </property> + <property name="shortcutContext"> + <enum>Qt::ApplicationShortcut</enum> + </property> + </action> + <action name="actionSave_Shortcut"> + <property name="icon"> + <iconset theme="document-save"> + <normaloff>.</normaloff>.</iconset> + </property> + <property name="text"> + <string>Save Shortcut</string> + </property> + <property name="shortcut"> + <string>Ctrl+S</string> + </property> + <property name="shortcutContext"> + <enum>Qt::ApplicationShortcut</enum> + </property> + </action> + <action name="actionLocal_Shortcut"> + <property name="icon"> + <iconset theme="document-new"> + <normaloff>.</normaloff>.</iconset> + </property> + <property name="text"> + <string>Local Shortcut</string> + </property> + </action> + <action name="actionRegister_Shortcut"> + <property name="icon"> + <iconset theme="bookmark-new"> + <normaloff>.</normaloff>.</iconset> + </property> + <property name="text"> + <string>Register Shortcut</string> + </property> + </action> + <action name="actionOpen_Directory"> + <property name="icon"> + <iconset theme="folder-open"> + <normaloff>.</normaloff>.</iconset> + </property> + <property name="text"> + <string>Open Directory</string> + </property> + </action> + <action name="actionNew_Shortcut"> + <property name="icon"> + <iconset theme="document-new"> + <normaloff>.</normaloff>.</iconset> + </property> + <property name="text"> + <string>New Shortcut</string> + </property> + </action> </widget> - <layoutdefault spacing="6" margin="11"/> - <tabstops> - <tabstop>line_xdg_name</tabstop> - <tabstop>line_xdg_comment</tabstop> - <tabstop>line_xdg_command</tabstop> - <tabstop>line_xdg_wdir</tabstop> - <tabstop>check_xdg_startupNotify</tabstop> - <tabstop>check_xdg_useTerminal</tabstop> - <tabstop>tool_xdg_getCommand</tabstop> - <tabstop>tool_xdg_getDir</tabstop> - </tabstops> <resources/> <connections/> </ui> diff --git a/src-qt5/desktop-utils/lumina-fileinfo/lumina-fileinfo.pro b/src-qt5/desktop-utils/lumina-fileinfo/lumina-fileinfo.pro index bbaf842e..14345f50 100644 --- a/src-qt5/desktop-utils/lumina-fileinfo/lumina-fileinfo.pro +++ b/src-qt5/desktop-utils/lumina-fileinfo/lumina-fileinfo.pro @@ -1,7 +1,7 @@ include("$${PWD}/../../OS-detect.pri") QT += core gui -greaterThan(QT_MAJOR_VERSION, 4): QT += widgets concurrent +greaterThan(QT_MAJOR_VERSION, 4): QT += widgets concurrent multimedia TARGET = lumina-fileinfo @@ -13,6 +13,7 @@ target.path = $${L_BINDIR} include(../../core/libLumina/LUtils.pri) #includes LUtils include(../../core/libLumina/LuminaXDG.pri) #include(../../core/libLumina/LuminaSingleApplication.pri) +include(../../core/libLumina/LVideoLabel.pri) include(../../core/libLumina/LuminaThemes.pri) SOURCES += main.cpp\ diff --git a/src-qt5/desktop-utils/lumina-fileinfo/main.cpp b/src-qt5/desktop-utils/lumina-fileinfo/main.cpp index a602f290..ce62399d 100644 --- a/src-qt5/desktop-utils/lumina-fileinfo/main.cpp +++ b/src-qt5/desktop-utils/lumina-fileinfo/main.cpp @@ -11,46 +11,26 @@ int main(int argc, char ** argv) { LTHEME::LoadCustomEnvSettings(); QApplication a(argc, argv); - a.setAttribute(Qt::AA_UseHighDpiPixmaps); + a.setAttribute(Qt::AA_UseHighDpiPixmaps); LUtils::LoadTranslation(&a, "l-fileinfo"); - //LuminaThemeEngine theme(&a); //Read the input variables QString path = ""; QString flag = ""; for(int i=1; i<argc; i++){ - if( QString(argv[i]).startsWith("-") ){ flag = QString(argv[i]); } - else{ path = QString(argv[i]); break; } + QString tmp(argv[i]); + if( tmp=="--new-application" ){ flag = "APP"; } + else if( tmp=="--new-link" ){ flag = "LINK"; } + else if(!tmp.startsWith("-")){ path = QString(argv[i]); break; } } //Check the input variables // - path if(!path.isEmpty()){ path = LUtils::PathToAbsolute(path); } - // - flag - if(!flag.isEmpty()){ - if(flag=="-application"){ - flag = "APP"; //for internal use - }else if(flag=="-link"){ - flag = "LINK"; //for internal use - }else{ - //Invalid flag - clear the path as well - flag.clear(); - path.clear(); - } - } - if(!path.isEmpty() || !flag.isEmpty()){ + if(path.isEmpty() && flag.isEmpty()){ flag = "APP"; } MainUI w; - //QObject::connect(&theme, SIGNAL(updateIcons()), &w, SLOT(UpdateIcons()) ); w.LoadFile(path, flag); w.show(); int retCode = a.exec(); return retCode; - }else{ - //Show an error text and exit - qDebug() << "ERROR: Invalid input arguments"; - qDebug() << "Usage: \"lumina-fileinfo [-application | -link] [file]"; - return 1; - } - - } diff --git a/src-qt5/desktop-utils/lumina-fm-dev/main.cpp b/src-qt5/desktop-utils/lumina-fm-dev/main.cpp index 61d2dc95..a4a6244e 100644 --- a/src-qt5/desktop-utils/lumina-fm-dev/main.cpp +++ b/src-qt5/desktop-utils/lumina-fm-dev/main.cpp @@ -2,6 +2,7 @@ #include <QDebug> #include <QFile> #include <QStringList> +#include <QElapsedTimer> #include "MainUI.h" #include <LuminaOS.h> @@ -10,6 +11,7 @@ #include <LuminaSingleApplication.h> #include "BrowserWidget.h" +QElapsedTimer* timer = 0; int main(int argc, char ** argv) { @@ -27,6 +29,7 @@ int main(int argc, char ** argv) MainUI w; QObject::connect(&a, SIGNAL(InputsAvailable(QStringList)), &w, SLOT(slotSingleInstance(QStringList)) ); //QObject::connect(&themes, SIGNAL(updateIcons()), &w, SLOT(setupIcons()) ); + timer = new QElapsedTimer(); timer->start(); qDebug() << " - Init:" << timer->elapsed(); w.OpenDirs(in); w.show(); diff --git a/src-qt5/desktop-utils/lumina-fm-dev/widgets/DirWidget2.cpp b/src-qt5/desktop-utils/lumina-fm-dev/widgets/DirWidget2.cpp index 3790d145..2e837cfd 100644 --- a/src-qt5/desktop-utils/lumina-fm-dev/widgets/DirWidget2.cpp +++ b/src-qt5/desktop-utils/lumina-fm-dev/widgets/DirWidget2.cpp @@ -28,6 +28,8 @@ #define DEBUG 0 +extern QElapsedTimer* timer; + DirWidget::DirWidget(QString objID, QWidget *parent) : QWidget(parent), ui(new Ui::DirWidget){ ui->setupUi(this); //load the designer file ID = objID; @@ -90,6 +92,8 @@ DirWidget::DirWidget(QString objID, QWidget *parent) : QWidget(parent), ui(new U createShortcuts(); createMenus(); line_dir->setCompleter(new QCompleter(dirtreeModel, this)); + qDebug() << " - Fini:" << timer->elapsed(); + } DirWidget::~DirWidget(){ diff --git a/src-qt5/desktop-utils/lumina-fm/Browser.cpp b/src-qt5/desktop-utils/lumina-fm/Browser.cpp index f2bdc178..29cc5a99 100644 --- a/src-qt5/desktop-utils/lumina-fm/Browser.cpp +++ b/src-qt5/desktop-utils/lumina-fm/Browser.cpp @@ -16,10 +16,12 @@ Browser::Browser(QObject *parent) : QObject(parent){ watcher = new QFileSystemWatcher(this); connect(watcher, SIGNAL(fileChanged(const QString&)), this, SLOT(fileChanged(QString)) ); - connect(watcher, SIGNAL(directoryChanged(const QString&)), this, SLOT(dirChanged(QString)) ); + connect(watcher, SIGNAL(directoryChanged(const QString&)), this, SLOT(dirChanged(QString)) ); showHidden = false; showThumbs = false; imageFormats = LUtils::imageExtensions(false); //lowercase suffixes + //connect(surface, SIGNAL(frameReceived(QImage)), this, SLOT(captureFrame(QImage))); + //connect(player, &QMediaPlayer::mediaStatusChanged, this, [&]{ stopVideo(player, player->mediaStatus()); }); connect(this, SIGNAL(threadDone(QString, QImage)), this, SLOT(futureFinished(QString, QImage))); //will always be between different threads } @@ -32,6 +34,7 @@ QString Browser::currentDirectory(){ return currentDir; } void Browser::showHiddenFiles(bool show){ if(show !=showHidden){ showHidden = show; + lastcheck = QDateTime(); //reset this timestamp - need to reload all if(!currentDir.isEmpty()){ QTimer::singleShot(0, this, SLOT(loadDirectory()) ); } } } @@ -42,6 +45,7 @@ bool Browser::showingHiddenFiles(){ void Browser::showThumbnails(bool show){ if(show != showThumbs){ showThumbs = show; + lastcheck = QDateTime(); //reset this timestamp - need to reload all if(!currentDir.isEmpty()){ QTimer::singleShot(0, this, SLOT(loadDirectory()) ); } } } @@ -60,69 +64,83 @@ void Browser::loadItem(QString info, Browser *obj){ file.close(); pix.loadFromData(bytes); if(pix.width() > 256 || pix.height() > 256 ){ - pix = pix.scaled(256,256, Qt::KeepAspectRatio, Qt::SmoothTransformation); + pix = pix.scaled(256,256, Qt::KeepAspectRatio, Qt::FastTransformation); } } } - //qDebug() << " - done with item:" << info; obj->emit threadDone(info, pix); } -QIcon Browser::loadIcon(QString icon){ +QIcon* Browser::loadIcon(QString icon){ if(!mimeIcons.contains(icon)){ mimeIcons.insert(icon, LXDG::findIcon(icon, "unknown")); } - - return mimeIcons[icon]; + return &mimeIcons[icon]; } // PRIVATE SLOTS void Browser::fileChanged(QString file){ - if(file.startsWith(currentDir+"/") ){ + //qDebug() << "Got File Changed:" << file; + if(file.section("/",0,-2) == currentDir){ if(QFile::exists(file) ){ QtConcurrent::run(this, &Browser::loadItem, file, this); } //file modified but not removed - else{ QTimer::singleShot(0, this, SLOT(loadDirectory()) ); } //file removed - need to update entire dir - }else if(file==currentDir){ QTimer::singleShot(0, this, SLOT(loadDirectory()) ); } + else if(oldFiles.contains(file) ){ + oldFiles.removeAll(file); + emit itemRemoved(file); + } + }//else if(file==currentDir){ QTimer::singleShot(0, this, SLOT(loadDirectory()) ); } } void Browser::dirChanged(QString dir){ - - if(dir==currentDir){ QTimer::singleShot(500, this, SLOT(loadDirectory()) ); } + //qDebug() << "Got Dir Changed:" << dir; + if(dir==currentDir){ QTimer::singleShot(10, this, SLOT(loadDirectory()) ); } else if(dir.startsWith(currentDir)){ QtConcurrent::run(this, &Browser::loadItem, dir, this ); } } void Browser::futureFinished(QString name, QImage icon){ //Note: this will be called once for every item that loads - QIcon ico; - //LFileInfo info(name); - LFileInfo *info = new LFileInfo(name); - if(!icon.isNull() && showThumbs){ - //qDebug() << " -- Data:"; - QPixmap pix = QPixmap::fromImage(icon); - ico.addPixmap(pix); - //}else if(info->isDir()){ - //qDebug() << " -- Folder:"; - //ico = loadIcon("folder"); - } - if(ico.isNull()){ - //qDebug() << " -- MimeType:" << info.fileName() << info.mimetype(); - ico = loadIcon(info->iconfile()); - } - this->emit itemDataAvailable( ico, info); - //qDebug() << " -- done:" << name; + //Haven't added the extra files in a directory fix, but that should be easy to do + //Try to load a file with multiple videos and lots of other stuff before any other directory. It crashes for some reason + //qDebug() << name << "here"; + QIcon *ico = new QIcon(); + LFileInfo *info = new LFileInfo(name); + if(!icon.isNull() && showThumbs){ + QPixmap pix = QPixmap::fromImage(icon); + ico->addPixmap(pix); + /*}else if(info->isVideo() && showThumbs) { + if(videoImages.find(name) == videoImages.end()) { + LVideoLabel *mediaLabel = new LVideoLabel(name); + while(mediaLabel->pixmap()->isNull()) { QCoreApplication::processEvents(QEventLoop::AllEvents, 50); } + ico->addPixmap(*(mediaLabel->pixmap())); + videoImages.insert(name, *mediaLabel->pixmap()); + delete mediaLabel; + }else{ + ico->addPixmap(videoImages[name]); + }*/ + }else{ + ico = loadIcon(info->iconfile()); + } + this->emit itemDataAvailable( *ico, info); + //qDebug() << " -- done:" << name; } // PUBLIC SLOTS -void Browser::loadDirectory(QString dir){ +void Browser::loadDirectory(QString dir, bool force){ + if(force){ lastcheck = QDateTime(); } //reset check time to force reloads if(dir.isEmpty()){ dir = currentDir; } //reload current directory if(dir.isEmpty()){ return; } //nothing to do - nothing previously loaded //qDebug() << "Load Directory" << dir; + bool dirupdate = true; if(currentDir != dir){ //let the main widget know to clear all current items (completely different dir) + //videoImages.clear(); oldFiles.clear(); + lastcheck = QDateTime(); //null time emit clearItems(); + dirupdate = false; } currentDir = dir; //save this for later + QDateTime now = QDateTime::currentDateTime(); //clean up the watcher first QStringList watched; watched << watcher->files() << watcher->directories(); if(!watched.isEmpty()){ watcher->removePaths(watched); } @@ -134,15 +152,18 @@ void Browser::loadDirectory(QString dir){ QStringList files; if(showHidden){ files = directory.entryList( QDir::Dirs | QDir::Files | QDir::Hidden | QDir::NoDotAndDotDot, QDir::NoSort); } else{ files = directory.entryList( QDir::Dirs | QDir::Files | QDir::NoDotAndDotDot, QDir::NoSort); } - emit itemsLoading(files.length()); + if(dirupdate){ emit itemsLoading(files.length()); } for(int i=0; i<files.length(); i++){ watcher->addPath(directory.absoluteFilePath(files[i])); - //qDebug() << "Future Starting:" << files[i]; QString path = directory.absoluteFilePath(files[i]); - if(old.contains(path)){ old.removeAll(path); } oldFiles << path; //add to list for next time + bool reloaditem = !dirupdate || lastcheck.isNull() || (QFileInfo(path).lastModified() > lastcheck || QFileInfo(path).created() > lastcheck); + //if(dirupdate){ qDebug() << "Reload Item:" << reloaditem << path.section("/",-1); } + //reloaditem = true; + if(old.contains(path)){ old.removeAll(path); } //still in existance //if(showThumbs && imageFormats.contains(path.section(".",-1).toLower())){ - QtConcurrent::run(this, &Browser::loadItem, path, this); + //qDebug() << "Future Starting:" << files[i]; + if(reloaditem){ QtConcurrent::run(this, &Browser::loadItem, path, this); } /*}else{ //No special icon loading - just skip the file read step futureFinished(path, QImage()); //loadItem(path, this); @@ -158,4 +179,5 @@ void Browser::loadDirectory(QString dir){ }else{ emit itemsLoading(0); //nothing to load } + lastcheck = now; // save this for later } diff --git a/src-qt5/desktop-utils/lumina-fm/Browser.h b/src-qt5/desktop-utils/lumina-fm/Browser.h index 94f6ba3f..0f4a0abe 100644 --- a/src-qt5/desktop-utils/lumina-fm/Browser.h +++ b/src-qt5/desktop-utils/lumina-fm/Browser.h @@ -15,6 +15,9 @@ #include <QIcon> //#include <QFutureWatcher> +#include <QMediaPlayer> +#include <LVideoSurface.h> +#include <LVideoLabel.h> #include <LuminaXDG.h> /*class FileItem{ public: @@ -42,22 +45,23 @@ public: private: QString currentDir; + QDateTime lastcheck; QFileSystemWatcher *watcher; + QMap<QString, QPixmap> videoImages; bool showHidden, showThumbs; - QStringList imageFormats, oldFiles; + QStringList imageFormats, videoFormats, oldFiles; QHash<QString, QIcon> mimeIcons; //cache for quickly re-using QIcons void loadItem(QString info, Browser *obj); //this is the main loader class - multiple instances each run in a separate thread - QIcon loadIcon(QString icon); //simplification for using/populating the mimIcons cache + QIcon* loadIcon(QString icon); //simplification for using/populating the mimIcons cache private slots: void fileChanged(QString); //tied into the watcher - for file change notifications void dirChanged(QString); // tied into the watcher - for new/removed files in the current dir - void futureFinished(QString, QImage); public slots: - void loadDirectory(QString dir = ""); + void loadDirectory(QString dir = "", bool force = false); signals: //Main Signals diff --git a/src-qt5/desktop-utils/lumina-fm/BrowserModel.cpp b/src-qt5/desktop-utils/lumina-fm/BrowserModel.cpp new file mode 100644 index 00000000..d79da006 --- /dev/null +++ b/src-qt5/desktop-utils/lumina-fm/BrowserModel.cpp @@ -0,0 +1,208 @@ +//=========================================== +// Lumina Desktop source code +// Copyright (c) 2017, Ken Moore & JT Pennington +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#include "BrowserModel.h" + +BrowserModel::BrowserModel(QObject *parent){ + +} + +BrowserModel::~BrowserModel(){ + +} + +//Virtual overrides +QModelIndex BrowserModel::index(int row, int column, const QModelIndex &parent) const{ + +} + +QModelIndex BrowserModel::parent(const QModelIndex &index) const{ + +} + +// item management +int BrowserModel::rowCount(const QModelIndex &parent) const{ + +} + +bool BrowserModel::insertRows(int row, int count, const QModelIndex &parent){ + +} + +bool BrowserModel::removeRow(int row, const QModelIndex &parent){ + +} + +bool BrowserModel::removeRows(int row, int count, const QModelIndex &parent){ + +} + +int BrowserModel::columnCount(const QModelIndex &parent) const{ + +} + +bool BrowserModel::insertColumns(int column, int count, const QModelIndex &parent){ + +} + +bool BrowserModel::removeColumn(int column, const QModelIndex &parent){ + +} + +bool BrowserModel::removeColumns(int column, int count, const QModelIndex &parent){ + +} + + +//bool BrowserModel::hasChildren(const QModelIndex &parent) const{ + +} + + +// data functions +Qt::ItemFlags BrowserModel::flags(const QModelIndex &index) const{ + +} + +QVariant BrowserModel::data(const QModelIndex &index, int role) const{ + QFileInfo *info = indexToInfo(index); + switch(role){ + case Qt::DisplayRole: + if(index.column()==0){ return QVariant(info->fileName()); } + else if(index.column()==1){ return QVariant(info->fileSize()); } + else if(index.column()==2){ return QVariant(info->mimetype()); } + else if(index.column()==3){ return QVariant(info->lastModified()->toString(Qt::DefaultLocaleShortDate)); } + else if(index.column()==4){ return QVariant(info->created()->toString(Qt::DefaultLocaleShortDate)); } + case Qt::ToolTipRole: + return QVariant(info->absoluteFilePath()); + case Qt::StatusTipRole: + return QVariant(info->absoluteFilePath()); + case Qt::SizeHintRole; + return QVariant(QSize(100,14)); + case Qt::DecorationRole: + return QVariant(LXDG::findIcon(info->iconFile(), "unknown")); + } + return QVariant(); +} + +QVariant BrowserModel::headerData(int section, Qt::Orientation orientation, int role) const{ + if(role == Qt::DisplayRole){ + if(orientation == Qt::Horizontal){ + switch(section){ + case 0: + return QVariant(tr("File Name")); + case 1: + return QVariant("Size"); + case 2: + return QVariant("Type"); + case 3: + return QVariant("Date Modified"); + case 4: + return QVariant("Date Created"); + } + } + } + case Qt::DisplayRole: + return QVariant(tr("File Name"); + /*case Qt::ToolTipRole: + return QVariant("ToolTip"); + case Qt::StatusTipRole: + return QVariant("Status Tip"); + case Qt::SizeHintRole; + return QVariant(QSize(100,14));*/ + case Qt::DecorationRole: + return QVariant("Icon")); + } + return QVariant(); +} + +// data modification functions +bool BrowserModel::setData(const QModelIndex &index, const QVariant &value, int role){ + +} + +bool BrowserModel::setHeaderData(int section, Qt::Orientation orientation, const QVariant &value, int role){ + +} + + +// drag and drop +//QMimeData* BrowserModel::mimeData(const QModelIndexList &indexes) const{ + +} + +//QStringList BrowserModel::mimeTypes() const{ + +} + +//bool BrowserModel::setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles){ + +} + +//Qt::DropActions BrowserModel::supportedDropActions() const{ + +} + +//bool BrowserModel::dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent){ + +} + +//Special Functions (non virtual replacements) +LFileInfo* BrowserModel::fileInfo(QString name){ + +} + +QString BrowserModel::currentDirectory(){ + return cDir; +} + + +// ============== +// PUBLIC SLOTS +// ============== +void BrowserModel::loadDirectory(QString dir){ + + +} + +void BrowserModel::loadItem(QString itempath){ + LFileInfo *it = new LFileInfo(itempath); + //Determine the row/column that it needs to be + int row, column; + row = 0; + //Now create the index + for(int i=0; i<5; i++){ + QModelIndex index = createIndex(row, i, it); + } +} + + +// ============= +// PRIVATE +// ============= +/*QString BrowserModel::findInHash(QString path){ + QStringList keys = HASH.keys(); + for(int i=0; i<keys.length(); i++){ + if(HASH[keys[i]]->filePath() == path){ return keys[i]; } + } + return ""; +} + +QString BrowserModel::findInHash(QModelIndex index){ + QString id = QString::number(index.row())+"/"+QString::number(index.column()); + if(HASH.contains(id)){ return id; } + return ""; +} + +LFileInfo* BrowserModel::indexToInfo(QString path){ + QString id = findInHash(path); + if(id.isEmpty()){ return 0;} + return HASH[id]; +}*/ + +LFileInfo* BrowserModel::indexToInfo(QModelIndex index){ + return static_cast<LFileInfo*>(index.internalPointer()); +} diff --git a/src-qt5/desktop-utils/lumina-fm/BrowserModel.h b/src-qt5/desktop-utils/lumina-fm/BrowserModel.h new file mode 100644 index 00000000..b30e117e --- /dev/null +++ b/src-qt5/desktop-utils/lumina-fm/BrowserModel.h @@ -0,0 +1,87 @@ +//=========================================== +// Lumina Desktop source code +// Copyright (c) 2017, Ken Moore & JT Pennington +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +// This is the main browsing backend for the file manager +//=========================================== +#ifndef _LUMINA_FM_BROWSER_MODEL_BACKEND_H +#define _LUMINA_FM_BROWSER_MODEL_BACKEND_H + +#include <QAbstractItemModel> +#include <QModelIndex> +#include <QMimeData> +#include <QMap> +#include <QVariant> +#include <QHash> + +#include <LuminaXDG.h> + +class BrowserModel : public QAbstractItemModel { + Q_OBJECT +public: + BrowserModel(QObject *parent = 0); + ~BrowserModel(); + + //Virtual overrides + QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const; + QModelIndex parent(const QModelIndex &index) const; + + // item management + int rowCount(const QModelIndex &parent = QModelIndex()) const; + bool insertRows(int row, int count, const QModelIndex &parent = QModelIndex()); + bool removeRow(int row, const QModelIndex &parent = QModelIndex()); + bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()); + + int columnCount(const QModelIndex &parent = QModelIndex()) const; + bool insertColumns(int column, int count, const QModelIndex &parent = QModelIndex()); + bool removeColumn(int column, const QModelIndex &parent = QModelIndex()); + bool removeColumns(int column, int count, const QModelIndex &parent = QModelIndex()); + + //bool hasChildren(const QModelIndex &parent = QModelIndex()) const; + + // data functions + Qt::ItemFlags flags(const QModelIndex &index) const; + QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; + QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const; + // data modification functions + bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole); + bool setHeaderData(int section, Qt::Orientation orientation, const QVariant &value, int role = Qt::EditRole); + + // drag and drop + //QMimeData* mimeData(const QModelIndexList &indexes) const; + //QStringList mimeTypes() const; + //bool setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles); + //Qt::DropActions supportedDropActions() const; + //bool dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent); + + //Special Functions (non virtual replacements) + LFileInfo* fileInfo(QString name); + QString currentDirectory(); + + void setShowHidden(bool showHidden); + bool showHidden + +public slots: + void loadDirectory(QString dir=""); + void loadItem(QString item); + +private: + QHash<quintptr, QModelIndex> HASH; //QString: "row/column" + QString cDir; + //simplification functions + /*QString findInHash(QString path); + QString findInHash(QModelIndex index); + LFileInfo* indexToInfo(QString path);*/ + LFileInfo* indexToInfo(QModelIndex index); + +private slots: + +protected: + +signals: + +}; + +#endif diff --git a/src-qt5/desktop-utils/lumina-fm/BrowserWidget.cpp b/src-qt5/desktop-utils/lumina-fm/BrowserWidget.cpp index d5f219bb..87a3a6d7 100644 --- a/src-qt5/desktop-utils/lumina-fm/BrowserWidget.cpp +++ b/src-qt5/desktop-utils/lumina-fm/BrowserWidget.cpp @@ -24,7 +24,7 @@ BrowserWidget::BrowserWidget(QString objID, QWidget *parent) : QWidget(parent){ connect(BROWSER, SIGNAL(itemRemoved(QString)), this, SLOT(itemRemoved(QString)) ); connect(BROWSER, SIGNAL(itemDataAvailable(QIcon, LFileInfo*)), this, SLOT(itemDataAvailable(QIcon, LFileInfo*)) ); connect(BROWSER, SIGNAL(itemsLoading(int)), this, SLOT(itemsLoading(int)) ); - connect(this, SIGNAL(dirChange(QString)), BROWSER, SLOT(loadDirectory(QString)) ); + connect(this, SIGNAL(dirChange(QString, bool)), BROWSER, SLOT(loadDirectory(QString, bool)) ); listWidget = 0; treeWidget = 0; readDateFormat(); @@ -38,6 +38,7 @@ BrowserWidget::~BrowserWidget(){ } void BrowserWidget::changeDirectory(QString dir){ + videoMap.clear(); if(BROWSER->currentDirectory()==dir){ return; } //already on this directory //qDebug() << "Change Directory:" << dir << historyList; @@ -50,7 +51,7 @@ void BrowserWidget::changeDirectory(QString dir){ if( (historyList.isEmpty() || historyList.last()!=cleaned) && !cleaned.isEmpty() ){ historyList << cleaned; } } //qDebug() << "History:" << historyList; - emit dirChange(dir); + emit dirChange(dir, false); } void BrowserWidget::showDetails(bool show){ @@ -81,7 +82,8 @@ void BrowserWidget::showDetails(bool show){ connect(treeWidget, SIGNAL(GotFocus()), this, SLOT(selectionChanged()) ); retranslate(); treeWidget->sortItems(0, Qt::AscendingOrder); - if(!BROWSER->currentDirectory().isEmpty()){ emit dirChange(""); } + treeWidget->setColumnWidth(0, treeWidget->fontMetrics().width("W")*20); + if(!BROWSER->currentDirectory().isEmpty()){ emit dirChange("", true); } }else if(!show && listWidget==0){ listWidget = new DDListWidget(this); listWidget->setContextMenuPolicy(Qt::CustomContextMenu); @@ -91,8 +93,10 @@ void BrowserWidget::showDetails(bool show){ connect(listWidget, SIGNAL(customContextMenuRequested(const QPoint&)), this, SIGNAL(contextMenuRequested()) ); connect(listWidget, SIGNAL(DataDropped(QString, QStringList)), this, SIGNAL(DataDropped(QString, QStringList)) ); connect(listWidget, SIGNAL(GotFocus()), this, SLOT(selectionChanged()) ); - if(!BROWSER->currentDirectory().isEmpty()){ emit dirChange(""); } + if(!BROWSER->currentDirectory().isEmpty()){ emit dirChange("",true); } } + if(listWidget!=0){ listWidget->setWhatsThis( BROWSER->currentDirectory() ); } + if(treeWidget!=0){ treeWidget->setWhatsThis(BROWSER->currentDirectory() ); } //qDebug() << " Done making widget"; } @@ -109,6 +113,18 @@ bool BrowserWidget::hasHiddenFiles(){ } void BrowserWidget::showThumbnails(bool show){ + //qDebug() << show << videoMap.size(); + for(QString file : videoMap.uniqueKeys()) { + QTreeWidgetItem *it = videoMap[file].first; + LVideoWidget *widget = videoMap[file].second; + if(show) { + widget->enableIcons(); + treeWidget->setItemWidget(it, 0, widget); + }else{ + widget->disableIcons(); + treeWidget->setItemWidget(it, 0, widget); + } + } BROWSER->showThumbnails(show); } @@ -125,9 +141,15 @@ void BrowserWidget::setThumbnailSize(int px){ larger = treeWidget->iconSize().height() < px; treeWidget->setIconSize(QSize(px,px)); } + for(QString file : videoMap.uniqueKeys()) { + QTreeWidgetItem *it = videoMap[file].first; + LVideoWidget *widget = videoMap[file].second; + widget->setIconSize(treeWidget->iconSize()); + treeWidget->setItemWidget(it, 0, widget); + } //qDebug() << "Changing Icon Size:" << px << larger; if(BROWSER->currentDirectory().isEmpty() || !larger ){ return; } //don't need to reload icons unless the new size is larger - emit dirChange(""); + emit dirChange("", larger); } int BrowserWidget::thumbnailSize(){ @@ -271,6 +293,8 @@ void BrowserWidget::itemRemoved(QString item){ } void BrowserWidget::itemDataAvailable(QIcon ico, LFileInfo *info){ + if(listWidget!=0){ listWidget->setWhatsThis( BROWSER->currentDirectory() ); } + if(treeWidget!=0){ treeWidget->setWhatsThis(BROWSER->currentDirectory() ); } //qDebug() << "Item Data Available:" << info->fileName(); int num = 0; if(listWidget!=0){ @@ -326,15 +350,28 @@ void BrowserWidget::itemDataAvailable(QIcon ico, LFileInfo *info){ treeWidget->addTopLevelItem(it); } }else{ - if( ! treeWidget->findItems(info->fileName(), Qt::MatchExactly, 0).isEmpty() ){ it = treeWidget->findItems(info->fileName(), Qt::MatchExactly, 0).first(); } - else{ + if( ! treeWidget->findItems(info->fileName(), Qt::MatchExactly, 0).isEmpty() ) { + it = treeWidget->findItems(info->fileName(), Qt::MatchExactly, 0).first(); + }else if(info->isVideo() && videoMap.find(info->absoluteFilePath()) == videoMap.end()) { + it = new CQTreeWidgetItem(treeWidget); + treeWidget->addTopLevelItem(it); + LVideoWidget *widget = new LVideoWidget(info->absoluteFilePath(), treeWidget->iconSize(), hasThumbnails(), treeWidget); + videoMap.insert(info->absoluteFilePath(), QPair<QTreeWidgetItem*,LVideoWidget*>(it, widget)); + treeWidget->setItemWidget(it, 0, widget); + }else if(info->isVideo()) { + it = videoMap[info->absoluteFilePath()].first; + LVideoWidget *widget = videoMap[info->absoluteFilePath()].second; + widget->setIconSize(treeWidget->iconSize()); + treeWidget->setItemWidget(it, 0, widget); + }else{ it = new CQTreeWidgetItem(treeWidget); - it->setText(0, info->fileName() ); //name (0) treeWidget->addTopLevelItem(it); + it->setText(0, info->fileName() ); //name (0) } } //Now set/update all the data - it->setIcon(0, ico); + if(!info->isVideo()) + it->setIcon(0, ico); it->setText(1, info->isDir() ? "" : LUtils::BytesToDisplaySize(info->size()) ); //size (1) it->setText(2, info->mimetype() ); //type (2) it->setText(3, DTtoString(info->lastModified() )); //modification date (3) @@ -352,7 +389,9 @@ void BrowserWidget::itemDataAvailable(QIcon ico, LFileInfo *info){ }else{ if(freshload && treeWidget!=0){ //qDebug() << "Resize Tree Widget Contents"; - for(int i=0; i<treeWidget->columnCount(); i++){ treeWidget->resizeColumnToContents(i); } + //for(int i=treeWidget->columnCount()-1; i>0; i--){ treeWidget->resizeColumnToContents(i); } + treeWidget->resizeColumnToContents(1); + //treeWidget->resizeColumnToContents(0); } freshload = false; //any further changes are updates - not a fresh load of a dir //Done loading items diff --git a/src-qt5/desktop-utils/lumina-fm/BrowserWidget.h b/src-qt5/desktop-utils/lumina-fm/BrowserWidget.h index fafb3746..b17ad588 100644 --- a/src-qt5/desktop-utils/lumina-fm/BrowserWidget.h +++ b/src-qt5/desktop-utils/lumina-fm/BrowserWidget.h @@ -12,6 +12,8 @@ #include <QWidget> #include <QThread> +#include <LVideoWidget.h> + #include "Browser.h" #include "widgets/DDListWidgets.h" @@ -23,6 +25,7 @@ private: int numItems; //used for checking if all the items have loaded yet QString ID, statustip; QStringList date_format, historyList; + QMap<QString,QPair<QTreeWidgetItem*, LVideoWidget*>> videoMap; bool freshload; //The drag and drop brower widgets @@ -86,9 +89,10 @@ signals: void contextMenuRequested(); void DataDropped(QString, QStringList); void hasFocus(QString); //ID output + void stopLoop(); //Internal signal - void dirChange(QString); //current dir path + void dirChange(QString, bool); //current dir path, force }; #endif diff --git a/src-qt5/desktop-utils/lumina-fm/MainUI.cpp b/src-qt5/desktop-utils/lumina-fm/MainUI.cpp index abb99975..9ce7b69e 100644 --- a/src-qt5/desktop-utils/lumina-fm/MainUI.cpp +++ b/src-qt5/desktop-utils/lumina-fm/MainUI.cpp @@ -14,8 +14,10 @@ #include <LUtils.h> #include <LDesktopUtils.h> +#include <ExternalProcess.h> #define DEBUG 0 +bool rootmode = false; MainUI::MainUI() : QMainWindow(), ui(new Ui::MainUI){ //for Signal/slot we must register the Typedef of QFileInfoList @@ -25,6 +27,8 @@ MainUI::MainUI() : QMainWindow(), ui(new Ui::MainUI){ //qRegisterMetaType< QVector<int> >("QVector<int>"); //qRegisterMetaType< QList<QPersistentModelIndex> >("QList<QPersistentModelIndex>"); waitingToClose = false; + //put if statement here to check if running as root + rootmode = (getuid()==0); ui->setupUi(this); if(DEBUG){ qDebug() << "Initilization:"; } @@ -112,6 +116,7 @@ QSize orig = settings->value("preferences/MainWindowSize", QSize()).toSize(); TRAY = new TrayUI(this); connect(TRAY, SIGNAL(JobsFinished()), this, SLOT(TrayJobsFinished()) ); if(DEBUG){ qDebug() << " - Done with init"; } + ui->actionOpen_as_Root->setVisible(LUtils::isValidBinary("qsudo")); } MainUI::~MainUI(){ @@ -344,7 +349,7 @@ void MainUI::RebuildDeviceMenu(){ QStringList devs = LOS::ExternalDevicePaths(); //Output Format: <type>::::<filesystem>::::<path> (6/24/14 - version 0.4.0 ) // <type> = [USB, HDRIVE, SDCARD, DVD, LVM, UNKNOWN] - qDebug() << "Externally-mounted devices:" << devs; + //qDebug() << "Externally-mounted devices:" << devs; //Now add them to the menu appropriately for(int i=0; i<devs.length(); i++){ //Skip hidden mount points (usually only for system usage - not user browsing) @@ -356,6 +361,7 @@ void MainUI::RebuildDeviceMenu(){ if(path == "/"){ label = tr("Root"); } else{ label = path.section("/",-1).simplified(); } if(label.startsWith(".") ){ continue; } //don't show hidden mountpoint (not usually user-browsable) + if(label.endsWith(".desktop")){ label = label.section(".desktop",0,-2); } //chop the shortcut suffix off the end //Create entry for this device if( !fs.simplified().isEmpty()){ //Add filesystem type to the label @@ -502,13 +508,29 @@ void MainUI::goToDevice(QAction *act){ if(act==ui->actionScan){ RebuildDeviceMenu(); }else{ + QString action = act->whatsThis(); + if(action.endsWith(".desktop")){ + //Find the actual action/directory within this shortcut + XDGDesktop xdg(action); + if(xdg.type==XDGDesktop::DIR){ + action = xdg.path; //use the new path + }else{ + //Need to run the full open routine on this shortcut + QProcess::startDetached("lumina-open", QStringList() << action); + return; + } + }else if( !QFileInfo(action).isDir() ){ + //Need to run the full open routine on this file since it is not a directory + QProcess::startDetached("lumina-open", QStringList() << action); + return; + } DirWidget *dir = FindActiveBrowser(); if(dir!=0){ - dir->ChangeDir(act->whatsThis()); + dir->ChangeDir(action); return; } //If no current dir could be found - open a new tab/column - OpenDirs(QStringList() << act->whatsThis() ); + OpenDirs(QStringList() << action ); } } @@ -962,3 +984,8 @@ void MainUI::closeEvent(QCloseEvent *ev){ } QMainWindow::closeEvent(ev); //continue normal close routine } + +void MainUI::on_actionOpen_as_Root_triggered() +{ + ExternalProcess::launch("qsudo lumina-fm"); +} diff --git a/src-qt5/desktop-utils/lumina-fm/MainUI.h b/src-qt5/desktop-utils/lumina-fm/MainUI.h index 492ba533..04b80f28 100644 --- a/src-qt5/desktop-utils/lumina-fm/MainUI.h +++ b/src-qt5/desktop-utils/lumina-fm/MainUI.h @@ -67,6 +67,7 @@ class MainUI : public QMainWindow{ public: MainUI(); ~MainUI(); + //bool rootmode; public slots: void OpenDirs(QStringList); //also called from the main.cpp after initialization @@ -176,6 +177,8 @@ private slots: void TrayJobsFinished(); + void on_actionOpen_as_Root_triggered(); + signals: void Si_AdaptStatusBar(QFileInfoList fileList, QString path, QString messageFolders, QString messageFiles); diff --git a/src-qt5/desktop-utils/lumina-fm/MainUI.ui b/src-qt5/desktop-utils/lumina-fm/MainUI.ui index 744f31a3..8a635199 100644 --- a/src-qt5/desktop-utils/lumina-fm/MainUI.ui +++ b/src-qt5/desktop-utils/lumina-fm/MainUI.ui @@ -119,6 +119,8 @@ <addaction name="separator"/> <addaction name="actionClose_Browser"/> <addaction name="separator"/> + <addaction name="actionOpen_as_Root"/> + <addaction name="separator"/> <addaction name="actionClose"/> </widget> <widget class="QMenu" name="menuView"> @@ -434,6 +436,11 @@ <string>Ctrl+P</string> </property> </action> + <action name="actionOpen_as_Root"> + <property name="text"> + <string>Open as Root</string> + </property> + </action> </widget> <resources/> <connections/> diff --git a/src-qt5/desktop-utils/lumina-fm/VideoItemWidget.h b/src-qt5/desktop-utils/lumina-fm/VideoItemWidget.h new file mode 100644 index 00000000..894394d4 --- /dev/null +++ b/src-qt5/desktop-utils/lumina-fm/VideoItemWidget.h @@ -0,0 +1,144 @@ +//=========================================== +// Lumina-DE source code +// Copyright (c) 2016, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#ifndef _LUMINA_VIDEO_ITEM_WIDGET_H +#define _LUMINA_VIDEO_ITEM_WIDGET_H + +#include <QWidget> +#include <QVideoWidget> +#include <QMediaPlayer> +#include <QString> +#include <QObject> +#include <QLabel> +#include <QTimer> +#include <QHBoxLayout> +#include <QResizeEvent> + +#include <LVideoSurface.h> + +class RolloverVideoWidget : public QVideoWidget{ + Q_OBJECT +public: + RolloverVideoWidget(QWidget *parent = 0) : QVideoWidget(parent){ + this->setMouseTracking(true); + } +signals: + void OverWidget(); + void NotOverWidget(); + +protected: + /*void mouseMoveEvent(QMouseEvent *ev){ + QWidget::mouseMoveEvent(ev); + qDebug() << "Got video rollover"; + emit OverWidget(); + }*/ + void enterEvent(QEvent *ev){ + QWidget::enterEvent(ev); + qDebug() << "Got video enter"; + emit OverWidget(); + } + void leaveEvent(QEvent *ev){ + QWidget::leaveEvent(ev); + if(!this->underMouse()){ + qDebug() << "Got video leave"; + emit NotOverWidget(); + } + } +}; + +class VideoItemWidget : public QWidget{ + Q_OBJECT +private: + QLabel *textLabel; + QMediaPlayer *mplayer; + LVideoSurface *vwidget; + QString file, text; + QSize fixedsize; + +public: + VideoItemWidget(QString filepath, QWidget *parent = 0) : QWidget(parent){ + file = filepath; + text = filepath.section("/",-1); + textLabel = 0; + mplayer = 0; + vwidget = 0; + this->setMouseTracking(true); + QTimer::singleShot(5, this, SLOT(setupPlayer()) ); //make sure this creation routine is thread-safe + } + ~VideoItemWidget(){ mplayer->stop(); } + + //Optional overloads - it will try to automatically adjust as needed + void setText(QString txt){ + text = txt; + if(textLabel!=0){ + textLabel->setText(txt); + textLabel->setVisible( !txt.isEmpty() ); + } + } + void setIconSize(QSize sz){ + fixedsize = sz; + if(vwidget!=0 && fixedsize.isValid()){ vwidget->setFixedSize(sz); } + } + +private slots: + void setupPlayer(){ + textLabel = new QLabel(this); + vwidget = new LVideoSurface(this); //RolloverVideoWidget(this); + vwidget->setAspectRatioMode(Qt::IgnoreAspectRatio); + if(fixedsize.isValid()){ vwidget->setFixedSize(fixedsize); } + else{ vwidget->setMinimumSize(QSize(16,16)); } + mplayer = new QMediaPlayer(this, QMediaPlayer::VideoSurface); + mplayer->setVideoOutput(vwidget); + mplayer->setPlaybackRate(3); // 3x playback speed + mplayer->setMuted(true); + QHBoxLayout *tmpL = new QHBoxLayout(this); + tmpL->setAlignment(Qt::AlignLeft | Qt::AlignCenter); + tmpL->addWidget(vwidget); + tmpL->addWidget(textLabel); + tmpL->setStretchFactor(textLabel, 1); //make sure this always occupies all extra space + //connect(mplayer, SIGNAL(durationChanged(qint64)), this, SLOT(durationChanged(qint64)) ); + connect(mplayer, SIGNAL(durationChanged(qint64)), this, SLOT(stopVideo()) ); + //connect(vwidget, SIGNAL(OverWidget()), this, SLOT(startVideo()) ); + //connect(vwidget, SIGNAL(NotOverWidget()), this, SLOT(stopVideo()) ); + //Now load the file + textLabel->setText(text); + mplayer->setMedia(QUrl::fromLocalFile(file) ); + mplayer->play(); + } + void durationChanged(qint64 max){ + qDebug() << "Got Duration Changed:" << max; + mplayer->setPosition( qRound(max/2.0)); + } + + void startVideo(){ + if(mplayer==0){ return; } + if(mplayer->state()!=QMediaPlayer::PlayingState){ + qDebug() << "Start Video"; + mplayer->setPosition(0); + mplayer->play(); + } + } + + void stopVideo(){ + if(mplayer==0){ return; } + if(mplayer->state()==QMediaPlayer::PlayingState){ + qDebug() << "Stop Video"; + mplayer->pause(); + mplayer->setPosition( qRound(mplayer->duration()/2.0) ); + } + } + +protected: + void resizeEvent(QResizeEvent *ev){ + if(vwidget!=0 && !fixedsize.isValid()){ vwidget->setFixedSize( QSize(ev->size().height(), ev->size().height()) ); } + } + /*void mouseMoveEvent(QMouseEvent *ev){ + QWidget::mouseMoveEvent(ev); + stopVideo(); //not over the video widget any more + }*/ +}; + +#endif diff --git a/src-qt5/desktop-utils/lumina-fm/lumina-fm.pro b/src-qt5/desktop-utils/lumina-fm/lumina-fm.pro index 6c340e14..e27dad25 100644 --- a/src-qt5/desktop-utils/lumina-fm/lumina-fm.pro +++ b/src-qt5/desktop-utils/lumina-fm/lumina-fm.pro @@ -15,6 +15,8 @@ include(../../core/libLumina/LuminaXDG.pri) include(../../core/libLumina/LuminaSingleApplication.pri) include(../../core/libLumina/LuminaThemes.pri) include(../../core/libLumina/ExternalProcess.pri) +#include(../../core/libLumina/LVideoSurface.pri) +include(../../core/libLumina/LVideoLabel.pri) SOURCES += main.cpp \ MainUI.cpp \ diff --git a/src-qt5/desktop-utils/lumina-fm/widgets/DDListWidgets.h b/src-qt5/desktop-utils/lumina-fm/widgets/DDListWidgets.h index 254362fd..7e4b1f22 100644 --- a/src-qt5/desktop-utils/lumina-fm/widgets/DDListWidgets.h +++ b/src-qt5/desktop-utils/lumina-fm/widgets/DDListWidgets.h @@ -23,6 +23,7 @@ #include <QMouseEvent> #include <QUrl> #include <QDir> +#include <QApplication> #include <LUtils.h> @@ -63,8 +64,8 @@ protected: QList<QListWidgetItem*> items = this->selectedItems(); if(items.length()<1){ return; } QList<QUrl> urilist; - for(int i=0; i<items.length(); i++){ - urilist << QUrl::fromLocalFile(items[i]->whatsThis()); + for(int i=0; i<items.length(); i++){ + urilist << QUrl::fromLocalFile(items[i]->whatsThis()); } //Create the mime data //qDebug() << "Start Drag:" << urilist; @@ -88,7 +89,7 @@ protected: ev->ignore(); } } - + void dragMoveEvent(QDragMoveEvent *ev){ if(ev->mimeData()->hasUrls() && !this->whatsThis().isEmpty() ){ //Change the drop type depending on the data/dir @@ -104,7 +105,7 @@ protected: } this->update(); } - + void dropEvent(QDropEvent *ev){ if(this->whatsThis().isEmpty() || !ev->mimeData()->hasUrls() ){ ev->ignore(); return; } //not supported //qDebug() << "Drop Event:"; @@ -125,7 +126,7 @@ protected: foreach(const QUrl &url, ev->mimeData()->urls()){ const QString filepath = url.toLocalFile(); //If the target file is modifiable, assume a move - otherwise copy - if(QFileInfo(filepath).isWritable() && (filepath.startsWith(home) && dirpath.startsWith(home))){ + if(QFileInfo(filepath).isWritable() && (filepath.startsWith(home) && dirpath.startsWith(home))){ if(filepath.section("/",0,-2)!=dirpath){ files << "cut::::"+filepath; } //don't "cut" a file into the same dir }else{ files << "copy::::"+filepath; } } @@ -133,18 +134,18 @@ protected: if(!files.isEmpty()){ emit DataDropped( dirpath, files ); } this->setCursor(Qt::ArrowCursor); } - + void mouseReleaseEvent(QMouseEvent *ev){ if(ev->button() != Qt::RightButton && ev->button() != Qt::LeftButton){ ev->ignore(); } else{ QListWidget::mouseReleaseEvent(ev); } //pass it along to the widget } void mousePressEvent(QMouseEvent *ev){ if(ev->button() != Qt::RightButton && ev->button() != Qt::LeftButton){ ev->ignore(); } - else{ QListWidget::mousePressEvent(ev); } //pass it along to the widget + else{ QListWidget::mousePressEvent(ev); } //pass it along to the widget } /*void mouseMoveEvent(QMouseEvent *ev){ if(ev->button() != Qt::RightButton && ev->button() != Qt::LeftButton){ ev->ignore(); } - else{ QListWidget::mouseMoveEvent(ev); } //pass it along to the widget + else{ QListWidget::mouseMoveEvent(ev); } //pass it along to the widget }*/ }; @@ -158,6 +159,8 @@ public: //Drag and Drop Properties this->setDragDropMode(QAbstractItemView::DragDrop); this->setDefaultDropAction(Qt::MoveAction); //prevent any built-in Qt actions - the class handles it + this->setDropIndicatorShown(true); + this->setAcceptDrops(true); //Other custom properties necessary for the FM this->setFocusPolicy(Qt::StrongFocus); this->setContextMenuPolicy(Qt::CustomContextMenu); @@ -183,8 +186,8 @@ protected: QList<QTreeWidgetItem*> items = this->selectedItems(); if(items.length()<1){ return; } QList<QUrl> urilist; - for(int i=0; i<items.length(); i++){ - urilist << QUrl::fromLocalFile(items[i]->whatsThis(0)); + for(int i=0; i<items.length(); i++){ + urilist << QUrl::fromLocalFile(items[i]->whatsThis(0)); } //Create the mime data QMimeData *mime = new QMimeData; @@ -192,35 +195,43 @@ protected: //Create the drag structure QDrag *drag = new QDrag(this); drag->setMimeData(mime); - /*if(info.first().section("::::",0,0)=="cut"){ - drag->exec(act | Qt::MoveAction); - }else{*/ + //qDebug() << "Start Drag:" << urilist; drag->exec(act | Qt::CopyAction| Qt::MoveAction); - //} + //qDebug() << " - Drag Finished"; } void dragEnterEvent(QDragEnterEvent *ev){ - //qDebug() << "Drag Enter Event:" << ev->mimeData()->hasFormat(MIME); + //qDebug() << "Drag Enter Event:" << ev->mimeData()->hasUrls() << this->whatsThis(); + //QTreeWidget::dragEnterEvent(ev); if(ev->mimeData()->hasUrls() && !this->whatsThis().isEmpty() ){ ev->acceptProposedAction(); //allow this to be dropped here }else{ ev->ignore(); - } + } } - + void dragMoveEvent(QDragMoveEvent *ev){ + //qDebug() << "Drag Move Event:" << ev->mimeData()->hasUrls() << this->whatsThis(); + //QTreeWidget::dragMoveEvent(ev); if(ev->mimeData()->hasUrls() && !this->whatsThis().isEmpty() ){ //Change the drop type depending on the data/dir QString home = QDir::homePath(); - if( this->whatsThis().startsWith(home) ){ ev->setDropAction(Qt::MoveAction); } - else{ ev->setDropAction(Qt::CopyAction); } - ev->accept(); //allow this to be dropped here + if( this->whatsThis().startsWith(home) ){ ev->setDropAction(Qt::MoveAction); this->setCursor(Qt::DragMoveCursor); } + else{ ev->setDropAction(Qt::CopyAction); this->setCursor(Qt::DragCopyCursor);} + ev->acceptProposedAction(); //allow this to be dropped here + //this->setAcceptDrops(true); }else{ + //this->setAcceptDrops(false); + this->setCursor(Qt::ForbiddenCursor); ev->ignore(); } + //this->setDropIndicatorShown(true); + //this->update(); + //QTreeWidget::dragMoveEvent(ev); } - + void dropEvent(QDropEvent *ev){ + //qDebug() << "Drop Event:" << ev->mimeData()->hasUrls() << this->whatsThis(); if(this->whatsThis().isEmpty() || !ev->mimeData()->hasUrls() ){ ev->ignore(); return; } //not supported ev->accept(); //handled here QString dirpath = this->whatsThis(); @@ -239,25 +250,25 @@ protected: foreach(const QUrl &url, ev->mimeData()->urls()){ const QString filepath = url.toLocalFile(); //If the target file is modifiable, assume a move - otherwise copy - if(QFileInfo(filepath).isWritable() && (filepath.startsWith(home) && dirpath.startsWith(home))){ + if(QFileInfo(filepath).isWritable() && (filepath.startsWith(home) && dirpath.startsWith(home))){ if(filepath.section("/",0,-2)!=dirpath){ files << "cut::::"+filepath; } //don't "cut" a file into the same dir }else{ files << "copy::::"+filepath; } } //qDebug() << "Drop Event:" << dirpath; emit DataDropped( dirpath, files ); } - + void mouseReleaseEvent(QMouseEvent *ev){ if(ev->button() != Qt::RightButton && ev->button() != Qt::LeftButton){ ev->ignore(); } else{ QTreeWidget::mouseReleaseEvent(ev); } //pass it along to the widget } void mousePressEvent(QMouseEvent *ev){ if(ev->button() != Qt::RightButton && ev->button() != Qt::LeftButton){ ev->ignore(); } - else{ QTreeWidget::mousePressEvent(ev); } //pass it along to the widget + else{ QTreeWidget::mousePressEvent(ev); } //pass it along to the widget } /*void mouseMoveEvent(QMouseEvent *ev){ if(ev->button() != Qt::RightButton && ev->button() != Qt::LeftButton){ ev->ignore(); } - else{ QTreeWidget::mouseMoveEvent(ev); } //pass it along to the widget + else{ QTreeWidget::mouseMoveEvent(ev); } //pass it along to the widget }*/ }; diff --git a/src-qt5/desktop-utils/lumina-fm/widgets/DirWidget2.cpp b/src-qt5/desktop-utils/lumina-fm/widgets/DirWidget2.cpp index 8273d09c..5c6f9ef5 100644 --- a/src-qt5/desktop-utils/lumina-fm/widgets/DirWidget2.cpp +++ b/src-qt5/desktop-utils/lumina-fm/widgets/DirWidget2.cpp @@ -27,9 +27,12 @@ #include "../ScrollDialog.h" #define DEBUG 0 +extern bool rootmode; DirWidget::DirWidget(QString objID, QSettings *settings, QWidget *parent) : QWidget(parent), ui(new Ui::DirWidget){ ui->setupUi(this); //load the designer file + ui->label_rootmode->setVisible(rootmode); + ID = objID; //Assemble the toolbar for the widget toolbar = new QToolBar(this); @@ -59,7 +62,7 @@ DirWidget::DirWidget(QString objID, QSettings *settings, QWidget *parent) : QWid RCBW = 0; //right column browser is unavailable initially BW = new BrowserWidget("", this); ui->browser_layout->addWidget(BW); - connect(BW, SIGNAL(dirChange(QString)), this, SLOT(currentDirectoryChanged()) ); + connect(BW, SIGNAL(dirChange(QString, bool)), this, SLOT(currentDirectoryChanged()) ); connect(BW, SIGNAL(itemsActivated()), this, SLOT(runFiles()) ); connect(BW, SIGNAL(DataDropped(QString, QStringList)), this, SIGNAL(PasteFiles(QString, QStringList)) ); connect(BW, SIGNAL(contextMenuRequested()), this, SLOT(OpenContextMenu()) ); @@ -281,10 +284,11 @@ void DirWidget::createMenus(){ else{ cOpenMenu->clear(); } cOpenMenu->setTitle(tr("Launch...")); cOpenMenu->setIcon( LXDG::findIcon("quickopen","") ); - cOpenMenu->addAction(LXDG::findIcon("utilities-terminal",""), tr("Terminal"), this, SLOT(openTerminal()), kOpTerm->key()); + cOpenMenu->addAction(LXDG::findIcon("utilities-terminal",""), tr("Open Current Dir in a Terminal"), this, SLOT(openTerminal()), kOpTerm->key()); cOpenMenu->addAction(LXDG::findIcon("media-slideshow",""), tr("SlideShow"), this, SLOT(openInSlideshow()), kOpSS->key()); cOpenMenu->addAction(LXDG::findIcon("media-playback-start-circled","media-playback-start"), tr("Multimedia Player"), this, SLOT(openMultimedia()), kOpMM->key()); -/* + if(LUtils::isValidBinary("qsudo")){ cOpenMenu->addAction(LXDG::findIcon("", ""), tr("Open Current Dir as Root"), this, SLOT(openRootFM())); + /* if(cFModMenu==0){ cFModMenu = new QMenu(this); } else{ cFModMenu->clear(); } cFModMenu->setTitle(tr("Modify Files...")); @@ -319,6 +323,8 @@ void DirWidget::createMenus(){ } +} + BrowserWidget* DirWidget::currentBrowser(){ if(cBID.isEmpty() || RCBW==0){ return BW; } else{ return RCBW; } @@ -471,7 +477,7 @@ void DirWidget::on_actionDualColumn_triggered(bool checked){ if(RCBW!=0){ return; } //nothing to do RCBW = new BrowserWidget("rc", this); ui->browser_layout->addWidget(RCBW); - connect(RCBW, SIGNAL(dirChange(QString)), this, SLOT(currentDirectoryChanged()) ); + connect(RCBW, SIGNAL(dirChange(QString, bool)), this, SLOT(currentDirectoryChanged()) ); connect(RCBW, SIGNAL(itemsActivated()), this, SLOT(runFiles()) ); connect(RCBW, SIGNAL(DataDropped(QString, QStringList)), this, SIGNAL(PasteFiles(QString, QStringList)) ); connect(RCBW, SIGNAL(contextMenuRequested()), this, SLOT(OpenContextMenu()) ); @@ -482,6 +488,7 @@ void DirWidget::on_actionDualColumn_triggered(bool checked){ RCBW->showDetails(BW->hasDetails()); RCBW->showHiddenFiles( BW->hasHiddenFiles()); RCBW->setThumbnailSize( BW->thumbnailSize()); + RCBW->showThumbnails( BW->hasThumbnails()); RCBW->changeDirectory( BW->currentDirectory()); } @@ -880,3 +887,9 @@ void DirWidget::mouseReleaseEvent(QMouseEvent *ev){ ev->ignore(); //not handled here } } + +void DirWidget::openRootFM(){ + rootfmdir = "qsudo lumina-fm -new-instance " + currentDir(); + qDebug() << "rootfmdir" << rootfmdir; + ExternalProcess::launch(rootfmdir); +} diff --git a/src-qt5/desktop-utils/lumina-fm/widgets/DirWidget2.h b/src-qt5/desktop-utils/lumina-fm/widgets/DirWidget2.h index 8dd367df..4377f92d 100644 --- a/src-qt5/desktop-utils/lumina-fm/widgets/DirWidget2.h +++ b/src-qt5/desktop-utils/lumina-fm/widgets/DirWidget2.h @@ -73,9 +73,9 @@ private: Ui::DirWidget *ui; BrowserWidget *BW, *RCBW; //Main BrowserWidget and right-column browser widget QString ID, cBID; //unique ID assigned by the parent, and currently active browser widget - QString normalbasedir, snapbasedir, snaprelpath; //for maintaining directory context while moving between snapshots + QString normalbasedir, snapbasedir, snaprelpath, rootfmdir; //for maintaining directory context while moving between snapshots QStringList snapshots, needThumbs, tmpSel; - QSettings *settings; + QSettings *settings; bool canmodify; //The Toolbar and associated items @@ -83,10 +83,10 @@ private: QLineEdit *line_dir; //The context menu and associated items - QMenu *contextMenu, *cNewMenu, *cOpenMenu, *cFModMenu, *cFViewMenu, *cOpenWithMenu; + QMenu *contextMenu, *cNewMenu, *cOpenMenu, *cFModMenu, *cFViewMenu, *cOpenWithMenu; //The keyboard shortcuts for context menu items - QShortcut *kZoomIn, *kZoomOut, *kNewFile, *kNewDir, *kNewXDG, *kCut, *kCopy, *kPaste, *kRename, \ + QShortcut *kZoomIn, *kZoomOut, *kNewFile, *kNewDir, *kNewXDG, *kCut, *kCopy, *kPaste, *kRename, \ *kFav, *kDel, *kOpSS, *kOpMM, *kOpTerm, *kExtract; //, *kArchive; //Functions for internal use @@ -129,6 +129,7 @@ private slots: void fileCheckSums(); void fileProperties(); void openTerminal(); + void openRootFM(); //Browser Functions diff --git a/src-qt5/desktop-utils/lumina-fm/widgets/DirWidget2.ui b/src-qt5/desktop-utils/lumina-fm/widgets/DirWidget2.ui index b1ba9d95..5f980c67 100644 --- a/src-qt5/desktop-utils/lumina-fm/widgets/DirWidget2.ui +++ b/src-qt5/desktop-utils/lumina-fm/widgets/DirWidget2.ui @@ -7,7 +7,7 @@ <x>0</x> <y>0</y> <width>400</width> - <height>350</height> + <height>389</height> </rect> </property> <property name="minimumSize"> @@ -19,7 +19,32 @@ <property name="windowTitle"> <string>Form</string> </property> - <layout class="QVBoxLayout" name="verticalLayout" stretch="0,0,1,0"> + <layout class="QVBoxLayout" name="verticalLayout" stretch="0,0,0,1,0"> + <item> + <widget class="QLabel" name="label_rootmode"> + <property name="font"> + <font> + <family>Droid Sans Mono</family> + <pointsize>16</pointsize> + <weight>75</weight> + <italic>false</italic> + <bold>true</bold> + </font> + </property> + <property name="frameShape"> + <enum>QFrame::Box</enum> + </property> + <property name="frameShadow"> + <enum>QFrame::Sunken</enum> + </property> + <property name="text"> + <string> * - FILE MANAGER RUNNING AS ROOT- * </string> + </property> + <property name="alignment"> + <set>Qt::AlignCenter</set> + </property> + </widget> + </item> <item> <layout class="QHBoxLayout" name="toolbar_layout"/> </item> diff --git a/src-qt5/desktop-utils/lumina-fm/widgets/fmwebdav.cpp b/src-qt5/desktop-utils/lumina-fm/widgets/fmwebdav.cpp new file mode 100644 index 00000000..6e65ebaf --- /dev/null +++ b/src-qt5/desktop-utils/lumina-fm/widgets/fmwebdav.cpp @@ -0,0 +1,36 @@ +#include "fmwebdav.h" + +fmwebdav::fmwebdav(QObject *parent) : QNetworkAccessManager(parent) ,wdRootPath(), wdUsername(), wdUassword(), wdBaseUrl(), wdCurrentConnectionType(QWebdav::HTTP){ +// typical Qnetwork connection stuff goes here +// probably ssl parts too +} + +fmwebdav::~fmwebdav(){ +} + +QString fmwebdav::hostname() const{ return wdBaseUrl.host(); } + +int fmwebdav::port() const{ return wdBaseUrl.port(); } + +QString fmwebdav::rootPath() const{ return wdRootPath;} + +QString fmwebdav::username() const{ return wdUsername; } + +QString fmwebdav::password() const{ return wdPassword; } + +fmwebdav::QWebdavConnectionType : fmwebdav::connectionType() const{ return wdCurrentConnectionType; } + +bool fmwebdav::isSSL() const{ return (wdCurrentConnectionType==QWebdav::HTTPS); } + +void QWebdav::setConnectionSettings(const QWebdavConnectionType connectionType, const QString *hostname, const QString *rootPath, const QString *username, const QString *password, int *port){ + wdRootPath = rootPath; + if ((wdRootPath.endsWith("/")){ wdRootPath.chop(1); } + wdCurrentConnectionType = connectionType; + wdBaseUrl.setScheme(); + wdBaseUrl.setHost(hostname); + wdBaseUrl.setPath(rootPath); + if (port != 0) { // use user-defined port number if not 80 or 443 + if ( ! ( ( (port == 80) && (wdCurrentConnectionType==QWebdav::HTTP) ) || ( (port == 443) && (wdCurrentConnectionType==QWebdav::HTTPS) ) ) ){ wdBaseUrl.setPort(port); } + wdUsername = username; + wdPassword = password; +} diff --git a/src-qt5/desktop-utils/lumina-fm/widgets/fmwebdav.h b/src-qt5/desktop-utils/lumina-fm/widgets/fmwebdav.h new file mode 100644 index 00000000..04d29e3b --- /dev/null +++ b/src-qt5/desktop-utils/lumina-fm/widgets/fmwebdav.h @@ -0,0 +1,36 @@ +#ifndef FMWEBDAV_H +#define FMWEBDAV_H + +#include <QtCore> +#include <QtNetwork> +#include <QNetworkAccessManager> + +public: + + enum QWebdavConnectionType {HTTP = 1, HTTPS}; + + QString hostname() const; + int port() const; + QString rootPath() const; + QString username() const; + QString password() const; + QWebdavConnectionType connectionType() const; + bool isSSL() const; + + void setConnectionSettings( const QWebdavConnectionType connectionType, const QString *hostname, const QString *rootPath = "/", const QString *username = "", const QString *password = "", int *port = 0; + + +private: + + QString wdRootPath; + QString wdUsername; + QString wdPassword; + QUrl wdBaseUrl; + QWebdavConnectionType wdCurrentConnectionType; + + + + + + +#endif // FMWEBDAV diff --git a/src-qt5/desktop-utils/lumina-fm/widgets/vidnail.cpp b/src-qt5/desktop-utils/lumina-fm/widgets/vidnail.cpp new file mode 100644 index 00000000..d0ecdecf --- /dev/null +++ b/src-qt5/desktop-utils/lumina-fm/widgets/vidnail.cpp @@ -0,0 +1,59 @@ +#ifndef VIDNAIL_H +#define VIDNAIL_H + +extern "C" { +#include <libavcodec/avcodec.h> +#include <libavformat/avformat.h> +} + +class VidNail; + +struct vFrame { + vFrame() : *width(0), *height(0) {} + vFrame(int *width, int *height : width(width), height(height) {} + int *width; + int *height; +}; + +public: + + QString getCodec(); + void skipTo(int timeInSeconds); + void readVideoFrame(); + void getScaledVideoFrame(int scaledSize, vFrame& vFrame); + + int getWidth(); + int getHeight(); + int getLength(); + + void makeThumbnail(const QString& videoFile, QImage &image); + void setThumbnailSize(int size); + void setPercentage(int percent); + void setTime(const QString& Time); + + void writeVidNail(vFrame& frame, QImage& image); + + + private: + bool readVideoPacket(); + bool getVideoPacket(); + void scaleVideo(int scaledSize, int& scaledWidth, int& scaledHeight); + void createVFrame(AVFrame *vFrame, quint8 *frameBuffer, int width, int height); + void calculateDimensions(int size); + void generateThumbnail(const QString& videoFile, ImageWriter& imageWriter, QImage& image); + QString getMimeType(const QString& videoFile); + QString getExtension(const QString& videoFilename); + + + private: + int videoStream; + AVFormatContext *inputVideoFormatContext; + AVCodecContext *inputvideoCodecContext; + AVCodec *inputVideoCodec; + AVStream *inputVideoStream; + AVFrame *inputVideoFrame; + quint8 *inputFrameBuffer; + AVPacket *videoPacket; + + +#endif // VIDNAIL_H diff --git a/src-qt5/desktop-utils/lumina-fm/widgets/vidnail.h b/src-qt5/desktop-utils/lumina-fm/widgets/vidnail.h new file mode 100644 index 00000000..e13894e1 --- /dev/null +++ b/src-qt5/desktop-utils/lumina-fm/widgets/vidnail.h @@ -0,0 +1,13 @@ +//=========================================== +// Lumina-DE source code +// Copyright (c) 2017, q5sys +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#include "vidnail.h" + +VidNail::VidNail(QObject *parent) : QObject(parent){ +} + +VidNail::~VidNail(){ +} diff --git a/src-qt5/desktop-utils/lumina-textedit/MainUI.cpp b/src-qt5/desktop-utils/lumina-textedit/MainUI.cpp index 52a29c01..9e4ce499 100644 --- a/src-qt5/desktop-utils/lumina-textedit/MainUI.cpp +++ b/src-qt5/desktop-utils/lumina-textedit/MainUI.cpp @@ -496,11 +496,14 @@ void MainUI::closeEvent(QCloseEvent *ev){ unsaved << tmp->currentFile(); } } - bool quitnow = unsaved.isEmpty(); - if(!quitnow && !ui->actionShow_Popups->isChecked()){ quitnow = true; } - if(!quitnow){ - quitnow = (QMessageBox::Yes == QMessageBox::question(this, tr("Lose Unsaved Changes?"), QString(tr("There are unsaved changes.\nDo you want to close the editor anyway?\n\n%1")).arg(unsaved.join("\n")), QMessageBox::Yes | QMessageBox::No, QMessageBox::No) ); - } - if(quitnow){ QMainWindow::closeEvent(ev); } - else{ ev->ignore(); } + if(unsaved.isEmpty()){ QMainWindow::closeEvent(ev); return; } + bool savenow = false; + if(!savenow && !ui->actionShow_Popups->isChecked()){ savenow = true; } + if(!savenow){ + QMessageBox::StandardButton but = QMessageBox::question(this, tr("Save Changes before closing?"), QString(tr("There are unsaved changes.\nDo you want save them before you close the editor?\n\n%1")).arg(unsaved.join("\n")), QMessageBox::Yes | QMessageBox::No | QMessageBox::Cancel, QMessageBox::No); + savenow = (but == QMessageBox::Yes); + if(but == QMessageBox::Cancel){ ev->ignore(); return; } + } + if(savenow){ SaveFile(); } + QMainWindow::closeEvent(ev); } diff --git a/src-qt5/desktop-utils/lumina-textedit/MainUI.ui b/src-qt5/desktop-utils/lumina-textedit/MainUI.ui index de5c1ee1..fec94a21 100644 --- a/src-qt5/desktop-utils/lumina-textedit/MainUI.ui +++ b/src-qt5/desktop-utils/lumina-textedit/MainUI.ui @@ -182,7 +182,7 @@ <x>0</x> <y>0</y> <width>505</width> - <height>21</height> + <height>28</height> </rect> </property> <property name="contextMenuPolicy"> @@ -437,6 +437,11 @@ </property> </action> </widget> + <tabstops> + <tabstop>line_find</tabstop> + <tabstop>line_replace</tabstop> + <tabstop>tool_hideReplaceGroup</tabstop> + </tabstops> <resources/> <connections/> </ui> diff --git a/src-qt5/desktop-utils/lumina-xdg-entry/mainwindow.cpp b/src-qt5/desktop-utils/lumina-xdg-entry/mainwindow.cpp index 7b34935e..1ad6edcd 100644 --- a/src-qt5/desktop-utils/lumina-xdg-entry/mainwindow.cpp +++ b/src-qt5/desktop-utils/lumina-xdg-entry/mainwindow.cpp @@ -1,7 +1,7 @@ //=========================================== // Copyright (c) 2017, q5sys (JT) // Available under the MIT license -// See the LICENSE file for full details +// See the LICENSE file for full details //=========================================== #include "mainwindow.h" diff --git a/src-qt5/experimental/lumina-terminal/i18n/l-terminal_et.ts b/src-qt5/experimental/lumina-terminal/i18n/l-terminal_et.ts index f14c723f..e4175b01 100644 --- a/src-qt5/experimental/lumina-terminal/i18n/l-terminal_et.ts +++ b/src-qt5/experimental/lumina-terminal/i18n/l-terminal_et.ts @@ -6,12 +6,12 @@ <message> <location filename="../TerminalWidget.cpp" line="61"/> <source>Copy Selection</source> - <translation type="unfinished"></translation> + <translation>Kopeeri valitu</translation> </message> <message> <location filename="../TerminalWidget.cpp" line="62"/> <source>Paste</source> - <translation type="unfinished"></translation> + <translation>Aseta</translation> </message> </context> <context> @@ -29,17 +29,17 @@ <message> <location filename="../TrayIcon.cpp" line="130"/> <source>Close Terminal</source> - <translation type="unfinished"></translation> + <translation>Sulge Terminal</translation> </message> <message> <location filename="../TrayIcon.cpp" line="139"/> <source>Move To Monitor</source> - <translation type="unfinished"></translation> + <translation>Liiguta ekraanile</translation> </message> <message> <location filename="../TrayIcon.cpp" line="142"/> <source>Monitor %1</source> - <translation type="unfinished"></translation> + <translation>Ekraan %1</translation> </message> </context> <context> @@ -47,67 +47,67 @@ <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="603"/> <source>Multimedia</source> - <translation type="unfinished"></translation> + <translation>Multimeedia</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="604"/> <source>Development</source> - <translation type="unfinished"></translation> + <translation>Arendus</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="605"/> <source>Education</source> - <translation type="unfinished"></translation> + <translation>Haridus</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="606"/> <source>Games</source> - <translation type="unfinished"></translation> + <translation>Mängud</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="607"/> <source>Graphics</source> - <translation type="unfinished"></translation> + <translation>Graafika</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="608"/> <source>Network</source> - <translation type="unfinished"></translation> + <translation>Võrk</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="609"/> <source>Office</source> - <translation type="unfinished"></translation> + <translation>Kontor</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="610"/> <source>Science</source> - <translation type="unfinished"></translation> + <translation>Teadus</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="611"/> <source>Settings</source> - <translation type="unfinished"></translation> + <translation>Sätted</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="612"/> <source>System</source> - <translation type="unfinished"></translation> + <translation>Süsteem</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="613"/> <source>Utility</source> - <translation type="unfinished"></translation> + <translation>Tööriistad</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="614"/> <source>Wine</source> - <translation type="unfinished"></translation> + <translation>Wine</translation> </message> <message> <location filename="../../../core/libLumina/LuminaXDG.cpp" line="615"/> <source>Unsorted</source> - <translation type="unfinished"></translation> + <translation>Sorteerimata</translation> </message> </context> </TS> diff --git a/src-qt5/core/libLumina/NativeEmbedWidget.cpp b/src-qt5/src-cpp/NativeEmbedWidget.cpp index 876c701d..57b6edde 100644 --- a/src-qt5/core/libLumina/NativeEmbedWidget.cpp +++ b/src-qt5/src-cpp/NativeEmbedWidget.cpp @@ -116,7 +116,8 @@ void NativeEmbedWidget::showWindow(){ } QImage NativeEmbedWidget::windowImage(QRect geom){ - if(DISABLE_COMPOSITING){ + //if(DISABLE_COMPOSITING){ + if(!this->isVisible()){ return QImage(); } //nothing to grab yet QList<QScreen*> screens = static_cast<QApplication*>( QApplication::instance() )->screens(); //for(int i=0; i<screens.length(); i++){ //if(screens[i]->contains(this)){ @@ -126,7 +127,7 @@ QImage NativeEmbedWidget::windowImage(QRect geom){ //} //} return QImage(); - }else{ + /*}else{ //Pull the XCB pixmap out of the compositing layer xcb_pixmap_t pix = xcb_generate_id(QX11Info::connection()); xcb_composite_name_window_pixmap(QX11Info::connection(), WIN->id(), pix); @@ -144,7 +145,7 @@ QImage NativeEmbedWidget::windowImage(QRect geom){ xcb_free_pixmap(QX11Info::connection(), pix); return img; - } + }*/ } void NativeEmbedWidget::setWinUnpaused(){ paused = false; @@ -154,6 +155,7 @@ void NativeEmbedWidget::setWinUnpaused(){ }else if(this->isVisible()){ showWindow(); } + resyncWindow(); //make sure the window knows about the new location } // ============ // PUBLIC @@ -203,6 +205,7 @@ bool NativeEmbedWidget::embedWindow(NativeWindow *window){ registerClientEvents(this->winId()); //child events get forwarded through the frame - watch this for changes too //Also use a partial-composite here - make sure the window pixmap is available even when the window is obscured xcb_composite_redirect_window(QX11Info::connection(), WIN->id(), XCB_COMPOSITE_REDIRECT_AUTOMATIC); + //xcb_composite_redirect_subwindows(QX11Info::connection(), WIN->id(), XCB_COMPOSITE_REDIRECT_MANUAL); //Also alert us when the window visual changes Damage dmgID = XDamageCreate(QX11Info::display(), WIN->id(), XDamageReportRawRectangles); @@ -264,10 +267,10 @@ void NativeEmbedWidget::resume(){ void NativeEmbedWidget::resyncWindow(){ if(WIN==0){ return; } - syncWinSize(); - if(DISABLE_COMPOSITING){ + //syncWinSize(); + //if(DISABLE_COMPOSITING){ // Specs say to send an artificial configure event to the window if the window was reparented into the frame - QPoint loc = this->mapToGlobal( QPoint(0,0)); + QPoint loc = this->mapToGlobal( QPoint(0,0) ); //Send an artificial configureNotify event to the window with the global position/size included xcb_configure_notify_event_t *event = (xcb_configure_notify_event_t*) calloc(32,1); //always 32-byes long, even if we don't need all of it event->x = loc.x(); @@ -283,12 +286,12 @@ void NativeEmbedWidget::resyncWindow(){ xcb_send_event(QX11Info::connection(), false, WIN->id(), XCB_EVENT_MASK_STRUCTURE_NOTIFY | XCB_EVENT_MASK_SUBSTRUCTURE_NOTIFY, (char *) event); xcb_flush(QX11Info::connection()); free(event); - }else{ + /*}else{ //Window is floating invisibly - make sure it is in the right place //Make sure the window size is syncronized and visual up to date //syncWinSize(); QTimer::singleShot(10, this, SLOT(repaintWindow()) ); - } + }*/ } @@ -328,11 +331,13 @@ void NativeEmbedWidget::hideEvent(QHideEvent *ev){ } void NativeEmbedWidget::paintEvent(QPaintEvent *ev){ + QPainter P(this); + P.setClipping(true); + P.setClipRect(0,0,this->width(), this->height()); + P.fillRect(ev->rect(), Qt::transparent); if(WIN==0){ return; } QRect geom = ev->rect(); //atomic updates //qDebug() << "Paint Rect:" << geom; - //geom.adjust(-10,-10,10,10); //add an additional few pixels in each direction to be painted - //geom = geom.intersected(QRect(0,0,this->width(), this->height())); //ensure intersection with actual window QImage img; if(!paused){ img = windowImage(geom); } else if(!winImage.isNull()){ @@ -340,23 +345,8 @@ void NativeEmbedWidget::paintEvent(QPaintEvent *ev){ else{ img = winImage.scaled(geom.size()); } //this is a fast transformation - might be slightly distorted } //Need to paint the image from the window onto the widget as an overlay + P.drawImage( geom , img, QRect(QPoint(0,0), img.size()), Qt::NoOpaqueDetection); //1-to-1 mapping - QPainter P(this); - P.setClipping(true); - P.setClipRect(0,0,this->width(), this->height()); - if(DISABLE_COMPOSITING){ P.fillRect(geom, Qt::black); } //get weird effects when partial-compositing is enabled if you layer transparent window frames above other windows - //qDebug() << "Paint Embed Window:" << geom << winImage.size(); - //if(winImage.size() == this->size()){ - P.drawImage( geom , img, QRect(QPoint(0,0), img.size()), Qt::NoOpaqueDetection); //1-to-1 mapping - //Note: Qt::NoOpaqueDetection Speeds up the paint by bypassing the checks to see if there are [semi-]transparent pixels - // Since this is an embedded image - we fully expect there to be transparency all/most of the time. - // }else{ - //P.drawImage( geom , winImage); //auto-scale it to fit (transforming a static image while paused?) - // } - //else{ QImage scaled = winImage.scaled(geom.size()); P.drawImage(geom, scaled); } - //P.drawImage( geom , winImage, geom, Qt::NoOpaqueDetection); //1-to-1 mapping - //Note: Qt::NoOpaqueDetection Speeds up the paint by bypassing the checks to see if there are [semi-]transparent pixels - // Since this is an embedded image - we fully expect there to be transparency all/most of the time. } diff --git a/src-qt5/core/libLumina/NativeEmbedWidget.h b/src-qt5/src-cpp/NativeEmbedWidget.h index 16bb46dc..16bb46dc 100644 --- a/src-qt5/core/libLumina/NativeEmbedWidget.h +++ b/src-qt5/src-cpp/NativeEmbedWidget.h diff --git a/src-qt5/core/libLumina/NativeEventFilter.cpp b/src-qt5/src-cpp/NativeEventFilter.cpp index c13c1fc8..c13c1fc8 100644 --- a/src-qt5/core/libLumina/NativeEventFilter.cpp +++ b/src-qt5/src-cpp/NativeEventFilter.cpp diff --git a/src-qt5/core/libLumina/NativeEventFilter.h b/src-qt5/src-cpp/NativeEventFilter.h index a3be3ef1..a3be3ef1 100644 --- a/src-qt5/core/libLumina/NativeEventFilter.h +++ b/src-qt5/src-cpp/NativeEventFilter.h diff --git a/src-qt5/core/libLumina/NativeKeyToQt.cpp b/src-qt5/src-cpp/NativeKeyToQt.cpp index 06056be7..06056be7 100644 --- a/src-qt5/core/libLumina/NativeKeyToQt.cpp +++ b/src-qt5/src-cpp/NativeKeyToQt.cpp diff --git a/src-qt5/core/libLumina/NativeWindow.cpp b/src-qt5/src-cpp/NativeWindow.cpp index 02cc001e..02cc001e 100644 --- a/src-qt5/core/libLumina/NativeWindow.cpp +++ b/src-qt5/src-cpp/NativeWindow.cpp diff --git a/src-qt5/core/libLumina/NativeWindow.h b/src-qt5/src-cpp/NativeWindow.h index 67436259..67436259 100644 --- a/src-qt5/core/libLumina/NativeWindow.h +++ b/src-qt5/src-cpp/NativeWindow.h diff --git a/src-qt5/core/libLumina/NativeWindow.pri b/src-qt5/src-cpp/NativeWindow.pri index c906d6fd..c2ac0137 100644 --- a/src-qt5/core/libLumina/NativeWindow.pri +++ b/src-qt5/src-cpp/NativeWindow.pri @@ -2,7 +2,6 @@ # Files QT *= x11extras LIBS *= -lc -lxcb -lxcb-ewmh -lxcb-icccm -lxcb-image -lxcb-composite -lxcb-damage -lxcb-util -lxcb-keysyms -lXdamage -#QT *= -lxcb-render -lxcb-render-util SOURCES *= $${PWD}/NativeWindow.cpp \ $${PWD}/NativeWindowSystem.cpp \ diff --git a/src-qt5/core/libLumina/NativeWindowSystem.cpp b/src-qt5/src-cpp/NativeWindowSystem.cpp index 0ee65929..e8e9655a 100644 --- a/src-qt5/core/libLumina/NativeWindowSystem.cpp +++ b/src-qt5/src-cpp/NativeWindowSystem.cpp @@ -492,7 +492,27 @@ void NativeWindowSystem::UpdateWindowProperties(NativeWindow* win, QList< Native } if(props.contains(NativeWindow::WinTypes)){ QList< NativeWindow::Type> types; - types << NativeWindow::T_NORMAL; //make this load appropriately later + xcb_get_property_cookie_t cookie = xcb_ewmh_get_wm_window_type_unchecked(&obj->EWMH, win->id()); + xcb_ewmh_get_atoms_reply_t reply; + if(1==xcb_ewmh_get_wm_window_type_reply(&obj->EWMH, cookie, &reply, NULL) ){ + for(unsigned int i=0; i<reply.atoms_len; i++){ + if(reply.atoms[i]==obj->EWMH._NET_WM_WINDOW_TYPE_DESKTOP){ types << NativeWindow::T_DESKTOP; } + else if(reply.atoms[i]==obj->EWMH._NET_WM_WINDOW_TYPE_DOCK){ types << NativeWindow::T_DOCK; } + else if(reply.atoms[i]==obj->EWMH._NET_WM_WINDOW_TYPE_TOOLBAR){ types << NativeWindow::T_TOOLBAR; } + else if(reply.atoms[i]==obj->EWMH._NET_WM_WINDOW_TYPE_MENU){ types << NativeWindow::T_MENU; } + else if(reply.atoms[i]==obj->EWMH._NET_WM_WINDOW_TYPE_UTILITY){ types << NativeWindow::T_UTILITY; } + else if(reply.atoms[i]==obj->EWMH._NET_WM_WINDOW_TYPE_SPLASH){ types << NativeWindow::T_SPLASH; } + else if(reply.atoms[i]==obj->EWMH._NET_WM_WINDOW_TYPE_DIALOG){ types << NativeWindow::T_DIALOG; } + else if(reply.atoms[i]==obj->EWMH._NET_WM_WINDOW_TYPE_DROPDOWN_MENU){ types << NativeWindow::T_DROPDOWN_MENU; } + else if(reply.atoms[i]==obj->EWMH._NET_WM_WINDOW_TYPE_POPUP_MENU){ types << NativeWindow::T_POPUP_MENU; } + else if(reply.atoms[i]==obj->EWMH._NET_WM_WINDOW_TYPE_TOOLTIP){ types << NativeWindow::T_TOOLTIP; } + else if(reply.atoms[i]==obj->EWMH._NET_WM_WINDOW_TYPE_NOTIFICATION){ types << NativeWindow::T_NOTIFICATION; } + else if(reply.atoms[i]==obj->EWMH._NET_WM_WINDOW_TYPE_COMBO){ types << NativeWindow::T_COMBO; } + else if(reply.atoms[i]==obj->EWMH._NET_WM_WINDOW_TYPE_DND){ types << NativeWindow::T_DND; } + else if(reply.atoms[i]==obj->EWMH._NET_WM_WINDOW_TYPE_NORMAL){ types << NativeWindow::T_NORMAL; } + } + } + if(types.isEmpty()){ types << NativeWindow::T_NORMAL; } win->setProperty(NativeWindow::WinTypes, QVariant::fromValue< QList<NativeWindow::Type> >(types) ); } } diff --git a/src-qt5/core/libLumina/NativeWindowSystem.h b/src-qt5/src-cpp/NativeWindowSystem.h index b67ecc94..b67ecc94 100644 --- a/src-qt5/core/libLumina/NativeWindowSystem.h +++ b/src-qt5/src-cpp/NativeWindowSystem.h diff --git a/src-qt5/src-cpp/plugins-screensaver.cpp b/src-qt5/src-cpp/plugins-screensaver.cpp new file mode 100644 index 00000000..75e93c9d --- /dev/null +++ b/src-qt5/src-cpp/plugins-screensaver.cpp @@ -0,0 +1,150 @@ +//=========================================== +// Lumina-desktop source code +// Copyright (c) 2017, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#include "plugins-screensaver.h" +#include <QJsonDocument> +#include <QJsonArray> +#include <QFile> +#include <QDir> +#include <QDebug> + +//Relative directory to search along the XDG paths for screensavers +#define REL_DIR QString("/lumina-desktop/screensavers") + +// ============ +// SS PLUGIN +// ============ +SSPlugin::SSPlugin(){ + +} + +SSPlugin::~SSPlugin(){ + +} + +void SSPlugin::loadFile(QString path){ + data = QJsonObject(); + currentfile = path; + QFile file(path); + if(!file.exists() || !file.open(QIODevice::ReadOnly)){ return; } + data = QJsonDocument::fromJson(file.readAll()).object(); + file.close(); +} + +bool SSPlugin::isLoaded(){ + return !data.isEmpty(); +} + +bool SSPlugin::isValid(){ + if(data.isEmpty()){ return false; } + bool ok = data.contains("name") && data.contains("qml") && data.contains("description"); + if(ok){ + //go to the next name level and see if required sub-items exist + QJsonObject tmp = data.value("name").toObject(); + ok = tmp.contains("default"); + } + if(ok){ + //go to the next description level and see if required sub-items exist + QJsonObject tmp = data.value("description").toObject(); + ok = tmp.contains("default"); + } +if(ok){ + //go to the next qml level and see if required sub-items exist + QJsonObject tmp = data.value("qml").toObject(); + QStringList mustexist; + QString exec = tmp.value("exec").toString(); + if(exec.isEmpty() || !exec.endsWith(".qml")){ return false; } + mustexist << exec; + QJsonArray tmpA = data.value("additional_files").toArray(); + for(int i=0; i<tmpA.count(); i++){ mustexist << tmpA[i].toString(); } + QString reldir = currentfile.section("/",0,-2) + "/"; + //qDebug() << "Got MustExist:" << mustexist << reldir; + for(int i=0; i<mustexist.length() && ok; i++){ + if(mustexist[i].startsWith("/")){ ok = QFile::exists(mustexist[i]); } + else { ok = QFile::exists(reldir+mustexist[i]); } + } + } + return ok; +} + +QString SSPlugin::translatedName(){ + QJsonObject tmp = data.value("name").toObject(); + //Get the current locale + QString locale = getenv("LC_ALL"); + if(locale.isEmpty()){ locale = getenv("LC_MESSAGES"); } + if(locale.isEmpty()){ locale = getenv("LANG"); } + if(locale.isEmpty()){ locale = "default"; } + if(locale.contains(".")){ locale = locale.section(".",0,0); } //chop any charset code off the end + //Now find which localized string is available and return it + if(tmp.contains(locale)){ return tmp.value(locale).toString(); } + locale = locale.section("_",0,0); //full locale not found - look for shortened form + if(tmp.contains(locale)){ return tmp.value(locale).toString(); } + return tmp.value("default").toString(); //use the default version +} + +QString SSPlugin::translatedDescription(){ + QJsonObject tmp = data.value("description").toObject(); + //Get the current locale + QString locale = getenv("LC_ALL"); + if(locale.isEmpty()){ locale = getenv("LC_MESSAGES"); } + if(locale.isEmpty()){ locale = getenv("LANG"); } + if(locale.isEmpty()){ locale = "default"; } + if(locale.contains(".")){ locale = locale.section(".",0,0); } //chop any charset code off the end + //Now find which localized string is available and return it + if(tmp.contains(locale)){ return tmp.value(locale).toString(); } + locale = locale.section("_",0,0); //full locale not found - look for shortened form + if(tmp.contains(locale)){ return tmp.value(locale).toString(); } + return tmp.value("default").toString(); //use the default version +} + +QUrl SSPlugin::scriptURL(){ + QString exec = data.value("qml").toObject().value("exec").toString(); + //qDebug() << "got exec:" << exec; + if(!exec.startsWith("/")){ exec.prepend( currentfile.section("/",0,-2)+"/" ); } + return QUrl::fromLocalFile(exec); +} + +// =================== +// SS PLUGIN SYSTEM +// =================== +SSPlugin SSPluginSystem::findPlugin(QString name){ + SSPlugin SSP; + if(name.startsWith("/") && QFile::exists(name)){ SSP.loadFile(name); return SSP;} //absolute path give - just load that one + //Cleanup the input name and ensure it has the right suffix + name = name.section("/",-1); + if(!name.endsWith(".json")){ name.append(".json"); } + //Get the list of directories to search + QStringList dirs; + dirs << QString(getenv("XDG_DATA_HOME")) << QString(getenv("XDG_DATA_DIRS")).split(":"); + //Look for that file within these directories and return the first one found + for(int i=0; i<dirs.length(); i++){ + if(!QFile::exists(dirs[i]+REL_DIR+"/"+name)){ continue; } + SSP.loadFile(dirs[i]+REL_DIR+"/"+name); + if(SSP.isValid()){ break; } //got a good one - stop here + } + return SSP; +} + +QList<SSPlugin> SSPluginSystem::findAllPlugins(bool validonly){ + QList<SSPlugin> LIST; + //Get the list of directories to search + QStringList dirs; + dirs << QString(getenv("XDG_DATA_HOME")) << QString(getenv("XDG_DATA_DIRS")).split(":"); + //Look for that file within these directories and return the first one found + for(int i=0; i<dirs.length(); i++){ + if(!QFile::exists(dirs[i]+REL_DIR)){ continue; } + QDir dir(dirs[i]+REL_DIR); + QStringList files = dir.entryList(QStringList() << "*.json", QDir::Files, QDir::Name); + //qDebug() << "Found Files:" << files; + for(int j=0; j<files.length(); j++){ + SSPlugin tmp; + tmp.loadFile(dir.absoluteFilePath(files[j])); + //qDebug() << "Loaded File:" << files[j] << tmp.isValid(); + if(!validonly || tmp.isValid()){ LIST << tmp; } + } + } + return LIST; +} diff --git a/src-qt5/src-cpp/plugins-screensaver.h b/src-qt5/src-cpp/plugins-screensaver.h new file mode 100644 index 00000000..9a7e98f5 --- /dev/null +++ b/src-qt5/src-cpp/plugins-screensaver.h @@ -0,0 +1,50 @@ +//=========================================== +// Lumina-desktop source code +// Copyright (c) 2017, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +// This is a simple class for managing all the various desktop +// screensaver plugins that could be available +//=========================================== +// NOTE: +// This class has a heirarchy-based lookup system +// USER plugins > SYSTEM plugins +// XDG_DATA_HOME/lumina-desktop/screensavers > XDG_DATA_DIRS/lumina-desktop/screensavers +//=========================================== +#ifndef _LUMINA_DESKTOP_SCREENSAVER_PLUGINS_CLASS_H +#define _LUMINA_DESKTOP_SCREENSAVER_PLUGINS_CLASS_H + +#include <QJsonObject> +#include <QString> +#include <QUrl> +#include <QObject> + +class SSPlugin{ +private: + QString currentfile; + +public: + QJsonObject data; //Hazardous to manually modify + + SSPlugin(); + ~SSPlugin(); + + void loadFile(QString path); + bool isLoaded(); + + bool isValid(); + + QString translatedName(); + QString translatedDescription(); + QUrl scriptURL(); +}; + +class SSPluginSystem{ +public: + static SSPlugin findPlugin(QString name); + static QList<SSPlugin> findAllPlugins(bool validonly = true); + +}; + +#endif diff --git a/src-qt5/src-cpp/plugins-screensaver.pri b/src-qt5/src-cpp/plugins-screensaver.pri new file mode 100644 index 00000000..ad03f34c --- /dev/null +++ b/src-qt5/src-cpp/plugins-screensaver.pri @@ -0,0 +1,4 @@ +HEADERS *= $${PWD}/plugins-screensaver.h +SOURCES *= $${PWD}/plugins-screensaver.cpp + +INCLUDEPATH *= $${PWD} diff --git a/src-qt5/src-qml/test/CPUGaugeStyle.qml b/src-qt5/src-qml/test/CPUGaugeStyle.qml new file mode 100644 index 00000000..4728d136 --- /dev/null +++ b/src-qt5/src-qml/test/CPUGaugeStyle.qml @@ -0,0 +1,156 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the examples of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** BSD License Usage +** Alternatively, you may use this file under the terms of the BSD license +** as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of The Qt Company Ltd nor the names of its +** contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick 2.2 +import QtQuick.Controls.Styles 1.4 + +CircularGaugeStyle { + id: cpugauge + tickmarkInset: toPixels(0.04) + minorTickmarkInset: tickmarkInset + labelStepSize: 20 + labelInset: toPixels(0.23) + + property real xCenter: outerRadius + property real yCenter: outerRadius + property real needleLength: outerRadius - tickmarkInset * 1.25 + property real needleTipWidth: toPixels(0.02) + property real needleBaseWidth: toPixels(0.06) + property bool halfGauge: false + + function toPixels(percentage) { + return percentage * outerRadius; + } + + function degToRad(degrees) { + return degrees * (Math.PI / 180); + } + + function radToDeg(radians) { + return radians * (180 / Math.PI); + } + + function paintBackground(ctx) { + if (halfGauge) { + ctx.beginPath(); + ctx.rect(0, 0, ctx.canvas.width, ctx.canvas.height / 2); + ctx.clip(); + } + + ctx.beginPath(); + ctx.fillStyle = "black"; + ctx.ellipse(0, 0, ctx.canvas.width, ctx.canvas.height); + ctx.fill(); + + ctx.beginPath(); + ctx.lineWidth = tickmarkInset; + ctx.strokeStyle = "black"; + ctx.arc(xCenter, yCenter, outerRadius - ctx.lineWidth / 2, outerRadius - ctx.lineWidth / 2, 0, Math.PI * 2); + ctx.stroke(); + + ctx.beginPath(); + ctx.lineWidth = tickmarkInset / 2; + ctx.strokeStyle = "#222"; + ctx.arc(xCenter, yCenter, outerRadius - ctx.lineWidth / 2, outerRadius - ctx.lineWidth / 2, 0, Math.PI * 2); + ctx.stroke(); + + ctx.beginPath(); + var gradient = ctx.createRadialGradient(xCenter, yCenter, outerRadius * 0.8, xCenter, yCenter, outerRadius); + gradient.addColorStop(0, Qt.rgba(1, 1, 1, 0)); + gradient.addColorStop(0.7, Qt.rgba(1, 1, 1, 0.13)); + gradient.addColorStop(1, Qt.rgba(1, 1, 1, 1)); + ctx.fillStyle = gradient; + ctx.arc(xCenter, yCenter, outerRadius - tickmarkInset, outerRadius - tickmarkInset, 0, Math.PI * 2); + ctx.fill(); + } + + background: Canvas { + onPaint: { + var ctx = getContext("2d"); + ctx.reset(); + paintBackground(ctx); + } + + } + + needle: Canvas { + implicitWidth: needleBaseWidth + implicitHeight: needleLength + + property real xCenter: width / 2 + property real yCenter: height / 2 + + onPaint: { + var ctx = getContext("2d"); + ctx.reset(); + + ctx.beginPath(); + ctx.moveTo(xCenter, height); + ctx.lineTo(xCenter - needleBaseWidth / 2, height - needleBaseWidth / 2); + ctx.lineTo(xCenter - needleTipWidth / 2, 0); + ctx.lineTo(xCenter, yCenter - needleLength); + ctx.lineTo(xCenter, 0); + ctx.closePath(); + ctx.fillStyle = Qt.rgba(0.66, 0, 0, 0.66); + ctx.fill(); + + ctx.beginPath(); + ctx.moveTo(xCenter, height) + ctx.lineTo(width, height - needleBaseWidth / 2); + ctx.lineTo(xCenter + needleTipWidth / 2, 0); + ctx.lineTo(xCenter, 0); + ctx.closePath(); + ctx.fillStyle = Qt.lighter(Qt.rgba(0.66, 0, 0, 0.66)); + ctx.fill(); + } + } + + foreground: null +} diff --git a/src-qt5/src-qml/test/Clock.qml b/src-qt5/src-qml/test/Clock.qml new file mode 100644 index 00000000..685346cb --- /dev/null +++ b/src-qt5/src-qml/test/Clock.qml @@ -0,0 +1,101 @@ +import QtQuick 2.0 +import QtGraphicalEffects 1.0 + +Item { + id : clock + width: { + if (ListView.view && ListView.view.width >= 400) + return ListView.view.width / Math.floor(ListView.view.width / 400.0); + else + return 400; + } + + height: { + if (ListView.view && ListView.view.height >= 440) + return ListView.view.height; + else + return 440; + } + + property alias city: cityLabel.text + property int hours + property int minutes + property int seconds + property real shift + property bool night: false + property bool internationalTime: true //Unset for local time + + function timeChanged() { + var date = new Date; + hours = internationalTime ? date.getUTCHours() + Math.floor(clock.shift) : date.getHours() + night = ( hours < 7 || hours > 19 ) + minutes = internationalTime ? date.getUTCMinutes() + ((clock.shift % 1) * 60) : date.getMinutes() + seconds = date.getUTCSeconds(); + } + + Timer { + interval: 100; running: true; repeat: true; + onTriggered: clock.timeChanged() + } + + Item { + anchors.centerIn: parent + width: 200; height: 240 + Rectangle { anchors.fill: parent; color: "#80ff0000"; border.color: "red"; } + + Image { id: background; source: "clock.png"; visible: clock.night == false } + Image { source: "clock-night.png"; visible: clock.night == true } + + Image { + x: 92.5; y: 27 + source: "hour.png" + transform: Rotation { + id: hourRotation + origin.x: 7.5; origin.y: 73; + angle: (clock.hours * 30) + (clock.minutes * 0.5) + Behavior on angle { + SpringAnimation { spring: 2; damping: 0.2; modulus: 360 } + } + } + } + + Image { + x: 93.5; y: 17 + source: "minute.png" + transform: Rotation { + id: minuteRotation + origin.x: 6.5; origin.y: 83; + angle: clock.minutes * 6 + Behavior on angle { + SpringAnimation { spring: 2; damping: 0.2; modulus: 360 } + } + } + } + + Image { + x: 97.5; y: 20 + source: "second.png" + transform: Rotation { + id: secondRotation + origin.x: 2.5; origin.y: 80; + angle: clock.seconds * 6 + Behavior on angle { + SpringAnimation { spring: 2; damping: 0.2; modulus: 360 } + } + } + } + + Image { + anchors.centerIn: background; source: "center.png" + } + + Text { + id: cityLabel + y: 210; anchors.horizontalCenter: parent.horizontalCenter + color: "white" + font.family: "Helvetica" + font.bold: true; font.pixelSize: 16 + style: Text.Raised; styleColor: "black" + } + } +} diff --git a/src-qt5/src-qml/test/File.qml b/src-qt5/src-qml/test/File.qml new file mode 100644 index 00000000..4713a454 --- /dev/null +++ b/src-qt5/src-qml/test/File.qml @@ -0,0 +1,21 @@ +import QtQuick 2.0 +import Qt.labs.folderlistmodel 2.1 + +ListView { + width: 200; height: 400 + + + FolderListModel { + id: folderModel + folder: "/usr/local/videos" + } + + Component { + id: fileDelegate + Text { text: fileName } + } + + model: folderModel + delegate: fileDelegate + Component.onCompleted: { console.log(folderModel.count) } +} diff --git a/src-qt5/src-qml/test/ListData.h b/src-qt5/src-qml/test/ListData.h new file mode 100644 index 00000000..7dd6f6e2 --- /dev/null +++ b/src-qt5/src-qml/test/ListData.h @@ -0,0 +1,41 @@ +#include <QDebug> +#include <QApplication> +#include <QQuickView> +#include <QQmlEngine> +#include <QQmlContext> +#include <QObject> +#include <QStringList> +#include <QTimer> + +class ListData : public QObject{ + Q_OBJECT + Q_PROPERTY(QList<QScreen*> list READ list NOTIFY listchanged); +signals: + void listchanged(); + +private: + QStringList m_list; + //QTimer *timer; + //bool increasing; + +private slots: + void changeList(){ + /*if(m_list.isEmpty()){ increasing = true; } + else if(m_list.length() == 5){ increasing = false; } + if(increasing){ m_list << "Text - "+QString::number( m_list.length()+1 ); } + else{ m_list.takeAt(m_list.count()-1); } + emit listchanged();*/ + } + +public: + ListData() : QObject(){ + /*increasing = true; + timer = new QTimer(this); + timer->setInterval(1000); + timer->setSingleShot(false); + connect(timer, SIGNAL(timeout()), this, SLOT(changeList()) ); + timer->start();*/ + } + + QList<QScreen*> list() { return QApplication::screens(); } //m_list; } +}; diff --git a/src-qt5/src-qml/test/ListTest.qml b/src-qt5/src-qml/test/ListTest.qml new file mode 100644 index 00000000..e6b6ba35 --- /dev/null +++ b/src-qt5/src-qml/test/ListTest.qml @@ -0,0 +1,19 @@ +import QtQuick 2.2 +import QtQuick.Layouts 1.3 + +Rectangle { + id: canvas + color: "black" + + ColumnLayout{ + anchors.fill: canvas + + Repeater{ + model: cppdata.list + Text{ + color: "white" + text: modelData + } + } + } //end row layout +} diff --git a/src-qt5/src-qml/test/Video.qml b/src-qt5/src-qml/test/Video.qml new file mode 100644 index 00000000..e7d0626d --- /dev/null +++ b/src-qt5/src-qml/test/Video.qml @@ -0,0 +1,50 @@ +import QtQuick 2.0 +import QtMultimedia 5.7 +import QtQuick.Window 2.2 +import Qt.labs.folderlistmodel 2.1 + +Rectangle { + //width: Screen.width + //height: Screen.height + width: 800 + height: 600 + color: "black" + + FolderListModel { + id: folderModel + folder: "/usr/local/videos" + } + + Repeater { + model: folderModel + Component { + Item { + Component.onCompleted: { playlist.addItem(fileURL) } + } + } + } + + Playlist { + id: playlist + playbackMode: Playlist.Random + PlaylistItem { source: "/" } + onError: { console.log("ERROR") } + } + + MediaPlayer { + id: player + autoPlay: true + playlist: playlist + } + + VideoOutput { + id: videoOutput + source: player + anchors.fill: parent + } + + Component.onCompleted: { + playlist.shuffle() + console.log(playlist.itemCount) + } +} diff --git a/src-qt5/src-qml/test/main.cpp b/src-qt5/src-qml/test/main.cpp new file mode 100644 index 00000000..e65c599f --- /dev/null +++ b/src-qt5/src-qml/test/main.cpp @@ -0,0 +1,28 @@ +#include <QDebug> +#include <QApplication> +#include <QQuickView> + +int main(int argc, char** argv){ + QString QMLFile; + for(int i=1; i<argc; i++){ + if(QFile::exists(argv[i])){ QMLFile = QString(argv[i]); } + } + if(QMLFile.isEmpty()){ + qDebug() << "No QML File provided!"; + qDebug() << " Please provide a valid qml file path as an input argument"; + return 1; + } + QApplication A(argc,argv); + qDebug() << "Creating base widget"; + QQuickView base; + base.setResizeMode(QQuickView::SizeRootObjectToView); + qDebug() << "Resize base widget"; + base.resize(1024,768); + qDebug() << "Load QML File:" << QMLFile; + base.setSource(QUrl::fromLocalFile(QMLFile)); + qDebug() << "Start Event loop"; + base.show(); + int ret = A.exec(); + qDebug() << " - Finished"; + return ret; +} diff --git a/src-qt5/src-qml/test/test-basic.qml b/src-qt5/src-qml/test/test-basic.qml new file mode 100644 index 00000000..5d21ae41 --- /dev/null +++ b/src-qt5/src-qml/test/test-basic.qml @@ -0,0 +1,48 @@ +import QtQuick 2.0 +import "." as QML + +Rectangle { + id: root + width: 800; height: 600 + color: "#646464" + + ListView { + id: clockview + anchors.fill: parent + orientation: ListView.Horizontal + cacheBuffer: 2000 + snapMode: ListView.SnapOneItem + highlightRangeMode: ListView.ApplyRange + + delegate: QML.Clock { city: cityName; shift: timeShift } + model: ListModel { + ListElement { cityName: "New York"; timeShift: -4 } + ListElement { cityName: "London"; timeShift: 0 } + ListElement { cityName: "Oslo"; timeShift: 1 } + ListElement { cityName: "Mumbai"; timeShift: 5.5 } + ListElement { cityName: "Tokyo"; timeShift: 9 } + ListElement { cityName: "Brisbane"; timeShift: 10 } + ListElement { cityName: "Los Angeles"; timeShift: -8 } + } + } + + Image { + anchors.left: parent.left + anchors.bottom: parent.bottom + anchors.margins: 10 + source: "content/arrow.png" + rotation: -90 + opacity: clockview.atXBeginning ? 0 : 0.5 + Behavior on opacity { NumberAnimation { duration: 500 } } + } + + Image { + anchors.right: parent.right + anchors.bottom: parent.bottom + anchors.margins: 10 + source: "content/arrow.png" + rotation: 90 + opacity: clockview.atXEnd ? 0 : 0.5 + Behavior on opacity { NumberAnimation { duration: 500 } } + } +} diff --git a/src-qt5/src-qml/test/test-cpugauge.qml b/src-qt5/src-qml/test/test-cpugauge.qml new file mode 100644 index 00000000..1151c435 --- /dev/null +++ b/src-qt5/src-qml/test/test-cpugauge.qml @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the examples of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** BSD License Usage +** Alternatively, you may use this file under the terms of the BSD license +** as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of The Qt Company Ltd nor the names of its +** contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick 2.2 +import QtQuick.Window 2.1 +import QtQuick.Controls 1.4 +import QtQuick.Controls.Styles 1.4 +import QtQuick.Extras 1.4 + +import "." as QML + +Rectangle{ + id: rootwindow + visible: true + width: 800 + height: 600 + + color: "#161616" + property alias cpu: cpu + + Item { + id: container + anchors.fill: parent + property real diff: 5.1 + + Row { + id: gaugeRow + spacing: container.width * 0.02 + anchors.centerIn: parent + + CircularGauge { + id: cpu + width: height + height: container.height * 0.9 - gaugeRow.spacing + value: 0 + maximumValue: 100 + anchors.verticalCenter: parent.verticalCenter + + style: QML.CPUGaugeStyle {} + + } + + function updatevalue() { + if( container.diff >0 && cpu.value > (100-container.diff) ){ + cpu.value = 100; + container.diff = 0 - container.diff + } else if( container.diff <0 && cpu.value <(0-container.diff) ){ + cpu.value = 0; + container.diff = 0 - container.diff + } else { + cpu.value = cpu.value + container.diff + } + } + + Timer { + interval: 100; running: true; repeat: true; + onTriggered: gaugeRow.updatevalue() + } + } + } +} diff --git a/src-qt5/src-qml/test/test.pro b/src-qt5/src-qml/test/test.pro new file mode 100644 index 00000000..41d7d2a2 --- /dev/null +++ b/src-qt5/src-qml/test/test.pro @@ -0,0 +1,5 @@ +QT = core gui widgets quick quickwidgets qml + +TARGET = test + +SOURCES += main.cpp diff --git a/src-qt5/src-qml/test/testlist.cpp b/src-qt5/src-qml/test/testlist.cpp new file mode 100644 index 00000000..cc54c501 --- /dev/null +++ b/src-qt5/src-qml/test/testlist.cpp @@ -0,0 +1,37 @@ +#include <QDebug> +#include <QApplication> +#include <QQuickView> +#include <QQmlEngine> +#include <QQmlContext> +#include <QObject> +#include <QStringList> +#include <QTimer> + +#include "ListData.h" + +int main(int argc, char** argv){ + QString QMLFile; + for(int i=1; i<argc; i++){ + if(QFile::exists(argv[i])){ QMLFile = QString(argv[i]); } + } + if(QMLFile.isEmpty()){ + qDebug() << "No QML File provided!"; + qDebug() << " Please provide a valid qml file path as an input argument"; + return 1; + } + QApplication A(argc,argv); + qDebug() << "Creating base widget"; + ListData data; + QQuickView base; + base.setResizeMode(QQuickView::SizeRootObjectToView); + qDebug() << "Resize base widget"; + base.resize(1024,768); + base.engine()->rootContext()->setContextProperty("cppdata", &data); + qDebug() << "Load QML File:" << QMLFile; + base.setSource(QUrl::fromLocalFile(QMLFile)); + qDebug() << "Start Event loop"; + base.show(); + int ret = A.exec(); + qDebug() << " - Finished"; + return ret; +} diff --git a/src-qt5/src-qml/test/testlist.pro b/src-qt5/src-qml/test/testlist.pro new file mode 100644 index 00000000..69c7bc23 --- /dev/null +++ b/src-qt5/src-qml/test/testlist.pro @@ -0,0 +1,7 @@ +QT = core gui widgets quick quickwidgets qml + +TARGET = test + +SOURCES += testlist.cpp + +HEADERS += ListData.h |