Merge branch 'EqsPrfrm' of https://github.com/davay-popozhe/P8-Panels into EqsPrfrm
425
README.md
@ -97,6 +97,16 @@ git clone https://github.com/CITKParus/P8-Panels.git
|
|||||||
|
|
||||||
7. Перезапустите сервер приложений "ПАРУС 8 Онлайн"
|
7. Перезапустите сервер приложений "ПАРУС 8 Онлайн"
|
||||||
|
|
||||||
|
> **Внимание:** при установке учитывайте следующее:
|
||||||
|
>
|
||||||
|
> - **Для Linux/Unix**
|
||||||
|
>
|
||||||
|
> - Чувствительность к регистру - обращайте внимание на регистр в именах каталогов и файлов операционной системы и регистр в котором упоминаете их в конфигурационных файлах, несовпадение приводит к неработоспособности настроек
|
||||||
|
> - Права доступа - файлы конфигурации и файлы дистрибутива фреймворка должны быть доступны процессу WEB-сервера
|
||||||
|
>
|
||||||
|
> - **Для Windows 7 и прочих устаревших версий Windows**
|
||||||
|
> - Версия IIS, доступная для этих ОС, зачастую не имеет автоматической поддержки шрифтов в формате "WOFF2", применяемых фреймворком. Это может вызывать некорректное отображение панелей, иконок, некоторых элементов пользовательского интерфейса. Добавте в файл "web.config", сервера приложений "ПАРУС 8 Онлайн", строку для определения формата: `<mimeMap fileExtension=".woff2" mimeType="application/font-woff2" />`. Путь для добавления данной настройки в файл "web.config": `configuration/system.webServer/staticContent/<mimeMap fileExtension=".woff2" mimeType="application/font-woff2" />`
|
||||||
|
|
||||||
## V. Подключение панелей
|
## V. Подключение панелей
|
||||||
|
|
||||||
### Интеграция в приложение, главное меню, галерею и меню панелей
|
### Интеграция в приложение, главное меню, галерею и меню панелей
|
||||||
@ -225,6 +235,44 @@ WEB-приложение "ПАРУС 8 Онлайн" поддерживает в
|
|||||||
</Desktop>
|
</Desktop>
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Интеграция в разделы - вызов из действия
|
||||||
|
|
||||||
|
Панель может быть вызвана из действия раздела Системы (только для WEB-клиента). Для это необходимо зарегистрировать в разделе метод с кодом "P8PANELS_OPEN", при этом метод обязательно должен иметь "Тип метода" - "Встроенный", а "Доступность" - "Клиентский". Для метода необходимо настроить параметры:
|
||||||
|
|
||||||
|
- `SPANEL` - строка, обязательный, уникальное имя (`name`) той панели из "p8panels.config", которая должна быть открыта действием
|
||||||
|
- `SCAPTION` - строка, необязательный, заголовок вкладки WEB-приложения "ПАРУС 8 Онлайн", в которой будет открыта панель, если не задан - будет использовано видимое наименование панели (`caption`) из "p8panels.config"
|
||||||
|
- `NIDENT` - число, необязательный, но требуется если предполагается, что панель должна работать со списком отмеченных документов, параметр следует привязать к контексту "Идентификатор отмеченных записей"
|
||||||
|
|
||||||
|
Указанные параметры - зарезервированы и могут выполнять только указанную функцию. Тем не менее, метод может иметь произвольный набор прочих параметров, необходимых для работы панели. Все параметры (кроме `SPANEL` и `SCAPTION` - они системные и требуется непосредственно для корректного откытия панели, но не для её работы) будут переданы в панель в виде GET-запроса. Получить их значения в коде панели можно применив специальный API фреймворка, реализованный в `NavigationCtx`:
|
||||||
|
|
||||||
|
```
|
||||||
|
import { NavigationCtx } from "../../context/navigation"; //Контекст навигации
|
||||||
|
|
||||||
|
const MyPanel = () => {
|
||||||
|
//Подключение к контексту навигации
|
||||||
|
const { getNavigationSearch } = useContext(NavigationCtx);
|
||||||
|
|
||||||
|
//Считаем параметры, переданные из действия
|
||||||
|
const actionPrms = getNavigationSearch();
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div>
|
||||||
|
{JSON.stringify(actionPrms)}
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Далее настройка в разделе выполняется стандартно - регистрируется действие раздела, в качестве реализующего метода действия указывается "P8PANELS_OPEN". Действие может иметь визуализируемый диалог ввода параметров.
|
||||||
|
|
||||||
|
Панель открывается в виде новой вкладки WEB-приложения "ПАРУС 8 Онлайн" после ввода пользователем значений визуализируемых параметров в диалоге (если таковой отображался).
|
||||||
|
|
||||||
|
В настоящий момент в Системе можно зарегистрировать сколь угодно много методов с кодом "P8PANELS_OPEN", но не более одного в каждом разделе. Если есть необходимость открытия из одного раздела нескольких различных панелей, то рекомендуется:
|
||||||
|
|
||||||
|
- Реализовать дополнительную навигацию в открываемой панели
|
||||||
|
- Реализовать в КОР-действии параметр с выпадающим списком (или иным интерфейсным элементом), позволяющим пользователю выбрать какую именно панель ему необходимо открыть сейчас
|
||||||
|
- Определять значение параметра `SPANEL` КОР-метода "P8PANELS_OPEN" из контекста (документа, атрибута, каталога и т.п.), таким образом автоматически определяя открываемую панель
|
||||||
|
|
||||||
## VI. Разработка панелей
|
## VI. Разработка панелей
|
||||||
|
|
||||||
> **Внимание:** данное руководство не является обучающим курсом по WEB-разработке как таковой. Изложенные ниже сведения о порядке реализации пользовательских панелей, даны с учётом приведённых ранее требований к разработчику.
|
> **Внимание:** данное руководство не является обучающим курсом по WEB-разработке как таковой. Изложенные ниже сведения о порядке реализации пользовательских панелей, даны с учётом приведённых ранее требований к разработчику.
|
||||||
@ -1081,11 +1129,19 @@ const Loader = ({ title }) => {
|
|||||||
- состоят из значительного числа интерфейсных примитивов
|
- состоят из значительного числа интерфейсных примитивов
|
||||||
- имеют специальный API на стороне сервера БД Системы для управления их содержимым
|
- имеют специальный API на стороне сервера БД Системы для управления их содержимым
|
||||||
|
|
||||||
Необходимо понимать, что с одной стороны, наличие серверно API в БД значительно упрощает взаимодействие с компонентом, с другой стороны - ограничивает возможности его примерения только теми прикладными задачами и функциональными возможностями, которые заложены в него. При этом "примитивы" HTML и MUI, хоть и сложнее в применении, но позволяют "собирать" практически любые интерфейсные решения на вкус разработчика.
|
Необходимо понимать, что с одной стороны, наличие серверного API в БД значительно упрощает взаимодействие с компонентом, с другой стороны - ограничивает возможности его примерения только теми прикладными задачами и функциональными возможностями, которые заложены в него. При этом "примитивы" HTML и MUI, хоть и сложнее в применении, но позволяют "собирать" практически любые интерфейсные решения на вкус разработчика.
|
||||||
|
|
||||||
##### Таблица данных "P8PDataGrid"
|
##### Таблица данных "P8PDataGrid"
|
||||||
|
|
||||||
Предназначена для формирования табличных представлений данных с поддержкой постраничного вывода данных, сортировки и отбора данных по колонкам на строне сервера БД.
|
Предназначена для формирования табличных представлений данных с поддержкой:
|
||||||
|
|
||||||
|
- постраничного вывода данных
|
||||||
|
- сортировки и отбора данных по колонкам на строне сервера БД
|
||||||
|
- сложных заголовков с возможностью отображения/сокрытия уровней
|
||||||
|
- разворачивающихся строк (accordion)
|
||||||
|
- группировки строк с возможностью отображения/сокрытия содержимого группы
|
||||||
|
- фиксации заголовка
|
||||||
|
- фиксацией колонок слева
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@ -1107,10 +1163,13 @@ const MyPanel = () => {
|
|||||||
|
|
||||||
**Свойства**
|
**Свойства**
|
||||||
|
|
||||||
`columnsDef` - обязательный, массив, описание колонок таблицы, содержит объекты вида `{caption: <ЗАГОЛОВОК_КОЛОНКИ>, dataType: <ТИП_ДАННЫХ - NUMB|STR|DATE>, filter: <ПРИЗНАК_ВОЗМОЖНОСТИ_ОТБОРА - trut|false>, hint: <ОПИСАНИЕ_КОЛОНКИ_МОЖЕТ_СОДЕРЖАТЬ_HTML_РАЗМЕТКУ>, name: <НАИМЕНОВАНИЕ_КОЛОНКИ>, order: <ПРИЗНАК_ВОЗМОЖНОСТИ_СОРТИРОВКИ - trut|false>, values: <МАССИВ_ПРЕДОПРЕДЕЛЁННЫХ_ЗНАЧЕНИЙ>, visible: <ПРИЗНАК_ВИДИМОСТИ_КОЛОНКИ - true|false>}`\
|
`columnsDef` - обязательный, массив, описание колонок таблицы, содержит объекты вида `{caption: <ЗАГОЛОВОК_КОЛОНКИ>, dataType: <ТИП_ДАННЫХ - NUMB|STR|DATE>, filter: <ПРИЗНАК_ВОЗМОЖНОСТИ_ОТБОРА - true|false>, hint: <ОПИСАНИЕ_КОЛОНКИ_МОЖЕТ_СОДЕРЖАТЬ_HTML_РАЗМЕТКУ>, name: <НАИМЕНОВАНИЕ_КОЛОНКИ>, order: <ПРИЗНАК_ВОЗМОЖНОСТИ_СОРТИРОВКИ - true|false>, values: <МАССИВ_ПРЕДОПРЕДЕЛЁННЫХ_ЗНАЧЕНИЙ>, visible: <ПРИЗНАК_ВИДИМОСТИ_КОЛОНКИ - true|false>,expandable: <ПРИЗНАК_РАЗВОРАЧИВАЕМОСТИ_ГРУППОВОГО_ЗАГОЛОВКА - true|false>, expanded: <ПРИЗНАК_РАЗВЕРНУТОСТИ_ГРУППОВОГО_ЗАГОЛОВКА - true|false>, parent: <НАИМЕНОВАНИЕ_РОДИТЕЛЬСКОЙ_КОЛОНКИ_В_ГРУППОВОМ_ЗАГОЛОВКЕ>, width: <ШИРИНА_КОЛОНКИ>}`\
|
||||||
`filtersInitial` - необязательныей, массив, начальное состояние фильтров таблицы, содержит объекты вида `{name: <НАИМЕНОВАНИЕ_КОЛОНКИ>, from: <НАЧАЛО_ДИАПАЗОНА_ЗНАЧЕНИЙ_ФИЛЬТРА>, to: <ОКОНЧАНИЕ_ДИАПАЗОНА_ЗНАЧЕНИЙ_ФИЛЬТРА>}`\
|
`filtersInitial` - необязательныей, массив, начальное состояние фильтров таблицы, содержит объекты вида `{name: <НАИМЕНОВАНИЕ_КОЛОНКИ>, from: <НАЧАЛО_ДИАПАЗОНА_ЗНАЧЕНИЙ_ФИЛЬТРА>, to: <ОКОНЧАНИЕ_ДИАПАЗОНА_ЗНАЧЕНИЙ_ФИЛЬТРА>}`\
|
||||||
`rows` - обязательный, массив, отображаемые таблицой строки данных, содержит объекты вида `{<ИМЯ_КОЛОНКИ>: <ЗНАЧЕНИЕ>}`\
|
`groups` - необязательный, массив групп данных, содержит объекты вида `{name: <ИМЯ_ГРУППЫ>, caption: <ЗАГОЛОВОК_ГРУППЫ>, expandable: <ПРИЗНАК_РАЗВОРАЧИВАЕМОСТИ_ГРУППЫ - true|false>, expanded: <ПРИЗНАК_РАЗВЕРНУТОСТИ_ГРУППЫ - true|false>}`\
|
||||||
|
`rows` - обязательный, массив, отображаемые таблицой строки данных, содержит объекты вида `{groupName: <ИМЯ_ГРУППЫ_СОДЕРЖАЩЕЙ_СТРОКУ>, <ИМЯ_КОЛОНКИ>: <ЗНАЧЕНИЕ>}`\
|
||||||
`size` - необязательный, строка, размер отступов при вёрстке таблицы, `small|medium` (см. константу `P8P_DATA_GRID_SIZE` в исходном коде компонента)\
|
`size` - необязательный, строка, размер отступов при вёрстке таблицы, `small|medium` (см. константу `P8P_DATA_GRID_SIZE` в исходном коде компонента)\
|
||||||
|
`fixedHeader` - необязательный, логический, признак фиксации заголовка таблицы\
|
||||||
|
`fixedColumns` - необязательный, число, количество фиксированных колонок слева
|
||||||
`morePages` - обязательный, логический, признак отображения кнопки догрузки данных\
|
`morePages` - обязательный, логический, признак отображения кнопки догрузки данных\
|
||||||
`reloading` - обязательный, логический, признак выполнения обновления данных таблицы (служит для корректной выдачи сообщения об отсуствии данных и корректного отображения "разворачивающихся" строк)\
|
`reloading` - обязательный, логический, признак выполнения обновления данных таблицы (служит для корректной выдачи сообщения об отсуствии данных и корректного отображения "разворачивающихся" строк)\
|
||||||
`expandable` - необязательный, логический, признак необходимости формирования "разворачивающихся" строк, по умолчанию - `false`\
|
`expandable` - необязательный, логический, признак необходимости формирования "разворачивающихся" строк, по умолчанию - `false`\
|
||||||
@ -1124,11 +1183,15 @@ const MyPanel = () => {
|
|||||||
`clearFilterBtnCaption` - обязательный, строка, текст кнопки очистки введённого значения фильтра\
|
`clearFilterBtnCaption` - обязательный, строка, текст кнопки очистки введённого значения фильтра\
|
||||||
`cancelFilterBtnCaption` - обязательный, строка, текст кнопки отмены ввода значения фильтра\
|
`cancelFilterBtnCaption` - обязательный, строка, текст кнопки отмены ввода значения фильтра\
|
||||||
`morePagesBtnCaption` - обязательный, строка, текст кнопки догрузки данных\
|
`morePagesBtnCaption` - обязательный, строка, текст кнопки догрузки данных\
|
||||||
|
`morePagesBtnProps` - необязательный, объект, содержит свойства, которые будут переданы компоненту `Button` - кнопке догрузки данных таблицы\
|
||||||
`noDataFoundText` - необязательный, строка, текст ошибки об отсутствии данных в таблице (если не указн - ошибка не отображается)\
|
`noDataFoundText` - необязательный, строка, текст ошибки об отсутствии данных в таблице (если не указн - ошибка не отображается)\
|
||||||
`headCellRender` - необязательный, функция формирования представления заголовка колонки (если не указана - отображение по умолчанию, согласно `columnsDef`). Сигнатура функции: `f({columnDef})`. Будет вызвана для каждой колонки таблицы, в функцию будет передан объект, поле `columnDef` которого будет содержать описание текущей генерируемой колонки. Должна возвращать объект вида `{cellStyle: <СТИЛИ_ДЛЯ_TableCell>, cellProps: <СВОЙСТВА_ДЛЯ_TableCell>, stackStyle: <СТИЛИ_ДЛЯ_КОНТЕЙНЕРА_Stack>, stackProps: <СВОЙСТВА_ДЛЯ_КОНТЕЙНЕРА_Stack>, data: <ЗНАЧЕНИЕ_ИЛИ_КОМПОНЕТ_Ract_ДЛЯ_СОДЕРЖИМОГО_ЗАГОЛОВКА_КОЛОНКИ>}` или `undefined`, если для заголовка колонки не предполагается специального представления.\
|
`headCellRender` - необязательный, функция формирования представления заголовка колонки (если не указана - отображение по умолчанию, согласно `columnsDef`). Сигнатура функции: `f({columnDef})`. Будет вызвана для каждой колонки таблицы, в функцию будет передан объект, поле `columnDef` которого будет содержать описание текущей генерируемой колонки. Должна возвращать объект вида `{cellStyle: <СТИЛИ_ДЛЯ_TableCell>, cellProps: <СВОЙСТВА_ДЛЯ_TableCell>, stackStyle: <СТИЛИ_ДЛЯ_КОНТЕЙНЕРА_Stack>, stackProps: <СВОЙСТВА_ДЛЯ_КОНТЕЙНЕРА_Stack>, data: <ЗНАЧЕНИЕ_ИЛИ_КОМПОНЕТ_Ract_ДЛЯ_СОДЕРЖИМОГО_ЗАГОЛОВКА_КОЛОНКИ>}` или `undefined`, если для заголовка колонки не предполагается специального представления.\
|
||||||
`dataCellRender` - необязательный, функция формирования представления ячейки (если не указана - отображение по умолчанию, согласно `columnsDef` и текущему элементу `rows`). Сигнатура функции `f({row, columnDef})`. Будет вызвана для каждой ячейки таблицы, в функцию будет передан объект, поле `row` которого будет содержать данные текущей генерируемой строки таблицы, а поле `columnDef` - текущей генерируемой колонки. Должна возвращать объект вида `{cellStyle: <СТИЛИ_ДЛЯ_TableCell>, cellProps: <СВОЙСТВА_ДЛЯ_TableCell>, data: <ЗНАЧЕНИЕ_ИЛИ_КОМПОНЕТ_Ract_ДЛЯ_СОДЕРЖИМОГО_ЯЧЕЙКИ>}` или `undefined`, если для ячейки не предполагается специального представления.\
|
`dataCellRender` - необязательный, функция формирования представления ячейки (если не указана - отображение по умолчанию, согласно `columnsDef` и текущему элементу `rows`). Сигнатура функции `f({row, columnDef})`. Будет вызвана для каждой ячейки таблицы, в функцию будет передан объект, поле `row` которого будет содержать данные текущей генерируемой строки таблицы, а поле `columnDef` - текущей генерируемой колонки. Должна возвращать объект вида `{cellStyle: <СТИЛИ_ДЛЯ_TableCell>, cellProps: <СВОЙСТВА_ДЛЯ_TableCell>, data: <ЗНАЧЕНИЕ_ИЛИ_КОМПОНЕТ_Ract_ДЛЯ_СОДЕРЖИМОГО_ЯЧЕЙКИ>}` или `undefined`, если для ячейки не предполагается специального представления.\
|
||||||
|
`groupCellRender` - необязательный, функция формирования представления заголовка группы (если не указана - отображение заголовка группы по умолчанию). Сигнатура функции `f({columnsDef, group})`. Будет вызвана для каждого элемента из `groups` при генерации представления группы. В функцию будет передан объект, поле `columnsDef` которого будет содержать полное описание колонок таблицы, а поле `group` - описание группы, представление заголовка которой сейчас формируется. Должна возвращать объект вида `{cellStyle: <СТИЛИ_ДЛЯ_TableCell>, cellProps: <СВОЙСТВА_ДЛЯ_TableCell>, data: <ЗНАЧЕНИЕ_ИЛИ_КОМПОНЕТ_Ract_ДЛЯ_СОДЕРЖИМОГО_ЯЧЕЙКИ>}` или `undefined`, если для ячейки заголовка группы не предполагается специального представления.\
|
||||||
`rowExpandRender` - необязательный, функция формирования представления развёрнутой строки таблицы (если не указана - интерфейсный элемент для "разворачивания" строки не будет отображён, даже при `expandable=true`). Сигнатура функции `f({row, columnsDef})`. Будет вызвана в момент "развёртывания" строки таблицы пользователем, в функцию будет передан объект, поле `row` которого будет содержать данные текущей "разворачиваемой" строки таблицы, а поле `columnsDef` - описание колонок таблицы. Должна возвращать представление "развёрнутой" строки таблицы в виде значения или Rect-компонента.\
|
`rowExpandRender` - необязательный, функция формирования представления развёрнутой строки таблицы (если не указана - интерфейсный элемент для "разворачивания" строки не будет отображён, даже при `expandable=true`). Сигнатура функции `f({row, columnsDef})`. Будет вызвана в момент "развёртывания" строки таблицы пользователем, в функцию будет передан объект, поле `row` которого будет содержать данные текущей "разворачиваемой" строки таблицы, а поле `columnsDef` - описание колонок таблицы. Должна возвращать представление "развёрнутой" строки таблицы в виде значения или Rect-компонента.\
|
||||||
`valueFormatter` - необязательный, функция форматирования значений колонки (если не указана - форматирование согласно `columnsDef`). Сигнатура функции `f({value, columnDef})`. Будет вызвана в момент формирования ячейки таблицы (если ранее для ячейки `dataCellRender` не вернул специального представления) и в моммент формирования фильтра для ячейки. Должна возвращать отформатированное значение ячейки или React-компонент для её представления.\
|
`valueFormatter` - необязательный, функция форматирования значений колонки (если не указана - форматирование согласно `columnsDef`). Сигнатура функции `f({value, columnDef})`. Будет вызвана в момент формирования ячейки таблицы (если ранее для ячейки `dataCellRender` не вернул специального представления) и в моммент формирования фильтра для ячейки. Должна возвращать отформатированное значение ячейки или React-компонент для её представления.\
|
||||||
|
`containerComponent` - необязательный, функциональный React-компонент или строка с именем HTML-тэга, будет применён для формирования в иерархии DOM элемента-обёртки (контейнера) таблицы (по умолчанию используется компонет библиотеки MUI - Paper)\
|
||||||
|
`containerComponentProps` - необязательный, объект, содержит свойства, которые будут переданы компоненту-контейнеру таблицы\
|
||||||
`onOrderChanged` - необязательный, функция, будет вызвана при изменении пользователем состояния сортировок таблицы. Сигнатура функции `f({orders})`, результат функции не интерпретируется. В функцию передаётся объект, поле `orders` которого, содержит текущее состояние сортировок таблицы. Объект `orders` - массив, содержащий элементы вида `{name: <НАИМЕНОВАНИЕ_КОЛОНКИ>, direction: <ASC|DESC>}`. Функция применяется для инициации обновления данных в таблице.\
|
`onOrderChanged` - необязательный, функция, будет вызвана при изменении пользователем состояния сортировок таблицы. Сигнатура функции `f({orders})`, результат функции не интерпретируется. В функцию передаётся объект, поле `orders` которого, содержит текущее состояние сортировок таблицы. Объект `orders` - массив, содержащий элементы вида `{name: <НАИМЕНОВАНИЕ_КОЛОНКИ>, direction: <ASC|DESC>}`. Функция применяется для инициации обновления данных в таблице.\
|
||||||
`onFilterChanged` - необязательный, функция, будет вызвана при изменении пользователем состояния фильтров таблицы. Сигнатура функции `f({filters})`, результат функции не интерпретируется. В функцию передаётся объект, поле `filters` которого, содержит текущее состояние фильтров таблицы. Объект `filters` - массив, содержащий элементы вида `{name: <НАИМЕНОВАНИЕ_КОЛОНКИ>, from: <ЗНАЧЕНИЕ_НАЧАЛА_ДИАПАЗОНА_ОТБОРА>, to: <ЗНАЧЕНИЕ_ОКОНЧАНИЯ_ДИАПАЗОНА_ОТБОРА>}`. Функция применяется для инициации обновления данных в таблице.\
|
`onFilterChanged` - необязательный, функция, будет вызвана при изменении пользователем состояния фильтров таблицы. Сигнатура функции `f({filters})`, результат функции не интерпретируется. В функцию передаётся объект, поле `filters` которого, содержит текущее состояние фильтров таблицы. Объект `filters` - массив, содержащий элементы вида `{name: <НАИМЕНОВАНИЕ_КОЛОНКИ>, from: <ЗНАЧЕНИЕ_НАЧАЛА_ДИАПАЗОНА_ОТБОРА>, to: <ЗНАЧЕНИЕ_ОКОНЧАНИЯ_ДИАПАЗОНА_ОТБОРА>}`. Функция применяется для инициации обновления данных в таблице.\
|
||||||
`onPagesCountChanged` - необязательный, функция, будет вызвана при изменении пользователем количества отображаемых страниц данных таблицы. Сигнатура функции `f()`, результат функции не интерпретируется. Функция применяется для инициации обновления данных в таблице.\
|
`onPagesCountChanged` - необязательный, функция, будет вызвана при изменении пользователем количества отображаемых страниц данных таблицы. Сигнатура функции `f()`, результат функции не интерпретируется. Функция применяется для инициации обновления данных в таблице.\
|
||||||
@ -1151,21 +1214,22 @@ const MyPanel = () => {
|
|||||||
|
|
||||||
**API на сервере БД**
|
**API на сервере БД**
|
||||||
|
|
||||||
Такие свойства как `columnsDef` и `rows` компонента `P8PDataGrid` требуют от разработчика передачи данных в определённом формате. Это не обязательно должна быть информация из БД Системы, можно, например, просто объявить переменные в коде панели, задать им соответствующие значения и передать в компонент. Но изначально, таблица данных задумывалась для отображения сведений, полученных их учётных регистров Системы. Такие сведения, как правило, собираются хранимым объектом БД, исполняемым из панели посредством вызова `executeStored`. С целью снижения трудозатрат на приведение собранных хранимым объектом данных к форматам, потребляемым `P8PDataGrid`, реализован специальный API на стороне сервера БД.
|
Такие свойства как `columnsDef`, `groups`, `rows` компонента `P8PDataGrid` требуют от разработчика передачи данных в определённом формате. Это не обязательно должна быть информация из БД Системы, можно, например, просто объявить переменные в коде панели, задать им соответствующие значения и передать в компонент. Но изначально, таблица данных задумывалась для отображения сведений, полученных их учётных регистров Системы. Такие сведения, как правило, собираются хранимым объектом БД, исполняемым из панели посредством вызова `executeStored`. С целью снижения трудозатрат на приведение собранных хранимым объектом данных к форматам, потребляемым `P8PDataGrid`, реализован специальный API на стороне сервера БД.
|
||||||
|
|
||||||
Для таблицы данных это (см. детальные описания программных интерфейсов в пакете `PKG_P8PANELS_VISUAL`):
|
Для таблицы данных это (см. детальные описания программных интерфейсов в пакете `PKG_P8PANELS_VISUAL`):
|
||||||
`PKG_P8PANELS_VISUAL.TDATA_GRID_MAKE` - функция, инициализация таблицы данных, возвращает объект для хранения описания таблицы\
|
`PKG_P8PANELS_VISUAL.TDATA_GRID_MAKE` - функция, инициализация таблицы данных, возвращает объект для хранения описания таблицы\
|
||||||
`PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF` - процедура, добавление описания колонки в таблицу, принимает на вход объект с описанием таблицы и параметры, описывающие добавляемую колонку (её имя, заголовок, тип данных, видимость, доступность отбора и сортировки, набор предопределённых значений и т.д.)\
|
`PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF` - процедура, добавление описания колонки в таблицу, принимает на вход объект с описанием таблицы и параметры, описывающие добавляемую колонку (её имя, заголовок, тип данных, видимость, доступность отбора и сортировки, набор предопределённых значений и т.д.)\
|
||||||
`PKG_P8PANELS_VISUAL.TCOL_VALS_ADD` - процедура, служит для формирования коллекции предопределённых значений колонки таблицы (подготовленная коллекция передаётся в `RCOL_VALS` вызова `TDATA_GRID_ADD_COL_DEF`, если необходимо)\
|
`PKG_P8PANELS_VISUAL.TCOL_VALS_ADD` - процедура, служит для формирования коллекции предопределённых значений колонки таблицы (подготовленная коллекция передаётся в `RCOL_VALS` вызова `TDATA_GRID_ADD_COL_DEF`, если необходимо)\
|
||||||
|
`PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_GROUP` - процедура, служит для добавления описания группы в таблицу данных, на вход принимает объект для хранения описания таблицы и параметры добавляемой группы\
|
||||||
`PKG_P8PANELS_VISUAL.TROW_ADD_COL` - процедура, добавляет значение колонки к строке таблицы (значение указывается явно в `[S|N|D]VALUE`)\
|
`PKG_P8PANELS_VISUAL.TROW_ADD_COL` - процедура, добавляет значение колонки к строке таблицы (значение указывается явно в `[S|N|D]VALUE`)\
|
||||||
`PKG_P8PANELS_VISUAL.TROW_ADD_CUR_COL[S|N|D]` - процедура, добавляет значение колонки к строке таблицы (значение указывается через ссылку на номер колонки `NPOSITION` в курсоре `ICURSOR` динамического SQL)\
|
`PKG_P8PANELS_VISUAL.TROW_ADD_CUR_COL[S|N|D]` - процедура, добавляет значение колонки к строке таблицы (значение указывается через ссылку на номер колонки `NPOSITION` в курсоре `ICURSOR` динамического SQL)\
|
||||||
`PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_ROW` - процедура, добавляет сформированную строку со значениями колонок в таблицу данных, на вход принимает объект для хранения описания таблицы и описание строки, сформированное вызовами `TROW_ADD_COL` и `TROW_ADD_CUR_COL[S|N|D]`\
|
`PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_ROW` - процедура, добавляет сформированную строку со значениями колонок в таблицу данных, на вход принимает объект для хранения описания таблицы и описание строки, сформированное вызовами `TROW_ADD_COL` и `TROW_ADD_CUR_COL[S|N|D]`, а так же год группы, в которую должна быть включена строка\
|
||||||
`PKG_P8PANELS_VISUAL.TDATA_GRID_TO_XML` - функция, производит сериализацию объекта, описывающего таблицу данных, в специальный XML-формат, корректно интерпретируемый клиентским компонентом `P8PDataGrid` при передаче в WEB-приложение\
|
`PKG_P8PANELS_VISUAL.TDATA_GRID_TO_XML` - функция, производит сериализацию объекта, описывающего таблицу данных, в специальный XML-формат, корректно интерпретируемый клиентским компонентом `P8PDataGrid` при передаче в WEB-приложение\
|
||||||
`PKG_P8PANELS_VISUAL.TORDERS_FROM_XML` - функция, служит для десериализации (как правило, полученного от клиентского приложения) состояния сортировок в коллекцию формата `TORDERS`, на вход принимает `CLOB` с сериализованным состоянием сортировок таблицы в виде `BASE64(<orders><name>ИМЯ</name><direction>ASC|DESC</direction></orders>...)` (клиентское приложение должно обеспечить передачу состояния сортировок в этом формате, см. пример ниже)\
|
`PKG_P8PANELS_VISUAL.TORDERS_FROM_XML` - функция, служит для десериализации (как правило, полученного от клиентского приложения) состояния сортировок в коллекцию формата `TORDERS`, на вход принимает `CLOB` с сериализованным состоянием сортировок таблицы в виде `BASE64(<orders><name>ИМЯ</name><direction>ASC|DESC</direction></orders>...)` (клиентское приложение должно обеспечить передачу состояния сортировок в этом формате, см. пример ниже)\
|
||||||
`PKG_P8PANELS_VISUAL.TORDERS_SET_QUERY` - процедура, вспомогательная утилита, производит в тексте SQL-запроса, поданного на вход, замену указанного шаблона на конструкцию `order by`, сформированную с учётом переданной коллекции `RORDERS`\
|
`PKG_P8PANELS_VISUAL.TORDERS_SET_QUERY` - процедура, вспомогательная утилита, производит в тексте SQL-запроса, поданного на вход, замену указанного шаблона на конструкцию `order by`, сформированную с учётом переданной коллекции `RORDERS`\
|
||||||
`PKG_P8PANELS_VISUAL.TFILTERS_FROM_XML` - функция, служит для десериализации (как правило, полученного от клиентского приложения) состояния фильтров в коллекцию формата `TFILTERS`, на вход принимает `CLOB` с сериализованным состоянием фильтров таблицы в виде `BASE64(<filters><name>ИМЯ</name><from>ЗНАЧЕНИЕ</from><to>ЗНАЧЕНИЕ</to></filters>...)` (клиентское приложение должно обеспечить передачу состояния фильтров в этом формате, см. пример ниже)\
|
`PKG_P8PANELS_VISUAL.TFILTERS_FROM_XML` - функция, служит для десериализации (как правило, полученного от клиентского приложения) состояния фильтров в коллекцию формата `TFILTERS`, на вход принимает `CLOB` с сериализованным состоянием фильтров таблицы в виде `BASE64(<filters><name>ИМЯ</name><from>ЗНАЧЕНИЕ</from><to>ЗНАЧЕНИЕ</to></filters>...)` (клиентское приложение должно обеспечить передачу состояния фильтров в этом формате, см. пример ниже)\
|
||||||
`PKG_P8PANELS_VISUAL.TFILTERS_SET_QUERY` - процедура, вспомогательная утилита, производит вызов указанной серверной процедуры отбора с учётом переданных переменных окружения и значений в `RFILTERS`\
|
`PKG_P8PANELS_VISUAL.TFILTERS_SET_QUERY` - процедура, вспомогательная утилита, производит вызов указанной серверной процедуры отбора с учётом переданных переменных окружения и значений в `RFILTERS`\
|
||||||
`PKG_P8PANELS_VISUAL.UTL_ROWS_LIMITS_CALC` - процедура, вспомогательная утилита, служит для конвертации номера страницы данных и размера страницы данных в границы диапазона строк выборки (как правило, клиентскому приложению удобнее прислать на сервер текущий номер страницы и её размер, в то время к в запросах, для выборки, удобнее применять границы диапазонов строк)\
|
`PKG_P8PANELS_VISUAL.UTL_ROWS_LIMITS_CALC` - процедура, вспомогательная утилита, служит для конвертации номера страницы данных и размера страницы данных в границы диапазона строк выборки (как правило, клиентскому приложению удобнее прислать на сервер текущий номер страницы и её размер, в то время к в запросах, для выборки, удобнее применять границы диапазонов строк)
|
||||||
|
|
||||||
**Пример**
|
**Пример**
|
||||||
|
|
||||||
@ -1193,6 +1257,10 @@ const MyPanel = () => {
|
|||||||
NROW_TO PKG_STD.TREF; -- Номер строки по
|
NROW_TO PKG_STD.TREF; -- Номер строки по
|
||||||
CSQL clob; -- Буфер для запроса
|
CSQL clob; -- Буфер для запроса
|
||||||
ICURSOR integer; -- Курсор для исполнения запроса
|
ICURSOR integer; -- Курсор для исполнения запроса
|
||||||
|
SGROUP PKG_STD.TSTRING; -- Буфер для группы
|
||||||
|
SAGNINFO PKG_STD.TSTRING; -- Буфер для "Сведений"
|
||||||
|
SAGNNAME PKG_STD.TSTRING; -- Буфер для "Наименования"
|
||||||
|
NAGNTYPE PKG_STD.TREF; -- Буфер для "Типа"
|
||||||
begin
|
begin
|
||||||
/* Читаем фильтры */
|
/* Читаем фильтры */
|
||||||
RF := PKG_P8PANELS_VISUAL.TFILTERS_FROM_XML(CFILTERS => CFILTERS);
|
RF := PKG_P8PANELS_VISUAL.TFILTERS_FROM_XML(CFILTERS => CFILTERS);
|
||||||
@ -1204,7 +1272,7 @@ const MyPanel = () => {
|
|||||||
NROW_FROM => NROW_FROM,
|
NROW_FROM => NROW_FROM,
|
||||||
NROW_TO => NROW_TO);
|
NROW_TO => NROW_TO);
|
||||||
/* Инициализируем таблицу данных */
|
/* Инициализируем таблицу данных */
|
||||||
RDG := PKG_P8PANELS_VISUAL.TDATA_GRID_MAKE();
|
RDG := PKG_P8PANELS_VISUAL.TDATA_GRID_MAKE(BFIXED_HEADER => true, NFIXED_COLUMNS => 2);
|
||||||
/* Описываем колонки таблицы данных */
|
/* Описываем колонки таблицы данных */
|
||||||
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
||||||
SNAME => 'SAGNABBR',
|
SNAME => 'SAGNABBR',
|
||||||
@ -1213,7 +1281,17 @@ const MyPanel = () => {
|
|||||||
SCOND_FROM => 'AgentAbbr',
|
SCOND_FROM => 'AgentAbbr',
|
||||||
BVISIBLE => true,
|
BVISIBLE => true,
|
||||||
BORDER => true,
|
BORDER => true,
|
||||||
BFILTER => true);
|
BFILTER => true,
|
||||||
|
NWIDTH => 150);
|
||||||
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
||||||
|
SNAME => 'SAGNINFO',
|
||||||
|
SCAPTION => 'Сведения',
|
||||||
|
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR,
|
||||||
|
BVISIBLE => true,
|
||||||
|
BORDER => false,
|
||||||
|
BFILTER => false,
|
||||||
|
BEXPANDABLE => true,
|
||||||
|
NWIDTH => 300);
|
||||||
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
||||||
SNAME => 'SAGNNAME',
|
SNAME => 'SAGNNAME',
|
||||||
SCAPTION => 'Наименование',
|
SCAPTION => 'Наименование',
|
||||||
@ -1221,7 +1299,9 @@ const MyPanel = () => {
|
|||||||
SCOND_FROM => 'AgentName',
|
SCOND_FROM => 'AgentName',
|
||||||
BVISIBLE => true,
|
BVISIBLE => true,
|
||||||
BORDER => true,
|
BORDER => true,
|
||||||
BFILTER => true);
|
BFILTER => true,
|
||||||
|
SPARENT => 'SAGNINFO',
|
||||||
|
NWIDTH => 200);
|
||||||
PKG_P8PANELS_VISUAL.TCOL_VALS_ADD(RCOL_VALS => RAGN_TYPES, NVALUE => 0);
|
PKG_P8PANELS_VISUAL.TCOL_VALS_ADD(RCOL_VALS => RAGN_TYPES, NVALUE => 0);
|
||||||
PKG_P8PANELS_VISUAL.TCOL_VALS_ADD(RCOL_VALS => RAGN_TYPES, NVALUE => 1);
|
PKG_P8PANELS_VISUAL.TCOL_VALS_ADD(RCOL_VALS => RAGN_TYPES, NVALUE => 1);
|
||||||
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
||||||
@ -1232,27 +1312,46 @@ const MyPanel = () => {
|
|||||||
BVISIBLE => true,
|
BVISIBLE => true,
|
||||||
BORDER => true,
|
BORDER => true,
|
||||||
BFILTER => true,
|
BFILTER => true,
|
||||||
|
SPARENT => 'SAGNINFO',
|
||||||
|
NWIDTH => 100,
|
||||||
RCOL_VALS => RAGN_TYPES,
|
RCOL_VALS => RAGN_TYPES,
|
||||||
SHINT => 'В Системе бывают контрагенты двух типов:<br>' ||
|
SHINT => 'В Системе бывают контрагенты двух типов:<br>' ||
|
||||||
'<b style="color:blue">Юридическое лицо</b> - организация, которая имеет в собственности, хозяйственном ведении ' ||
|
'<b style="color:blue">Юридическое лицо</b> - организация, которая имеет в собственности, хозяйственном ведении ' ||
|
||||||
'или оперативном управлении обособленное имущество, отвечает по своим обязательствам этим имуществом, может от своего ' ||
|
'или оперативном управлении обособленное имущество, отвечает по своим обязательствам этим имуществом, может от своего ' ||
|
||||||
'имени приобретать и осуществлять имущественные и личные неимущественные права, отвечать по своим обязанностям.<br>' ||
|
'имени приобретать и осуществлять имущественные и личные неимущественные права, отвечать по своим обязанностям.<br>' ||
|
||||||
'<b style="color:green">Физическое лицо</b> - субъект правовых отношений, представляющий собой одного человека.');
|
'<b style="color:green">Физическое лицо</b> - субъект правовых отношений, представляющий собой одного человека.');
|
||||||
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
||||||
|
SNAME => 'SFULLNAME',
|
||||||
|
SCAPTION => 'Полное наименование',
|
||||||
|
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR);
|
||||||
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
||||||
|
SNAME => 'SAGNIDNUMB',
|
||||||
|
SCAPTION => 'ИНН',
|
||||||
|
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR);
|
||||||
/* Обходим данные */
|
/* Обходим данные */
|
||||||
begin
|
begin
|
||||||
/* Собираем запрос */
|
/* Добавляем подсказку совместимости */
|
||||||
CSQL := 'select *
|
CSQL := PKG_SQL_BUILD.COMPATIBLE(SSQL => CSQL);
|
||||||
from (select D.*,
|
/* Формируем запрос */
|
||||||
ROWNUM NROW
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => 'select *');
|
||||||
from (select AG.AGNABBR SAGNABBR,
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' from (select D.*,');
|
||||||
AG.AGNNAME SAGNNAME,
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => PKG_SQL_BUILD.SQLROWNUM() || ' NROW');
|
||||||
AG.AGNTYPE NAGNTYPE
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' from (select AG.AGNABBR SAGNABBR,');
|
||||||
from AGNLIST AG
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' AG.AGNNAME SAGNNAME,');
|
||||||
where exists (select /*+ INDEX(UP I_USERPRIV_CATALOG_ROLEID) */ null from USERPRIV UP where UP.CATALOG = AG.CRN and UP.ROLEID in (select /*+ INDEX(UR I_USERROLES_AUTHID_FK) */ UR.ROLEID from USERROLES UR where UR.AUTHID = UTILIZER)
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' AG.AGNTYPE NAGNTYPE,');
|
||||||
union all
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' AG.FULLNAME SFULLNAME,');
|
||||||
select /*+ INDEX(UP I_USERPRIV_CATALOG_AUTHID) */ null from USERPRIV UP where UP.CATALOG = AG.CRN and UP.AUTHID = UTILIZER)
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' AG.AGNIDNUMB SAGNIDNUMB');
|
||||||
and AG.RN in (select ID from COND_BROKER_IDSMART where IDENT = :NIDENT) %ORDER_BY%) D) F
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' from AGNLIST AG');
|
||||||
where F.NROW between :NROW_FROM and :NROW_TO';
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' where exists (select ' || PKG_SQL_BUILD.SET_HINT(SHINT => 'INDEX(UP I_USERPRIV_CATALOG_ROLEID)') || ' null');
|
||||||
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' from USERPRIV UP');
|
||||||
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' where UP."CATALOG" = AG.CRN');
|
||||||
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' and UP.ROLEID in (select ' || PKG_SQL_BUILD.SET_HINT(SHINT => 'INDEX(UR I_USERROLES_AUTHID_FK)') || ' UR.ROLEID');
|
||||||
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' from USERROLES UR where UR.AUTHID = UTILIZER())');
|
||||||
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' union all');
|
||||||
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' select ' || PKG_SQL_BUILD.SET_HINT(SHINT => 'INDEX(UP I_USERPRIV_CATALOG_AUTHID)') || ' null');
|
||||||
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' from USERPRIV UP where UP."CATALOG" = AG.CRN and UP.AUTHID = UTILIZER())');
|
||||||
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' and AG.RN in (select ID from COND_BROKER_IDSMART where IDENT = :NIDENT) %ORDER_BY%) D) F');
|
||||||
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' where F.NROW between :NROW_FROM and :NROW_TO');
|
||||||
/* Учтём сортировки */
|
/* Учтём сортировки */
|
||||||
PKG_P8PANELS_VISUAL.TORDERS_SET_QUERY(RDATA_GRID => RDG, RORDERS => RO, SPATTERN => '%ORDER_BY%', CSQL => CSQL);
|
PKG_P8PANELS_VISUAL.TORDERS_SET_QUERY(RDATA_GRID => RDG, RORDERS => RO, SPATTERN => '%ORDER_BY%', CSQL => CSQL);
|
||||||
/* Учтём фильтры */
|
/* Учтём фильтры */
|
||||||
@ -1273,6 +1372,9 @@ const MyPanel = () => {
|
|||||||
PKG_SQL_DML.DEFINE_COLUMN_STR(ICURSOR => ICURSOR, IPOSITION => 1);
|
PKG_SQL_DML.DEFINE_COLUMN_STR(ICURSOR => ICURSOR, IPOSITION => 1);
|
||||||
PKG_SQL_DML.DEFINE_COLUMN_STR(ICURSOR => ICURSOR, IPOSITION => 2);
|
PKG_SQL_DML.DEFINE_COLUMN_STR(ICURSOR => ICURSOR, IPOSITION => 2);
|
||||||
PKG_SQL_DML.DEFINE_COLUMN_NUM(ICURSOR => ICURSOR, IPOSITION => 3);
|
PKG_SQL_DML.DEFINE_COLUMN_NUM(ICURSOR => ICURSOR, IPOSITION => 3);
|
||||||
|
PKG_SQL_DML.DEFINE_COLUMN_STR(ICURSOR => ICURSOR, IPOSITION => 4);
|
||||||
|
PKG_SQL_DML.DEFINE_COLUMN_STR(ICURSOR => ICURSOR, IPOSITION => 5);
|
||||||
|
PKG_SQL_DML.DEFINE_COLUMN_NUM(ICURSOR => ICURSOR, IPOSITION => 6);
|
||||||
/* Делаем выборку */
|
/* Делаем выборку */
|
||||||
if (PKG_SQL_DML.EXECUTE(ICURSOR => ICURSOR) = 0) then
|
if (PKG_SQL_DML.EXECUTE(ICURSOR => ICURSOR) = 0) then
|
||||||
null;
|
null;
|
||||||
@ -1281,9 +1383,32 @@ const MyPanel = () => {
|
|||||||
while (PKG_SQL_DML.FETCH_ROWS(ICURSOR => ICURSOR) > 0)
|
while (PKG_SQL_DML.FETCH_ROWS(ICURSOR => ICURSOR) > 0)
|
||||||
loop
|
loop
|
||||||
/* Добавляем колонки с данными */
|
/* Добавляем колонки с данными */
|
||||||
PKG_P8PANELS_VISUAL.TROW_ADD_CUR_COLS(RROW => RDG_ROW, SNAME => 'SAGNABBR', ICURSOR => ICURSOR, NPOSITION => 1, BCLEAR => true);
|
PKG_SQL_DML.COLUMN_VALUE_STR(ICURSOR => ICURSOR, IPOSITION => 2, SVALUE => SAGNNAME);
|
||||||
PKG_P8PANELS_VISUAL.TROW_ADD_CUR_COLS(RROW => RDG_ROW, SNAME => 'SAGNNAME', ICURSOR => ICURSOR, NPOSITION => 2);
|
PKG_SQL_DML.COLUMN_VALUE_NUM(ICURSOR => ICURSOR, IPOSITION => 3, NVALUE => NAGNTYPE);
|
||||||
PKG_P8PANELS_VISUAL.TROW_ADD_CUR_COLN(RROW => RDG_ROW, SNAME => 'NAGNTYPE', ICURSOR => ICURSOR, NPOSITION => 3);
|
if (NAGNTYPE = 0) then
|
||||||
|
SGROUP := 'JUR';
|
||||||
|
SAGNINFO := SAGNNAME || ', ЮЛ';
|
||||||
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_GROUP(RDATA_GRID => RDG,
|
||||||
|
SNAME => SGROUP,
|
||||||
|
SCAPTION => 'Юридические лица',
|
||||||
|
BEXPANDABLE => true,
|
||||||
|
BEXPANDED => false);
|
||||||
|
else
|
||||||
|
SGROUP := 'PERS';
|
||||||
|
SAGNINFO := SAGNNAME || ', ФЛ';
|
||||||
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_GROUP(RDATA_GRID => RDG,
|
||||||
|
SNAME => SGROUP,
|
||||||
|
SCAPTION => 'Физические лица',
|
||||||
|
BEXPANDABLE => true,
|
||||||
|
BEXPANDED => false);
|
||||||
|
end if;
|
||||||
|
RDG_ROW := PKG_P8PANELS_VISUAL.TROW_MAKE(SGROUP => SGROUP);
|
||||||
|
PKG_P8PANELS_VISUAL.TROW_ADD_CUR_COLS(RROW => RDG_ROW, SNAME => 'SAGNABBR', ICURSOR => ICURSOR, NPOSITION => 1);
|
||||||
|
PKG_P8PANELS_VISUAL.TROW_ADD_COL(RROW => RDG_ROW, SNAME => 'SAGNINFO', SVALUE => SAGNINFO);
|
||||||
|
PKG_P8PANELS_VISUAL.TROW_ADD_COL(RROW => RDG_ROW, SNAME => 'SAGNNAME', SVALUE => SAGNNAME);
|
||||||
|
PKG_P8PANELS_VISUAL.TROW_ADD_COL(RROW => RDG_ROW, SNAME => 'NAGNTYPE', NVALUE => NAGNTYPE);
|
||||||
|
PKG_P8PANELS_VISUAL.TROW_ADD_CUR_COLS(RROW => RDG_ROW, SNAME => 'SFULLNAME', ICURSOR => ICURSOR, NPOSITION => 4);
|
||||||
|
PKG_P8PANELS_VISUAL.TROW_ADD_CUR_COLS(RROW => RDG_ROW, SNAME => 'SAGNIDNUMB', ICURSOR => ICURSOR, NPOSITION => 5);
|
||||||
/* Добавляем строку в таблицу */
|
/* Добавляем строку в таблицу */
|
||||||
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_ROW(RDATA_GRID => RDG, RROW => RDG_ROW);
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_ROW(RDATA_GRID => RDG, RROW => RDG_ROW);
|
||||||
end loop;
|
end loop;
|
||||||
@ -1303,11 +1428,12 @@ const MyPanel = () => {
|
|||||||
|
|
||||||
```
|
```
|
||||||
import React, { useState, useContext, useCallback, useEffect } from "react"; //Классы React
|
import React, { useState, useContext, useCallback, useEffect } from "react"; //Классы React
|
||||||
import { Typography, Grid, Stack, Icon, Box } from "@mui/material"; //Интерфейсные элементы
|
import { Typography, Grid, Stack, Icon, Box, Button } from "@mui/material"; //Интерфейсные элементы
|
||||||
import { object2Base64XML } from "../../core/utils"; //Вспомогательные процедуры и функции
|
import { object2Base64XML } from "../../core/utils"; //Вспомогательные процедуры и функции
|
||||||
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||||
|
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||||
|
|
||||||
//Размер страницы данных
|
//Размер страницы данных
|
||||||
const DATA_GRID_PAGE_SIZE = 5;
|
const DATA_GRID_PAGE_SIZE = 5;
|
||||||
@ -1315,7 +1441,8 @@ const DATA_GRID_PAGE_SIZE = 5;
|
|||||||
//Стили
|
//Стили
|
||||||
const STYLES = {
|
const STYLES = {
|
||||||
CONTAINER: { textAlign: "center", paddingTop: "20px" },
|
CONTAINER: { textAlign: "center", paddingTop: "20px" },
|
||||||
TITLE: { paddingBottom: "15px" }
|
TITLE: { paddingBottom: "15px" },
|
||||||
|
DATA_GRID_CONTAINER: { maxWidth: 700, maxHeight: 500, minHeight: 500 }
|
||||||
};
|
};
|
||||||
|
|
||||||
//Формирование значения для колонки "Тип контрагента"
|
//Формирование значения для колонки "Тип контрагента"
|
||||||
@ -1360,6 +1487,9 @@ const headCellRender = ({ columnDef }) => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//Генерация представления ячейки заголовка группы
|
||||||
|
export const groupCellRender = () => ({ cellStyle: { padding: "2px" } });
|
||||||
|
|
||||||
//Пример: Таблица данных "P8PDataGrid"
|
//Пример: Таблица данных "P8PDataGrid"
|
||||||
const DataGrid = ({ title }) => {
|
const DataGrid = ({ title }) => {
|
||||||
//Собственное состояние - таблица данных
|
//Собственное состояние - таблица данных
|
||||||
@ -1368,15 +1498,21 @@ const DataGrid = ({ title }) => {
|
|||||||
columnsDef: [],
|
columnsDef: [],
|
||||||
filters: null,
|
filters: null,
|
||||||
orders: null,
|
orders: null,
|
||||||
|
groups: [],
|
||||||
rows: [],
|
rows: [],
|
||||||
reload: true,
|
reload: true,
|
||||||
pageNumber: 1,
|
pageNumber: 1,
|
||||||
morePages: true
|
morePages: true,
|
||||||
|
fixedHeader: false,
|
||||||
|
fixedColumns: 0
|
||||||
});
|
});
|
||||||
|
|
||||||
//Подключение к контексту взаимодействия с сервером
|
//Подключение к контексту взаимодействия с сервером
|
||||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||||
|
|
||||||
|
//Подключение к контексту приложения
|
||||||
|
const { pOnlineShowDocument } = useContext(ApplicationСtx);
|
||||||
|
|
||||||
//Загрузка данных таблицы с сервера
|
//Загрузка данных таблицы с сервера
|
||||||
const loadData = useCallback(async () => {
|
const loadData = useCallback(async () => {
|
||||||
if (dataGrid.reload) {
|
if (dataGrid.reload) {
|
||||||
@ -1393,8 +1529,15 @@ const DataGrid = ({ title }) => {
|
|||||||
});
|
});
|
||||||
setdataGrid(pv => ({
|
setdataGrid(pv => ({
|
||||||
...pv,
|
...pv,
|
||||||
|
fixedHeader: data.XDATA_GRID.fixedHeader,
|
||||||
|
fixedColumns: data.XDATA_GRID.fixedColumns,
|
||||||
columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,
|
columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,
|
||||||
rows: pv.pageNumber == 1 ? [...(data.XROWS || [])] : [...pv.rows, ...(data.XROWS || [])],
|
rows: pv.pageNumber == 1 ? [...(data.XROWS || [])] : [...pv.rows, ...(data.XROWS || [])],
|
||||||
|
groups: data.XGROUPS
|
||||||
|
? pv.pageNumber == 1
|
||||||
|
? [...data.XGROUPS]
|
||||||
|
: [...pv.groups, ...data.XGROUPS.filter(g => !pv.groups.find(pg => pg.name == g.name))]
|
||||||
|
: [...pv.groups],
|
||||||
dataLoaded: true,
|
dataLoaded: true,
|
||||||
reload: false,
|
reload: false,
|
||||||
morePages: (data.XROWS || []).length >= DATA_GRID_PAGE_SIZE
|
morePages: (data.XROWS || []).length >= DATA_GRID_PAGE_SIZE
|
||||||
@ -1411,6 +1554,9 @@ const DataGrid = ({ title }) => {
|
|||||||
//При изменении количества отображаемых страниц
|
//При изменении количества отображаемых страниц
|
||||||
const handlePagesCountChanged = () => setdataGrid(pv => ({ ...pv, pageNumber: pv.pageNumber + 1, reload: true }));
|
const handlePagesCountChanged = () => setdataGrid(pv => ({ ...pv, pageNumber: pv.pageNumber + 1, reload: true }));
|
||||||
|
|
||||||
|
//При нажатии на копку контрагента
|
||||||
|
const handleAgnButtonClicked = agnCode => pOnlineShowDocument({ unitCode: "AGNLIST", document: agnCode, inRnParameter: "in_AGNABBR" });
|
||||||
|
|
||||||
//При необходимости обновить данные таблицы
|
//При необходимости обновить данные таблицы
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
loadData();
|
loadData();
|
||||||
@ -1424,22 +1570,31 @@ const DataGrid = ({ title }) => {
|
|||||||
</Typography>
|
</Typography>
|
||||||
<Grid container spacing={1} pt={5}>
|
<Grid container spacing={1} pt={5}>
|
||||||
<Grid item xs={12}>
|
<Grid item xs={12}>
|
||||||
<Box p={5}>
|
<Box p={5} display="flex" justifyContent="center" alignItems="center">
|
||||||
{dataGrid.dataLoaded ? (
|
{dataGrid.dataLoaded ? (
|
||||||
<P8PDataGrid
|
<P8PDataGrid
|
||||||
{...P8P_DATA_GRID_CONFIG_PROPS}
|
{...P8P_DATA_GRID_CONFIG_PROPS}
|
||||||
|
containerComponentProps={{ elevation: 6, style: STYLES.DATA_GRID_CONTAINER }}
|
||||||
columnsDef={dataGrid.columnsDef}
|
columnsDef={dataGrid.columnsDef}
|
||||||
|
groups={dataGrid.groups}
|
||||||
rows={dataGrid.rows}
|
rows={dataGrid.rows}
|
||||||
size={P8P_DATA_GRID_SIZE.LARGE}
|
size={P8P_DATA_GRID_SIZE.LARGE}
|
||||||
|
fixedHeader={dataGrid.fixedHeader}
|
||||||
|
fixedColumns={dataGrid.fixedColumns}
|
||||||
filtersInitial={dataGrid.filters}
|
filtersInitial={dataGrid.filters}
|
||||||
morePages={dataGrid.morePages}
|
morePages={dataGrid.morePages}
|
||||||
reloading={dataGrid.reload}
|
reloading={dataGrid.reload}
|
||||||
valueFormatter={valueFormatter}
|
valueFormatter={valueFormatter}
|
||||||
headCellRender={headCellRender}
|
headCellRender={headCellRender}
|
||||||
dataCellRender={dataCellRender}
|
dataCellRender={dataCellRender}
|
||||||
|
groupCellRender={groupCellRender}
|
||||||
onOrderChanged={handleOrderChanged}
|
onOrderChanged={handleOrderChanged}
|
||||||
onFilterChanged={handleFilterChanged}
|
onFilterChanged={handleFilterChanged}
|
||||||
onPagesCountChanged={handlePagesCountChanged}
|
onPagesCountChanged={handlePagesCountChanged}
|
||||||
|
expandable={true}
|
||||||
|
rowExpandRender={({ row }) => (
|
||||||
|
<Button onClick={() => handleAgnButtonClicked(row.SAGNABBR)}>Показать в разделе</Button>
|
||||||
|
)}
|
||||||
/>
|
/>
|
||||||
) : null}
|
) : null}
|
||||||
</Box>
|
</Box>
|
||||||
@ -1631,9 +1786,11 @@ const Chart = ({ title }) => {
|
|||||||
- Дополнение задачи произвольными учётными атрибутами
|
- Дополнение задачи произвольными учётными атрибутами
|
||||||
- Диалоговый редактор задачи, отображающий её дополнительные атрибуты с возможностью настройки их форматирования
|
- Диалоговый редактор задачи, отображающий её дополнительные атрибуты с возможностью настройки их форматирования
|
||||||
- Отображение связей между задачами
|
- Отображение связей между задачами
|
||||||
|
- Отображение произвольного пользовательского диалога в качестве карточки задачи/редактора задачи
|
||||||
|
|
||||||

|

|
||||||

|

|
||||||
|

|
||||||
|
|
||||||
**Подключение**
|
**Подключение**
|
||||||
|
|
||||||
@ -1662,12 +1819,13 @@ const MyPanel = () => {
|
|||||||
`readOnlyDates` - необязательный, логический, признак возможности редактирования дат элементов диаграммы (по умолчанию - редактирование возможно)\
|
`readOnlyDates` - необязательный, логический, признак возможности редактирования дат элементов диаграммы (по умолчанию - редактирование возможно)\
|
||||||
`readOnlyProgress` - необязательный, логический, признак возможности редактирования прогресса исполнения элементов диаграммы (по умолчанию - редактирование возможно)\
|
`readOnlyProgress` - необязательный, логический, признак возможности редактирования прогресса исполнения элементов диаграммы (по умолчанию - редактирование возможно)\
|
||||||
`zoom` - необязательный, число, масштаб диаграммы\
|
`zoom` - необязательный, число, масштаб диаграммы\
|
||||||
`tasks` - обязательный, массив, задачи, отображаемые на диаграмме, должен состоять из объектов вида `{id: <УНИКАЛЬНЫЙ_ИДЕНТИФИКАТОР>, rn: <ССЫЛКА_НА_ЗАПИСЬ_В_СИСТЕМЕ>, numb: <НОМЕР>, name: <НАИМЕНОВАНИЕ>, fullName: <ПОЛНОЕ_НАИМЕНОВАНИЕ>, start: <ДАТА_НАЧАЛА_В_JSON_ФОРМАТЕ_ДАТЫ>, end: <ДАТА_ОКОНЧАНИЯ_В_JSON_ФОРМАТЕ_ДАТЫ>, progress: <ПРОГРЕСС_ИСПОЛНЕНИЯ>, dependencies: <МАССИВ_ИДЕНТИФИКАТОРОВ_ЗАВИСИМЫХ_ЗАДАЧ>, readOnly: <ДОСТУПНОСТЬ_РЕДАКТИРОВАНИЯ>, readOnlyDates: <ДОСТУПНОСТЬ_РЕДАКТИРОВАНИЯ_СРОКОВ>, readOnlyProgress: <ДОСТУПНОСТЬ_РЕДАКТИРОВАНИЯ_ПРОГРЕССА_ИСПОЛНЕНИЯ>, bgColor: <ЦВЕТ_ЗАЛИВКИ>, textColor: <ЦВЕТ_ТЕКСТА>[, <ИМЯ_ДОПОЛНИТЕЛЬНОГО_АТРИБУТА1>:<ЗНАЧЕНИЕ1>, <ИМЯ_ДОПОЛНИТЕЛЬНОГО_АТРИБУТА2>:<ЗНАЧЕНИЕ2>,...]}` (см. константу `P8P_GANTT_TASK_SHAPE` в коде компонента)\
|
`tasks` - обязательный, массив, задачи, отображаемые на диаграмме, должен состоять из объектов вида `{id: <УНИКАЛЬНЫЙ_ИДЕНТИФИКАТОР>, rn: <ССЫЛКА_НА_ЗАПИСЬ_В_СИСТЕМЕ>, numb: <НОМЕР>, name: <НАИМЕНОВАНИЕ>, fullName: <ПОЛНОЕ_НАИМЕНОВАНИЕ>, start: <ДАТА_НАЧАЛА_В_JSON_ФОРМАТЕ_ДАТЫ>, end: <ДАТА_ОКОНЧАНИЯ_В_JSON_ФОРМАТЕ_ДАТЫ>, progress: <ПРОГРЕСС_ИСПОЛНЕНИЯ>, dependencies: <МАССИВ_ИДЕНТИФИКАТОРОВ_ЗАВИСИМЫХ_ЗАДАЧ>, readOnly: <ДОСТУПНОСТЬ_РЕДАКТИРОВАНИЯ>, readOnlyDates: <ДОСТУПНОСТЬ_РЕДАКТИРОВАНИЯ_СРОКОВ>, readOnlyProgress: <ДОСТУПНОСТЬ_РЕДАКТИРОВАНИЯ_ПРОГРЕССА_ИСПОЛНЕНИЯ>, bgColor: <ЦВЕТ_ЗАЛИВКИ>, textColor: <ЦВЕТ_ТЕКСТА>, bgProgressColor: <ЦВЕТ_ЗАЛИВКИ_ПРОГРЕССА_ИСПОЛНЕНИЯ_ЗАДАЧИ>[, <ИМЯ_ДОПОЛНИТЕЛЬНОГО_АТРИБУТА1>:<ЗНАЧЕНИЕ1>, <ИМЯ_ДОПОЛНИТЕЛЬНОГО_АТРИБУТА2>:<ЗНАЧЕНИЕ2>,...]}` (см. константу `P8P_GANTT_TASK_SHAPE` в коде компонента)\
|
||||||
`taskAttributes` - необязательный, массив, состав (не значения) дополнительных атрибутутов задач, должен состоять из объектов вида `{name: <ИМЯ_ДОПОЛНИТЕЛЬНОГО_АТРИБУТА>, caption: <ЗАГОЛОВОК_ДОПОЛНИТЕЛЬНОГО_АТРИБУТА>}` (см. константу `P8P_GANTT_TASK_ATTRIBUTE_SHAPE` в коде компонента)\
|
`taskAttributes` - необязательный, массив, состав (не значения) дополнительных атрибутутов задач, должен состоять из объектов вида `{name: <ИМЯ_ДОПОЛНИТЕЛЬНОГО_АТРИБУТА>, caption: <ЗАГОЛОВОК_ДОПОЛНИТЕЛЬНОГО_АТРИБУТА>, visible: <ПРИЗНАК_ОТОБРАЖЕНИЯ_ДОПОЛНИТЕЛЬНОГО_АТРИБУТА - true|false>}` (см. константу `P8P_GANTT_TASK_ATTRIBUTE_SHAPE` в коде компонента)\
|
||||||
`taskColors` - необязательный, массив, описания цветов заливки и текста элементов диаграммы, для построения легенды, должен состоять из объектов вида `{bgColor: <ЦВЕТ_ЗАЛИВКИ_В_ФОРМАТЕ_CSS>, textColor: <ЦВЕТ_ТЕКСТА_В_ФОРМАТЕ_CSS>, desc: <ОПИСАНИЕ>}` (см. константу `P8P_GANTT_TASK_COLOR_SHAPE` в коде компонента)\
|
`taskColors` - необязательный, массив, описания цветов заливки и текста элементов диаграммы, для построения легенды, должен состоять из объектов вида `{bgColor: <ЦВЕТ_ЗАЛИВКИ_В_ФОРМАТЕ_CSS>, textColor: <ЦВЕТ_ТЕКСТА_В_ФОРМАТЕ_CSS>, bgProgressColor: <ЦВЕТ_ЗАЛИВКИ_ПРОГРЕССА_ИСПОЛНЕНИЯ_ЗАДАЧИ>, desc: <ОПИСАНИЕ>}` (см. константу `P8P_GANTT_TASK_COLOR_SHAPE` в коде компонента)\
|
||||||
`onTaskDatesChange` - необязательный, функция, если указана - будет вызвана при изменении (перетаскиванием или через редактор) дат элемента диаграммы, сигнатура функции `f({task, start, end, isMain})`, результат функции не интерпретируется. В функцию будет передан объект в поле `task`, которого, будет содержаться описание изменённой задачи (элемент массива `tasks`, см. выше описание полей), в поле `start` - новая дата начала задачи, в поле `end` - новая дата окончания задачи, в поле `isMain` - флаг изменения родительской задачи (`true` - `onTaskDatesChange` вызана для обработки изменения основной задачи, `false` - `onTaskDatesChange` вызвана для обработки изменения одной из зависимых задач).\
|
`onTaskDatesChange` - необязательный, функция, если указана - будет вызвана при изменении (перетаскиванием или через редактор) дат элемента диаграммы, сигнатура функции `f({task, start, end, isMain})`, результат функции не интерпретируется. В функцию будет передан объект в поле `task`, которого, будет содержаться описание изменённой задачи (элемент массива `tasks`, см. выше описание полей), в поле `start` - новая дата начала задачи, в поле `end` - новая дата окончания задачи, в поле `isMain` - флаг изменения родительской задачи (`true` - `onTaskDatesChange` вызана для обработки изменения основной задачи, `false` - `onTaskDatesChange` вызвана для обработки изменения одной из зависимых задач).\
|
||||||
`onTaskProgressChange` - необязательный, функция, если указана - будет вызвана при изменении прогресса исполнения элемента диаграммы, сигнатура функции `f({task, progress})`, результат функции не интерпретируется. В функцию будет передан объект в поле `task`, которого, будет содержаться описание изменённой задачи (элемент массива `tasks`, см. выше описание полей), в поле `progress` - новое значение прогресса исполнения задачи.\
|
`onTaskProgressChange` - необязательный, функция, если указана - будет вызвана при изменении прогресса исполнения элемента диаграммы, сигнатура функции `f({task, progress})`, результат функции не интерпретируется. В функцию будет передан объект в поле `task`, которого, будет содержаться описание изменённой задачи (элемент массива `tasks`, см. выше описание полей), в поле `progress` - новое значение прогресса исполнения задачи.\
|
||||||
`taskAttributeRenderer` - необязательный, функция, если указана - будет вызвана при отображении диалога редактора здачи, результат функции будет применён для отображения области дополнительных атрибутов задачи в диалоге редактора, если не указана - дополнительные атрибуты будут отображены с форматированием по умолчанию. Сигнатура функции - `f({task, attribute})`, в функцию будет передан объект в поле `task`, которого, будет содержаться описание задачи для которой отображается редактор (элемент массива `tasks`, см. выше описание полей), в поле `attribute` - описание дополнительного атрибута формируемого в диалоге редактора (элемент массива `taskAttributes`, см. выше описание полей). Должна возвращать значение или React-компонент.\
|
`taskAttributeRenderer` - необязательный, функция, если указана - будет вызвана при отображении диалога редактора здачи, результат функции будет применён для отображения области дополнительных атрибутов задачи в диалоге редактора, если не указана - дополнительные атрибуты будут отображены с форматированием по умолчанию. Сигнатура функции - `f({task, attribute})`, в функцию будет передан объект в поле `task`, которого, будет содержаться описание задачи для которой отображается редактор (элемент массива `tasks`, см. выше описание полей), в поле `attribute` - описание дополнительного атрибута формируемого в диалоге редактора (элемент массива `taskAttributes`, см. выше описание полей). Должна возвращать значение или React-компонент.\
|
||||||
|
`taskDialogRenderer` - необязательный, функция, если указана - будет вызвана до отображения диалога редактора задачи. Результат функции будет показан в качестве содержимого диалога редактора, вместо типовой формы. Сигнатура функции - `f({task, taskAttributes, taskColors, close})`, в функцию будет передан объект в поле `task`, которого, будет содержаться описание задачи для которой отображается редактор (элемент массива `tasks`, см. выше описание полей), в поле `taskAttributes` - массив `taskAttributes` (см. выше описание полей), описывающий состав полей задачи, в поле `taskColors` - массив `taskColors` (см. выше описание полей), описывающий цвета заливки, определённые для задачи, в поле `close` - функция закрытия диалога задачи, может быть вызвана возвращаемым Reac-компонентом для сокрытия диалога. Должна возвращать значение или React-компонент.\
|
||||||
`noDataFoundText` - обязательный, строка, текст для отображения ошибки об отсутствии данных\
|
`noDataFoundText` - обязательный, строка, текст для отображения ошибки об отсутствии данных\
|
||||||
`numbTaskEditorCaption` - обязательный, строка, подпись стандартного атрибута `numb` в диалоге редактора задачи\
|
`numbTaskEditorCaption` - обязательный, строка, подпись стандартного атрибута `numb` в диалоге редактора задачи\
|
||||||
`nameTaskEditorCaption` - обязательный, строка, подпись стандартного атрибута `name` в диалоге редактора задачи\
|
`nameTaskEditorCaption` - обязательный, строка, подпись стандартного атрибута `name` в диалоге редактора задачи\
|
||||||
@ -1705,7 +1863,7 @@ const MyPanel = () => {
|
|||||||
`PKG_P8PANELS_VISUAL.TGANTT_TASK_ADD_ATTR_VAL` - процедура, добавляет, к указанному объекту описания задачи, значение дополнительного атриабута\
|
`PKG_P8PANELS_VISUAL.TGANTT_TASK_ADD_ATTR_VAL` - процедура, добавляет, к указанному объекту описания задачи, значение дополнительного атриабута\
|
||||||
`PKG_P8PANELS_VISUAL.TGANTT_TASK_ADD_DEPENDENCY` - процедура, добавляет, к указанному объекту описания задачи, ссылку на предшествующую задачу\
|
`PKG_P8PANELS_VISUAL.TGANTT_TASK_ADD_DEPENDENCY` - процедура, добавляет, к указанному объекту описания задачи, ссылку на предшествующую задачу\
|
||||||
`PKG_P8PANELS_VISUAL.TGANTT_ADD_TASK` - процедура, добавляет, к указанному объекту описания диаграммы Ганта, новую задачу, ранее описанную через `TGANTT_TASK_MAKE`\
|
`PKG_P8PANELS_VISUAL.TGANTT_ADD_TASK` - процедура, добавляет, к указанному объекту описания диаграммы Ганта, новую задачу, ранее описанную через `TGANTT_TASK_MAKE`\
|
||||||
`PKG_P8PANELS_VISUAL.TGANTT_TO_XML` - функция, производит сериализацию объекта, описывающего диаграмму Ганта, в специальный XML-формат, корректно интерпретируемый клиентским компонентом `P8PGantt` при передаче в WEB-приложение\
|
`PKG_P8PANELS_VISUAL.TGANTT_TO_XML` - функция, производит сериализацию объекта, описывающего диаграмму Ганта, в специальный XML-формат, корректно интерпретируемый клиентским компонентом `P8PGantt` при передаче в WEB-приложение
|
||||||
|
|
||||||
**Пример**
|
**Пример**
|
||||||
|
|
||||||
@ -1730,7 +1888,11 @@ const MyPanel = () => {
|
|||||||
RG := PKG_P8PANELS_VISUAL.TGANTT_MAKE(STITLE => 'Задачи на ' || TO_CHAR(EXTRACT(year from sysdate)) || ' год',
|
RG := PKG_P8PANELS_VISUAL.TGANTT_MAKE(STITLE => 'Задачи на ' || TO_CHAR(EXTRACT(year from sysdate)) || ' год',
|
||||||
NZOOM => PKG_P8PANELS_VISUAL.NGANTT_ZOOM_MONTH);
|
NZOOM => PKG_P8PANELS_VISUAL.NGANTT_ZOOM_MONTH);
|
||||||
/* Добавим динамические атрибуты к задачам */
|
/* Добавим динамические атрибуты к задачам */
|
||||||
PKG_P8PANELS_VISUAL.TGANTT_ADD_TASK_ATTR(RGANTT => RG, SNAME => 'type', SCAPTION => 'Тип');
|
PKG_P8PANELS_VISUAL.TGANTT_ADD_TASK_ATTR(RGANTT => RG, SNAME => 'type', SCAPTION => 'Тип', BVISIBLE => true);
|
||||||
|
PKG_P8PANELS_VISUAL.TGANTT_ADD_TASK_ATTR(RGANTT => RG,
|
||||||
|
SNAME => 'state',
|
||||||
|
SCAPTION => 'Состояние',
|
||||||
|
BVISIBLE => false);
|
||||||
/* Добавим описание цветов задач */
|
/* Добавим описание цветов задач */
|
||||||
PKG_P8PANELS_VISUAL.TGANTT_ADD_TASK_COLOR(RGANTT => RG,
|
PKG_P8PANELS_VISUAL.TGANTT_ADD_TASK_COLOR(RGANTT => RG,
|
||||||
SBG_COLOR => SBG_COLOR_JOB,
|
SBG_COLOR => SBG_COLOR_JOB,
|
||||||
@ -1760,6 +1922,7 @@ const MyPanel = () => {
|
|||||||
SNAME => 'type',
|
SNAME => 'type',
|
||||||
SVALUE => C.TYPE,
|
SVALUE => C.TYPE,
|
||||||
BCLEAR => true);
|
BCLEAR => true);
|
||||||
|
PKG_P8PANELS_VISUAL.TGANTT_TASK_ADD_ATTR_VAL(RGANTT => RG, RTASK => RGT, SNAME => 'state', SVALUE => C.STATE);
|
||||||
/* Добавляем задачу в диаграмму */
|
/* Добавляем задачу в диаграмму */
|
||||||
PKG_P8PANELS_VISUAL.TGANTT_ADD_TASK(RGANTT => RG, RTASK => RGT);
|
PKG_P8PANELS_VISUAL.TGANTT_ADD_TASK(RGANTT => RG, RTASK => RGT);
|
||||||
end loop;
|
end loop;
|
||||||
@ -1772,14 +1935,14 @@ const MyPanel = () => {
|
|||||||
|
|
||||||
```
|
```
|
||||||
import React, { useState, useContext, useCallback, useEffect } from "react"; //Классы React
|
import React, { useState, useContext, useCallback, useEffect } from "react"; //Классы React
|
||||||
import { Typography, Grid, Stack, Icon, Box } from "@mui/material"; //Интерфейсные элементы
|
import {Typography, Grid, Stack, Icon, Box, FormControlLabel, Checkbox, Card, CardHeader, CardActions, Avatar, CardContent, Button} from "@mui/material"; //Интерфейсные элементы
|
||||||
import { formatDateJSONDateOnly } from "../../core/utils"; //Вспомогательные функции
|
import { formatDateJSONDateOnly, formatDateRF } from "../../core/utils"; //Вспомогательные функции
|
||||||
import { P8PGantt } from "../../components/p8p_gantt"; //Диаграмма Ганта
|
import { P8PGantt } from "../../components/p8p_gantt"; //Диаграмма Ганта
|
||||||
import { P8P_GANTT_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
import { P8P_GANTT_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||||
|
|
||||||
//Высота диаграммы Ганта
|
//Высота диаграммы Ганта
|
||||||
const GANTT_HEIGHT = "600px";
|
const GANTT_HEIGHT = "70vh";
|
||||||
|
|
||||||
//Ширина диаграммы Ганта
|
//Ширина диаграммы Ганта
|
||||||
const GANTT_WIDTH = "98vw";
|
const GANTT_WIDTH = "98vw";
|
||||||
@ -1812,6 +1975,30 @@ const taskAttributeRenderer = ({ task, attribute }) => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//Генерация кастомного диалога задачи
|
||||||
|
const taskDialogRenderer = ({ task, close }) => {
|
||||||
|
return (
|
||||||
|
<Card>
|
||||||
|
<CardHeader
|
||||||
|
avatar={<Avatar sx={{ bgcolor: task.bgColor }}>{task.type == 0 ? "Эт" : "Ра"}</Avatar>}
|
||||||
|
title={task.name}
|
||||||
|
subheader={`с ${formatDateRF(task.start)} по ${formatDateRF(task.end)}`}
|
||||||
|
/>
|
||||||
|
<CardContent>
|
||||||
|
<Typography variant="body2" color="text.secondary">
|
||||||
|
Это пользовательский диалог с данными о задаче. Вы можете формировать такие указав свой функциональный компонент в качестве
|
||||||
|
свойства "taskDialogRenderer" компонента "P8PGantt".
|
||||||
|
</Typography>
|
||||||
|
</CardContent>
|
||||||
|
<CardActions disableSpacing>
|
||||||
|
<Button size="small" onClick={close}>
|
||||||
|
Закрыть
|
||||||
|
</Button>
|
||||||
|
</CardActions>
|
||||||
|
</Card>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
//Пример: Диаграмма Ганта "P8Gantt"
|
//Пример: Диаграмма Ганта "P8Gantt"
|
||||||
const Gantt = ({ title }) => {
|
const Gantt = ({ title }) => {
|
||||||
//Собственное состояние
|
//Собственное состояние
|
||||||
@ -1820,7 +2007,8 @@ const Gantt = ({ title }) => {
|
|||||||
dataLoaded: false,
|
dataLoaded: false,
|
||||||
ident: null,
|
ident: null,
|
||||||
ganttDef: {},
|
ganttDef: {},
|
||||||
ganttTasks: []
|
ganttTasks: [],
|
||||||
|
useCustomTaskDialog: false
|
||||||
});
|
});
|
||||||
|
|
||||||
//Подключение к контексту взаимодействия с сервером
|
//Подключение к контексту взаимодействия с сервером
|
||||||
@ -1883,6 +2071,10 @@ const Gantt = ({ title }) => {
|
|||||||
<Typography sx={STYLES.TITLE} variant={"h6"}>
|
<Typography sx={STYLES.TITLE} variant={"h6"}>
|
||||||
{title}
|
{title}
|
||||||
</Typography>
|
</Typography>
|
||||||
|
<FormControlLabel
|
||||||
|
control={<Checkbox onChange={() => setState(pv => ({ ...pv, useCustomTaskDialog: !pv.useCustomTaskDialog }))} />}
|
||||||
|
label="Отображать пользовательский диалог задачи"
|
||||||
|
/>
|
||||||
<Grid container spacing={0} direction="column" alignItems="center">
|
<Grid container spacing={0} direction="column" alignItems="center">
|
||||||
<Grid item xs={12}>
|
<Grid item xs={12}>
|
||||||
{state.dataLoaded ? (
|
{state.dataLoaded ? (
|
||||||
@ -1894,6 +2086,7 @@ const Gantt = ({ title }) => {
|
|||||||
tasks={state.ganttTasks}
|
tasks={state.ganttTasks}
|
||||||
onTaskDatesChange={handleTaskDatesChange}
|
onTaskDatesChange={handleTaskDatesChange}
|
||||||
taskAttributeRenderer={taskAttributeRenderer}
|
taskAttributeRenderer={taskAttributeRenderer}
|
||||||
|
taskDialogRenderer={state.useCustomTaskDialog ? taskDialogRenderer : null}
|
||||||
/>
|
/>
|
||||||
</Box>
|
</Box>
|
||||||
) : null}
|
) : null}
|
||||||
@ -1905,3 +2098,157 @@ const Gantt = ({ title }) => {
|
|||||||
```
|
```
|
||||||
|
|
||||||
Полные актуальные исходные коды примеров можно увидеть в "db/PKG_P8PANELS_SAMPLES.pck" и "app/panels/samples/gantt.js" данного репозитория соответственно.
|
Полные актуальные исходные коды примеров можно увидеть в "db/PKG_P8PANELS_SAMPLES.pck" и "app/panels/samples/gantt.js" данного репозитория соответственно.
|
||||||
|
|
||||||
|
##### Интерактивное изображение "P8PSVG"
|
||||||
|
|
||||||
|
Компонент предназначен для отображения изображений в формате SVG. Поддерживается:
|
||||||
|
|
||||||
|
- Режим галереи с зацикленным переключением между несколькими переданными компоненту изображениями
|
||||||
|
- Обработка событий `onClick` для изображения в целом и `onItemClick` для отдельных замкнутых контуров и групп, имеющих атрибут `id`
|
||||||
|
- Управление цветом и прозрачностью заливки отдельных замкнутых контуров и их групп
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
**Подключение**
|
||||||
|
|
||||||
|
Клиентская часть реализована в компоненте `P8PSVG`, объявленном в "app/components/p8p_svg". Для использования компонента на панели его необходимо импортировать:
|
||||||
|
|
||||||
|
```
|
||||||
|
import { P8PSVG } from "../../components/p8p_svg";
|
||||||
|
|
||||||
|
const MyPanel = () => {
|
||||||
|
return (
|
||||||
|
<div>
|
||||||
|
<P8PSVG .../>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**Свойства**
|
||||||
|
|
||||||
|
`data` - обязательный, строка, данные в формате SVG (`<svg>...ДАННЫЕ_ИЗОБРАЖЕНИЯ...</svg>`), при необходимости передать несколько изображений они должны просто идти подряд, разделённые закрывающим тегом `</svg>`: `<svg>...ДАННЫЕ_ИЗОБРАЖЕНИЯ_1...</svg><svg>...ДАННЫЕ_ИЗОБРАЖЕНИЯ_N...</svg>`, вложенные теги `<svg>` не допускаются (`<svg><svg></svg></svg>` - нельзя)\
|
||||||
|
`items` - необязательный, массив, интерактивные элементы изображения, должен состоять из объектов вида `{id: <УНИКАЛЬНЫЙ_ИДЕНТИФИКАТОР>, title: <ТЕКСТ_ВСПЛЫВАЮЩЕЙ_ПОДСКАЗКИ>, backgroundColor: <ЦВЕТ_ЗАЛИВКИ>}`\
|
||||||
|
`onClick` - необязательный, функция, будет вызвана при нажатии пользователем на изображение, сигнатура функции `f(event)`, результат функции не интерпретируется. В функцию будет передан типовой JS-объект `MouseEvent` с описанием события. Функция не будет вызвана, если произошло нажатие на интерактивный элемент и была вызвана функция `onItemClick` (см. ниже).\
|
||||||
|
`onItemClick` - необязательный, функция, будет вызвана при нажатии пользователем на интерактивный элемент изображения, сигнатура функции `f({item})`, результат функции не интерпретируется. В функцию будет передан объект в поле `item`, которого, будет содержаться элемент массива `items`, описывающий интерактивный элемент изображения, на котором произошло событие. Если функция была вызвана, то вызов функции `onClick` (см. выше) не происходит.\
|
||||||
|
`canvasStyle` - необязательный, объект, будет применён в качестве значения атрибута `style` контейнера `div` изображения\
|
||||||
|
`fillOpacity` - необязательный, строка, прозрачность заливки интерактивных элементов, где "0" - 100% прозрачность, "0.5" - 50% прозрачность, "1" - 100% непрозрачность и т.п.
|
||||||
|
|
||||||
|
**API на сервере БД**
|
||||||
|
|
||||||
|
Компонент компонент не имеет специального серверного API.
|
||||||
|
|
||||||
|
**Пример**
|
||||||
|
|
||||||
|
Код панели на стороне клиента (WEB-приложения):
|
||||||
|
|
||||||
|
```
|
||||||
|
import React, { useState, useEffect } from "react"; //Классы React
|
||||||
|
import { Typography, Grid, FormControl, FormLabel, RadioGroup, FormControlLabel, Radio } from "@mui/material"; //Интерфейсные элементы
|
||||||
|
import { P8PSVG } from "../../components/p8p_svg"; //Интерактивные изображения
|
||||||
|
|
||||||
|
//Адрес тестового изображения
|
||||||
|
const SAMPLE_URL = "img/sample.svg";
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
CONTAINER: { textAlign: "center", paddingTop: "20px" },
|
||||||
|
TITLE: { paddingBottom: "15px" },
|
||||||
|
FORM: { justifyContent: "center", alignItems: "center" },
|
||||||
|
SVG: { height: "30vw", display: "flex", justifyContent: "center" }
|
||||||
|
};
|
||||||
|
|
||||||
|
//Пример: Интерактивные изображения "P8PSVG"
|
||||||
|
const Svg = ({ title }) => {
|
||||||
|
//Собственное состояние - SVG-изображение
|
||||||
|
const [svg, setSVG] = useState({
|
||||||
|
loaded: false,
|
||||||
|
data: null,
|
||||||
|
mode: "items1",
|
||||||
|
items1: [
|
||||||
|
{ id: "1", backgroundColor: "red", desc: "Цифра на флюзеляже", title: "Цифра на флюзеляже" },
|
||||||
|
{ id: "2", backgroundColor: "magenta", desc: "Ребро флюзеляжа", title: "Ребро флюзеляжа" },
|
||||||
|
{ id: "3", backgroundColor: "yellow", desc: "Люк", title: "Люк" }
|
||||||
|
],
|
||||||
|
items2: [
|
||||||
|
{ id: "4", backgroundColor: "green", desc: "Хвост", title: "Хвост" },
|
||||||
|
{ id: "5", backgroundColor: "blue", desc: "Хвостовой руль", title: "Хвостовой руль" },
|
||||||
|
{ id: "6", backgroundColor: "aquamarine", desc: "Ребро жесткости хвоста", title: "Ребро жесткости хвоста" }
|
||||||
|
],
|
||||||
|
items3: [
|
||||||
|
{ id: "7", backgroundColor: "blueviolet", desc: "Крыло левое", title: "Крыло левое" },
|
||||||
|
{ id: "8", backgroundColor: "orange", desc: "Двигатель левый", title: "Двигатель левый" },
|
||||||
|
{ id: "9", backgroundColor: "springgreen", desc: "Крыло правое", title: "Крыло правое" }
|
||||||
|
],
|
||||||
|
selectedItemDesc: ""
|
||||||
|
});
|
||||||
|
|
||||||
|
//Загрузка изображения
|
||||||
|
const loadSVG = async () => {
|
||||||
|
const resp = await fetch(SAMPLE_URL);
|
||||||
|
const data = await resp.text();
|
||||||
|
setSVG(pv => ({ ...pv, loaded: true, data }));
|
||||||
|
};
|
||||||
|
|
||||||
|
//Отработка нажатия на изображение
|
||||||
|
const handleSVGClick = () => {
|
||||||
|
setSVG(pv => ({ ...pv, selectedItemDesc: "Выбрано изображение целиком" }));
|
||||||
|
};
|
||||||
|
|
||||||
|
//Отработка нажатия на элемент изображения
|
||||||
|
const handleSVGItemClick = ({ item }) => {
|
||||||
|
setSVG(pv => ({ ...pv, selectedItemDesc: item?.desc ? `Выбран элемент: ${item.desc}` : "Для выбранного элемента не задано описание" }));
|
||||||
|
};
|
||||||
|
|
||||||
|
//При подключении к странице
|
||||||
|
useEffect(() => {
|
||||||
|
loadSVG();
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<div style={STYLES.CONTAINER}>
|
||||||
|
<Typography sx={STYLES.TITLE} variant={"h6"}>
|
||||||
|
{title}
|
||||||
|
</Typography>
|
||||||
|
<FormControl sx={STYLES.FORM}>
|
||||||
|
<FormLabel>Группа элементов</FormLabel>
|
||||||
|
<RadioGroup row value={svg.mode} onChange={e => setSVG(pv => ({ ...pv, mode: e.target.value, selectedItemDesc: "" }))}>
|
||||||
|
<FormControlLabel value="items1" control={<Radio />} label="Первая" />
|
||||||
|
<FormControlLabel value="items2" control={<Radio />} label="Вторая" />
|
||||||
|
<FormControlLabel value="items3" control={<Radio />} label="Третья" />
|
||||||
|
</RadioGroup>
|
||||||
|
<FormLabel>{svg.selectedItemDesc ? svg.selectedItemDesc : "Нажмите на элемент изображения для получения его описания"}</FormLabel>
|
||||||
|
</FormControl>
|
||||||
|
<Grid container spacing={0} pt={5} direction="column" alignItems="center">
|
||||||
|
<Grid item xs={12}>
|
||||||
|
{svg.loaded ? (
|
||||||
|
<P8PSVG
|
||||||
|
data={svg.data}
|
||||||
|
items={svg[svg.mode]}
|
||||||
|
onClick={handleSVGClick}
|
||||||
|
onItemClick={handleSVGItemClick}
|
||||||
|
canvasStyle={STYLES.SVG}
|
||||||
|
fillOpacity={"0.4"}
|
||||||
|
/>
|
||||||
|
) : null}
|
||||||
|
</Grid>
|
||||||
|
</Grid>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
|
Полные актуальные исходные коды примера можно увидеть в "app/panels/samples/svg.js" данного репозитория соответственно.
|
||||||
|
|
||||||
|
### Ограничения дизайна пользовательского интерфейса
|
||||||
|
|
||||||
|
Фреймворк позволяет реализовать любые пользовательские интерфейсы, вёрстка которых не противоречит возможностям современного HTML. Тем не менее, при разработке пользовательских интерфейсов панелей важно придерживаться предложенных ниже правил. Это позволит создавать их в едином ключе и упростит работу конечного пользователя при их освоении.
|
||||||
|
|
||||||
|
- Избегайте нестандартных реакций элементов пользовательского интерфейса на действия пользователя. Например, выпадающий список, при активации, должен отображать состав своих элементов, а не вызывать бизнес-функцию отработки документа.
|
||||||
|
- Избегайте прямого применения HTML-тэгов. В библиотеке [MUI](https://mui.com/), включенной в состав фреймворка, есть всё необходимое для сборки интерфейса.
|
||||||
|
- Старайтесь не применять `<div>` для всёрстки - для этого в [MUI](https://mui.com/) есть группа компонентов разметки ("Layout"), используйте их (`Grid`, `Box`, `Container`, `Stack`, `Paper` и пр.).
|
||||||
|
- Старайтесь не использовать, без острой необходимости, атрибуты `sx` и `style` - всё необходимое для стилизации как правило есть в типовых атрибутах компонента [MUI](https://mui.com/), изучите его документацию. Если применение собственного стиля неизбежно - старайтесь выносить стили в единое место в коде, переиспользовать их, и импортировать там, где это необходимо.
|
||||||
|
- Придерживайтесь единой цветовой гаммы при реализации всех панелей (в идеале) или, если не удаётся, панелей, отнесённых к одному прикладному участку (ПУДП, УЗСР, БУ, ПУП и т.п.).
|
||||||
|
- Изучите и применяйте `ThemeProvider` из состава инструментов стилизации библиотеки [MUI](https://mui.com/) для придания индивидуальности панелям и их компонентам.
|
||||||
|
@ -35,6 +35,8 @@ const P8PDataGrid = ({
|
|||||||
groups,
|
groups,
|
||||||
rows,
|
rows,
|
||||||
size,
|
size,
|
||||||
|
fixedHeader = false,
|
||||||
|
fixedColumns = 0,
|
||||||
morePages = false,
|
morePages = false,
|
||||||
reloading,
|
reloading,
|
||||||
expandable,
|
expandable,
|
||||||
@ -48,6 +50,7 @@ const P8PDataGrid = ({
|
|||||||
clearFilterBtnCaption,
|
clearFilterBtnCaption,
|
||||||
cancelFilterBtnCaption,
|
cancelFilterBtnCaption,
|
||||||
morePagesBtnCaption,
|
morePagesBtnCaption,
|
||||||
|
morePagesBtnProps,
|
||||||
noDataFoundText,
|
noDataFoundText,
|
||||||
headCellRender,
|
headCellRender,
|
||||||
dataCellRender,
|
dataCellRender,
|
||||||
@ -111,6 +114,8 @@ const P8PDataGrid = ({
|
|||||||
orders={orders}
|
orders={orders}
|
||||||
filters={filters}
|
filters={filters}
|
||||||
size={size || P8P_DATA_GRID_SIZE.MEDIUM}
|
size={size || P8P_DATA_GRID_SIZE.MEDIUM}
|
||||||
|
fixedHeader={fixedHeader}
|
||||||
|
fixedColumns={fixedColumns}
|
||||||
morePages={morePages}
|
morePages={morePages}
|
||||||
reloading={reloading}
|
reloading={reloading}
|
||||||
expandable={expandable}
|
expandable={expandable}
|
||||||
@ -133,6 +138,7 @@ const P8PDataGrid = ({
|
|||||||
objectsCopier={objectsCopier}
|
objectsCopier={objectsCopier}
|
||||||
containerComponent={containerComponent}
|
containerComponent={containerComponent}
|
||||||
containerComponentProps={containerComponentProps}
|
containerComponentProps={containerComponentProps}
|
||||||
|
morePagesBtnProps={morePagesBtnProps}
|
||||||
onOrderChanged={handleOrderChanged}
|
onOrderChanged={handleOrderChanged}
|
||||||
onFilterChanged={handleFilterChanged}
|
onFilterChanged={handleFilterChanged}
|
||||||
onPagesCountChanged={handlePagesCountChanged}
|
onPagesCountChanged={handlePagesCountChanged}
|
||||||
@ -147,6 +153,8 @@ P8PDataGrid.propTypes = {
|
|||||||
groups: PropTypes.array,
|
groups: PropTypes.array,
|
||||||
rows: PropTypes.array.isRequired,
|
rows: PropTypes.array.isRequired,
|
||||||
size: PropTypes.string,
|
size: PropTypes.string,
|
||||||
|
fixedHeader: PropTypes.bool,
|
||||||
|
fixedColumns: PropTypes.number,
|
||||||
morePages: PropTypes.bool,
|
morePages: PropTypes.bool,
|
||||||
reloading: PropTypes.bool.isRequired,
|
reloading: PropTypes.bool.isRequired,
|
||||||
expandable: PropTypes.bool,
|
expandable: PropTypes.bool,
|
||||||
@ -160,6 +168,7 @@ P8PDataGrid.propTypes = {
|
|||||||
clearFilterBtnCaption: PropTypes.string.isRequired,
|
clearFilterBtnCaption: PropTypes.string.isRequired,
|
||||||
cancelFilterBtnCaption: PropTypes.string.isRequired,
|
cancelFilterBtnCaption: PropTypes.string.isRequired,
|
||||||
morePagesBtnCaption: PropTypes.string.isRequired,
|
morePagesBtnCaption: PropTypes.string.isRequired,
|
||||||
|
morePagesBtnProps: PropTypes.object,
|
||||||
noDataFoundText: PropTypes.string,
|
noDataFoundText: PropTypes.string,
|
||||||
headCellRender: PropTypes.func,
|
headCellRender: PropTypes.func,
|
||||||
dataCellRender: PropTypes.func,
|
dataCellRender: PropTypes.func,
|
||||||
|
@ -66,7 +66,8 @@ const P8P_GANTT_TASK_SHAPE = PropTypes.shape({
|
|||||||
//Структура динамического атрибута задачи
|
//Структура динамического атрибута задачи
|
||||||
const P8P_GANTT_TASK_ATTRIBUTE_SHAPE = PropTypes.shape({
|
const P8P_GANTT_TASK_ATTRIBUTE_SHAPE = PropTypes.shape({
|
||||||
name: PropTypes.string.isRequired,
|
name: PropTypes.string.isRequired,
|
||||||
caption: PropTypes.string.isRequired
|
caption: PropTypes.string.isRequired,
|
||||||
|
visible: PropTypes.bool.isRequired
|
||||||
});
|
});
|
||||||
|
|
||||||
//Структура описания цвета задачи
|
//Структура описания цвета задачи
|
||||||
|
193
app/components/p8p_svg.js
Normal file
@ -0,0 +1,193 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга
|
||||||
|
Компонент: Интерактивные изображения SVG
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React, { useEffect, useRef, useState } from "react"; //Классы React
|
||||||
|
import { IconButton, Icon, Container, Grid } from "@mui/material"; //Интерфейсные элементы
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
GRID_ITEM_CANVAS: { width: "100%", height: "100%" },
|
||||||
|
CONTROLS: { justifyContent: "center", alignItems: "center", display: "flex" }
|
||||||
|
};
|
||||||
|
|
||||||
|
//Структура элемента изображения
|
||||||
|
const P8P_SVG_ITEM_SHAPE = PropTypes.shape({
|
||||||
|
id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,
|
||||||
|
title: PropTypes.any,
|
||||||
|
backgroundColor: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)])
|
||||||
|
});
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Интерактивные изображения SVG
|
||||||
|
const P8PSVG = ({ data, items, onClick, onItemClick, canvasStyle, fillOpacity }) => {
|
||||||
|
//Собственное состояние
|
||||||
|
const [state, setState] = useState({
|
||||||
|
images: [],
|
||||||
|
currentImage: 0,
|
||||||
|
imagesCount: 0
|
||||||
|
});
|
||||||
|
|
||||||
|
//Ссылки на DOM
|
||||||
|
const svgContainerRef = useRef(null);
|
||||||
|
const svgRef = useRef(null);
|
||||||
|
|
||||||
|
//Обработка нажатия на элемент изображения
|
||||||
|
const handleClick = e => {
|
||||||
|
let itemClickFired = false;
|
||||||
|
if (items && onItemClick) {
|
||||||
|
const item = items.find(item => item.id == e.target?.id || item.id == e.target?.parentElement?.id);
|
||||||
|
if (item) {
|
||||||
|
onItemClick({ item });
|
||||||
|
itemClickFired = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!itemClickFired && onClick) onClick(e);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Формирование интерактивных элементов изображения
|
||||||
|
const makeSVGItems = () => {
|
||||||
|
items.forEach(item => {
|
||||||
|
const svgE = document.getElementById(item.id);
|
||||||
|
if (svgE) {
|
||||||
|
//Запомним старый стиль элемента
|
||||||
|
let styleOld = svgE.getAttribute("style") || "";
|
||||||
|
if (styleOld && !styleOld.endsWith(";")) styleOld = `${styleOld};`;
|
||||||
|
//Сформируем стиль для заливки
|
||||||
|
let fillStyle = "";
|
||||||
|
if (item.backgroundColor) fillStyle = `fill: ${item.backgroundColor}; ${fillOpacity ? `opacity: ${fillOpacity};` : ""}`;
|
||||||
|
//Сформируем стиль для курсора
|
||||||
|
let cursorStyle = "";
|
||||||
|
if (onItemClick) cursorStyle = "cursor: pointer;";
|
||||||
|
//Добавим элемент для всплывающей подсказки
|
||||||
|
let titleE = null;
|
||||||
|
if (item?.title) {
|
||||||
|
titleE = document.createElementNS("http://www.w3.org/2000/svg", "title");
|
||||||
|
titleE.textContent = item.title;
|
||||||
|
svgE.appendChild(titleE);
|
||||||
|
}
|
||||||
|
//Если нем попалась группа
|
||||||
|
if (svgE.tagName == "g") {
|
||||||
|
//Установим ей новые стили
|
||||||
|
svgE.setAttribute("style", `${styleOld}${cursorStyle}`);
|
||||||
|
//И заливку всем дочерним элементам
|
||||||
|
if (fillStyle)
|
||||||
|
for (const child of svgE.children) {
|
||||||
|
let childStyleOld = child.getAttribute("style") || "";
|
||||||
|
if (childStyleOld && !childStyleOld.endsWith(";")) childStyleOld = `${childStyleOld};`;
|
||||||
|
child.setAttribute("style", `${childStyleOld}${fillStyle}`);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
//Это простой элемент, не группа - просто выставляем стили
|
||||||
|
svgE.setAttribute("style", `${styleOld}${cursorStyle}${fillStyle}`);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
//Загрузка изображения
|
||||||
|
const loadSVG = () => {
|
||||||
|
const images = data
|
||||||
|
.split("</svg>")
|
||||||
|
.filter(i => i)
|
||||||
|
.map(i => i + "</svg>");
|
||||||
|
setState(pv => ({ ...pv, images, imagesCount: images.length, currentImage: 0 }));
|
||||||
|
};
|
||||||
|
|
||||||
|
//Отображение текущего изображения
|
||||||
|
const showSVG = () => {
|
||||||
|
if (state.imagesCount > 0) {
|
||||||
|
const parser = new DOMParser();
|
||||||
|
const doc = parser.parseFromString(state.images[state.currentImage], "image/svg+xml");
|
||||||
|
svgRef.current = doc.documentElement;
|
||||||
|
svgRef.current.onclick = handleClick;
|
||||||
|
svgContainerRef.current.replaceChildren(svgRef.current);
|
||||||
|
if (items) makeSVGItems(items);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
//Переключение текущего изображения
|
||||||
|
const switchImage = direction => {
|
||||||
|
setState(pv => ({
|
||||||
|
...pv,
|
||||||
|
currentImage:
|
||||||
|
direction > 0
|
||||||
|
? pv.currentImage + 1 >= pv.imagesCount
|
||||||
|
? 0
|
||||||
|
: pv.currentImage + 1
|
||||||
|
: pv.currentImage - 1 < 0
|
||||||
|
? pv.imagesCount - 1
|
||||||
|
: pv.currentImage - 1
|
||||||
|
}));
|
||||||
|
};
|
||||||
|
|
||||||
|
//При обновлении данных
|
||||||
|
useEffect(() => {
|
||||||
|
loadSVG();
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, [data]);
|
||||||
|
|
||||||
|
//При загрузке изображения
|
||||||
|
useEffect(() => {
|
||||||
|
showSVG();
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, [state.images, state.currentImage, items]);
|
||||||
|
|
||||||
|
//При прокрутке изображений назад
|
||||||
|
const handlePrevClick = () => switchImage(1);
|
||||||
|
|
||||||
|
//При прокрутке изображений вперёд
|
||||||
|
const handleNextClick = () => switchImage(-1);
|
||||||
|
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<Container>
|
||||||
|
<Grid container direction="column" justifyContent="center" alignItems="center" spacing={0}>
|
||||||
|
<Grid item xs={12} sx={STYLES.GRID_ITEM_CANVAS}>
|
||||||
|
<div ref={svgContainerRef} style={{ ...(canvasStyle ? canvasStyle : {}) }}></div>
|
||||||
|
</Grid>
|
||||||
|
{state.imagesCount > 1 ? (
|
||||||
|
<Grid item xs={12}>
|
||||||
|
<div style={STYLES.CONTROLS}>
|
||||||
|
<IconButton onClick={handlePrevClick}>
|
||||||
|
<Icon>arrow_left</Icon>
|
||||||
|
</IconButton>
|
||||||
|
<IconButton onClick={handleNextClick}>
|
||||||
|
<Icon>arrow_right</Icon>
|
||||||
|
</IconButton>
|
||||||
|
</div>
|
||||||
|
</Grid>
|
||||||
|
) : null}
|
||||||
|
</Grid>
|
||||||
|
</Container>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Интерактивные изображения SVG
|
||||||
|
P8PSVG.propTypes = {
|
||||||
|
data: PropTypes.string.isRequired,
|
||||||
|
items: PropTypes.arrayOf(P8P_SVG_ITEM_SHAPE),
|
||||||
|
onClick: PropTypes.func,
|
||||||
|
onItemClick: PropTypes.func,
|
||||||
|
canvasStyle: PropTypes.object,
|
||||||
|
fillOpacity: PropTypes.string
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { P8PSVG };
|
@ -33,6 +33,7 @@ import {
|
|||||||
Container,
|
Container,
|
||||||
Link
|
Link
|
||||||
} from "@mui/material"; //Интерфейсные компоненты
|
} from "@mui/material"; //Интерфейсные компоненты
|
||||||
|
import { useTheme } from "@mui/material/styles"; //Взаимодействие со стилями MUI
|
||||||
import { P8PAppInlineError } from "./p8p_app_message"; //Встраиваемое сообщение об ошибке
|
import { P8PAppInlineError } from "./p8p_app_message"; //Встраиваемое сообщение об ошибке
|
||||||
import { P8P_TABLE_AT, HEADER_INITIAL_STATE, hasValue, p8pTableReducer } from "./p8p_table_reducer"; //Редьюсер состояния
|
import { P8P_TABLE_AT, HEADER_INITIAL_STATE, hasValue, p8pTableReducer } from "./p8p_table_reducer"; //Редьюсер состояния
|
||||||
|
|
||||||
@ -85,9 +86,30 @@ const STYLES = {
|
|||||||
TABLE: {
|
TABLE: {
|
||||||
with: "100%"
|
with: "100%"
|
||||||
},
|
},
|
||||||
|
TABLE_HEAD_STICKY: {
|
||||||
|
position: "sticky",
|
||||||
|
top: 0,
|
||||||
|
zIndex: 1000
|
||||||
|
},
|
||||||
|
TABLE_HEAD_CELL_STICKY: (theme, left) => ({
|
||||||
|
position: "sticky",
|
||||||
|
left,
|
||||||
|
backgroundColor: theme.palette.background.default,
|
||||||
|
zIndex: 1000
|
||||||
|
}),
|
||||||
TABLE_ROW: {
|
TABLE_ROW: {
|
||||||
"&:last-child td, &:last-child th": { border: 0 }
|
"&:last-child td, &:last-child th": { border: 0 }
|
||||||
},
|
},
|
||||||
|
TABLE_CELL_STICKY: (theme, left) => ({
|
||||||
|
position: "sticky",
|
||||||
|
left,
|
||||||
|
backgroundColor: theme.palette.background.default,
|
||||||
|
zIndex: 500
|
||||||
|
}),
|
||||||
|
TABLE_CELL_EXPAND_CONTROL: {
|
||||||
|
minWidth: "60px",
|
||||||
|
maxWidth: "60px"
|
||||||
|
},
|
||||||
TABLE_CELL_EXPAND_CONTAINER: {
|
TABLE_CELL_EXPAND_CONTAINER: {
|
||||||
paddingBottom: 0,
|
paddingBottom: 0,
|
||||||
paddingTop: 0
|
paddingTop: 0
|
||||||
@ -95,6 +117,10 @@ const STYLES = {
|
|||||||
TABLE_CELL_GROUP_HEADER: {
|
TABLE_CELL_GROUP_HEADER: {
|
||||||
backgroundColor: "lightgray"
|
backgroundColor: "lightgray"
|
||||||
},
|
},
|
||||||
|
TABLE_CELL_GROUP_HEADER_STICKY: {
|
||||||
|
position: "sticky",
|
||||||
|
left: 0
|
||||||
|
},
|
||||||
TABLE_COLUMN_STACK: {
|
TABLE_COLUMN_STACK: {
|
||||||
alignItems: "center"
|
alignItems: "center"
|
||||||
},
|
},
|
||||||
@ -460,6 +486,8 @@ const P8PTable = ({
|
|||||||
orders,
|
orders,
|
||||||
filters,
|
filters,
|
||||||
size,
|
size,
|
||||||
|
fixedHeader = false,
|
||||||
|
fixedColumns = 0,
|
||||||
morePages = false,
|
morePages = false,
|
||||||
reloading,
|
reloading,
|
||||||
expandable,
|
expandable,
|
||||||
@ -473,6 +501,7 @@ const P8PTable = ({
|
|||||||
clearFilterBtnCaption,
|
clearFilterBtnCaption,
|
||||||
cancelFilterBtnCaption,
|
cancelFilterBtnCaption,
|
||||||
morePagesBtnCaption,
|
morePagesBtnCaption,
|
||||||
|
morePagesBtnProps,
|
||||||
noDataFoundText,
|
noDataFoundText,
|
||||||
headCellRender,
|
headCellRender,
|
||||||
dataCellRender,
|
dataCellRender,
|
||||||
@ -501,6 +530,9 @@ const P8PTable = ({
|
|||||||
//Собственное состояние - колонка с отображаемой подсказкой
|
//Собственное состояние - колонка с отображаемой подсказкой
|
||||||
const [displayHintColumn, setDisplayHintColumn] = useState(null);
|
const [displayHintColumn, setDisplayHintColumn] = useState(null);
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const theme = useTheme();
|
||||||
|
|
||||||
//Описание фильтруемой колонки
|
//Описание фильтруемой колонки
|
||||||
const filterColumnDef = filterColumn ? columnsDef.find(columnDef => columnDef.name == filterColumn) || null : null;
|
const filterColumnDef = filterColumn ? columnsDef.find(columnDef => columnDef.name == filterColumn) || null : null;
|
||||||
|
|
||||||
@ -516,12 +548,12 @@ const P8PTable = ({
|
|||||||
: ["", ""];
|
: ["", ""];
|
||||||
|
|
||||||
//Формирование заголовка таблицы
|
//Формирование заголовка таблицы
|
||||||
const setHeader = ({ columnsDef, expandable, objectsCopier }) =>
|
const setHeader = ({ columnsDef, expandable, fixedColumns, objectsCopier }) =>
|
||||||
dispatchHeaderAction({ type: P8P_TABLE_AT.SET_HEADER, payload: { columnsDef, expandable, objectsCopier } });
|
dispatchHeaderAction({ type: P8P_TABLE_AT.SET_HEADER, payload: { columnsDef, expandable, fixedColumns, objectsCopier } });
|
||||||
|
|
||||||
//Сворачивание/разворачивание уровня заголовка таблицы
|
//Сворачивание/разворачивание уровня заголовка таблицы
|
||||||
const toggleHeaderExpand = ({ columnName, objectsCopier }) =>
|
const toggleHeaderExpand = ({ columnName, objectsCopier }) =>
|
||||||
dispatchHeaderAction({ type: P8P_TABLE_AT.TOGGLE_HEADER_EXPAND, payload: { columnName, expandable, objectsCopier } });
|
dispatchHeaderAction({ type: P8P_TABLE_AT.TOGGLE_HEADER_EXPAND, payload: { columnName, expandable, fixedColumns, objectsCopier } });
|
||||||
|
|
||||||
//Выравнивание в зависимости от типа данных
|
//Выравнивание в зависимости от типа данных
|
||||||
const getAlignByDataType = ({ dataType, hasChild }) =>
|
const getAlignByDataType = ({ dataType, hasChild }) =>
|
||||||
@ -621,19 +653,26 @@ const P8PTable = ({
|
|||||||
|
|
||||||
//При изменении описания колонок
|
//При изменении описания колонок
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setHeader({ columnsDef, expandable, objectsCopier });
|
setHeader({ columnsDef, expandable, fixedColumns, objectsCopier });
|
||||||
}, [columnsDef, expandable, objectsCopier]);
|
}, [columnsDef, expandable, fixedColumns, objectsCopier]);
|
||||||
|
|
||||||
//Генерация заголовка группы
|
//Генерация заголовка группы
|
||||||
const renderGroupCell = group => {
|
const renderGroupCell = group => {
|
||||||
let customRender = {};
|
let customRender = {};
|
||||||
if (groupCellRender) customRender = groupCellRender({ columnsDef: header.columnsDef, group }) || {};
|
if (groupCellRender) customRender = groupCellRender({ columnsDef: header.columnsDef, group }) || {};
|
||||||
return (
|
return header.displayDataColumns.map((columnDef, i) => (
|
||||||
<TableCell
|
<TableCell
|
||||||
colSpan={header.displayDataColumnsCount}
|
key={`group-header-cell-${i}`}
|
||||||
sx={{ ...STYLES.TABLE_CELL_GROUP_HEADER, ...customRender.cellStyle }}
|
|
||||||
{...customRender.cellProps}
|
{...customRender.cellProps}
|
||||||
|
sx={{
|
||||||
|
...STYLES.TABLE_CELL_GROUP_HEADER,
|
||||||
|
...customRender.cellStyle,
|
||||||
|
...(columnDef.width ? { minWidth: columnDef.width, maxWidth: columnDef.width } : {}),
|
||||||
|
...(i == 0 && fixedColumns ? STYLES.TABLE_CELL_GROUP_HEADER_STICKY : {})
|
||||||
|
}}
|
||||||
|
colSpan={expandable && rowExpandRender ? 2 : 1}
|
||||||
>
|
>
|
||||||
|
{i == 0 ? (
|
||||||
<Stack direction="row" sx={STYLES.TABLE_COLUMN_STACK}>
|
<Stack direction="row" sx={STYLES.TABLE_COLUMN_STACK}>
|
||||||
{group.expandable ? (
|
{group.expandable ? (
|
||||||
<IconButton
|
<IconButton
|
||||||
@ -646,13 +685,14 @@ const P8PTable = ({
|
|||||||
) : null}
|
) : null}
|
||||||
{customRender.data ? customRender.data : group.caption}
|
{customRender.data ? customRender.data : group.caption}
|
||||||
</Stack>
|
</Stack>
|
||||||
|
) : null}
|
||||||
</TableCell>
|
</TableCell>
|
||||||
);
|
));
|
||||||
};
|
};
|
||||||
|
|
||||||
//Генерация содержимого
|
//Генерация содержимого
|
||||||
return (
|
return (
|
||||||
<>
|
<div>
|
||||||
{displayHintColumn ? (
|
{displayHintColumn ? (
|
||||||
<P8PTableColumnHintDialog columnDef={displayHintColumnDef} okBtnCaption={okFilterBtnCaption} onOk={handleHintOk} />
|
<P8PTableColumnHintDialog columnDef={displayHintColumnDef} okBtnCaption={okFilterBtnCaption} onOk={handleHintOk} />
|
||||||
) : null}
|
) : null}
|
||||||
@ -684,13 +724,22 @@ const P8PTable = ({
|
|||||||
valueFormatter={valueFormatter}
|
valueFormatter={valueFormatter}
|
||||||
/>
|
/>
|
||||||
) : null}
|
) : null}
|
||||||
|
|
||||||
<TableContainer component={containerComponent ? containerComponent : Paper} {...(containerComponentProps ? containerComponentProps : {})}>
|
<TableContainer component={containerComponent ? containerComponent : Paper} {...(containerComponentProps ? containerComponentProps : {})}>
|
||||||
<Table sx={STYLES.TABLE} size={size || P8P_TABLE_SIZE.MEDIUM}>
|
<Table stickyHeader={fixedHeader} sx={STYLES.TABLE} size={size || P8P_TABLE_SIZE.MEDIUM}>
|
||||||
<TableHead>
|
<TableHead sx={fixedHeader ? STYLES.TABLE_HEAD_STICKY : {}}>
|
||||||
{header.displayLevels.map(level => (
|
{header.displayLevels.map((level, i) => (
|
||||||
<TableRow key={level}>
|
<TableRow key={level}>
|
||||||
{expandable && rowExpandRender ? <TableCell key="head-cell-expand-control" align="center"></TableCell> : null}
|
{expandable && rowExpandRender && i == 0 ? (
|
||||||
|
<TableCell
|
||||||
|
key="head-cell-expand-control"
|
||||||
|
align="center"
|
||||||
|
sx={{
|
||||||
|
...STYLES.TABLE_CELL_EXPAND_CONTROL,
|
||||||
|
...(fixedColumns ? STYLES.TABLE_HEAD_CELL_STICKY(theme, 0) : {})
|
||||||
|
}}
|
||||||
|
rowSpan={header.displayLevelsColumns[level][0].rowSpan}
|
||||||
|
></TableCell>
|
||||||
|
) : null}
|
||||||
{header.displayLevelsColumns[level].map((columnDef, j) => {
|
{header.displayLevelsColumns[level].map((columnDef, j) => {
|
||||||
let customRender = {};
|
let customRender = {};
|
||||||
if (headCellRender) customRender = headCellRender({ columnDef }) || {};
|
if (headCellRender) customRender = headCellRender({ columnDef }) || {};
|
||||||
@ -698,7 +747,11 @@ const P8PTable = ({
|
|||||||
<TableCell
|
<TableCell
|
||||||
key={`head-cell-${j}`}
|
key={`head-cell-${j}`}
|
||||||
align={getAlignByDataType(columnDef)}
|
align={getAlignByDataType(columnDef)}
|
||||||
sx={{ ...customRender.cellStyle }}
|
sx={{
|
||||||
|
...(columnDef.width ? { minWidth: columnDef.width, maxWidth: columnDef.width } : {}),
|
||||||
|
...(columnDef.fixed ? STYLES.TABLE_HEAD_CELL_STICKY(theme, columnDef.fixedLeft) : {}),
|
||||||
|
...customRender.cellStyle
|
||||||
|
}}
|
||||||
rowSpan={columnDef.rowSpan}
|
rowSpan={columnDef.rowSpan}
|
||||||
colSpan={columnDef.colSpan}
|
colSpan={columnDef.colSpan}
|
||||||
{...customRender.cellProps}
|
{...customRender.cellProps}
|
||||||
@ -746,14 +799,21 @@ const P8PTable = ({
|
|||||||
))}
|
))}
|
||||||
</TableHead>
|
</TableHead>
|
||||||
<TableBody>
|
<TableBody>
|
||||||
{rows.length > 0
|
{rows.length > 0 ? (
|
||||||
? (Array.isArray(groups) && groups.length > 0 ? groups : [{}]).map((group, g) => {
|
(Array.isArray(groups) && groups.length > 0 ? groups : [{}]).map((group, g) => {
|
||||||
const rowsView = rows.map((row, i) =>
|
const rowsView = rows.map((row, i) =>
|
||||||
!group?.name || group?.name == row.groupName ? (
|
!group?.name || group?.name == row.groupName ? (
|
||||||
<React.Fragment key={`data-${i}`}>
|
<React.Fragment key={`data-${i}`}>
|
||||||
<TableRow key={`data-row-${i}`} sx={STYLES.TABLE_ROW}>
|
<TableRow key={`data-row-${i}`} sx={STYLES.TABLE_ROW}>
|
||||||
{expandable && rowExpandRender ? (
|
{expandable && rowExpandRender ? (
|
||||||
<TableCell key={`data-cell-expand-control-${i}`} align="center">
|
<TableCell
|
||||||
|
key={`data-cell-expand-control-${i}`}
|
||||||
|
align="center"
|
||||||
|
sx={{
|
||||||
|
...STYLES.TABLE_CELL_EXPAND_CONTROL,
|
||||||
|
...(fixedColumns ? STYLES.TABLE_CELL_STICKY(theme, 0) : {})
|
||||||
|
}}
|
||||||
|
>
|
||||||
<IconButton onClick={() => handleExpandClick(i)}>
|
<IconButton onClick={() => handleExpandClick(i)}>
|
||||||
<Icon>{expanded[i] === true ? "keyboard_arrow_down" : "keyboard_arrow_right"}</Icon>
|
<Icon>{expanded[i] === true ? "keyboard_arrow_down" : "keyboard_arrow_right"}</Icon>
|
||||||
</IconButton>
|
</IconButton>
|
||||||
@ -766,7 +826,11 @@ const P8PTable = ({
|
|||||||
<TableCell
|
<TableCell
|
||||||
key={`data-cell-${j}`}
|
key={`data-cell-${j}`}
|
||||||
align={getAlignByDataType(columnDef)}
|
align={getAlignByDataType(columnDef)}
|
||||||
sx={{ ...customRender.cellStyle }}
|
sx={{
|
||||||
|
...(columnDef.width ? { minWidth: columnDef.width, maxWidth: columnDef.width } : {}),
|
||||||
|
...(columnDef.fixed ? STYLES.TABLE_CELL_STICKY(theme, columnDef.fixedLeft) : {}),
|
||||||
|
...customRender.cellStyle
|
||||||
|
}}
|
||||||
{...customRender.cellProps}
|
{...customRender.cellProps}
|
||||||
>
|
>
|
||||||
{customRender.data
|
{customRender.data
|
||||||
@ -780,7 +844,13 @@ const P8PTable = ({
|
|||||||
</TableRow>
|
</TableRow>
|
||||||
{expandable && rowExpandRender && expanded[i] === true ? (
|
{expandable && rowExpandRender && expanded[i] === true ? (
|
||||||
<TableRow key={`data-row-expand-${i}`}>
|
<TableRow key={`data-row-expand-${i}`}>
|
||||||
<TableCell sx={STYLES.TABLE_CELL_EXPAND_CONTAINER} colSpan={header.displayDataColumnsCount}>
|
<TableCell
|
||||||
|
sx={{
|
||||||
|
...STYLES.TABLE_CELL_EXPAND_CONTAINER,
|
||||||
|
...(fixedColumns ? STYLES.TABLE_CELL_STICKY(theme, 0) : {})
|
||||||
|
}}
|
||||||
|
colSpan={fixedColumns ? header.displayFixedColumnsCount + 1 : header.displayDataColumnsCount}
|
||||||
|
>
|
||||||
{rowExpandRender({ columnsDef, row })}
|
{rowExpandRender({ columnsDef, row })}
|
||||||
</TableCell>
|
</TableCell>
|
||||||
</TableRow>
|
</TableRow>
|
||||||
@ -797,22 +867,24 @@ const P8PTable = ({
|
|||||||
</React.Fragment>
|
</React.Fragment>
|
||||||
);
|
);
|
||||||
})
|
})
|
||||||
: null}
|
) : noDataFoundText && !reloading ? (
|
||||||
|
<TableRow>
|
||||||
|
<TableCell colSpan={header.displayDataColumnsCount}>
|
||||||
|
<P8PAppInlineError text={noDataFoundText} />
|
||||||
|
</TableCell>
|
||||||
|
</TableRow>
|
||||||
|
) : null}
|
||||||
</TableBody>
|
</TableBody>
|
||||||
</Table>
|
</Table>
|
||||||
{rows.length == 0 ? (
|
</TableContainer>
|
||||||
noDataFoundText && !reloading ? (
|
{morePages ? (
|
||||||
<P8PAppInlineError text={noDataFoundText} />
|
|
||||||
) : null
|
|
||||||
) : morePages ? (
|
|
||||||
<Container style={STYLES.MORE_BUTTON_CONTAINER}>
|
<Container style={STYLES.MORE_BUTTON_CONTAINER}>
|
||||||
<Button fullWidth onClick={handleMorePagesBtnClick}>
|
<Button fullWidth onClick={handleMorePagesBtnClick} {...(morePagesBtnProps ? morePagesBtnProps : {})}>
|
||||||
{morePagesBtnCaption}
|
{morePagesBtnCaption}
|
||||||
</Button>
|
</Button>
|
||||||
</Container>
|
</Container>
|
||||||
) : null}
|
) : null}
|
||||||
</TableContainer>
|
</div>
|
||||||
</>
|
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -829,7 +901,8 @@ P8PTable.propTypes = {
|
|||||||
values: PropTypes.array,
|
values: PropTypes.array,
|
||||||
parent: PropTypes.string,
|
parent: PropTypes.string,
|
||||||
expandable: PropTypes.bool.isRequired,
|
expandable: PropTypes.bool.isRequired,
|
||||||
expanded: PropTypes.bool.isRequired
|
expanded: PropTypes.bool.isRequired,
|
||||||
|
width: PropTypes.number
|
||||||
})
|
})
|
||||||
).isRequired,
|
).isRequired,
|
||||||
groups: PropTypes.arrayOf(
|
groups: PropTypes.arrayOf(
|
||||||
@ -849,6 +922,8 @@ P8PTable.propTypes = {
|
|||||||
).isRequired,
|
).isRequired,
|
||||||
filters: PropTypes.arrayOf(P8P_TABLE_FILTER_SHAPE).isRequired,
|
filters: PropTypes.arrayOf(P8P_TABLE_FILTER_SHAPE).isRequired,
|
||||||
size: PropTypes.string,
|
size: PropTypes.string,
|
||||||
|
fixedHeader: PropTypes.bool,
|
||||||
|
fixedColumns: PropTypes.number,
|
||||||
morePages: PropTypes.bool,
|
morePages: PropTypes.bool,
|
||||||
reloading: PropTypes.bool.isRequired,
|
reloading: PropTypes.bool.isRequired,
|
||||||
expandable: PropTypes.bool,
|
expandable: PropTypes.bool,
|
||||||
@ -862,6 +937,7 @@ P8PTable.propTypes = {
|
|||||||
clearFilterBtnCaption: PropTypes.string.isRequired,
|
clearFilterBtnCaption: PropTypes.string.isRequired,
|
||||||
cancelFilterBtnCaption: PropTypes.string.isRequired,
|
cancelFilterBtnCaption: PropTypes.string.isRequired,
|
||||||
morePagesBtnCaption: PropTypes.string.isRequired,
|
morePagesBtnCaption: PropTypes.string.isRequired,
|
||||||
|
morePagesBtnProps: PropTypes.object,
|
||||||
noDataFoundText: PropTypes.string,
|
noDataFoundText: PropTypes.string,
|
||||||
headCellRender: PropTypes.func,
|
headCellRender: PropTypes.func,
|
||||||
dataCellRender: PropTypes.func,
|
dataCellRender: PropTypes.func,
|
||||||
|
@ -19,7 +19,8 @@ const HEADER_INITIAL_STATE = () => ({
|
|||||||
displayLevels: [],
|
displayLevels: [],
|
||||||
displayLevelsColumns: {},
|
displayLevelsColumns: {},
|
||||||
displayDataColumnsCount: 0,
|
displayDataColumnsCount: 0,
|
||||||
displayDataColumns: []
|
displayDataColumns: [],
|
||||||
|
displayFixedColumnsCount: 0
|
||||||
});
|
});
|
||||||
|
|
||||||
//Состояние описания ячейки заголовка таблицы по умолчанию
|
//Состояние описания ячейки заголовка таблицы по умолчанию
|
||||||
@ -28,6 +29,8 @@ const HEADER_COLUMN_INITIAL_STATE = ({ columnDef, objectsCopier }) => {
|
|||||||
if (!hasValue(tmp.parent)) tmp.parent = "";
|
if (!hasValue(tmp.parent)) tmp.parent = "";
|
||||||
if (!hasValue(tmp.expandable)) tmp.expandable = false;
|
if (!hasValue(tmp.expandable)) tmp.expandable = false;
|
||||||
if (!hasValue(tmp.expanded)) tmp.expanded = true;
|
if (!hasValue(tmp.expanded)) tmp.expanded = true;
|
||||||
|
if (!hasValue(tmp.fixed)) tmp.fixed = false;
|
||||||
|
if (!hasValue(tmp.fixedLeft)) tmp.fixedLeft = 0;
|
||||||
return tmp;
|
return tmp;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -55,8 +58,23 @@ const getDisplayColumnColSpan = (displayTree, columnDef) => {
|
|||||||
} else return 1;
|
} else return 1;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//Определения признака зафиксированности колонки
|
||||||
|
const getFixedColumns = (displayTree, parentFixed, parentLeft, fixedColumns) => {
|
||||||
|
if (fixedColumns) {
|
||||||
|
let left = parentLeft;
|
||||||
|
displayTree.forEach((columnDef, i) => {
|
||||||
|
left += columnDef.width;
|
||||||
|
if ((columnDef.level == 1 && i + 1 <= fixedColumns) || (columnDef.level > 1 && parentFixed)) {
|
||||||
|
columnDef.fixed = true;
|
||||||
|
columnDef.fixedLeft = left - columnDef.width;
|
||||||
|
} else columnDef.fixed = false;
|
||||||
|
if (columnDef.hasChild) getFixedColumns(columnDef.child, columnDef.fixed, columnDef.fixedLeft, fixedColumns);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
//Формирование дерева отображаемых элементов заголовка
|
//Формирование дерева отображаемых элементов заголовка
|
||||||
const buildDisplayTree = (columnsDef, parent, level) => {
|
const buildDisplayTree = (columnsDef, parent, level, expandable, fixedColumns) => {
|
||||||
const baseBuild = (columnsDef, parent, level) => {
|
const baseBuild = (columnsDef, parent, level) => {
|
||||||
let maxLevel = level - 1;
|
let maxLevel = level - 1;
|
||||||
const res = columnsDef
|
const res = columnsDef
|
||||||
@ -77,6 +95,7 @@ const buildDisplayTree = (columnsDef, parent, level) => {
|
|||||||
};
|
};
|
||||||
const [displayTree, maxLevel] = baseBuild(columnsDef, parent, level);
|
const [displayTree, maxLevel] = baseBuild(columnsDef, parent, level);
|
||||||
getDisplayColumnRowSpan(displayTree, maxLevel);
|
getDisplayColumnRowSpan(displayTree, maxLevel);
|
||||||
|
getFixedColumns(displayTree, false, expandable ? 60 : 0, fixedColumns);
|
||||||
return [displayTree, maxLevel];
|
return [displayTree, maxLevel];
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -106,35 +125,42 @@ const buildDisplayDataColumns = (displayTree, expandable) => {
|
|||||||
return [displayDataColumns, displayDataColumns.length + (expandable === true ? 1 : 0)];
|
return [displayDataColumns, displayDataColumns.length + (expandable === true ? 1 : 0)];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//Подсчёт количества отображаемых фиксированных колонок
|
||||||
|
const getDisplayFixedColumnsCount = displayTree => {
|
||||||
|
let res = 0;
|
||||||
|
const traverseTree = displayTree => {
|
||||||
|
displayTree.forEach(columnDef => (columnDef.hasChild ? traverseTree(columnDef.child) : columnDef.fixed ? res++ : null));
|
||||||
|
};
|
||||||
|
traverseTree(displayTree);
|
||||||
|
return res;
|
||||||
|
};
|
||||||
|
|
||||||
//Формирование описания отображаемых колонок
|
//Формирование описания отображаемых колонок
|
||||||
const buildDisplay = ({ columnsDef, expandable }) => {
|
const buildDisplay = ({ columnsDef, expandable, fixedColumns }) => {
|
||||||
//Сформируем дерево отображаемых колонок заголовка
|
//Сформируем дерево отображаемых колонок заголовка
|
||||||
const [displayTree, maxLevel] = buildDisplayTree(columnsDef, "", 1);
|
const [displayTree, maxLevel] = buildDisplayTree(columnsDef, "", 1, expandable, fixedColumns);
|
||||||
//Вытянем дерево в удобные для рендеринга структуры
|
//Вытянем дерево в удобные для рендеринга структуры
|
||||||
const [displayLevels, displayLevelsColumns] = buildDisplayLevelsColumns(displayTree, maxLevel);
|
const [displayLevels, displayLevelsColumns] = buildDisplayLevelsColumns(displayTree, maxLevel);
|
||||||
//Сформируем отображаемые колонки данных
|
//Сформируем отображаемые колонки данных
|
||||||
const [displayDataColumns, displayDataColumnsCount] = buildDisplayDataColumns(displayTree, expandable);
|
const [displayDataColumns, displayDataColumnsCount] = buildDisplayDataColumns(displayTree, expandable);
|
||||||
|
//Подсчитаем количество отображаемых фиксированных колонок
|
||||||
|
const displayFixedColumnsCount = getDisplayFixedColumnsCount(displayTree);
|
||||||
//Вернём результат
|
//Вернём результат
|
||||||
return [displayLevels, displayLevelsColumns, displayDataColumns, displayDataColumnsCount];
|
return [displayLevels, displayLevelsColumns, displayDataColumns, displayDataColumnsCount, displayFixedColumnsCount];
|
||||||
};
|
};
|
||||||
|
|
||||||
//Формирование описания заголовка
|
//Формирование описания заголовка
|
||||||
const buildHeaderDef = ({ columnsDef, expandable, objectsCopier }) => {
|
const buildHeaderDef = ({ columnsDef, expandable, fixedColumns, objectsCopier }) => {
|
||||||
//Инициализируем результат
|
//Инициализируем результат
|
||||||
const res = HEADER_INITIAL_STATE();
|
const res = HEADER_INITIAL_STATE();
|
||||||
//Инициализируем внутренне описание колонок и поместим его в результат
|
//Инициализируем внутренне описание колонок и поместим его в результат
|
||||||
columnsDef.forEach(columnDef => res.columnsDef.push(HEADER_COLUMN_INITIAL_STATE({ columnDef, objectsCopier })));
|
columnsDef.forEach(columnDef => res.columnsDef.push(HEADER_COLUMN_INITIAL_STATE({ columnDef, objectsCopier })));
|
||||||
//Добавим в результат сведения об отображаемых данных
|
//Добавим в результат сведения об отображаемых данных
|
||||||
[res.displayLevels, res.displayLevelsColumns, res.displayDataColumns, res.displayDataColumnsCount] = buildDisplay({
|
[res.displayLevels, res.displayLevelsColumns, res.displayDataColumns, res.displayDataColumnsCount, res.displayFixedColumnsCount] = buildDisplay({
|
||||||
columnsDef: res.columnsDef,
|
columnsDef: res.columnsDef,
|
||||||
expandable
|
expandable,
|
||||||
|
fixedColumns
|
||||||
});
|
});
|
||||||
//Сформируем дерево отображаемых колонок заголовка
|
|
||||||
//const [displayTree, maxLevel] = buildDisplayTree(res.columnsDef, "", 1);
|
|
||||||
//Вытянем дерево в удобные для рендеринга структуры
|
|
||||||
//[res.displayLevels, res.displayLevelsColumns] = buildDisplayLevelsColumns(displayTree, maxLevel);
|
|
||||||
//Сформируем отображаемые колонки данных
|
|
||||||
//[res.displayDataColumns, res.displayDataColumnsCount] = buildDisplayDataColumns(displayTree, expandable);
|
|
||||||
//Вернём результат
|
//Вернём результат
|
||||||
return res;
|
return res;
|
||||||
};
|
};
|
||||||
@ -147,30 +173,29 @@ const buildHeaderDef = ({ columnsDef, expandable, objectsCopier }) => {
|
|||||||
const handlers = {
|
const handlers = {
|
||||||
//Формирование заголовка
|
//Формирование заголовка
|
||||||
[P8P_TABLE_AT.SET_HEADER]: (state, { payload }) => {
|
[P8P_TABLE_AT.SET_HEADER]: (state, { payload }) => {
|
||||||
const { columnsDef, expandable, objectsCopier } = payload;
|
const { columnsDef, expandable, fixedColumns, objectsCopier } = payload;
|
||||||
return {
|
return {
|
||||||
...state,
|
...state,
|
||||||
...buildHeaderDef({ columnsDef, expandable, objectsCopier })
|
...buildHeaderDef({ columnsDef, expandable, fixedColumns, objectsCopier })
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
[P8P_TABLE_AT.TOGGLE_HEADER_EXPAND]: (state, { payload }) => {
|
[P8P_TABLE_AT.TOGGLE_HEADER_EXPAND]: (state, { payload }) => {
|
||||||
const { columnName, expandable, objectsCopier } = payload;
|
const { columnName, expandable, fixedColumns, objectsCopier } = payload;
|
||||||
const columnsDef = objectsCopier(state.columnsDef);
|
const columnsDef = objectsCopier(state.columnsDef);
|
||||||
columnsDef.forEach(columnDef => (columnDef.name == columnName ? (columnDef.expanded = !columnDef.expanded) : null));
|
columnsDef.forEach(columnDef => (columnDef.name == columnName ? (columnDef.expanded = !columnDef.expanded) : null));
|
||||||
const [displayLevels, displayLevelsColumns, displayDataColumns, displayDataColumnsCount] = buildDisplay({
|
const [displayLevels, displayLevelsColumns, displayDataColumns, displayDataColumnsCount, displayFixedColumnsCount] = buildDisplay({
|
||||||
columnsDef,
|
columnsDef,
|
||||||
expandable
|
expandable,
|
||||||
|
fixedColumns
|
||||||
});
|
});
|
||||||
//const [displayTree, maxLevel] = buildDisplayTree(columnsDef, "", 1);
|
|
||||||
//const [displayLevels, displayLevelsColumns] = buildDisplayLevelsColumns(displayTree, maxLevel);
|
|
||||||
//const [displayDataColumns, displayDataColumnsCount] = buildDisplayDataColumns(displayTree, expandable);
|
|
||||||
return {
|
return {
|
||||||
...state,
|
...state,
|
||||||
columnsDef,
|
columnsDef,
|
||||||
displayLevels,
|
displayLevels,
|
||||||
displayLevelsColumns,
|
displayLevelsColumns,
|
||||||
displayDataColumns,
|
displayDataColumns,
|
||||||
displayDataColumnsCount
|
displayDataColumnsCount,
|
||||||
|
displayFixedColumnsCount
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
//Обработчик по умолчанию
|
//Обработчик по умолчанию
|
||||||
|
338
app/panels/mech_rec_assembly_mon/components/plan_detail.js
Normal file
@ -0,0 +1,338 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Мониторинг сборки изделий
|
||||||
|
Панель мониторинга: Детализация по объекту
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React, { useEffect, useState } from "react"; //Классы React
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
import { Box, Grid, Container, Button, Typography, Icon, Stack, IconButton, CircularProgress } from "@mui/material"; //Интерфейсные элементы
|
||||||
|
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../../components/p8p_data_grid"; //Таблица данных
|
||||||
|
import { P8PSVG } from "../../../components/p8p_svg"; //Интерактивные изображения
|
||||||
|
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||||
|
import { useCostProductComposition, useProductDetailsTable } from "../hooks"; //Вспомогательные хуки
|
||||||
|
import { ProgressBox } from "./progress_box"; //Информация по прогрессу объекта
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
BOX_INFO_MAIN: {
|
||||||
|
border: "1px solid",
|
||||||
|
borderRadius: "25px",
|
||||||
|
height: "35vh"
|
||||||
|
},
|
||||||
|
BOX_INFO_SUB: isMessage => ({
|
||||||
|
overflow: "hidden",
|
||||||
|
textAlign: "center",
|
||||||
|
width: "100%",
|
||||||
|
height: "100%",
|
||||||
|
display: "flex",
|
||||||
|
flexDirection: "column",
|
||||||
|
justifyContent: isMessage ? "center" : "flex-start",
|
||||||
|
paddingLeft: "5px",
|
||||||
|
paddingRight: "5px",
|
||||||
|
...(isMessage ? { padding: "5px" } : { paddingTop: "10px" })
|
||||||
|
}),
|
||||||
|
DETAIL_INFO: {
|
||||||
|
display: "flex",
|
||||||
|
justifyContent: "space-around",
|
||||||
|
alignItems: "center",
|
||||||
|
border: "1px solid",
|
||||||
|
borderRadius: "25px",
|
||||||
|
height: "17vh"
|
||||||
|
},
|
||||||
|
PRODUCT_SELECTOR_CONTAINER: {
|
||||||
|
display: "flex",
|
||||||
|
justifyContent: "center",
|
||||||
|
alignItems: "center",
|
||||||
|
flexDirection: "column",
|
||||||
|
border: "1px solid",
|
||||||
|
borderRadius: "25px",
|
||||||
|
height: "53vh",
|
||||||
|
marginTop: "16px"
|
||||||
|
},
|
||||||
|
PRODUCT_SELECTOR_MODEL: { width: "70%" },
|
||||||
|
PLAN_INFO_MAIN: {
|
||||||
|
display: "flex",
|
||||||
|
flexDirection: "column",
|
||||||
|
gap: "16px"
|
||||||
|
},
|
||||||
|
PLAN_INFO_SUB: {
|
||||||
|
display: "flex",
|
||||||
|
justifyContent: "space-between",
|
||||||
|
width: "280px",
|
||||||
|
borderBottom: "1px solid"
|
||||||
|
},
|
||||||
|
TABLE_DETAILS: { height: "240px" },
|
||||||
|
TABLE_DETAILS_HEADER_CELL: maxWidth => ({
|
||||||
|
padding: "2px 2px",
|
||||||
|
fontSize: "11px",
|
||||||
|
textAlign: "center",
|
||||||
|
lineHeight: "1rem",
|
||||||
|
...(maxWidth ? { maxWidth } : {})
|
||||||
|
}),
|
||||||
|
TABLE_DETAILS_DATA_CELL: textAlign => ({ padding: "2px 2px", fontSize: "11px", ...(textAlign ? { textAlign } : {}) }),
|
||||||
|
TABLE_DETAILS_MORE_BUTTON: { borderRadius: "25px", height: "20px" },
|
||||||
|
CARD_DETAILS_CONTAINER: { minWidth: "1200px", maxWidth: "1400px" },
|
||||||
|
CARD_DETAILS_NAVIGATION_STACK: { width: "100%" }
|
||||||
|
};
|
||||||
|
|
||||||
|
//------------------------------------
|
||||||
|
//Вспомогательные функции и компоненты
|
||||||
|
//------------------------------------
|
||||||
|
|
||||||
|
//Информация о плане
|
||||||
|
const PlanInfo = ({ plan }) => {
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<Box sx={STYLES.PLAN_INFO_MAIN}>
|
||||||
|
<Box sx={STYLES.PLAN_INFO_SUB}>
|
||||||
|
<Typography variant="UDO_body1" mt={1}>
|
||||||
|
Номер борта:
|
||||||
|
</Typography>
|
||||||
|
<Typography variant="subtitle2">{plan.SNUMB}</Typography>
|
||||||
|
</Box>
|
||||||
|
<Box sx={STYLES.PLAN_INFO_SUB}>
|
||||||
|
<Typography variant="UDO_body1" mt={1}>
|
||||||
|
Год выпуска:
|
||||||
|
</Typography>
|
||||||
|
<Typography variant="subtitle2">{plan.NYEAR}</Typography>
|
||||||
|
</Box>
|
||||||
|
</Box>
|
||||||
|
<ProgressBox
|
||||||
|
progress={plan.NPROGRESS}
|
||||||
|
detail={plan.SDETAIL}
|
||||||
|
width={"110px"}
|
||||||
|
height={"110px"}
|
||||||
|
progressVariant={"subtitle2"}
|
||||||
|
detailVariant={"body3"}
|
||||||
|
/>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Информация о плане
|
||||||
|
PlanInfo.propTypes = {
|
||||||
|
plan: PropTypes.object
|
||||||
|
};
|
||||||
|
|
||||||
|
//Модель выпуска плана
|
||||||
|
const PlanProductCompositionModel = ({ model, products, onProductSelect }) => {
|
||||||
|
//При выборе детали на модели
|
||||||
|
const handleProductClick = ({ item }) => {
|
||||||
|
const product = products.find(p => p.SMODEL_ID == item.id);
|
||||||
|
if (product && onProductSelect) onProductSelect(product);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<Box sx={STYLES.PRODUCT_SELECTOR_MODEL}>
|
||||||
|
{model ? (
|
||||||
|
<P8PSVG
|
||||||
|
data={atob(model)}
|
||||||
|
items={products.map(p => ({ id: p.SMODEL_ID, backgroundColor: p.SMODEL_BG_COLOR || "red", desc: p.SNAME, title: p.SNAME }))}
|
||||||
|
fillOpacity={"0.3"}
|
||||||
|
onItemClick={handleProductClick}
|
||||||
|
/>
|
||||||
|
) : (
|
||||||
|
<Typography variant="subtitle2">Модель изделия не загружена</Typography>
|
||||||
|
)}
|
||||||
|
</Box>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Модель выпуска плана
|
||||||
|
PlanProductCompositionModel.propTypes = {
|
||||||
|
model: PropTypes.any,
|
||||||
|
products: PropTypes.array,
|
||||||
|
onProductSelect: PropTypes.func
|
||||||
|
};
|
||||||
|
|
||||||
|
//Генерация представления ячейки заголовка
|
||||||
|
const headCellRender = ({ columnDef }) => ({
|
||||||
|
stackProps: { justifyContent: "center" },
|
||||||
|
cellStyle: STYLES.TABLE_DETAILS_HEADER_CELL(
|
||||||
|
["NREMN_LABOUR", "NAPPLICABILITY"].includes(columnDef.name) ? "90px" : ["NDEFICIT"].includes(columnDef.name) ? "55px" : null
|
||||||
|
)
|
||||||
|
});
|
||||||
|
|
||||||
|
//Генерация заливки строки исходя от значений
|
||||||
|
const dataCellRender = ({ row, columnDef }) => ({
|
||||||
|
cellStyle: STYLES.TABLE_DETAILS_DATA_CELL(["SOPERATION", "SNOMEN"].includes(columnDef.name) ? null : "center"),
|
||||||
|
data: row[columnDef]
|
||||||
|
});
|
||||||
|
|
||||||
|
//Таблица детализации изделия
|
||||||
|
const ProductDetailsTable = ({ plan, product, stored, noProductMessage, noDataFoundMessage, title }) => {
|
||||||
|
//Собственное состояние
|
||||||
|
const [state, setState] = useState({ plan: null, product: null, orders: null, pageNumber: 1 });
|
||||||
|
|
||||||
|
//Собственное состояние - данные таблицы
|
||||||
|
const { data, isLoading } = useProductDetailsTable(state.plan, state.product, state.orders, state.pageNumber, stored);
|
||||||
|
|
||||||
|
//При изменении состояния сортировки
|
||||||
|
const handleOrderChanged = ({ orders }) => setState(pv => ({ ...pv, orders: [...orders], pageNumber: 1 }));
|
||||||
|
|
||||||
|
//При изменении количества отображаемых страниц
|
||||||
|
const handlePagesCountChanged = () => setState(pv => ({ ...pv, pageNumber: pv.pageNumber + 1 }));
|
||||||
|
|
||||||
|
//При изменении изделия
|
||||||
|
useEffect(() => {
|
||||||
|
setState(pv => ({ ...pv, plan, product, orders: null, pageNumber: 1 }));
|
||||||
|
}, [product, plan]);
|
||||||
|
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<Box sx={STYLES.BOX_INFO_SUB(!product || data.rows.length === 0)}>
|
||||||
|
{!product ? (
|
||||||
|
<Typography variant="UDO_body2">{noProductMessage}</Typography>
|
||||||
|
) : (
|
||||||
|
<>
|
||||||
|
<Stack direction="row" spacing={2} justifyContent="center" alignItems="center">
|
||||||
|
<CircularProgress size={18} sx={{ opacity: isLoading ? 1 : 0 }} />
|
||||||
|
<Typography variant="h4">
|
||||||
|
<b>{title}</b>
|
||||||
|
</Typography>
|
||||||
|
</Stack>
|
||||||
|
<P8PDataGrid
|
||||||
|
{...{ ...P8P_DATA_GRID_CONFIG_PROPS, noDataFoundText: isLoading || !data.init ? "" : noDataFoundMessage }}
|
||||||
|
containerComponentProps={{ sx: STYLES.TABLE_DETAILS, elevation: 0 }}
|
||||||
|
columnsDef={data.columnsDef}
|
||||||
|
rows={data.rows}
|
||||||
|
size={P8P_DATA_GRID_SIZE.SMALL}
|
||||||
|
morePages={data.morePages}
|
||||||
|
morePagesBtnProps={{ sx: STYLES.TABLE_DETAILS_MORE_BUTTON }}
|
||||||
|
fixedHeader={true}
|
||||||
|
reloading={false}
|
||||||
|
dataCellRender={dataCellRender}
|
||||||
|
headCellRender={headCellRender}
|
||||||
|
onOrderChanged={handleOrderChanged}
|
||||||
|
onPagesCountChanged={handlePagesCountChanged}
|
||||||
|
/>
|
||||||
|
</>
|
||||||
|
)}
|
||||||
|
</Box>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Таблица детализации изделия
|
||||||
|
ProductDetailsTable.propTypes = {
|
||||||
|
plan: PropTypes.number.isRequired,
|
||||||
|
product: PropTypes.number,
|
||||||
|
stored: PropTypes.string.isRequired,
|
||||||
|
noProductMessage: PropTypes.string.isRequired,
|
||||||
|
noDataFoundMessage: PropTypes.string.isRequired,
|
||||||
|
title: PropTypes.string.isRequired
|
||||||
|
};
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Детализация по объекту
|
||||||
|
const PlanDetail = ({ plan, disableNavigatePrev = false, disableNavigateNext = false, onNavigate, onBack }) => {
|
||||||
|
//Собственное состояние - данные производственных составов SVG
|
||||||
|
const [costProductComposition, setCostProductComposition] = useCostProductComposition(plan.NRN);
|
||||||
|
|
||||||
|
//Выбор элемента изделия
|
||||||
|
const setProduct = product => {
|
||||||
|
setCostProductComposition(pv => ({ ...pv, selectedProduct: product ? { ...product } : null }));
|
||||||
|
};
|
||||||
|
|
||||||
|
//При навигации между карточками
|
||||||
|
const handleNavigate = direction => {
|
||||||
|
setProduct(null);
|
||||||
|
if (onNavigate) onNavigate(direction);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Формируем представление
|
||||||
|
return (
|
||||||
|
<Container maxWidth={false} sx={STYLES.CARD_DETAILS_CONTAINER}>
|
||||||
|
<Grid container direction="row" justifyContent="center" alignItems="center" spacing={0}>
|
||||||
|
<Grid item display="flex" justifyContent="center" xs={1}>
|
||||||
|
<Stack display="flex" direction="row" justifyContent="flex-end" alignItems="center" sx={STYLES.CARD_DETAILS_NAVIGATION_STACK}>
|
||||||
|
<IconButton disabled={disableNavigatePrev} onClick={() => handleNavigate(-1)}>
|
||||||
|
<Icon>navigate_before</Icon>
|
||||||
|
</IconButton>
|
||||||
|
</Stack>
|
||||||
|
</Grid>
|
||||||
|
<Grid item xs={10}>
|
||||||
|
<Container maxWidth={false}>
|
||||||
|
<Button onClick={() => (onBack ? onBack() : null)}>
|
||||||
|
<Stack direction="row">
|
||||||
|
<Icon>chevron_left</Icon>Назад
|
||||||
|
</Stack>
|
||||||
|
</Button>
|
||||||
|
|
||||||
|
<Grid container spacing={2} sx={{ paddingTop: "5px" }}>
|
||||||
|
<Grid item xs={5}>
|
||||||
|
<Box sx={STYLES.BOX_INFO_MAIN}>
|
||||||
|
<ProductDetailsTable
|
||||||
|
plan={plan.NRN}
|
||||||
|
product={costProductComposition.selectedProduct?.NRN}
|
||||||
|
stored={"PKG_P8PANELS_MECHREC.FCROUTLST_DG_BY_PRDCMPSP_GET"}
|
||||||
|
noProductMessage={"Укажите элемент модели, чтобы увидеть информацию о маршрутных картах"}
|
||||||
|
noDataFoundMessage={"Маршрутные карты не найдены"}
|
||||||
|
title={"Маршрутные карты"}
|
||||||
|
/>
|
||||||
|
</Box>
|
||||||
|
<Box sx={STYLES.BOX_INFO_MAIN} mt={2}>
|
||||||
|
<ProductDetailsTable
|
||||||
|
plan={plan.NRN}
|
||||||
|
product={costProductComposition.selectedProduct?.NRN}
|
||||||
|
stored={"PKG_P8PANELS_MECHREC.FCDELIVSH_DG_BY_PRDCMPSP_GET"}
|
||||||
|
noProductMessage={"Укажите элемент модели, чтобы увидеть информацию о комплектовочных ведомостях"}
|
||||||
|
noDataFoundMessage={"Комплектовочные ведомости не найдены"}
|
||||||
|
title={"Дефицит комплектации"}
|
||||||
|
/>
|
||||||
|
</Box>
|
||||||
|
</Grid>
|
||||||
|
<Grid item xs={7}>
|
||||||
|
<Box sx={STYLES.DETAIL_INFO}>
|
||||||
|
<PlanInfo plan={plan} />
|
||||||
|
</Box>
|
||||||
|
<Box sx={STYLES.PRODUCT_SELECTOR_CONTAINER}>
|
||||||
|
<PlanProductCompositionModel
|
||||||
|
model={costProductComposition.model}
|
||||||
|
products={costProductComposition.products}
|
||||||
|
onProductSelect={setProduct}
|
||||||
|
/>
|
||||||
|
</Box>
|
||||||
|
</Grid>
|
||||||
|
</Grid>
|
||||||
|
</Container>
|
||||||
|
</Grid>
|
||||||
|
<Grid item display="flex" justifyContent="center" xs={1}>
|
||||||
|
<Stack display="flex" direction="row" justifyContent="flex-start" alignItems="center" sx={STYLES.CARD_DETAILS_NAVIGATION_STACK}>
|
||||||
|
<IconButton disabled={disableNavigateNext} onClick={() => handleNavigate(1)}>
|
||||||
|
<Icon>navigate_next</Icon>
|
||||||
|
</IconButton>
|
||||||
|
</Stack>
|
||||||
|
</Grid>
|
||||||
|
</Grid>
|
||||||
|
</Container>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Детализация по объекту
|
||||||
|
PlanDetail.propTypes = {
|
||||||
|
plan: PropTypes.object,
|
||||||
|
disableNavigatePrev: PropTypes.bool,
|
||||||
|
disableNavigateNext: PropTypes.bool,
|
||||||
|
onNavigate: PropTypes.func,
|
||||||
|
onBack: PropTypes.func
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { PlanDetail };
|
83
app/panels/mech_rec_assembly_mon/components/plans_list.js
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Мониторинг сборки изделий
|
||||||
|
Компонент: Список планов
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React, { useState } from "react"; //Классы React
|
||||||
|
import { Container, Grid, IconButton, Icon } from "@mui/material"; //Интерфейсные элементы
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
import { PlansListItem } from "./plans_list_item"; //Элемент списка планов
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Количество одновременно отображаемых элементов списка по умолчанию
|
||||||
|
const DEFAULT_PAGE_SIZE = 5;
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
PLAN_DOCUMENTS_LIST: { minWidth: "1024px" }
|
||||||
|
};
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Список планов
|
||||||
|
const PlansList = ({ plans, pageSize = DEFAULT_PAGE_SIZE, onItemClick }) => {
|
||||||
|
//Состояние прокрутки списка отображаемых планов
|
||||||
|
const [scroll, setScroll] = useState(0);
|
||||||
|
|
||||||
|
//Отработка нажатия на прокрутку списка планов влево
|
||||||
|
const handleScrollLeft = () => setScroll(pv => (pv <= 1 ? 0 : pv - 1));
|
||||||
|
|
||||||
|
//Отработка нажатия на прокрутку списка планов вправо
|
||||||
|
const handleScrollRight = () => setScroll(pv => (pv + pageSize >= plans.length ? pv : pv + 1));
|
||||||
|
|
||||||
|
//Сборка представления
|
||||||
|
return (
|
||||||
|
<Container>
|
||||||
|
<Grid container direction="row" justifyContent="center" alignItems="center" spacing={2} sx={STYLES.PLAN_DOCUMENTS_LIST}>
|
||||||
|
<Grid item display="flex" justifyContent="center" xs={1}>
|
||||||
|
<IconButton onClick={handleScrollLeft} disabled={scroll <= 0}>
|
||||||
|
<Icon>navigate_before</Icon>
|
||||||
|
</IconButton>
|
||||||
|
</Grid>
|
||||||
|
{plans.map((el, i) =>
|
||||||
|
i >= scroll && i < scroll + pageSize ? (
|
||||||
|
<Grid item key={`${el.NRN}_${i}`} xs={2}>
|
||||||
|
<PlansListItem
|
||||||
|
card={el}
|
||||||
|
cardIndex={i}
|
||||||
|
onClick={(card, cardIndex) => (onItemClick ? onItemClick(card, cardIndex) : null)}
|
||||||
|
/>
|
||||||
|
</Grid>
|
||||||
|
) : null
|
||||||
|
)}
|
||||||
|
<Grid item display="flex" justifyContent="center" xs={1}>
|
||||||
|
<IconButton onClick={handleScrollRight} disabled={scroll + pageSize >= plans.length}>
|
||||||
|
<Icon>navigate_next</Icon>
|
||||||
|
</IconButton>
|
||||||
|
</Grid>
|
||||||
|
</Grid>
|
||||||
|
</Container>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Список планов
|
||||||
|
PlansList.propTypes = {
|
||||||
|
plans: PropTypes.arrayOf(PropTypes.object),
|
||||||
|
pageSize: PropTypes.number,
|
||||||
|
onItemClick: PropTypes.func
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { PlansList };
|
108
app/panels/mech_rec_assembly_mon/components/plans_list_item.js
Normal file
@ -0,0 +1,108 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Мониторинг сборки изделий
|
||||||
|
Компонент: Элемент списка планов
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React from "react"; //Классы React
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
import { Typography, Box, ImageList, ImageListItem, Icon } from "@mui/material"; //Интерфейсные элементы
|
||||||
|
import { ProgressBox } from "./progress_box"; //Информация по прогрессу объекта
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
CONTAINER: {
|
||||||
|
display: "flex",
|
||||||
|
justifyContent: "center",
|
||||||
|
alignItems: "center",
|
||||||
|
flexDirection: "column",
|
||||||
|
gap: "24px",
|
||||||
|
border: "1px solid",
|
||||||
|
borderRadius: "25px",
|
||||||
|
cursor: "pointer"
|
||||||
|
},
|
||||||
|
IMAGE_BOX: { width: "180px", height: "180px", alignItems: "center", justifyContent: "center", display: "flex" },
|
||||||
|
IMAGE_LIST_ITEM: { textAlign: "center" },
|
||||||
|
IMAGE_IMG: { width: "160px" }
|
||||||
|
};
|
||||||
|
|
||||||
|
//------------------------------------
|
||||||
|
//Вспомогательные функции и компоненты
|
||||||
|
//------------------------------------
|
||||||
|
|
||||||
|
//Изображение для элемента
|
||||||
|
const PlansListItemImage = ({ card }) => {
|
||||||
|
return (
|
||||||
|
<Box sx={STYLES.IMAGE_BOX}>
|
||||||
|
<ImageList variant="masonry" cols={1} gap={8}>
|
||||||
|
<ImageListItem key={1} sx={STYLES.IMAGE_LIST_ITEM}>
|
||||||
|
{card["BIMAGE"] ? (
|
||||||
|
<img src={`data:image/png;base64,${card["BIMAGE"]}`} loading="lazy" style={STYLES.IMAGE_IMG} />
|
||||||
|
) : (
|
||||||
|
<Icon sx={{ fontSize: "5rem" }}>construction</Icon>
|
||||||
|
)}
|
||||||
|
</ImageListItem>
|
||||||
|
</ImageList>
|
||||||
|
</Box>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Изображение для элемента
|
||||||
|
PlansListItemImage.propTypes = {
|
||||||
|
card: PropTypes.object
|
||||||
|
};
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Элемент списка планов
|
||||||
|
const PlansListItem = ({ card, cardIndex, onClick }) => {
|
||||||
|
return (
|
||||||
|
<Box sx={STYLES.CONTAINER} onClick={() => (onClick ? onClick(card, cardIndex) : null)}>
|
||||||
|
<PlansListItemImage card={card} />
|
||||||
|
<Box textAlign="center">
|
||||||
|
<Typography variant="UDO_body1" color="text.secondary.fontColor">
|
||||||
|
Номер борта
|
||||||
|
</Typography>
|
||||||
|
<Typography variant="h2">{card.SNUMB}</Typography>
|
||||||
|
</Box>
|
||||||
|
<ProgressBox
|
||||||
|
progress={card.NPROGRESS}
|
||||||
|
detail={card.SDETAIL}
|
||||||
|
width={"155px"}
|
||||||
|
height={"155px"}
|
||||||
|
progressVariant={"h3"}
|
||||||
|
detailVariant={"UDO_body2"}
|
||||||
|
/>
|
||||||
|
<Box>
|
||||||
|
<Typography variant="UDO_body1" color="text.secondary.fontColor">
|
||||||
|
Год выпуска:
|
||||||
|
</Typography>
|
||||||
|
<Typography variant="subtitle1" mt={-1}>
|
||||||
|
{card.NYEAR}
|
||||||
|
</Typography>
|
||||||
|
</Box>
|
||||||
|
</Box>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Элемент списка планов
|
||||||
|
PlansListItem.propTypes = {
|
||||||
|
card: PropTypes.object,
|
||||||
|
cardIndex: PropTypes.number,
|
||||||
|
onClick: PropTypes.func
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { PlansListItem };
|
75
app/panels/mech_rec_assembly_mon/components/progress_box.js
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Мониторинг сборки изделий
|
||||||
|
Компонент: Информация по прогрессу объекта
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React from "react"; //Классы React
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
import { Typography, Box } from "@mui/material"; //Интерфейсные элементы
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
PROGRESS_BOX: (width, height) => ({
|
||||||
|
display: "flex",
|
||||||
|
justifyContent: "center",
|
||||||
|
alignItems: "center",
|
||||||
|
flexDirection: "column",
|
||||||
|
margin: "0px 32px",
|
||||||
|
borderRadius: "50%",
|
||||||
|
...(width ? { width } : {}),
|
||||||
|
...(height ? { height } : {})
|
||||||
|
})
|
||||||
|
};
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Информация по прогрессу объекта
|
||||||
|
const ProgressBox = ({ progress, detail, width, height, progressVariant, detailVariant }) => {
|
||||||
|
//Определяем цвет тени
|
||||||
|
let boxShadow = "0 0 30px #d3d3d3";
|
||||||
|
switch (true) {
|
||||||
|
case progress >= 70:
|
||||||
|
boxShadow = "0 0 30px #21d21e66";
|
||||||
|
break;
|
||||||
|
case progress >= 40:
|
||||||
|
boxShadow = "0 0 30px #fddd3566";
|
||||||
|
break;
|
||||||
|
case progress >= 10:
|
||||||
|
boxShadow = "0 0 30px #ea5c4966";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Возвращаем содержимое
|
||||||
|
return (
|
||||||
|
<Box sx={STYLES.PROGRESS_BOX(width, height)} boxShadow={boxShadow}>
|
||||||
|
<Typography variant={progressVariant}>{`${progress}%`}</Typography>
|
||||||
|
<Typography variant={detailVariant}>{detail}</Typography>
|
||||||
|
</Box>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Информация по прогрессу объекта
|
||||||
|
ProgressBox.propTypes = {
|
||||||
|
progress: PropTypes.number,
|
||||||
|
detail: PropTypes.string,
|
||||||
|
width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
|
||||||
|
height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
|
||||||
|
progressVariant: PropTypes.string,
|
||||||
|
detailVariant: PropTypes.string
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { ProgressBox };
|
215
app/panels/mech_rec_assembly_mon/hooks.js
Normal file
@ -0,0 +1,215 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Мониторинг сборки изделий
|
||||||
|
Кастомные хуки
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React, { useState, useCallback, useEffect, useContext } from "react"; //Классы React
|
||||||
|
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||||
|
import { object2Base64XML } from "../../core/utils"; //Вспомогательные функции
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Размер страницы данных
|
||||||
|
const DATA_GRID_PAGE_SIZE = 50;
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Клиентский отбор каталогов по поисковой фразе и наличию планов
|
||||||
|
export const useFilteredPlanCtlgs = (planCtlgs, filter) => {
|
||||||
|
const filteredPlanCtlgs = React.useMemo(() => {
|
||||||
|
return planCtlgs.filter(
|
||||||
|
catalog =>
|
||||||
|
catalog.SNAME.toString().toLowerCase().includes(filter.ctlgName) &&
|
||||||
|
(filter.haveDocs ? catalog.NCOUNT_DOCS > 0 : catalog.NCOUNT_DOCS >= 0)
|
||||||
|
);
|
||||||
|
}, [planCtlgs, filter]);
|
||||||
|
|
||||||
|
return filteredPlanCtlgs;
|
||||||
|
};
|
||||||
|
|
||||||
|
//Хук для основной таблицы панели
|
||||||
|
const useMechRecAssemblyMon = () => {
|
||||||
|
//Собственное состояние
|
||||||
|
let [state, setState] = useState({
|
||||||
|
init: false,
|
||||||
|
showPlanList: false,
|
||||||
|
planCtlgs: [],
|
||||||
|
planCtlgsLoaded: false,
|
||||||
|
selectedPlanCtlg: {},
|
||||||
|
plans: [],
|
||||||
|
plansLoaded: false,
|
||||||
|
selectedPlan: {}
|
||||||
|
});
|
||||||
|
|
||||||
|
//Подключение к контексту взаимодействия с сервером
|
||||||
|
const { executeStored } = useContext(BackEndСtx);
|
||||||
|
|
||||||
|
//Инициализация каталогов планов
|
||||||
|
const initPlanCtlgs = useCallback(async () => {
|
||||||
|
if (!state.init) {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCPRODPLAN_AM_CTLG_INIT",
|
||||||
|
args: {},
|
||||||
|
respArg: "COUT",
|
||||||
|
isArray: name => name === "XFCPRODPLAN_CRNS"
|
||||||
|
});
|
||||||
|
setState(pv => ({ ...pv, init: true, planCtlgs: [...(data?.XFCPRODPLAN_CRNS || [])], planCtlgsLoaded: true }));
|
||||||
|
}
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, [state.init, executeStored]);
|
||||||
|
|
||||||
|
//Получение информации о планах каталога
|
||||||
|
const loadPlans = useCallback(
|
||||||
|
async NCRN => {
|
||||||
|
if (NCRN) {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCPRODPLAN_GET",
|
||||||
|
args: { NCRN: NCRN },
|
||||||
|
respArg: "COUT",
|
||||||
|
isArray: name => name === "XFCPRODPLAN_INFO"
|
||||||
|
});
|
||||||
|
setState(pv => ({ ...pv, init: true, plans: [...(data?.XFCPRODPLAN_INFO || [])], plansLoaded: true }));
|
||||||
|
}
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
},
|
||||||
|
[executeStored]
|
||||||
|
);
|
||||||
|
|
||||||
|
//Выбор каталога планов
|
||||||
|
const selectPlanCtlg = planCtlg => {
|
||||||
|
setState(pv => ({
|
||||||
|
...pv,
|
||||||
|
selectedPlanCtlg: { ...planCtlg },
|
||||||
|
selectedPlan: {},
|
||||||
|
showPlanList: false
|
||||||
|
}));
|
||||||
|
};
|
||||||
|
|
||||||
|
//Сброс выбора каталога планов
|
||||||
|
const unselectPlanCtlg = () =>
|
||||||
|
setState(pv => ({
|
||||||
|
...pv,
|
||||||
|
selectedPlanCtlg: {},
|
||||||
|
selectedPlan: {},
|
||||||
|
showPlanList: false
|
||||||
|
}));
|
||||||
|
|
||||||
|
//При подключении компонента к странице
|
||||||
|
useEffect(() => {
|
||||||
|
initPlanCtlgs();
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
//При изменении каталога
|
||||||
|
useEffect(() => {
|
||||||
|
//Если каталог выбран
|
||||||
|
if (state.selectedPlanCtlg) {
|
||||||
|
loadPlans(state.selectedPlanCtlg.NRN);
|
||||||
|
} else {
|
||||||
|
setState(pv => ({ ...pv, plans: [], plansLoaded: false }));
|
||||||
|
}
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, [state.selectedPlanCtlg]);
|
||||||
|
|
||||||
|
return [state, setState, selectPlanCtlg, unselectPlanCtlg];
|
||||||
|
};
|
||||||
|
|
||||||
|
//Хук для информации по производственным составам
|
||||||
|
const useCostProductComposition = plan => {
|
||||||
|
//Собственное состояние
|
||||||
|
let [costProductComposition, setCostProductComposition] = useState({
|
||||||
|
showPlanList: false,
|
||||||
|
products: [],
|
||||||
|
productsLoaded: false,
|
||||||
|
model: null,
|
||||||
|
selectedProduct: null
|
||||||
|
});
|
||||||
|
|
||||||
|
//Подключение к контексту взаимодействия с сервером
|
||||||
|
const { executeStored } = useContext(BackEndСtx);
|
||||||
|
|
||||||
|
//При подключении компонента к странице
|
||||||
|
useEffect(() => {
|
||||||
|
const loadData = async () => {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCPRODCMP_DETAILS_GET",
|
||||||
|
args: { NFCPRODPLAN: plan },
|
||||||
|
respArg: "COUT",
|
||||||
|
isArray: name => name === "XFCPRODCMP"
|
||||||
|
});
|
||||||
|
setCostProductComposition(pv => ({
|
||||||
|
...pv,
|
||||||
|
products: [...(data?.XFCPRODCMP || [])],
|
||||||
|
productsLoaded: true,
|
||||||
|
model: data?.BMODEL,
|
||||||
|
selectedProduct: null
|
||||||
|
}));
|
||||||
|
};
|
||||||
|
if (plan) loadData();
|
||||||
|
}, [plan, executeStored]);
|
||||||
|
|
||||||
|
//Вернём данные
|
||||||
|
return [costProductComposition, setCostProductComposition];
|
||||||
|
};
|
||||||
|
|
||||||
|
//Хук для таблицы детализации изделия
|
||||||
|
const useProductDetailsTable = (plan, product, orders, pageNumber, stored) => {
|
||||||
|
//Собственное состояние - флаг загрузки
|
||||||
|
const [isLoading, setLoading] = useState(false);
|
||||||
|
|
||||||
|
//Собственное состояние - таблица данных
|
||||||
|
const [data, setData] = useState({
|
||||||
|
init: false,
|
||||||
|
columnsDef: [],
|
||||||
|
rows: [],
|
||||||
|
morePages: true
|
||||||
|
});
|
||||||
|
|
||||||
|
//Подключение к контексту взаимодействия с сервером
|
||||||
|
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||||
|
|
||||||
|
//Загрузка данных при изменении зависимостей
|
||||||
|
useEffect(() => {
|
||||||
|
const loadData = async () => {
|
||||||
|
try {
|
||||||
|
setLoading(true);
|
||||||
|
const data = await executeStored({
|
||||||
|
stored,
|
||||||
|
args: {
|
||||||
|
NPRODCMPSP: product,
|
||||||
|
NFCPRODPLAN: plan,
|
||||||
|
CORDERS: { VALUE: object2Base64XML(orders, { arrayNodeName: "orders" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
||||||
|
NPAGE_NUMBER: pageNumber,
|
||||||
|
NPAGE_SIZE: DATA_GRID_PAGE_SIZE,
|
||||||
|
NINCLUDE_DEF: pageNumber == 1 ? 1 : 0
|
||||||
|
},
|
||||||
|
respArg: "COUT",
|
||||||
|
loader: false
|
||||||
|
});
|
||||||
|
setData(pv => ({
|
||||||
|
...pv,
|
||||||
|
columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,
|
||||||
|
rows: pageNumber == 1 ? [...(data.XROWS || [])] : [...pv.rows, ...(data.XROWS || [])],
|
||||||
|
morePages: DATA_GRID_PAGE_SIZE == 0 ? false : (data.XROWS || []).length >= DATA_GRID_PAGE_SIZE,
|
||||||
|
init: true
|
||||||
|
}));
|
||||||
|
} finally {
|
||||||
|
setLoading(false);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
if (plan && product) loadData();
|
||||||
|
}, [plan, product, orders, pageNumber, stored, executeStored, SERV_DATA_TYPE_CLOB]);
|
||||||
|
|
||||||
|
//Вернём данные
|
||||||
|
return { data, isLoading };
|
||||||
|
};
|
||||||
|
|
||||||
|
export { useMechRecAssemblyMon, useCostProductComposition, useProductDetailsTable };
|
16
app/panels/mech_rec_assembly_mon/index.js
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Мониторинг сборки изделий
|
||||||
|
Панель мониторинга: Точка входа
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import { MechRecAssemblyMon } from "./mech_rec_assembly_mon"; //Корневая панель мониторинга сборки изделий
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export const RootClass = MechRecAssemblyMon;
|
232
app/panels/mech_rec_assembly_mon/mech_rec_assembly_mon.js
Normal file
@ -0,0 +1,232 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Мониторинг сборки изделий
|
||||||
|
Панель мониторинга: Корневая панель мониторинга сборки изделий
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React, { useState, useContext } from "react"; //Классы React
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
import { Drawer, Fab, Box, List, ListItemButton, ListItemText, Typography, TextField, FormGroup, FormControlLabel, Checkbox } from "@mui/material"; //Интерфейсные элементы
|
||||||
|
import { ThemeProvider } from "@mui/material/styles"; //Подключение темы
|
||||||
|
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||||
|
import { PlansList } from "./components/plans_list"; //Список планов
|
||||||
|
import { PlanDetail } from "./components/plan_detail"; //Детали плана
|
||||||
|
import { theme } from "./styles/themes"; //Стиль темы
|
||||||
|
import { useMechRecAssemblyMon, useFilteredPlanCtlgs } from "./hooks"; //Вспомогательные хуки
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
PLANS_FINDER: { marginTop: "10px", marginLeft: "10px", width: "93%" },
|
||||||
|
PLANS_CHECKBOX_HAVEDOCS: { alignContent: "space-around" },
|
||||||
|
PLANS_LIST_ITEM_ZERODOCS: { backgroundColor: "#ebecec" },
|
||||||
|
PLANS_LIST_ITEM_PRIMARY: { wordWrap: "break-word" },
|
||||||
|
PLANS_LIST_ITEM_SECONDARY: { wordWrap: "break-word", fontSize: "0.6rem", textTransform: "uppercase" },
|
||||||
|
PLANS_BUTTON: { position: "absolute" },
|
||||||
|
PLANS_DRAWER: {
|
||||||
|
width: "350px",
|
||||||
|
display: "inline-block",
|
||||||
|
flexShrink: 0,
|
||||||
|
[`& .MuiDrawer-paper`]: { width: "350px", display: "inline-block", boxSizing: "border-box" }
|
||||||
|
},
|
||||||
|
PLANS_LIST_BOX: { paddingTop: "20px" }
|
||||||
|
};
|
||||||
|
|
||||||
|
//------------------------------------
|
||||||
|
//Вспомогательные функции и компоненты
|
||||||
|
//------------------------------------
|
||||||
|
|
||||||
|
//Склонения для документов
|
||||||
|
const DECLINATIONS = ["план", "плана", "планов"];
|
||||||
|
|
||||||
|
//Форматирование для отображения количества документов
|
||||||
|
const formatCountDocs = nCountDocs => {
|
||||||
|
//Получаем последнюю цифру в значении
|
||||||
|
let num = (nCountDocs % 100) % 10;
|
||||||
|
//Документов
|
||||||
|
if (nCountDocs > 10 && nCountDocs < 20) return `${nCountDocs} ${DECLINATIONS[2]}`;
|
||||||
|
//Документа
|
||||||
|
if (num > 1 && num < 5) return `${nCountDocs} ${DECLINATIONS[1]}`;
|
||||||
|
//Документ
|
||||||
|
if (num == 1) return `${nCountDocs} ${DECLINATIONS[0]}`;
|
||||||
|
//Документов
|
||||||
|
return `${nCountDocs} ${DECLINATIONS[2]}`;
|
||||||
|
};
|
||||||
|
|
||||||
|
//Список каталогов планов
|
||||||
|
const PlanCtlgsList = ({ planCtlgs = [], selectedPlanCtlg, filter, setFilter, onClick } = {}) => {
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<div>
|
||||||
|
<TextField
|
||||||
|
sx={STYLES.PLANS_FINDER}
|
||||||
|
name="planFilter"
|
||||||
|
label="Каталог"
|
||||||
|
value={filter.ctlgName}
|
||||||
|
variant="standard"
|
||||||
|
fullWidth
|
||||||
|
onChange={event => {
|
||||||
|
setFilter(pv => ({ ...pv, ctlgName: event.target.value }));
|
||||||
|
}}
|
||||||
|
></TextField>
|
||||||
|
<FormGroup sx={STYLES.PLANS_CHECKBOX_HAVEDOCS}>
|
||||||
|
<FormControlLabel
|
||||||
|
control={<Checkbox checked={filter.haveDocs} onChange={event => setFilter(pv => ({ ...pv, haveDocs: event.target.checked }))} />}
|
||||||
|
label="Только с планами"
|
||||||
|
labelPlacement="end"
|
||||||
|
/>
|
||||||
|
</FormGroup>
|
||||||
|
<List>
|
||||||
|
{planCtlgs.map(p => (
|
||||||
|
<ListItemButton
|
||||||
|
sx={p.NCOUNT_DOCS == 0 ? STYLES.PLANS_LIST_ITEM_ZERODOCS : null}
|
||||||
|
key={p.NRN}
|
||||||
|
selected={p.NRN === selectedPlanCtlg}
|
||||||
|
onClick={() => (onClick ? onClick({ NRN: p.NRN, SNAME: p.SNAME, NMIN_YEAR: p.NMIN_YEAR, NMAX_YEAR: p.NMAX_YEAR }) : null)}
|
||||||
|
>
|
||||||
|
<ListItemText
|
||||||
|
primary={<Typography sx={STYLES.PLANS_LIST_ITEM_PRIMARY}>{p.SNAME}</Typography>}
|
||||||
|
secondary={<Typography sx={{ ...STYLES.PLANS_LIST_ITEM_SECONDARY }}>{formatCountDocs(p.NCOUNT_DOCS)}</Typography>}
|
||||||
|
/>
|
||||||
|
</ListItemButton>
|
||||||
|
))}
|
||||||
|
</List>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Список каталогов планов
|
||||||
|
PlanCtlgsList.propTypes = {
|
||||||
|
planCtlgs: PropTypes.array,
|
||||||
|
selectedPlanCtlg: PropTypes.number,
|
||||||
|
onClick: PropTypes.func,
|
||||||
|
filter: PropTypes.object,
|
||||||
|
setFilter: PropTypes.func
|
||||||
|
};
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Корневая панель мониторинга сборки изделий
|
||||||
|
const MechRecAssemblyMon = () => {
|
||||||
|
//Собственное состояние
|
||||||
|
const [state, setState, selectPlanCtlg, unselectPlanCtlg] = useMechRecAssemblyMon();
|
||||||
|
|
||||||
|
//Состояние фильтра каталогов
|
||||||
|
const [filter, setFilter] = useState({ ctlgName: "", haveDocs: false });
|
||||||
|
|
||||||
|
//Состояние навигации по карточкам детализации
|
||||||
|
const [planDetailNavigation, setPlanDetailNavigation] = useState({
|
||||||
|
disableNavigatePrev: false,
|
||||||
|
disableNavigateNext: false,
|
||||||
|
currentPlanIndex: 0
|
||||||
|
});
|
||||||
|
|
||||||
|
//Массив отфильтрованных каталогов
|
||||||
|
const filteredPlanCtgls = useFilteredPlanCtlgs(state.planCtlgs, filter);
|
||||||
|
|
||||||
|
//Подключение к контексту сообщений
|
||||||
|
const { InlineMsgInfo } = useContext(MessagingСtx);
|
||||||
|
|
||||||
|
//Обработка нажатия на элемент в списке каталогов планов
|
||||||
|
const handlePlanCtlgClick = planCtlg => {
|
||||||
|
if (state.selectedPlanCtlg.NRN != planCtlg.NRN) selectPlanCtlg(planCtlg);
|
||||||
|
else unselectPlanCtlg();
|
||||||
|
};
|
||||||
|
|
||||||
|
//Перемещение к нужному плану
|
||||||
|
const navigateToPlan = planIndex => {
|
||||||
|
if (planIndex < 0) planIndex = 0;
|
||||||
|
if (planIndex > state.plans.length - 1) planIndex = state.plans.length - 1;
|
||||||
|
setState(pv => ({
|
||||||
|
...pv,
|
||||||
|
selectedPlan: { ...state.plans[planIndex] }
|
||||||
|
}));
|
||||||
|
setPlanDetailNavigation(pv => ({
|
||||||
|
...pv,
|
||||||
|
disableNavigatePrev: planIndex == 0 ? true : false,
|
||||||
|
disableNavigateNext: planIndex == state.plans.length - 1 ? true : false,
|
||||||
|
currentPlanIndex: planIndex
|
||||||
|
}));
|
||||||
|
};
|
||||||
|
|
||||||
|
//Обработка нажатия на документ плана
|
||||||
|
const handlePlanClick = (plan, planIndex) => navigateToPlan(planIndex);
|
||||||
|
|
||||||
|
//Обработка нажатия на кнопку "Назад"
|
||||||
|
const handlePlanDetailBackClick = () => {
|
||||||
|
setState(pv => ({ ...pv, selectedPlan: {} }));
|
||||||
|
};
|
||||||
|
|
||||||
|
//Обработка навигации из карточки с деталями плана
|
||||||
|
const handlePlanDetailNavigateClick = direction => navigateToPlan(planDetailNavigation.currentPlanIndex + direction);
|
||||||
|
|
||||||
|
//Формирование текста заголовка
|
||||||
|
const title = `${state.selectedPlanCtlg.SNAME} на ${state.selectedPlanCtlg.NMIN_YEAR} ${
|
||||||
|
state.selectedPlanCtlg.NMIN_YEAR == state.selectedPlanCtlg.NMAX_YEAR ? "г." : `- ${state.selectedPlanCtlg.NMAX_YEAR} г.г.`
|
||||||
|
} `;
|
||||||
|
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<Box p={2}>
|
||||||
|
<ThemeProvider theme={theme}>
|
||||||
|
<Fab variant="extended" sx={STYLES.PLANS_BUTTON} onClick={() => setState(pv => ({ ...pv, showPlanList: !pv.showPlanList }))}>
|
||||||
|
Программы
|
||||||
|
</Fab>
|
||||||
|
<Drawer
|
||||||
|
anchor={"left"}
|
||||||
|
open={state.showPlanList}
|
||||||
|
onClose={() => setState(pv => ({ ...pv, showPlanList: false }))}
|
||||||
|
sx={STYLES.PLANS_DRAWER}
|
||||||
|
>
|
||||||
|
<PlanCtlgsList
|
||||||
|
planCtlgs={filteredPlanCtgls}
|
||||||
|
selectedPlanCtlg={state.selectedPlanCtlg.NRN}
|
||||||
|
filter={filter}
|
||||||
|
setFilter={setFilter}
|
||||||
|
onClick={handlePlanCtlgClick}
|
||||||
|
/>
|
||||||
|
</Drawer>
|
||||||
|
{state.init == true ? (
|
||||||
|
state.selectedPlanCtlg.NRN ? (
|
||||||
|
<>
|
||||||
|
<Typography variant="h3" align="center" color="text.title.fontColor" py={2}>
|
||||||
|
{title}
|
||||||
|
</Typography>
|
||||||
|
{state.plansLoaded == true ? (
|
||||||
|
state.selectedPlan.NRN ? (
|
||||||
|
<PlanDetail
|
||||||
|
plan={state.selectedPlan}
|
||||||
|
disableNavigatePrev={planDetailNavigation.disableNavigatePrev}
|
||||||
|
disableNavigateNext={planDetailNavigation.disableNavigateNext}
|
||||||
|
onNavigate={handlePlanDetailNavigateClick}
|
||||||
|
onBack={handlePlanDetailBackClick}
|
||||||
|
/>
|
||||||
|
) : (
|
||||||
|
<Box sx={STYLES.PLANS_LIST_BOX}>
|
||||||
|
<PlansList plans={state.plans} onItemClick={handlePlanClick} />
|
||||||
|
</Box>
|
||||||
|
)
|
||||||
|
) : null}
|
||||||
|
</>
|
||||||
|
) : (
|
||||||
|
<InlineMsgInfo okBtn={false} text={"Укажите каталог планов для отображения его спецификаций"} />
|
||||||
|
)
|
||||||
|
) : null}
|
||||||
|
</ThemeProvider>
|
||||||
|
</Box>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { MechRecAssemblyMon };
|
67
app/panels/mech_rec_assembly_mon/styles/themes.js
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
import { createTheme } from "@mui/material/styles"; //Интерфейсные элементы
|
||||||
|
|
||||||
|
//Описание темы
|
||||||
|
const theme = createTheme({
|
||||||
|
palette: {
|
||||||
|
text: {
|
||||||
|
title: { fontColor: "rgba(0, 0, 0, 0.65)" },
|
||||||
|
secondary: { fontColor: "rgba(0, 0, 0, 0.298)" }
|
||||||
|
}
|
||||||
|
},
|
||||||
|
typography: {
|
||||||
|
h1: {
|
||||||
|
fontSize: "40px",
|
||||||
|
fontWeight: 400,
|
||||||
|
textAlign: "center"
|
||||||
|
},
|
||||||
|
h2: {
|
||||||
|
fontSize: "40px",
|
||||||
|
fontWeight: 700,
|
||||||
|
textAlign: "center"
|
||||||
|
},
|
||||||
|
h3: {
|
||||||
|
fontSize: "30px",
|
||||||
|
fontWeight: 700,
|
||||||
|
textAlign: "center"
|
||||||
|
},
|
||||||
|
h4: {
|
||||||
|
fontSize: "16px",
|
||||||
|
fontWeight: 400,
|
||||||
|
textAlign: "center"
|
||||||
|
},
|
||||||
|
subtitle1: {
|
||||||
|
fontSize: "30px",
|
||||||
|
fontWeight: 400,
|
||||||
|
textAlign: "center"
|
||||||
|
},
|
||||||
|
subtitle2: {
|
||||||
|
fontSize: "20px",
|
||||||
|
fontWeight: 700,
|
||||||
|
textAlign: "center"
|
||||||
|
},
|
||||||
|
UDO_body1: {
|
||||||
|
fontSize: "14px",
|
||||||
|
fontWeight: 400,
|
||||||
|
textAlign: "center",
|
||||||
|
wordWrap: "break-word",
|
||||||
|
letterSpacing: "0.00938em",
|
||||||
|
lineHeight: "1.5"
|
||||||
|
},
|
||||||
|
UDO_body2: {
|
||||||
|
fontSize: "12px",
|
||||||
|
fontWeight: 400,
|
||||||
|
whiteSpace: "pre-line",
|
||||||
|
textAlign: "center",
|
||||||
|
wordWrap: "break-word",
|
||||||
|
letterSpacing: "0.00938em",
|
||||||
|
lineHeight: "1.5"
|
||||||
|
},
|
||||||
|
body3: {
|
||||||
|
fontSize: "9px",
|
||||||
|
whiteSpace: "pre-line",
|
||||||
|
textAlign: "center"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
export { theme };
|
337
app/panels/mech_rec_cost_jobs_manage/backend.js
Normal file
@ -0,0 +1,337 @@
|
|||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import { useState, useCallback, useEffect, useContext } from "react"; //Классы React
|
||||||
|
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||||
|
import { object2Base64XML } from "../../core/utils"; //Вспомогательные функции
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Размер страницы данных
|
||||||
|
const DATA_GRID_PAGE_SIZE = 5;
|
||||||
|
const DATA_GRID_PAGE_FCEQUIPMENT = 10;
|
||||||
|
|
||||||
|
//---------------------------------------------
|
||||||
|
//Вспомогательные функции форматирования данных
|
||||||
|
//---------------------------------------------
|
||||||
|
|
||||||
|
//Переиницализация выбранных значений строк (необходимо при сортировке или добавлении записей строк)
|
||||||
|
const updatingSelected = (rows, selectedRows) => {
|
||||||
|
//Если полученный массив строк не пустой
|
||||||
|
if (rows.length > 0 && selectedRows.length > 0) {
|
||||||
|
//Устанавливаем выбор там, где он был установлен
|
||||||
|
let updatedRows = rows.map(item => {
|
||||||
|
if (selectedRows.includes(item.NRN)) {
|
||||||
|
return { ...item, NSELECT: 1 };
|
||||||
|
} else {
|
||||||
|
return item;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return updatedRows;
|
||||||
|
}
|
||||||
|
//Возвращаем
|
||||||
|
return rows;
|
||||||
|
};
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Хук для таблицы маршрутных листов
|
||||||
|
const useCostRouteLists = (task, processIdent) => {
|
||||||
|
//Собственное состояние - таблица данных
|
||||||
|
const [costRouteLists, setCostRouteLists] = useState({
|
||||||
|
task: null,
|
||||||
|
dataLoaded: false,
|
||||||
|
columnsDef: [],
|
||||||
|
orders: null,
|
||||||
|
rows: [],
|
||||||
|
selectedRows: [],
|
||||||
|
reload: true,
|
||||||
|
pageNumber: 1,
|
||||||
|
morePages: true
|
||||||
|
});
|
||||||
|
|
||||||
|
//Подключение к контексту взаимодействия с сервером
|
||||||
|
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||||
|
|
||||||
|
//Загрузка данных таблицы с сервера
|
||||||
|
const loadData = useCallback(async () => {
|
||||||
|
if (costRouteLists.reload) {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCJOBSSP_FCROUTLST_DG_GET",
|
||||||
|
args: {
|
||||||
|
NFCJOBS: task,
|
||||||
|
CORDERS: { VALUE: object2Base64XML(costRouteLists.orders, { arrayNodeName: "orders" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
||||||
|
NPAGE_NUMBER: costRouteLists.pageNumber,
|
||||||
|
NPAGE_SIZE: DATA_GRID_PAGE_SIZE,
|
||||||
|
NINCLUDE_DEF: costRouteLists.dataLoaded ? 0 : 1
|
||||||
|
},
|
||||||
|
respArg: "COUT",
|
||||||
|
attributeValueProcessor: (name, val) => (["NSELECT"].includes(name) ? val === 1 : val)
|
||||||
|
});
|
||||||
|
setCostRouteLists(pv => ({
|
||||||
|
...pv,
|
||||||
|
task: task,
|
||||||
|
columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,
|
||||||
|
rows:
|
||||||
|
pv.pageNumber == 1
|
||||||
|
? updatingSelected([...(data.XROWS || [])], costRouteLists.selectedRows)
|
||||||
|
: updatingSelected([...pv.rows, ...(data.XROWS || [])], costRouteLists.selectedRows),
|
||||||
|
dataLoaded: true,
|
||||||
|
reload: false,
|
||||||
|
morePages: (data.XROWS || []).length >= DATA_GRID_PAGE_SIZE
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, [
|
||||||
|
costRouteLists.reload,
|
||||||
|
costRouteLists.filters,
|
||||||
|
costRouteLists.orders,
|
||||||
|
costRouteLists.dataLoaded,
|
||||||
|
costRouteLists.pageNumber,
|
||||||
|
executeStored,
|
||||||
|
SERV_DATA_TYPE_CLOB
|
||||||
|
]);
|
||||||
|
|
||||||
|
//Добавление/удаление записи в селектлисте
|
||||||
|
const modifySelectList = useCallback(
|
||||||
|
async prms => {
|
||||||
|
try {
|
||||||
|
if (prms.NSELECT) {
|
||||||
|
await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.SELECTLIST_FCROUTLST_ADD",
|
||||||
|
args: { NIDENT: processIdent, NFCROUTLST: prms.NFCROUTLST }
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.SELECTLIST_FCROUTLST_DEL",
|
||||||
|
args: { NIDENT: processIdent, NFCROUTLST: prms.NFCROUTLST }
|
||||||
|
});
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
throw new Error(e.message);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
[executeStored]
|
||||||
|
);
|
||||||
|
|
||||||
|
//При необходимости обновить данные таблицы
|
||||||
|
useEffect(() => {
|
||||||
|
loadData();
|
||||||
|
}, [costRouteLists.reload, loadData]);
|
||||||
|
|
||||||
|
//При изменении сменного задания
|
||||||
|
useEffect(() => {
|
||||||
|
setCostRouteLists(pv => ({
|
||||||
|
...pv,
|
||||||
|
dataLoaded: false,
|
||||||
|
columnsDef: [],
|
||||||
|
orders: null,
|
||||||
|
rows: [],
|
||||||
|
selectedRows: [],
|
||||||
|
reload: true,
|
||||||
|
pageNumber: 1,
|
||||||
|
morePages: true
|
||||||
|
}));
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, [task]);
|
||||||
|
|
||||||
|
return [costRouteLists, setCostRouteLists, modifySelectList];
|
||||||
|
};
|
||||||
|
|
||||||
|
//Хук для таблицы операций
|
||||||
|
const useCostJobsSpecs = (task, fcroutlstList, processIdent) => {
|
||||||
|
//Собственное состояние - таблица данных
|
||||||
|
const [costJobsSpecs, setCostJobsSpecs] = useState({
|
||||||
|
task: null,
|
||||||
|
dataLoaded: false,
|
||||||
|
columnsDef: [],
|
||||||
|
orders: null,
|
||||||
|
rows: [],
|
||||||
|
selectedRows: [],
|
||||||
|
reload: true,
|
||||||
|
pageNumber: 1,
|
||||||
|
morePages: true
|
||||||
|
});
|
||||||
|
|
||||||
|
//Подключение к контексту взаимодействия с сервером
|
||||||
|
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||||
|
|
||||||
|
//Загрузка данных таблицы с сервера
|
||||||
|
const loadData = useCallback(async () => {
|
||||||
|
if (costJobsSpecs.reload) {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCJOBSSP_DG_GET",
|
||||||
|
args: {
|
||||||
|
NFCJOBS: task,
|
||||||
|
NIDENT: processIdent,
|
||||||
|
//SFCROUTLST_LIST: fcroutlstList.join(","),
|
||||||
|
CORDERS: { VALUE: object2Base64XML(costJobsSpecs.orders, { arrayNodeName: "orders" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
||||||
|
NPAGE_NUMBER: costJobsSpecs.pageNumber,
|
||||||
|
NPAGE_SIZE: DATA_GRID_PAGE_SIZE,
|
||||||
|
NINCLUDE_DEF: costJobsSpecs.dataLoaded ? 0 : 1
|
||||||
|
},
|
||||||
|
respArg: "COUT",
|
||||||
|
attributeValueProcessor: (name, val) => (["NSELECT"].includes(name) ? val === 1 : val)
|
||||||
|
});
|
||||||
|
setCostJobsSpecs(pv => ({
|
||||||
|
...pv,
|
||||||
|
task: task,
|
||||||
|
columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,
|
||||||
|
rows:
|
||||||
|
pv.pageNumber == 1
|
||||||
|
? updatingSelected([...(data.XROWS || [])], costJobsSpecs.selectedRows)
|
||||||
|
: updatingSelected([...pv.rows, ...(data.XROWS || [])], costJobsSpecs.selectedRows),
|
||||||
|
dataLoaded: true,
|
||||||
|
reload: false,
|
||||||
|
morePages: (data.XROWS || []).length >= DATA_GRID_PAGE_SIZE
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, [
|
||||||
|
costJobsSpecs.reload,
|
||||||
|
costJobsSpecs.filters,
|
||||||
|
costJobsSpecs.orders,
|
||||||
|
costJobsSpecs.dataLoaded,
|
||||||
|
costJobsSpecs.pageNumber,
|
||||||
|
executeStored,
|
||||||
|
SERV_DATA_TYPE_CLOB
|
||||||
|
]);
|
||||||
|
|
||||||
|
//Выдача задания
|
||||||
|
const issueCostJobsSpecs = useCallback(
|
||||||
|
async prms => {
|
||||||
|
try {
|
||||||
|
await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCJOBSSP_ISSUE",
|
||||||
|
args: { NFCJOBS: prms.NFCJOBS, SFCJOBSSP_LIST: prms.SFCJOBSSP_LIST }
|
||||||
|
});
|
||||||
|
} catch (e) {
|
||||||
|
throw new Error(e.message);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
[executeStored]
|
||||||
|
);
|
||||||
|
|
||||||
|
//При необходимости обновить данные таблицы
|
||||||
|
useEffect(() => {
|
||||||
|
loadData();
|
||||||
|
}, [costJobsSpecs.reload, loadData]);
|
||||||
|
|
||||||
|
//При изменении сменного задания
|
||||||
|
useEffect(() => {
|
||||||
|
setCostJobsSpecs(pv => ({
|
||||||
|
...pv,
|
||||||
|
dataLoaded: false,
|
||||||
|
columnsDef: [],
|
||||||
|
orders: null,
|
||||||
|
rows: [],
|
||||||
|
selectedRows: [],
|
||||||
|
reload: true,
|
||||||
|
pageNumber: 1,
|
||||||
|
morePages: true
|
||||||
|
}));
|
||||||
|
}, [task, fcroutlstList]);
|
||||||
|
|
||||||
|
return [costJobsSpecs, setCostJobsSpecs, issueCostJobsSpecs];
|
||||||
|
};
|
||||||
|
|
||||||
|
//Хук для таблицы рабочих центров
|
||||||
|
const useCostEquipment = () => {
|
||||||
|
//Собственное состояние - таблица данных
|
||||||
|
const [costEquipment, setCostEquipment] = useState({
|
||||||
|
dataLoaded: false,
|
||||||
|
columnsDef: [],
|
||||||
|
orders: null,
|
||||||
|
rows: [],
|
||||||
|
selectedRows: [],
|
||||||
|
selectedLoaded: false,
|
||||||
|
reload: true,
|
||||||
|
pageNumber: 1,
|
||||||
|
morePages: true
|
||||||
|
});
|
||||||
|
|
||||||
|
//Подключение к контексту взаимодействия с сервером
|
||||||
|
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||||
|
|
||||||
|
//Загрузка данных таблицы с сервера
|
||||||
|
const loadData = useCallback(async () => {
|
||||||
|
if (costEquipment.reload) {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCEQUIPMENT_DG_GET",
|
||||||
|
args: {
|
||||||
|
CORDERS: { VALUE: object2Base64XML(costEquipment.orders, { arrayNodeName: "orders" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
||||||
|
NPAGE_NUMBER: costEquipment.pageNumber,
|
||||||
|
NPAGE_SIZE: DATA_GRID_PAGE_FCEQUIPMENT,
|
||||||
|
NINCLUDE_DEF: costEquipment.dataLoaded ? 0 : 1
|
||||||
|
},
|
||||||
|
respArg: "COUT",
|
||||||
|
attributeValueProcessor: (name, val) => (["NSELECT"].includes(name) ? val === 1 : val)
|
||||||
|
});
|
||||||
|
setCostEquipment(pv => ({
|
||||||
|
...pv,
|
||||||
|
columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,
|
||||||
|
rows:
|
||||||
|
pv.pageNumber == 1
|
||||||
|
? updatingSelected([...(data.XROWS || [])], costEquipment.selectedRows)
|
||||||
|
: updatingSelected([...pv.rows, ...(data.XROWS || [])], costEquipment.selectedRows),
|
||||||
|
dataLoaded: true,
|
||||||
|
reload: false,
|
||||||
|
morePages: (data.XROWS || []).length >= DATA_GRID_PAGE_FCEQUIPMENT
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, [
|
||||||
|
costEquipment.reload,
|
||||||
|
costEquipment.filters,
|
||||||
|
costEquipment.orders,
|
||||||
|
costEquipment.dataLoaded,
|
||||||
|
costEquipment.pageNumber,
|
||||||
|
executeStored,
|
||||||
|
SERV_DATA_TYPE_CLOB
|
||||||
|
]);
|
||||||
|
|
||||||
|
//Включение оборудования в операции
|
||||||
|
const includeCostEquipment = useCallback(
|
||||||
|
async prms => {
|
||||||
|
try {
|
||||||
|
await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCJOBSSP_INC_FCEQUIPMENT",
|
||||||
|
args: { NFCEQUIPMENT: prms.NFCEQUIPMENT, NFCJOBS: prms.NFCJOBS, SFCJOBSSP_LIST: prms.SFCJOBSSP_LIST }
|
||||||
|
});
|
||||||
|
} catch (e) {
|
||||||
|
throw new Error(e.message);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
[executeStored]
|
||||||
|
);
|
||||||
|
|
||||||
|
//Исключение оборудования из операции
|
||||||
|
const excludeCostEquipment = useCallback(
|
||||||
|
async prms => {
|
||||||
|
try {
|
||||||
|
await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCJOBSSP_EXC_FCEQUIPMENT",
|
||||||
|
args: { NFCEQUIPMENT: prms.NFCEQUIPMENT, NFCJOBS: prms.NFCJOBS, SFCJOBSSP_LIST: prms.SFCJOBSSP_LIST }
|
||||||
|
});
|
||||||
|
} catch (e) {
|
||||||
|
throw new Error(e.message);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
[executeStored]
|
||||||
|
);
|
||||||
|
|
||||||
|
//При необходимости обновить данные таблицы
|
||||||
|
useEffect(() => {
|
||||||
|
loadData();
|
||||||
|
}, [costEquipment.reload, loadData]);
|
||||||
|
|
||||||
|
return [costEquipment, setCostEquipment, includeCostEquipment, excludeCostEquipment];
|
||||||
|
};
|
||||||
|
|
||||||
|
export { useCostRouteLists, useCostJobsSpecs, useCostEquipment, updatingSelected };
|
422
app/panels/mech_rec_cost_jobs_manage/fcjobssp.js
Normal file
@ -0,0 +1,422 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Выдача сменного задания
|
||||||
|
Компонент панели: Таблица информации об операциях сменного задания
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React from "react"; //Классы React
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
import { Typography, Box, Checkbox, Grid, Icon, Button } from "@mui/material"; //Интерфейсные элементы
|
||||||
|
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||||
|
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||||
|
import { useCostRouteLists, useCostJobsSpecs, useCostEquipment } from "./backend"; //Собственные хуки таблиц
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
const sUnitCostRouteLists = "CostRouteLists"; //Мнемокод раздела маршрутных листов
|
||||||
|
const sUnitCostJobsSpecs = "CostJobsSpecs"; //Мнемокод раздела операций
|
||||||
|
const sUnitCostEquipment = "CostEquipment"; //Мнемокод раздела рабочих центров
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
CONTAINER: { textAlign: "center" },
|
||||||
|
TABLE: { paddingTop: "15px" },
|
||||||
|
TABLE_SUM: { textAlign: "right", paddingTop: "5px", paddingRight: "15px" },
|
||||||
|
TABLE_BUTTONS: { display: "flex", justifyContent: "flex-end" },
|
||||||
|
CHECK_BOX: { textAlign: "center" },
|
||||||
|
OPERATIONS_SEPARATOR: { padding: "3px 0px", backgroundColor: "lightblue" },
|
||||||
|
INFORMATION_HALF: { minWidth: "50%", maxWidth: "50%", textAlign: "center" }
|
||||||
|
};
|
||||||
|
|
||||||
|
//---------------------------------------------
|
||||||
|
//Вспомогательные функции форматирования данных
|
||||||
|
//---------------------------------------------
|
||||||
|
|
||||||
|
//Формирование списка отмеченных записей
|
||||||
|
function selectedReducer(accumulator, current) {
|
||||||
|
if (current.NSELECT == 1) {
|
||||||
|
accumulator.push(current.NRN);
|
||||||
|
}
|
||||||
|
return accumulator;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Форматирование значения ячейки
|
||||||
|
const dataCellRender = ({ row, columnDef, handleSelectChange, sUnit, selectedEquip }) => {
|
||||||
|
//Инициализируем доступность выбора
|
||||||
|
let disabled = false;
|
||||||
|
//Если это рабочие центры
|
||||||
|
if (sUnit === sUnitCostEquipment) {
|
||||||
|
//Для колонки выбора
|
||||||
|
if (columnDef.name === "NSELECT") {
|
||||||
|
return {
|
||||||
|
data: (
|
||||||
|
<Box sx={STYLES.CHECK_BOX}>
|
||||||
|
<Checkbox
|
||||||
|
disabled={selectedEquip.length === 1 && selectedEquip[0] !== row["NRN"]}
|
||||||
|
checked={row[columnDef.name]}
|
||||||
|
//checked={row[columnDef.name] === 1}
|
||||||
|
onChange={() => handleSelectChange(row["NRN"], sUnit, row["NCOEFF"] <= row["NLOADING"])}
|
||||||
|
/>
|
||||||
|
</Box>
|
||||||
|
)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
//Если оборудование загружено
|
||||||
|
if (row["NCOEFF"] <= row["NLOADING"]) {
|
||||||
|
//Если поле не поле выбора
|
||||||
|
if (columnDef.name !== "NSELECT") {
|
||||||
|
return {
|
||||||
|
cellStyle: { color: "lightgrey" },
|
||||||
|
data: row[columnDef.name]
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//Если это операции
|
||||||
|
if (sUnit === sUnitCostJobsSpecs) {
|
||||||
|
//Если "Оборудование план" операции сходится с выбранным оборудованием
|
||||||
|
if (selectedEquip.includes(row["NEQUIP_PLAN"])) {
|
||||||
|
//Если колонка выбора
|
||||||
|
if (columnDef.name === "NSELECT") {
|
||||||
|
return {
|
||||||
|
cellStyle: { backgroundColor: "#bce0de" },
|
||||||
|
data: (
|
||||||
|
<Box sx={STYLES.CHECK_BOX}>
|
||||||
|
<Checkbox
|
||||||
|
disabled={disabled}
|
||||||
|
checked={row[columnDef.name]}
|
||||||
|
//checked={row[columnDef.name] === 1}
|
||||||
|
onChange={() => handleSelectChange(row["NRN"], sUnit)}
|
||||||
|
/>
|
||||||
|
</Box>
|
||||||
|
)
|
||||||
|
};
|
||||||
|
} else {
|
||||||
|
return {
|
||||||
|
cellStyle: { backgroundColor: "#bce0de" },
|
||||||
|
data: row[columnDef.name]
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//Для колонки выбора
|
||||||
|
if (columnDef.name === "NSELECT") {
|
||||||
|
return {
|
||||||
|
data: (
|
||||||
|
<Box sx={STYLES.CHECK_BOX}>
|
||||||
|
<Checkbox
|
||||||
|
disabled={disabled}
|
||||||
|
checked={row[columnDef.name]}
|
||||||
|
//checked={row[columnDef.name] === 1}
|
||||||
|
onChange={() => handleSelectChange(row["NRN"], sUnit)}
|
||||||
|
/>
|
||||||
|
</Box>
|
||||||
|
)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
data: row[columnDef.name]
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
//Генерация представления ячейки заголовка группы
|
||||||
|
export const headCellRender = ({ columnDef }) => {
|
||||||
|
if (columnDef.name === "NSELECT") {
|
||||||
|
return {
|
||||||
|
stackStyle: { padding: "2px", justifyContent: "space-around" },
|
||||||
|
data: <Icon>done</Icon>
|
||||||
|
};
|
||||||
|
} else {
|
||||||
|
return {
|
||||||
|
stackStyle: { padding: "2px" },
|
||||||
|
data: columnDef.caption
|
||||||
|
};
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Таблица информации об операциях сменного задания
|
||||||
|
const CostJobsSpecsDataGrid = ({ task, processIdent, clearSelectlist }) => {
|
||||||
|
//Собственное состояние - таблица данных маршрутных листов
|
||||||
|
const [costRouteLists, setCostRouteLists, modifySelectList] = useCostRouteLists(task, processIdent);
|
||||||
|
|
||||||
|
//Собственное состояние - таблица данных операций
|
||||||
|
const [costJobsSpecs, setCostJobsSpecs, issueCostJobsSpecs] = useCostJobsSpecs(task, costRouteLists.selectedRows, processIdent);
|
||||||
|
|
||||||
|
//Собственное состояние - таблица рабочих центров
|
||||||
|
const [costEquipment, setCostEquipment, includeCostEquipment, excludeCostEquipment] = useCostEquipment();
|
||||||
|
|
||||||
|
//При изменении состояния сортировки маршрутных листов
|
||||||
|
const costRouteListOrderChanged = ({ orders }) => setCostRouteLists(pv => ({ ...pv, orders: [...orders], pageNumber: 1, reload: true }));
|
||||||
|
|
||||||
|
//При изменении количества отображаемых страниц маршрутных листов
|
||||||
|
const costRouteListPagesCountChanged = () => setCostRouteLists(pv => ({ ...pv, pageNumber: pv.pageNumber + 1, reload: true }));
|
||||||
|
|
||||||
|
//При изменении состояния сортировки операций
|
||||||
|
const costJobsSpecOrderChanged = ({ orders }) => setCostJobsSpecs(pv => ({ ...pv, orders: [...orders], pageNumber: 1, reload: true }));
|
||||||
|
|
||||||
|
//При изменении количества отображаемых страниц операций
|
||||||
|
const costJobsSpecPagesCountChanged = () => setCostJobsSpecs(pv => ({ ...pv, pageNumber: pv.pageNumber + 1, reload: true }));
|
||||||
|
|
||||||
|
//При изменении состояния сортировки рабочих центров
|
||||||
|
const costEquipmentOrderChanged = ({ orders }) => setCostEquipment(pv => ({ ...pv, orders: [...orders], pageNumber: 1, reload: true }));
|
||||||
|
|
||||||
|
//При изменении количества отображаемых страниц рабочих центров
|
||||||
|
const costEquipmentPagesCountChanged = () => setCostEquipment(pv => ({ ...pv, pageNumber: pv.pageNumber + 1, reload: true }));
|
||||||
|
|
||||||
|
//При включении оборудования в операции
|
||||||
|
const costJobsSpecIncludeCostEquipment = () => {
|
||||||
|
//Делаем асинхронно, чтобы при ошибке ничего не обновлять
|
||||||
|
const includeAsync = async () => {
|
||||||
|
//Включаем оборудование в операции
|
||||||
|
try {
|
||||||
|
await includeCostEquipment({
|
||||||
|
NFCEQUIPMENT: costEquipment.selectedRows[0],
|
||||||
|
NFCJOBS: task,
|
||||||
|
SFCJOBSSP_LIST: costJobsSpecs.selectedRows.join(";")
|
||||||
|
});
|
||||||
|
//Необходимо обновить все данные
|
||||||
|
setCostJobsSpecs(pv => ({ ...pv, selectedRows: [], reload: true }));
|
||||||
|
setCostEquipment(pv => ({ ...pv, selectedRows: [], selectedLoaded: false, reload: true }));
|
||||||
|
} catch (e) {
|
||||||
|
throw new Error(e.message);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
//Включаем оборудование асинхронно
|
||||||
|
includeAsync();
|
||||||
|
};
|
||||||
|
|
||||||
|
//При исключении оборудования из операции
|
||||||
|
const costJobsSpecExcludeCostEquipment = () => {
|
||||||
|
//Делаем асинхронно, чтобы при ошибке ничего не обновлять
|
||||||
|
const excludeAsync = async () => {
|
||||||
|
//Включаем оборудование в операции
|
||||||
|
try {
|
||||||
|
await excludeCostEquipment({
|
||||||
|
NFCEQUIPMENT: costEquipment.selectedRows[0],
|
||||||
|
NFCJOBS: task,
|
||||||
|
SFCJOBSSP_LIST: costJobsSpecs.selectedRows.join(";")
|
||||||
|
});
|
||||||
|
//Необходимо обновить данные о маршрутных листах и оборудовании
|
||||||
|
setCostJobsSpecs(pv => ({ ...pv, selectedRows: [], reload: true }));
|
||||||
|
setCostEquipment(pv => ({ ...pv, selectedRows: [], reload: true }));
|
||||||
|
} catch (e) {
|
||||||
|
throw new Error(e.message);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
//Исключаем операции асинхронно
|
||||||
|
excludeAsync();
|
||||||
|
};
|
||||||
|
|
||||||
|
//Выдача задания операции
|
||||||
|
const costJobsSpecIssue = () => {
|
||||||
|
//Делаем асинхронно, чтобы при ошибке ничего не обновлять
|
||||||
|
const issueAsync = async () => {
|
||||||
|
//Включаем оборудование в операции
|
||||||
|
try {
|
||||||
|
await issueCostJobsSpecs({
|
||||||
|
NFCJOBS: task,
|
||||||
|
SFCJOBSSP_LIST: costJobsSpecs.selectedRows.join(";")
|
||||||
|
});
|
||||||
|
//Необходимо обновить данные о маршрутных листах и оборудовании
|
||||||
|
clearSelectlist(processIdent);
|
||||||
|
setCostRouteLists(pv => ({ ...pv, selectedRows: [], reload: true }));
|
||||||
|
setCostEquipment(pv => ({ ...pv, selectedRows: [], reload: true }));
|
||||||
|
} catch (e) {
|
||||||
|
throw new Error(e.message);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
//Выдаем задание асинхронно
|
||||||
|
issueAsync();
|
||||||
|
};
|
||||||
|
|
||||||
|
//При изменение состояния выбора
|
||||||
|
const handleSelectChange = (NRN, sUnit, selectedLoaded) => {
|
||||||
|
//Инициализируем строки таблицы
|
||||||
|
let rows = [];
|
||||||
|
//Индекс элемента в массиве
|
||||||
|
let indexRow = null;
|
||||||
|
//Исходим от раздела
|
||||||
|
switch (sUnit) {
|
||||||
|
//Маршрутные листы
|
||||||
|
case sUnitCostRouteLists:
|
||||||
|
//Инициализируем маршрутными листами
|
||||||
|
rows = costRouteLists.rows;
|
||||||
|
//Определяем индекс элемента в массиве
|
||||||
|
indexRow = rows.findIndex(obj => obj.NRN == NRN);
|
||||||
|
//Изменяем значение выбора
|
||||||
|
rows[indexRow].NSELECT = !rows[indexRow].NSELECT;
|
||||||
|
//Добавляем/удаляем маршрутный лист из селектлиста
|
||||||
|
modifySelectList({ NFCROUTLST: NRN, NSELECT: rows[indexRow].NSELECT });
|
||||||
|
//Актуализируем строки
|
||||||
|
setCostRouteLists(pv => ({ ...pv, rows: rows, selectedRows: rows.reduce(selectedReducer, []) }));
|
||||||
|
//Выходим
|
||||||
|
break;
|
||||||
|
//Операции
|
||||||
|
case sUnitCostJobsSpecs:
|
||||||
|
//Инициализируем операциями
|
||||||
|
rows = costJobsSpecs.rows;
|
||||||
|
//Определяем индекс элемента в массиве
|
||||||
|
indexRow = rows.findIndex(obj => obj.NRN == NRN);
|
||||||
|
//Изменяем значение выбора
|
||||||
|
rows[indexRow].NSELECT = !rows[indexRow].NSELECT;
|
||||||
|
//Актуализируем строки
|
||||||
|
setCostJobsSpecs(pv => ({ ...pv, rows: rows, selectedRows: rows.reduce(selectedReducer, []) }));
|
||||||
|
//Выходим
|
||||||
|
break;
|
||||||
|
//Рабочие центры
|
||||||
|
case sUnitCostEquipment:
|
||||||
|
//Инициализируем рабочими центрами
|
||||||
|
rows = costEquipment.rows;
|
||||||
|
//Определяем индекс элемента в массиве
|
||||||
|
indexRow = rows.findIndex(obj => obj.NRN == NRN);
|
||||||
|
//Изменяем значение выбора
|
||||||
|
rows[indexRow].NSELECT = !rows[indexRow].NSELECT;
|
||||||
|
//Актуализируем строки
|
||||||
|
setCostEquipment(pv => ({ ...pv, rows: rows, selectedRows: rows.reduce(selectedReducer, []), selectedLoaded: selectedLoaded }));
|
||||||
|
//Выходим
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<div style={STYLES.CONTAINER}>
|
||||||
|
<Grid container spacing={2}>
|
||||||
|
<Grid item sx={STYLES.INFORMATION_HALF}>
|
||||||
|
<Typography variant={"h6"}>Маршрутные листы</Typography>
|
||||||
|
{costRouteLists.dataLoaded ? (
|
||||||
|
<>
|
||||||
|
<Box sx={STYLES.TABLE_BUTTONS}>
|
||||||
|
<Button
|
||||||
|
variant="contained"
|
||||||
|
size="small"
|
||||||
|
disabled={costJobsSpecs.selectedRows.length === 0}
|
||||||
|
onClick={costJobsSpecIssue}
|
||||||
|
>
|
||||||
|
Выдать задания
|
||||||
|
</Button>
|
||||||
|
</Box>
|
||||||
|
<Box sx={STYLES.TABLE}>
|
||||||
|
<P8PDataGrid
|
||||||
|
{...P8P_DATA_GRID_CONFIG_PROPS}
|
||||||
|
columnsDef={costRouteLists.columnsDef}
|
||||||
|
rows={costRouteLists.rows}
|
||||||
|
size={P8P_DATA_GRID_SIZE.SMALL}
|
||||||
|
morePages={costRouteLists.morePages}
|
||||||
|
reloading={costRouteLists.reload}
|
||||||
|
onOrderChanged={costRouteListOrderChanged}
|
||||||
|
onPagesCountChanged={costRouteListPagesCountChanged}
|
||||||
|
dataCellRender={prms => dataCellRender({ ...prms, handleSelectChange, sUnit: sUnitCostRouteLists })}
|
||||||
|
headCellRender={prms => headCellRender({ ...prms })}
|
||||||
|
/>
|
||||||
|
{costRouteLists.selectedRows.length > 0 ? (
|
||||||
|
<>
|
||||||
|
<Box sx={STYLES.OPERATIONS_SEPARATOR}>Операции выбранных маршрутных листов</Box>
|
||||||
|
<P8PDataGrid
|
||||||
|
{...P8P_DATA_GRID_CONFIG_PROPS}
|
||||||
|
columnsDef={costJobsSpecs.columnsDef}
|
||||||
|
rows={costJobsSpecs.rows}
|
||||||
|
size={P8P_DATA_GRID_SIZE.SMALL}
|
||||||
|
morePages={costJobsSpecs.morePages}
|
||||||
|
reloading={costJobsSpecs.reload}
|
||||||
|
onOrderChanged={costJobsSpecOrderChanged}
|
||||||
|
onPagesCountChanged={costJobsSpecPagesCountChanged}
|
||||||
|
dataCellRender={prms =>
|
||||||
|
dataCellRender({
|
||||||
|
...prms,
|
||||||
|
handleSelectChange,
|
||||||
|
sUnit: sUnitCostJobsSpecs,
|
||||||
|
selectedEquip: costEquipment.selectedRows
|
||||||
|
})
|
||||||
|
}
|
||||||
|
headCellRender={prms => headCellRender({ ...prms })}
|
||||||
|
/>
|
||||||
|
</>
|
||||||
|
) : null}
|
||||||
|
</Box>
|
||||||
|
</>
|
||||||
|
) : null}
|
||||||
|
</Grid>
|
||||||
|
<Grid item sx={STYLES.INFORMATION_HALF}>
|
||||||
|
<Typography variant={"h6"}>Рабочие центры</Typography>
|
||||||
|
{costEquipment.dataLoaded ? (
|
||||||
|
<>
|
||||||
|
<Box sx={STYLES.TABLE_BUTTONS}>
|
||||||
|
<Button
|
||||||
|
variant="contained"
|
||||||
|
size="small"
|
||||||
|
disabled={
|
||||||
|
costEquipment.selectedRows.length !== 1 ||
|
||||||
|
(costEquipment.selectedRows.length === 1 && costJobsSpecs.selectedRows.length === 0) ||
|
||||||
|
costEquipment.selectedLoaded
|
||||||
|
}
|
||||||
|
onClick={costJobsSpecIncludeCostEquipment}
|
||||||
|
>
|
||||||
|
Включить в задание
|
||||||
|
</Button>
|
||||||
|
<Box ml={1}>
|
||||||
|
<Button
|
||||||
|
variant="contained"
|
||||||
|
size="small"
|
||||||
|
disabled={
|
||||||
|
costEquipment.selectedRows.length !== 1 ||
|
||||||
|
(costEquipment.selectedRows.length === 1 && costJobsSpecs.selectedRows.length === 0)
|
||||||
|
}
|
||||||
|
onClick={costJobsSpecExcludeCostEquipment}
|
||||||
|
>
|
||||||
|
Исключить из задания
|
||||||
|
</Button>
|
||||||
|
</Box>
|
||||||
|
</Box>
|
||||||
|
<Box sx={STYLES.TABLE}>
|
||||||
|
<P8PDataGrid
|
||||||
|
{...P8P_DATA_GRID_CONFIG_PROPS}
|
||||||
|
columnsDef={costEquipment.columnsDef}
|
||||||
|
rows={costEquipment.rows}
|
||||||
|
size={P8P_DATA_GRID_SIZE.SMALL}
|
||||||
|
morePages={costEquipment.morePages}
|
||||||
|
reloading={costEquipment.reload}
|
||||||
|
onOrderChanged={costEquipmentOrderChanged}
|
||||||
|
onPagesCountChanged={costEquipmentPagesCountChanged}
|
||||||
|
dataCellRender={prms =>
|
||||||
|
dataCellRender({
|
||||||
|
...prms,
|
||||||
|
handleSelectChange,
|
||||||
|
sUnit: sUnitCostEquipment,
|
||||||
|
selectedEquip: costEquipment.selectedRows
|
||||||
|
})
|
||||||
|
}
|
||||||
|
headCellRender={prms => headCellRender({ ...prms })}
|
||||||
|
/>
|
||||||
|
</Box>
|
||||||
|
</>
|
||||||
|
) : null}
|
||||||
|
</Grid>
|
||||||
|
</Grid>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Таблица информации об операциях сменного задания
|
||||||
|
CostJobsSpecsDataGrid.propTypes = {
|
||||||
|
task: PropTypes.number.isRequired,
|
||||||
|
processIdent: PropTypes.number,
|
||||||
|
clearSelectlist: PropTypes.func
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { CostJobsSpecsDataGrid };
|
23
app/panels/mech_rec_cost_jobs_manage/hooks.js
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Выдача сменного задания
|
||||||
|
Кастомные хуки
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React from "react"; //Классы React
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Клиентский отбор сменных заданий по поисковой фразе
|
||||||
|
export const useFilteredFcjobs = (jobs, filter) => {
|
||||||
|
const filteredJobs = React.useMemo(() => {
|
||||||
|
return jobs.filter(catalog => catalog.SDOC_INFO.toString().toLowerCase().includes(filter.jobName));
|
||||||
|
}, [jobs, filter]);
|
||||||
|
|
||||||
|
return filteredJobs;
|
||||||
|
};
|
16
app/panels/mech_rec_cost_jobs_manage/index.js
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Выдача сменного задания
|
||||||
|
Панель мониторинга: Точка входа
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import { MechRecCostJobs } from "./mech_rec_cost_jobs_manage"; //Корневая панель выдачи сменного задания
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export const RootClass = MechRecCostJobs;
|
@ -0,0 +1,205 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Выдача сменного задания
|
||||||
|
Панель мониторинга: Корневая панель выдачи сменного задания
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React, { useContext, useState, useCallback, useEffect } from "react"; //Классы React
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
import { Drawer, Fab, Box, List, ListItemButton, ListItemText, Typography, TextField } from "@mui/material"; //Интерфейсные элементы
|
||||||
|
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||||
|
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||||
|
import { useFilteredFcjobs } from "./hooks"; //Вспомогательные хуки
|
||||||
|
import { CostJobsSpecsDataGrid } from "./fcjobssp"; //Собственные хуки таблиц
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
JOBS_FINDER: { marginTop: "10px", marginLeft: "10px", width: "93%" },
|
||||||
|
JOBS_LIST_ITEM_PRIMARY: { wordWrap: "break-word" },
|
||||||
|
JOBS_BUTTON: { position: "absolute" },
|
||||||
|
JOBS_DRAWER: {
|
||||||
|
width: "350px",
|
||||||
|
display: "inline-block",
|
||||||
|
flexShrink: 0,
|
||||||
|
[`& .MuiDrawer-paper`]: { width: "350px", display: "inline-block", boxSizing: "border-box" }
|
||||||
|
},
|
||||||
|
CONTAINER: { margin: "5px 0px", textAlign: "center" }
|
||||||
|
};
|
||||||
|
|
||||||
|
//------------------------------------
|
||||||
|
//Вспомогательные функции и компоненты
|
||||||
|
//------------------------------------
|
||||||
|
|
||||||
|
//Список сменных заданий
|
||||||
|
const JobList = ({ jobs = [], selectedJob, filter, setFilter, onClick } = {}) => {
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<div>
|
||||||
|
<TextField
|
||||||
|
sx={STYLES.JOBS_FINDER}
|
||||||
|
name="jobFilter"
|
||||||
|
label="Сменное задание"
|
||||||
|
value={filter.jobName}
|
||||||
|
variant="standard"
|
||||||
|
fullWidth
|
||||||
|
onChange={event => {
|
||||||
|
setFilter(pv => ({ ...pv, jobName: event.target.value }));
|
||||||
|
}}
|
||||||
|
></TextField>
|
||||||
|
<List>
|
||||||
|
{jobs.map(p => (
|
||||||
|
<ListItemButton key={p.NRN} selected={p.NRN === selectedJob.NRN} onClick={() => (onClick ? onClick(p) : null)}>
|
||||||
|
<ListItemText primary={<Typography sx={STYLES.JOBS_LIST_ITEM_PRIMARY}>{p.SDOC_INFO}</Typography>} />
|
||||||
|
</ListItemButton>
|
||||||
|
))}
|
||||||
|
</List>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Список каталогов планов
|
||||||
|
JobList.propTypes = {
|
||||||
|
jobs: PropTypes.array,
|
||||||
|
selectedJob: PropTypes.object,
|
||||||
|
onClick: PropTypes.func,
|
||||||
|
filter: PropTypes.object,
|
||||||
|
setFilter: PropTypes.func
|
||||||
|
};
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Корневая панель выдачи сменного задания
|
||||||
|
const MechRecCostJobs = () => {
|
||||||
|
//Собственное состояние - таблица данных
|
||||||
|
const [state, setState] = useState({
|
||||||
|
init: false,
|
||||||
|
showJobList: false,
|
||||||
|
jobList: [],
|
||||||
|
jobListLoaded: false,
|
||||||
|
selectedJob: {},
|
||||||
|
processIdent: null,
|
||||||
|
dataLoaded: false
|
||||||
|
});
|
||||||
|
|
||||||
|
//Состояние для фильтра каталогов
|
||||||
|
const [filter, setFilter] = useState({ jobName: "" });
|
||||||
|
|
||||||
|
//Массив отфильтрованных каталогов
|
||||||
|
const filteredJobs = useFilteredFcjobs(state.jobList, filter);
|
||||||
|
|
||||||
|
//Подключение к контексту взаимодействия с сервером
|
||||||
|
const { executeStored } = useContext(BackEndСtx);
|
||||||
|
|
||||||
|
//Подключение к контексту сообщений
|
||||||
|
const { InlineMsgInfo } = useContext(MessagingСtx);
|
||||||
|
|
||||||
|
//Инициализация каталогов планов
|
||||||
|
const initPlans = useCallback(async () => {
|
||||||
|
if (!state.init) {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCJOBS_INIT",
|
||||||
|
args: {},
|
||||||
|
respArg: "COUT",
|
||||||
|
fullResponse: true,
|
||||||
|
isArray: name => name === "XFCJOBS"
|
||||||
|
});
|
||||||
|
setState(pv => ({
|
||||||
|
...pv,
|
||||||
|
init: true,
|
||||||
|
jobList: [...(data.XPAYLOAD?.XFCJOBS || [])],
|
||||||
|
jobListLoaded: true,
|
||||||
|
processIdent: data.XPAYLOAD.XINFO.NPROCESS_IDENT
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
}, [state.init, executeStored]);
|
||||||
|
|
||||||
|
//При подключении компонента к странице
|
||||||
|
useEffect(() => {
|
||||||
|
initPlans();
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
//Очистка селектлиста по идентификатору процесса
|
||||||
|
const clearSelectlist = useCallback(
|
||||||
|
async NIDENT => {
|
||||||
|
try {
|
||||||
|
await executeStored({
|
||||||
|
stored: "P_SELECTLIST_CLEAR",
|
||||||
|
args: { NIDENT: NIDENT }
|
||||||
|
});
|
||||||
|
} catch (e) {
|
||||||
|
throw new Error(e.message);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
[executeStored]
|
||||||
|
);
|
||||||
|
|
||||||
|
//Выбор плана
|
||||||
|
const selectJob = job => {
|
||||||
|
//Очищаем селектлист
|
||||||
|
clearSelectlist(state.processIdent);
|
||||||
|
//Обновляем состояние
|
||||||
|
setState(pv => ({
|
||||||
|
...pv,
|
||||||
|
selectedJob: job,
|
||||||
|
showJobList: false,
|
||||||
|
dataLoaded: false
|
||||||
|
}));
|
||||||
|
};
|
||||||
|
|
||||||
|
//Сброс выбора плана
|
||||||
|
const unselectJob = () => {
|
||||||
|
//Очищаем селектлист
|
||||||
|
clearSelectlist(state.processIdent);
|
||||||
|
//Обновляем состояние
|
||||||
|
setState(pv => ({
|
||||||
|
...pv,
|
||||||
|
selectedJob: {},
|
||||||
|
showJobList: false,
|
||||||
|
dataLoaded: false
|
||||||
|
}));
|
||||||
|
};
|
||||||
|
|
||||||
|
//Обработка нажатия на элемент в списке планов
|
||||||
|
const handleJobClick = job => {
|
||||||
|
if (state.selectedJob.NRN != job.NRN) selectJob(job);
|
||||||
|
else unselectJob();
|
||||||
|
};
|
||||||
|
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<Box p={2}>
|
||||||
|
<Fab variant="extended" sx={STYLES.JOBS_BUTTON} onClick={() => setState(pv => ({ ...pv, showJobList: !pv.showJobList }))}>
|
||||||
|
Сменные задания
|
||||||
|
</Fab>
|
||||||
|
<Drawer anchor={"left"} open={state.showJobList} onClose={() => setState(pv => ({ ...pv, showJobList: false }))} sx={STYLES.JOBS_DRAWER}>
|
||||||
|
<JobList jobs={filteredJobs} selectedJob={state.selectedJob} filter={filter} setFilter={setFilter} onClick={handleJobClick} />
|
||||||
|
</Drawer>
|
||||||
|
<div style={STYLES.CONTAINER}>
|
||||||
|
{state.selectedJob.NRN ? (
|
||||||
|
<>
|
||||||
|
<Typography variant={"h6"}>{`Сменное задание "${state.selectedJob.SSUBDIV}" на ${state.selectedJob.SPERIOD}`}</Typography>
|
||||||
|
<CostJobsSpecsDataGrid task={state.selectedJob.NRN} processIdent={state.processIdent} clearSelectlist={clearSelectlist} />
|
||||||
|
</>
|
||||||
|
) : !state.selectedJob.NRN ? (
|
||||||
|
<InlineMsgInfo okBtn={false} text={"Укажите сменное задание"} />
|
||||||
|
) : null}
|
||||||
|
</div>
|
||||||
|
</Box>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { MechRecCostJobs };
|
@ -257,7 +257,7 @@ const MechRecCostProdPlans = () => {
|
|||||||
const initPlanCtlgs = useCallback(async () => {
|
const initPlanCtlgs = useCallback(async () => {
|
||||||
if (!state.init) {
|
if (!state.init) {
|
||||||
const data = await executeStored({
|
const data = await executeStored({
|
||||||
stored: "PKG_P8PANELS_MECHREC.ACATALOG_INIT",
|
stored: "PKG_P8PANELS_MECHREC.FCPRODPLAN_PP_CTLG_INIT",
|
||||||
args: {},
|
args: {},
|
||||||
respArg: "COUT",
|
respArg: "COUT",
|
||||||
isArray: name => name === "XFCPRODPLAN_CRNS"
|
isArray: name => name === "XFCPRODPLAN_CRNS"
|
||||||
|
16
app/panels/mech_rec_dept_cost_jobs/index.js
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Загрузка цеха
|
||||||
|
Панель мониторинга: Точка входа
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import { MechRecDeptCostJobs } from "./mech_rec_dept_cost_jobs"; //Корневая панель загрузки цеха
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export const RootClass = MechRecDeptCostJobs;
|
154
app/panels/mech_rec_dept_cost_jobs/mech_rec_dept_cost_jobs.js
Normal file
@ -0,0 +1,154 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Загрузка цеха
|
||||||
|
Панель мониторинга: Корневая панель загрузки цеха
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React, { useState, useContext, useCallback, useEffect } from "react"; //Классы React
|
||||||
|
import { Typography, Box, Grid } from "@mui/material"; //Интерфейсные элементы
|
||||||
|
import { object2Base64XML } from "../../core/utils"; //Вспомогательные процедуры и функции
|
||||||
|
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||||
|
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||||
|
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Размер страницы данных
|
||||||
|
const DATA_GRID_PAGE_SIZE = 5;
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
CONTAINER: { textAlign: "center", paddingTop: "20px" },
|
||||||
|
TITLE: { paddingBottom: "15px" },
|
||||||
|
DATA_GRID_CONTAINER: { minWidth: "95vw", maxWidth: "95vw", minHeight: "80vh", maxHeight: "80vh" },
|
||||||
|
DATA_GRID_CELL: (row, columnDef) => ({
|
||||||
|
padding: "8px",
|
||||||
|
textOverflow: "ellipsis",
|
||||||
|
overflow: "hidden",
|
||||||
|
whiteSpace: "pre",
|
||||||
|
...(columnDef.name.match(/N.*_VALUE/) && row[columnDef.name]
|
||||||
|
? { backgroundColor: row[`${columnDef.name.substring(0, 12)}_TYPE`] === 0 ? "lightgrey" : "lightgreen" }
|
||||||
|
: {})
|
||||||
|
})
|
||||||
|
};
|
||||||
|
|
||||||
|
//------------------------------------
|
||||||
|
//Вспомогательные функции и компоненты
|
||||||
|
//------------------------------------
|
||||||
|
|
||||||
|
//Генерация заливки строки исходя от значений
|
||||||
|
const dataCellRender = ({ row, columnDef }) => ({
|
||||||
|
cellProps: { title: row[columnDef.name] },
|
||||||
|
cellStyle: STYLES.DATA_GRID_CELL(row, columnDef),
|
||||||
|
data: row[columnDef]
|
||||||
|
});
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Корневая панель загрузки цеха
|
||||||
|
const MechRecDeptCostJobs = () => {
|
||||||
|
//Собственное состояние - таблица данных
|
||||||
|
const [costJobs, setCostJobs] = useState({
|
||||||
|
subdiv: null,
|
||||||
|
dataLoaded: false,
|
||||||
|
columnsDef: [],
|
||||||
|
filters: [],
|
||||||
|
orders: null,
|
||||||
|
rows: [],
|
||||||
|
reload: true,
|
||||||
|
pageNumber: 1,
|
||||||
|
morePages: true,
|
||||||
|
fixedHeader: false,
|
||||||
|
fixedColumns: 0
|
||||||
|
});
|
||||||
|
|
||||||
|
//Подключение к контексту взаимодействия с сервером
|
||||||
|
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||||
|
|
||||||
|
//Загрузка данных таблицы с сервера
|
||||||
|
const loadData = useCallback(async () => {
|
||||||
|
if (costJobs.reload) {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCJOBS_DEP_LOAD_DG_GET",
|
||||||
|
args: {
|
||||||
|
CFILTERS: { VALUE: object2Base64XML(costJobs.filters, { arrayNodeName: "filters" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
||||||
|
CORDERS: { VALUE: object2Base64XML(costJobs.orders, { arrayNodeName: "orders" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
||||||
|
NPAGE_NUMBER: costJobs.pageNumber,
|
||||||
|
NPAGE_SIZE: DATA_GRID_PAGE_SIZE,
|
||||||
|
NINCLUDE_DEF: costJobs.dataLoaded ? 0 : 1
|
||||||
|
},
|
||||||
|
respArg: "COUT"
|
||||||
|
});
|
||||||
|
setCostJobs(pv => ({
|
||||||
|
...pv,
|
||||||
|
fixedHeader: data.XFCJOBS.XDATA.XDATA_GRID.fixedHeader,
|
||||||
|
fixedColumns: data.XFCJOBS.XDATA.XDATA_GRID.fixedColumns,
|
||||||
|
subdiv: data.XINFO.SSUBDIV,
|
||||||
|
columnsDef: data.XFCJOBS.XDATA.XCOLUMNS_DEF ? [...data.XFCJOBS.XDATA.XCOLUMNS_DEF] : pv.columnsDef,
|
||||||
|
rows: pv.pageNumber == 1 ? [...(data.XFCJOBS.XDATA.XROWS || [])] : [...pv.rows, ...(data.XFCJOBS.XDATA.XROWS || [])],
|
||||||
|
dataLoaded: true,
|
||||||
|
reload: false,
|
||||||
|
morePages: (data.XFCJOBS.XDATA.XROWS || []).length >= DATA_GRID_PAGE_SIZE
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
}, [costJobs.reload, costJobs.filters, costJobs.orders, costJobs.dataLoaded, costJobs.pageNumber, executeStored, SERV_DATA_TYPE_CLOB]);
|
||||||
|
|
||||||
|
//При изменении состояния фильтра
|
||||||
|
const handleFilterChanged = ({ filters }) => setCostJobs(pv => ({ ...pv, filters: [...filters], pageNumber: 1, reload: true }));
|
||||||
|
|
||||||
|
//При изменении состояния сортировки
|
||||||
|
const handleOrderChanged = ({ orders }) => setCostJobs(pv => ({ ...pv, orders: [...orders], pageNumber: 1, reload: true }));
|
||||||
|
|
||||||
|
//При изменении количества отображаемых страниц
|
||||||
|
const handlePagesCountChanged = () => setCostJobs(pv => ({ ...pv, pageNumber: pv.pageNumber + 1, reload: true }));
|
||||||
|
|
||||||
|
//При необходимости обновить данные таблицы
|
||||||
|
useEffect(() => {
|
||||||
|
loadData();
|
||||||
|
}, [costJobs.reload, loadData]);
|
||||||
|
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<div style={STYLES.CONTAINER}>
|
||||||
|
<Typography sx={STYLES.TITLE} variant={"h6"}>
|
||||||
|
{costJobs.dataLoaded ? `Загрузка станков "${costJobs.subdiv}"` : null}
|
||||||
|
</Typography>
|
||||||
|
<Grid container spacing={1}>
|
||||||
|
<Grid item xs={12}>
|
||||||
|
<Box pt={1} display="flex" justifyContent="center" alignItems="center">
|
||||||
|
{costJobs.dataLoaded ? (
|
||||||
|
<P8PDataGrid
|
||||||
|
{...P8P_DATA_GRID_CONFIG_PROPS}
|
||||||
|
containerComponentProps={{ elevation: 6, style: STYLES.DATA_GRID_CONTAINER }}
|
||||||
|
fixedHeader={costJobs.fixedHeader}
|
||||||
|
fixedColumns={costJobs.fixedColumns}
|
||||||
|
columnsDef={costJobs.columnsDef}
|
||||||
|
rows={costJobs.rows}
|
||||||
|
size={P8P_DATA_GRID_SIZE.LARGE}
|
||||||
|
morePages={costJobs.morePages}
|
||||||
|
reloading={costJobs.reload}
|
||||||
|
onOrderChanged={handleOrderChanged}
|
||||||
|
onFilterChanged={handleFilterChanged}
|
||||||
|
onPagesCountChanged={handlePagesCountChanged}
|
||||||
|
dataCellRender={prms => dataCellRender({ ...prms })}
|
||||||
|
/>
|
||||||
|
) : null}
|
||||||
|
</Box>
|
||||||
|
</Grid>
|
||||||
|
</Grid>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { MechRecDeptCostJobs };
|
260
app/panels/mech_rec_dept_cost_prod_plans/fcroutlst.js
Normal file
@ -0,0 +1,260 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Производственный план цеха
|
||||||
|
Компонент панели: Таблица маршрутных листов
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React, { useState, useCallback, useEffect, useContext } from "react"; //Классы React
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
import { Typography, Box, Paper, Dialog, DialogContent, DialogActions, Button, TextField, IconButton, Icon } from "@mui/material"; //Интерфейсные элементы
|
||||||
|
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||||
|
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||||
|
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||||
|
import { object2Base64XML } from "../../core/utils"; //Вспомогательные функции
|
||||||
|
import { CostRouteListsSpecsDataGrid } from "./fcroutlstsp"; //Состояние таблицы заказов маршрутных листов
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
CONTAINER: { textAlign: "center" },
|
||||||
|
TABLE: { paddingTop: "15px" },
|
||||||
|
TABLE_SUM: { textAlign: "right", paddingTop: "5px", paddingRight: "15px" },
|
||||||
|
DIALOG_BUTTONS: { marginTop: "10px", width: "240px" }
|
||||||
|
};
|
||||||
|
|
||||||
|
//---------------------------------------------
|
||||||
|
//Вспомогательные функции форматирования данных
|
||||||
|
//---------------------------------------------
|
||||||
|
|
||||||
|
//Генерация представления расширения строки
|
||||||
|
export const rowExpandRender = ({ row }) => {
|
||||||
|
return (
|
||||||
|
<Paper elevation={4}>
|
||||||
|
<CostRouteListsSpecsDataGrid mainRowRN={row.NRN} />
|
||||||
|
</Paper>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Форматирование значений колонок
|
||||||
|
const dataCellRender = ({ row, columnDef, handlePriorEditOpen }) => {
|
||||||
|
//!!! Пока отключено - не удалять
|
||||||
|
switch (columnDef.name) {
|
||||||
|
case "NPRIOR_PARTY":
|
||||||
|
return {
|
||||||
|
data: (
|
||||||
|
<>
|
||||||
|
{row["NPRIOR_PARTY"]}
|
||||||
|
<IconButton edge="end" title="Изменить приоритет" onClick={() => handlePriorEditOpen(row["NRN"], row["NPRIOR_PARTY"])}>
|
||||||
|
<Icon>edit</Icon>
|
||||||
|
</IconButton>
|
||||||
|
</>
|
||||||
|
)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
data: row[columnDef]
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Таблица маршрутных листов
|
||||||
|
const CostRouteListsDataGrid = ({ task }) => {
|
||||||
|
//Собственное состояние - таблица данных
|
||||||
|
const [costRouteLists, setCostRouteLists] = useState({
|
||||||
|
dataLoaded: false,
|
||||||
|
columnsDef: [],
|
||||||
|
orders: null,
|
||||||
|
rows: [],
|
||||||
|
reload: true,
|
||||||
|
pageNumber: 1,
|
||||||
|
morePages: true,
|
||||||
|
editPriorNRN: null,
|
||||||
|
editPriorValue: null
|
||||||
|
});
|
||||||
|
|
||||||
|
//Подключение к контексту взаимодействия с сервером
|
||||||
|
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||||
|
|
||||||
|
//Размер страницы данных
|
||||||
|
const DATA_GRID_PAGE_SIZE = 5;
|
||||||
|
|
||||||
|
//Загрузка данных таблицы с сервера
|
||||||
|
const loadData = useCallback(async () => {
|
||||||
|
if (costRouteLists.reload) {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCROUTLST_DEPT_DG_GET",
|
||||||
|
args: {
|
||||||
|
NFCPRODPLANSP: task,
|
||||||
|
CORDERS: { VALUE: object2Base64XML(costRouteLists.orders, { arrayNodeName: "orders" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
||||||
|
NPAGE_NUMBER: costRouteLists.pageNumber,
|
||||||
|
NPAGE_SIZE: DATA_GRID_PAGE_SIZE,
|
||||||
|
NINCLUDE_DEF: costRouteLists.dataLoaded ? 0 : 1
|
||||||
|
},
|
||||||
|
respArg: "COUT"
|
||||||
|
});
|
||||||
|
setCostRouteLists(pv => ({
|
||||||
|
...pv,
|
||||||
|
columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,
|
||||||
|
rows: pv.pageNumber == 1 ? [...(data.XROWS || [])] : [...pv.rows, ...(data.XROWS || [])],
|
||||||
|
dataLoaded: true,
|
||||||
|
reload: false,
|
||||||
|
morePages: (data.XROWS || []).length >= DATA_GRID_PAGE_SIZE
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, [
|
||||||
|
costRouteLists.reload,
|
||||||
|
costRouteLists.filters,
|
||||||
|
costRouteLists.orders,
|
||||||
|
costRouteLists.dataLoaded,
|
||||||
|
costRouteLists.pageNumber,
|
||||||
|
executeStored,
|
||||||
|
SERV_DATA_TYPE_CLOB
|
||||||
|
]);
|
||||||
|
|
||||||
|
//При необходимости обновить данные таблицы
|
||||||
|
useEffect(() => {
|
||||||
|
loadData();
|
||||||
|
}, [costRouteLists.reload, loadData]);
|
||||||
|
|
||||||
|
//При изменении состояния сортировки
|
||||||
|
const handleOrderChanged = ({ orders }) => setCostRouteLists(pv => ({ ...pv, orders: [...orders], pageNumber: 1, reload: true }));
|
||||||
|
|
||||||
|
//При изменении количества отображаемых страниц
|
||||||
|
const handlePagesCountChanged = () => setCostRouteLists(pv => ({ ...pv, pageNumber: pv.pageNumber + 1, reload: true }));
|
||||||
|
|
||||||
|
//При открытии изменения приоритета партии
|
||||||
|
const handlePriorEditOpen = (NRN, nPriorValue) => {
|
||||||
|
setCostRouteLists(pv => ({ ...pv, editPriorNRN: NRN, editPriorValue: nPriorValue }));
|
||||||
|
};
|
||||||
|
|
||||||
|
//При закрытии изменения приоритета партии
|
||||||
|
const handlePriorEditClose = () => {
|
||||||
|
setCostRouteLists(pv => ({ ...pv, editPriorNRN: null, editPriorValue: null }));
|
||||||
|
};
|
||||||
|
|
||||||
|
//При изменении значения приоритета партии
|
||||||
|
const handlePriorFormChanged = e => {
|
||||||
|
setCostRouteLists(pv => ({ ...pv, editPriorValue: e.target.value }));
|
||||||
|
};
|
||||||
|
|
||||||
|
//Изменение приоритета
|
||||||
|
const priorChange = useCallback(
|
||||||
|
async (NRN, PriorValue, rows) => {
|
||||||
|
try {
|
||||||
|
await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCROUTLST_PRIOR_PARTY_UPDATE",
|
||||||
|
args: { NFCROUTLST: NRN, SPRIOR_PARTY: PriorValue }
|
||||||
|
});
|
||||||
|
//Изменяем значение приоритета у нужного
|
||||||
|
rows[rows.findIndex(obj => obj.NRN == NRN)].NPRIOR_PARTY = PriorValue;
|
||||||
|
//Актуализируем строки таблицы
|
||||||
|
setCostRouteLists(pv => ({ ...pv, rows: rows }));
|
||||||
|
//Закрываем окно
|
||||||
|
handlePriorEditClose();
|
||||||
|
} catch (e) {
|
||||||
|
throw new Error(e.message);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
[executeStored]
|
||||||
|
);
|
||||||
|
|
||||||
|
//При нажатии на изменение приоритета партии
|
||||||
|
const handlePriorChange = () => {
|
||||||
|
//Изменяем значение
|
||||||
|
priorChange(costRouteLists.editPriorNRN, costRouteLists.editPriorValue, costRouteLists.rows);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<div style={STYLES.CONTAINER}>
|
||||||
|
<Typography variant={"h6"}>В производстве</Typography>
|
||||||
|
{costRouteLists.dataLoaded ? (
|
||||||
|
<>
|
||||||
|
<Box sx={STYLES.TABLE}>
|
||||||
|
<P8PDataGrid
|
||||||
|
{...P8P_DATA_GRID_CONFIG_PROPS}
|
||||||
|
columnsDef={costRouteLists.columnsDef}
|
||||||
|
rows={costRouteLists.rows}
|
||||||
|
size={P8P_DATA_GRID_SIZE.LARGE}
|
||||||
|
morePages={costRouteLists.morePages}
|
||||||
|
reloading={costRouteLists.reload}
|
||||||
|
expandable={true}
|
||||||
|
rowExpandRender={rowExpandRender}
|
||||||
|
onOrderChanged={handleOrderChanged}
|
||||||
|
onPagesCountChanged={handlePagesCountChanged}
|
||||||
|
dataCellRender={prms => dataCellRender({ ...prms, handlePriorEditOpen })}
|
||||||
|
/>
|
||||||
|
</Box>
|
||||||
|
</>
|
||||||
|
) : null}
|
||||||
|
{costRouteLists.editPriorNRN ? (
|
||||||
|
<Dialog open onClose={() => handlePriorEditClose(null)}>
|
||||||
|
<DialogContent>
|
||||||
|
<Box>
|
||||||
|
<TextField
|
||||||
|
name="editPriorValue"
|
||||||
|
label="Новое значение приоритета"
|
||||||
|
variant="standard"
|
||||||
|
fullWidth
|
||||||
|
type="number"
|
||||||
|
value={costRouteLists.editPriorValue}
|
||||||
|
onChange={handlePriorFormChanged}
|
||||||
|
/>
|
||||||
|
<Box>
|
||||||
|
<Button onClick={handlePriorChange} variant="contained" sx={STYLES.DIALOG_BUTTONS}>
|
||||||
|
Изменить
|
||||||
|
</Button>
|
||||||
|
</Box>
|
||||||
|
</Box>
|
||||||
|
</DialogContent>
|
||||||
|
<DialogActions>
|
||||||
|
<Button onClick={() => handlePriorEditClose(null)}>Закрыть</Button>
|
||||||
|
</DialogActions>
|
||||||
|
</Dialog>
|
||||||
|
) : null}
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Таблица маршрутных листов
|
||||||
|
CostRouteListsDataGrid.propTypes = {
|
||||||
|
task: PropTypes.number.isRequired
|
||||||
|
};
|
||||||
|
|
||||||
|
//Диалог с таблицей сдачи продукции
|
||||||
|
const CostRouteListsDataGridDialog = ({ task, onClose }) => {
|
||||||
|
return (
|
||||||
|
<Dialog open onClose={onClose ? onClose : null} fullWidth maxWidth="xl">
|
||||||
|
<DialogContent>
|
||||||
|
<CostRouteListsDataGrid task={task} />
|
||||||
|
</DialogContent>
|
||||||
|
{onClose ? (
|
||||||
|
<DialogActions>
|
||||||
|
<Button onClick={onClose}>Закрыть</Button>
|
||||||
|
</DialogActions>
|
||||||
|
) : null}
|
||||||
|
</Dialog>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Диалог с таблицей маршрутных листов
|
||||||
|
CostRouteListsDataGridDialog.propTypes = {
|
||||||
|
task: PropTypes.number.isRequired,
|
||||||
|
onClose: PropTypes.func
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { CostRouteListsDataGridDialog };
|
124
app/panels/mech_rec_dept_cost_prod_plans/fcroutlstsp.js
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Производственный план цеха
|
||||||
|
Компонент панели: Таблица строк маршрутного листа
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React, { useState, useCallback, useEffect, useContext } from "react"; //Классы React
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
import { Typography } from "@mui/material"; //Интерфейсные элементы
|
||||||
|
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||||
|
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||||
|
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||||
|
import { object2Base64XML } from "../../core/utils"; //Вспомогательные функции
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
CONTAINER: { margin: "5px 0px", textAlign: "center" }
|
||||||
|
};
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Таблица строк маршрутного листа
|
||||||
|
const CostRouteListsSpecsDataGrid = ({ mainRowRN }) => {
|
||||||
|
//Собственное состояние - таблица данных
|
||||||
|
const [costRouteListsSpecs, setCostRouteListsSpecs] = useState({
|
||||||
|
dataLoaded: false,
|
||||||
|
columnsDef: [],
|
||||||
|
orders: null,
|
||||||
|
rows: [],
|
||||||
|
reload: true,
|
||||||
|
pageNumber: 1,
|
||||||
|
morePages: true
|
||||||
|
});
|
||||||
|
|
||||||
|
//Подключение к контексту взаимодействия с сервером
|
||||||
|
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||||
|
|
||||||
|
//Размер страницы данных
|
||||||
|
const DATA_GRID_PAGE_SIZE = 10;
|
||||||
|
|
||||||
|
//Загрузка данных таблицы с сервера
|
||||||
|
const loadData = useCallback(async () => {
|
||||||
|
if (costRouteListsSpecs.reload) {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCROUTLSTSP_DEPT_DG_GET",
|
||||||
|
args: {
|
||||||
|
NFCROUTLST: mainRowRN,
|
||||||
|
CORDERS: { VALUE: object2Base64XML(costRouteListsSpecs.orders, { arrayNodeName: "orders" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
||||||
|
NPAGE_NUMBER: costRouteListsSpecs.pageNumber,
|
||||||
|
NPAGE_SIZE: DATA_GRID_PAGE_SIZE,
|
||||||
|
NINCLUDE_DEF: costRouteListsSpecs.dataLoaded ? 0 : 1
|
||||||
|
},
|
||||||
|
respArg: "COUT"
|
||||||
|
});
|
||||||
|
setCostRouteListsSpecs(pv => ({
|
||||||
|
...pv,
|
||||||
|
columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,
|
||||||
|
rows: pv.pageNumber == 1 ? [...(data.XROWS || [])] : [...pv.rows, ...(data.XROWS || [])],
|
||||||
|
dataLoaded: true,
|
||||||
|
reload: false,
|
||||||
|
morePages: (data.XROWS || []).length >= DATA_GRID_PAGE_SIZE
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, [
|
||||||
|
costRouteListsSpecs.reload,
|
||||||
|
costRouteListsSpecs.filters,
|
||||||
|
costRouteListsSpecs.orders,
|
||||||
|
costRouteListsSpecs.dataLoaded,
|
||||||
|
costRouteListsSpecs.pageNumber,
|
||||||
|
executeStored,
|
||||||
|
SERV_DATA_TYPE_CLOB
|
||||||
|
]);
|
||||||
|
|
||||||
|
//При необходимости обновить данные таблицы
|
||||||
|
useEffect(() => {
|
||||||
|
loadData();
|
||||||
|
}, [costRouteListsSpecs.reload, loadData]);
|
||||||
|
|
||||||
|
//При изменении состояния сортировки
|
||||||
|
const handleOrderChanged = ({ orders }) => setCostRouteListsSpecs(pv => ({ ...pv, orders: [...orders], pageNumber: 1, reload: true }));
|
||||||
|
|
||||||
|
//При изменении количества отображаемых страниц
|
||||||
|
const handlePagesCountChanged = () => setCostRouteListsSpecs(pv => ({ ...pv, pageNumber: pv.pageNumber + 1, reload: true }));
|
||||||
|
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<div style={STYLES.CONTAINER}>
|
||||||
|
<Typography variant={"subtitle2"}>Операции</Typography>
|
||||||
|
{costRouteListsSpecs.dataLoaded ? (
|
||||||
|
<P8PDataGrid
|
||||||
|
{...P8P_DATA_GRID_CONFIG_PROPS}
|
||||||
|
columnsDef={costRouteListsSpecs.columnsDef}
|
||||||
|
rows={costRouteListsSpecs.rows}
|
||||||
|
size={P8P_DATA_GRID_SIZE.SMALL}
|
||||||
|
morePages={costRouteListsSpecs.morePages}
|
||||||
|
reloading={costRouteListsSpecs.reload}
|
||||||
|
onOrderChanged={handleOrderChanged}
|
||||||
|
onPagesCountChanged={handlePagesCountChanged}
|
||||||
|
/>
|
||||||
|
) : null}
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Таблица строк маршрутного листа
|
||||||
|
CostRouteListsSpecsDataGrid.propTypes = {
|
||||||
|
mainRowRN: PropTypes.number.isRequired
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { CostRouteListsSpecsDataGrid };
|
23
app/panels/mech_rec_dept_cost_prod_plans/hooks.js
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Производственный план цеха
|
||||||
|
Кастомные хуки
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React from "react"; //Классы React
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Клиентский отбор каталогов по поисковой фразе и наличию планов
|
||||||
|
export const useFilteredPlans = (plans, filter) => {
|
||||||
|
const filteredPlans = React.useMemo(() => {
|
||||||
|
return plans.filter(catalog => catalog.SDOC_INFO.toString().toLowerCase().includes(filter.planName));
|
||||||
|
}, [plans, filter]);
|
||||||
|
|
||||||
|
return filteredPlans;
|
||||||
|
};
|
142
app/panels/mech_rec_dept_cost_prod_plans/incomefromdeps.js
Normal file
@ -0,0 +1,142 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Производственный план цеха
|
||||||
|
Компонент панели: Таблица сдачи продукции
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React, { useState, useCallback, useEffect, useContext } from "react"; //Классы React
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
import { Typography, Box, Dialog, DialogContent, DialogActions, Button } from "@mui/material"; //Интерфейсные элементы
|
||||||
|
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||||
|
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||||
|
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||||
|
import { object2Base64XML, formatDateRF } from "../../core/utils"; //Вспомогательные функции
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
CONTAINER: { textAlign: "center" },
|
||||||
|
TABLE: { paddingTop: "15px" }
|
||||||
|
};
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Таблица сдачи продукции
|
||||||
|
const IncomFromDepsDataGrid = ({ task }) => {
|
||||||
|
//Собственное состояние - таблица данных
|
||||||
|
const [incomFromDeps, setIncomFromDeps] = useState({
|
||||||
|
dataLoaded: false,
|
||||||
|
columnsDef: [],
|
||||||
|
orders: null,
|
||||||
|
rows: [],
|
||||||
|
reload: true,
|
||||||
|
pageNumber: 1,
|
||||||
|
morePages: true
|
||||||
|
});
|
||||||
|
|
||||||
|
//Размер страницы данных
|
||||||
|
const DATA_GRID_PAGE_SIZE = 10;
|
||||||
|
|
||||||
|
//Подключение к контексту взаимодействия с сервером
|
||||||
|
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||||
|
|
||||||
|
//Загрузка данных таблицы с сервера
|
||||||
|
const loadData = useCallback(async () => {
|
||||||
|
if (incomFromDeps.reload) {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.INCOMEFROMDEPS_DEPT_DG_GET",
|
||||||
|
args: {
|
||||||
|
NFCPRODPLANSP: task,
|
||||||
|
CORDERS: { VALUE: object2Base64XML(incomFromDeps.orders, { arrayNodeName: "orders" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
||||||
|
NPAGE_NUMBER: incomFromDeps.pageNumber,
|
||||||
|
NPAGE_SIZE: DATA_GRID_PAGE_SIZE,
|
||||||
|
NINCLUDE_DEF: incomFromDeps.dataLoaded ? 0 : 1
|
||||||
|
},
|
||||||
|
attributeValueProcessor: (name, val) => (["DDUE_DATE"].includes(name) ? formatDateRF(val) : val),
|
||||||
|
respArg: "COUT"
|
||||||
|
});
|
||||||
|
setIncomFromDeps(pv => ({
|
||||||
|
...pv,
|
||||||
|
columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,
|
||||||
|
rows: pv.pageNumber == 1 ? [...(data.XROWS || [])] : [...pv.rows, ...(data.XROWS || [])],
|
||||||
|
dataLoaded: true,
|
||||||
|
reload: false,
|
||||||
|
morePages: (data.XROWS || []).length >= DATA_GRID_PAGE_SIZE
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, [incomFromDeps.reload, incomFromDeps.orders, incomFromDeps.dataLoaded, incomFromDeps.pageNumber, executeStored, SERV_DATA_TYPE_CLOB]);
|
||||||
|
|
||||||
|
//При необходимости обновить данные таблицы
|
||||||
|
useEffect(() => {
|
||||||
|
loadData();
|
||||||
|
}, [incomFromDeps.reload, loadData]);
|
||||||
|
|
||||||
|
//При изменении состояния сортировки
|
||||||
|
const handleOrderChanged = ({ orders }) => setIncomFromDeps(pv => ({ ...pv, orders: [...orders], pageNumber: 1, reload: true }));
|
||||||
|
|
||||||
|
//При изменении количества отображаемых страниц
|
||||||
|
const handlePagesCountChanged = () => setIncomFromDeps(pv => ({ ...pv, pageNumber: pv.pageNumber + 1, reload: true }));
|
||||||
|
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<div style={STYLES.CONTAINER}>
|
||||||
|
<Typography variant={"h6"}>Сдача продукции</Typography>
|
||||||
|
<Box sx={STYLES.TABLE}>
|
||||||
|
{incomFromDeps.dataLoaded ? (
|
||||||
|
<P8PDataGrid
|
||||||
|
{...P8P_DATA_GRID_CONFIG_PROPS}
|
||||||
|
columnsDef={incomFromDeps.columnsDef}
|
||||||
|
rows={incomFromDeps.rows}
|
||||||
|
size={P8P_DATA_GRID_SIZE.LARGE}
|
||||||
|
morePages={incomFromDeps.morePages}
|
||||||
|
reloading={incomFromDeps.reload}
|
||||||
|
onOrderChanged={handleOrderChanged}
|
||||||
|
onPagesCountChanged={handlePagesCountChanged}
|
||||||
|
/>
|
||||||
|
) : null}
|
||||||
|
</Box>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Таблица сдачи продукции
|
||||||
|
IncomFromDepsDataGrid.propTypes = {
|
||||||
|
task: PropTypes.number.isRequired
|
||||||
|
};
|
||||||
|
|
||||||
|
//Диалог с таблицей сдачи продукции
|
||||||
|
const IncomFromDepsDataGridDialog = ({ task, onClose }) => {
|
||||||
|
return (
|
||||||
|
<Dialog open onClose={onClose ? onClose : null} fullWidth maxWidth="xl">
|
||||||
|
<DialogContent>
|
||||||
|
<IncomFromDepsDataGrid task={task} />
|
||||||
|
</DialogContent>
|
||||||
|
{onClose ? (
|
||||||
|
<DialogActions>
|
||||||
|
<Button onClick={onClose}>Закрыть</Button>
|
||||||
|
</DialogActions>
|
||||||
|
) : null}
|
||||||
|
</Dialog>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Диалог с таблицей сдачи продукции
|
||||||
|
IncomFromDepsDataGridDialog.propTypes = {
|
||||||
|
task: PropTypes.number.isRequired,
|
||||||
|
onClose: PropTypes.func
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { IncomFromDepsDataGridDialog };
|
16
app/panels/mech_rec_dept_cost_prod_plans/index.js
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУДП - Производственный план цеха
|
||||||
|
Панель мониторинга: Точка входа
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import { MechRecDeptCostProdPlans } from "./mech_rec_dept_cost_prod_plans"; //Корневая панель производственного плана цеха
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export const RootClass = MechRecDeptCostProdPlans;
|
@ -0,0 +1,399 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Производственный план цеха
|
||||||
|
Панель мониторинга: Корневая панель производственного плана цеха
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React, { useContext, useState, useCallback, useEffect } from "react"; //Классы React
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
import { Drawer, Fab, Box, List, ListItemButton, ListItemText, Typography, TextField, Link, Grid } from "@mui/material"; //Интерфейсные элементы
|
||||||
|
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||||
|
import { useFilteredPlans } from "./hooks"; //Вспомогательные хуки
|
||||||
|
import { object2Base64XML } from "../../core/utils"; //Вспомогательные функции
|
||||||
|
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||||
|
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||||
|
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||||
|
import { IncomFromDepsDataGridDialog } from "./incomefromdeps"; //Диалог сдачи продукции
|
||||||
|
import { CostRouteListsDataGridDialog } from "./fcroutlst"; //Диалог маршрутных листов
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
PLANS_FINDER: { marginTop: "10px", marginLeft: "10px", width: "93%" },
|
||||||
|
PLANS_LIST_ITEM_PRIMARY: { wordWrap: "break-word" },
|
||||||
|
PLANS_BUTTON: { position: "absolute", marginTop: "10px", marginLeft: "10px" },
|
||||||
|
PLANS_DRAWER: {
|
||||||
|
width: "350px",
|
||||||
|
display: "inline-block",
|
||||||
|
flexShrink: 0,
|
||||||
|
[`& .MuiDrawer-paper`]: { width: "350px", display: "inline-block", boxSizing: "border-box" }
|
||||||
|
},
|
||||||
|
CONTAINER: { paddingTop: "40px", margin: "5px 0px", textAlign: "center" },
|
||||||
|
DATA_GRID_CONTAINER: { minWidth: "95vw", maxWidth: "95vw", minHeight: "80vh", maxHeight: "80vh" },
|
||||||
|
DATA_GRID_GROUP_CELL: { padding: "2px" },
|
||||||
|
DATA_GRID_CELL: { padding: "8px", maxWidth: "300px", textOverflow: "ellipsis", overflow: "hidden", whiteSpace: "pre" },
|
||||||
|
DATA_GRID_CELL_STATUS: (currentStyle, row) => ({ backgroundColor: getRowBackgroudColor(row), ...currentStyle }),
|
||||||
|
DATA_GRID_CELL_PLAN_FACT: currentStyle => ({ ...currentStyle, backgroundColor: "lightgrey" }),
|
||||||
|
DATA_GRID_CELL_MATRES_CODE: (currentStyle, row) => ({ backgroundColor: getRowBackgroudColor(row), ...currentStyle }),
|
||||||
|
PLAN_FACT_VALUE: { textAlign: "center", display: "flex", justifyContent: "center" },
|
||||||
|
PLAN_FACT_DELIMITER: { padding: "0px 5px" },
|
||||||
|
FACT_VALUE: { color: "blue" }
|
||||||
|
};
|
||||||
|
|
||||||
|
//------------------------------------
|
||||||
|
//Вспомогательные функции и компоненты
|
||||||
|
//------------------------------------
|
||||||
|
|
||||||
|
//Генерация представления ячейки заголовка группы
|
||||||
|
export const groupCellRender = ({ group }) => ({
|
||||||
|
cellStyle: STYLES.DATA_GRID_GROUP_CELL,
|
||||||
|
data: group.caption
|
||||||
|
});
|
||||||
|
|
||||||
|
//Вычисление цвета заливки для строки
|
||||||
|
const getRowBackgroudColor = row => {
|
||||||
|
//Факт === План
|
||||||
|
if (row["NMAIN_QUANT"] === row["NREL_FACT"]) return "lightgreen";
|
||||||
|
//План <= (Факт + Запущено)
|
||||||
|
if (row["NMAIN_QUANT"] <= row["NREL_FACT"] + row["NFCROUTLST_QUANT"]) return "lightblue";
|
||||||
|
//Сумма "Количество план" = 0 или < "План"
|
||||||
|
if (row["NSUM_PLAN"] === 0 || (row["NSUM_PLAN"] !== 0 && row["NSUM_PLAN"] < row["NMAIN_QUANT"])) {
|
||||||
|
//"Факт" >= "План"
|
||||||
|
if (row["NREL_FACT"] >= row["NMAIN_QUANT"]) return "#F0E68C";
|
||||||
|
} else {
|
||||||
|
//Сумма "Количество факт" >= сумма "Количество план"
|
||||||
|
if (row["NSUM_FACT"] >= row["NSUM_PLAN"]) return "#F0E68C";
|
||||||
|
}
|
||||||
|
return "lightcoral";
|
||||||
|
};
|
||||||
|
|
||||||
|
//Генерация заливки строки исходя от значений
|
||||||
|
const dataCellRender = ({ row, columnDef, handleProdOrderClick, handleMatresCodeClick }) => {
|
||||||
|
//Описываем общие свойства
|
||||||
|
let cellProps = { title: row[columnDef.name] };
|
||||||
|
//Описываем общий стиль
|
||||||
|
let cellStyle = STYLES.DATA_GRID_CELL;
|
||||||
|
//Для колонки "Статус"
|
||||||
|
if (columnDef.name === "SSTATUS") return { cellProps, cellStyle: STYLES.DATA_GRID_CELL_STATUS(cellStyle, row), data: row[columnDef] };
|
||||||
|
//Для колонки даты
|
||||||
|
if (columnDef.name.indexOf("PLAN_FACT") >= 0) {
|
||||||
|
//Получаем текущий день
|
||||||
|
let curDay = new Date().getDate().toString().padStart(2, "0");
|
||||||
|
//Формируем regex для проверки
|
||||||
|
let regex = new RegExp(`N_${curDay}.*`, "g");
|
||||||
|
//Если это значение текущего дня
|
||||||
|
if (columnDef.name.match(regex)) cellStyle = STYLES.DATA_GRID_CELL_PLAN_FACT(cellStyle);
|
||||||
|
//Если в колонке есть значение
|
||||||
|
if (row[columnDef.name]) {
|
||||||
|
//Разбиваем его на план/факт
|
||||||
|
let values = row[columnDef.name].split("/");
|
||||||
|
//Разбиваем значения на блоки
|
||||||
|
return {
|
||||||
|
cellProps,
|
||||||
|
cellStyle,
|
||||||
|
data: (
|
||||||
|
<Box sx={STYLES.PLAN_FACT_VALUE}>
|
||||||
|
<Box>{values[0]}</Box>
|
||||||
|
<Box sx={STYLES.PLAN_FACT_DELIMITER}>/</Box>
|
||||||
|
<Box sx={STYLES.FACT_VALUE}>{values[1]}</Box>
|
||||||
|
</Box>
|
||||||
|
)
|
||||||
|
};
|
||||||
|
} else return { cellProps, cellStyle, data: row[columnDef] };
|
||||||
|
}
|
||||||
|
//Для колонки "Заказ"
|
||||||
|
if (columnDef.name === "SPROD_ORDER") {
|
||||||
|
return {
|
||||||
|
cellProps,
|
||||||
|
cellStyle,
|
||||||
|
data: (
|
||||||
|
<Link component="button" variant="body2" align="left" underline="hover" onClick={() => handleProdOrderClick(row["NRN"])}>
|
||||||
|
{row[columnDef.name]}
|
||||||
|
</Link>
|
||||||
|
)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
//Для колонки "Обозначение"
|
||||||
|
if (columnDef.name === "SMATRES_CODE")
|
||||||
|
return {
|
||||||
|
cellProps,
|
||||||
|
cellStyle: STYLES.DATA_GRID_CELL_MATRES_CODE(cellStyle, row),
|
||||||
|
data: (
|
||||||
|
<Link component="button" variant="body2" align="left" underline="hover" onClick={() => handleMatresCodeClick(row["NRN"])}>
|
||||||
|
{row[columnDef.name]}
|
||||||
|
</Link>
|
||||||
|
)
|
||||||
|
};
|
||||||
|
//Для всех остальных
|
||||||
|
return { cellProps, cellStyle, data: row[columnDef] };
|
||||||
|
};
|
||||||
|
|
||||||
|
//Список каталогов планов
|
||||||
|
const PlanList = ({ plans = [], selectedPlan, filter, setFilter, onClick } = {}) => {
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<div>
|
||||||
|
<TextField
|
||||||
|
sx={STYLES.PLANS_FINDER}
|
||||||
|
name="planFilter"
|
||||||
|
label="План"
|
||||||
|
value={filter.planName}
|
||||||
|
variant="standard"
|
||||||
|
fullWidth
|
||||||
|
onChange={event => {
|
||||||
|
setFilter(pv => ({ ...pv, planName: event.target.value }));
|
||||||
|
}}
|
||||||
|
></TextField>
|
||||||
|
<List>
|
||||||
|
{plans.map(p => (
|
||||||
|
<ListItemButton key={p.NRN} selected={p.NRN === selectedPlan.NRN} onClick={() => (onClick ? onClick(p) : null)}>
|
||||||
|
<ListItemText primary={<Typography sx={STYLES.PLANS_LIST_ITEM_PRIMARY}>{p.SDOC_INFO}</Typography>} />
|
||||||
|
</ListItemButton>
|
||||||
|
))}
|
||||||
|
</List>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Список каталогов планов
|
||||||
|
PlanList.propTypes = {
|
||||||
|
plans: PropTypes.array,
|
||||||
|
selectedPlan: PropTypes.object,
|
||||||
|
onClick: PropTypes.func,
|
||||||
|
filter: PropTypes.object,
|
||||||
|
setFilter: PropTypes.func
|
||||||
|
};
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Корневая панель производственного плана цеха
|
||||||
|
const MechRecDeptCostProdPlans = () => {
|
||||||
|
//Собственное состояние - таблица данных
|
||||||
|
const [state, setState] = useState({
|
||||||
|
init: false,
|
||||||
|
showPlanList: false,
|
||||||
|
showIncomeFromDeps: null,
|
||||||
|
showFcroutelst: null,
|
||||||
|
planList: [],
|
||||||
|
planListLoaded: false,
|
||||||
|
selectedPlan: {},
|
||||||
|
dataLoaded: false,
|
||||||
|
columnsDef: [],
|
||||||
|
orders: null,
|
||||||
|
rows: [],
|
||||||
|
reload: true,
|
||||||
|
pageNumber: 1,
|
||||||
|
morePages: true,
|
||||||
|
fixedHeader: false,
|
||||||
|
fixedColumns: 0
|
||||||
|
});
|
||||||
|
|
||||||
|
//Состояние для фильтра каталогов
|
||||||
|
const [filter, setFilter] = useState({ planName: "" });
|
||||||
|
|
||||||
|
//Массив отфильтрованных каталогов
|
||||||
|
const filteredPlanCtgls = useFilteredPlans(state.planList, filter);
|
||||||
|
|
||||||
|
//Размер страницы данных
|
||||||
|
const DATA_GRID_PAGE_SIZE = 10;
|
||||||
|
|
||||||
|
//Подключение к контексту взаимодействия с сервером
|
||||||
|
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||||
|
|
||||||
|
//Подключение к контексту сообщений
|
||||||
|
const { InlineMsgInfo } = useContext(MessagingСtx);
|
||||||
|
|
||||||
|
// Инициализация каталогов планов
|
||||||
|
const initPlans = useCallback(async () => {
|
||||||
|
if (!state.init) {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCPRODPLAN_DEPT_INIT",
|
||||||
|
args: {},
|
||||||
|
respArg: "COUT",
|
||||||
|
isArray: name => name === "XFCPRODPLANS",
|
||||||
|
attributeValueProcessor: (name, val) => (name === "SPERIOD" ? undefined : val)
|
||||||
|
});
|
||||||
|
setState(pv => ({ ...pv, init: true, planList: [...(data?.XFCPRODPLANS || [])], planListLoaded: true }));
|
||||||
|
}
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, [state.init, executeStored]);
|
||||||
|
|
||||||
|
//Загрузка данных таблицы с сервера
|
||||||
|
const loadData = useCallback(
|
||||||
|
async NRN => {
|
||||||
|
if (state.reload && NRN) {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_MECHREC.FCPRODPLANSP_DEPT_DG_GET",
|
||||||
|
args: {
|
||||||
|
NFCPRODPLAN: NRN,
|
||||||
|
CORDERS: { VALUE: object2Base64XML(state.orders, { arrayNodeName: "orders" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
||||||
|
NPAGE_NUMBER: state.pageNumber,
|
||||||
|
NPAGE_SIZE: DATA_GRID_PAGE_SIZE,
|
||||||
|
NINCLUDE_DEF: state.dataLoaded ? 0 : 1
|
||||||
|
},
|
||||||
|
respArg: "COUT",
|
||||||
|
attributeValueProcessor: (name, val) => (name === "caption" ? undefined : val)
|
||||||
|
});
|
||||||
|
setState(pv => ({
|
||||||
|
...pv,
|
||||||
|
fixedHeader: data.XDATA_GRID.fixedHeader,
|
||||||
|
fixedColumns: data.XDATA_GRID.fixedColumns,
|
||||||
|
columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,
|
||||||
|
rows: pv.pageNumber == 1 ? [...(data.XROWS || [])] : [...pv.rows, ...(data.XROWS || [])],
|
||||||
|
dataLoaded: true,
|
||||||
|
reload: false,
|
||||||
|
morePages: (data.XROWS || []).length >= DATA_GRID_PAGE_SIZE
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
[state.reload, state.orders, state.dataLoaded, state.pageNumber, executeStored, SERV_DATA_TYPE_CLOB]
|
||||||
|
);
|
||||||
|
|
||||||
|
//При необходимости обновить данные таблицы
|
||||||
|
useEffect(() => {
|
||||||
|
if (state.selectedPlan.NRN) {
|
||||||
|
loadData(state.selectedPlan.NRN);
|
||||||
|
} else {
|
||||||
|
setState(pv => ({ ...pv, dataLoaded: false, columnsDef: [], orders: null, rows: [], reload: true, pageNumber: 1, morePages: true }));
|
||||||
|
}
|
||||||
|
}, [state.selectedPlan, state.reload, loadData]);
|
||||||
|
|
||||||
|
//При подключении компонента к странице
|
||||||
|
useEffect(() => {
|
||||||
|
initPlans();
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
//Выбор плана
|
||||||
|
const selectPlan = plan => {
|
||||||
|
setState(pv => ({
|
||||||
|
...pv,
|
||||||
|
showIncomeFromDeps: null,
|
||||||
|
showFcroutelst: null,
|
||||||
|
selectedPlan: plan,
|
||||||
|
showPlanList: false,
|
||||||
|
dataLoaded: false,
|
||||||
|
columnsDef: [],
|
||||||
|
orders: null,
|
||||||
|
rows: [],
|
||||||
|
reload: true,
|
||||||
|
pageNumber: 1,
|
||||||
|
morePages: true
|
||||||
|
}));
|
||||||
|
};
|
||||||
|
|
||||||
|
//Сброс выбора плана
|
||||||
|
const unselectPlan = () =>
|
||||||
|
setState(pv => ({
|
||||||
|
...pv,
|
||||||
|
showIncomeFromDeps: null,
|
||||||
|
showFcroutelst: null,
|
||||||
|
selectedPlan: {},
|
||||||
|
showPlanList: false,
|
||||||
|
dataLoaded: false,
|
||||||
|
columnsDef: [],
|
||||||
|
orders: null,
|
||||||
|
rows: [],
|
||||||
|
reload: true,
|
||||||
|
pageNumber: 1,
|
||||||
|
morePages: true
|
||||||
|
}));
|
||||||
|
|
||||||
|
//Обработка нажатия на элемент в списке планов
|
||||||
|
const handlePlanClick = plan => {
|
||||||
|
if (state.selectedPlan.NRN != plan.NRN) selectPlan(plan);
|
||||||
|
else unselectPlan();
|
||||||
|
};
|
||||||
|
|
||||||
|
//При изменении состояния сортировки
|
||||||
|
const handleOrderChanged = ({ orders }) => setState(pv => ({ ...pv, orders: [...orders], pageNumber: 1, reload: true }));
|
||||||
|
|
||||||
|
//При изменении количества отображаемых страниц
|
||||||
|
const handlePagesCountChanged = () => setState(pv => ({ ...pv, pageNumber: pv.pageNumber + 1, reload: true }));
|
||||||
|
|
||||||
|
//При нажатии на "Заказ"
|
||||||
|
const handleProdOrderClick = planSp => {
|
||||||
|
setState(pv => ({ ...pv, showIncomeFromDeps: planSp }));
|
||||||
|
};
|
||||||
|
|
||||||
|
//При нажатии на "Обозначение"
|
||||||
|
const handleMatresCodeClick = planSp => {
|
||||||
|
setState(pv => ({ ...pv, showFcroutelst: planSp }));
|
||||||
|
};
|
||||||
|
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<Fab variant="extended" sx={STYLES.PLANS_BUTTON} onClick={() => setState(pv => ({ ...pv, showPlanList: !pv.showPlanList }))}>
|
||||||
|
Планы
|
||||||
|
</Fab>
|
||||||
|
<Drawer
|
||||||
|
anchor={"left"}
|
||||||
|
open={state.showPlanList}
|
||||||
|
onClose={() => setState(pv => ({ ...pv, showPlanList: false }))}
|
||||||
|
sx={STYLES.PLANS_DRAWER}
|
||||||
|
>
|
||||||
|
<PlanList
|
||||||
|
plans={filteredPlanCtgls}
|
||||||
|
selectedPlan={state.selectedPlan}
|
||||||
|
filter={filter}
|
||||||
|
setFilter={setFilter}
|
||||||
|
onClick={handlePlanClick}
|
||||||
|
/>
|
||||||
|
</Drawer>
|
||||||
|
<div style={STYLES.CONTAINER}>
|
||||||
|
{state.dataLoaded ? (
|
||||||
|
<Typography variant={"h6"}>
|
||||||
|
{`Производственный план цеха №${state.selectedPlan.SSUBDIV} на ${state.selectedPlan.SPERIOD}`}
|
||||||
|
</Typography>
|
||||||
|
) : null}
|
||||||
|
<Grid container spacing={1}>
|
||||||
|
<Grid item xs={12}>
|
||||||
|
<Box pt={1} display="flex" justifyContent="center" alignItems="center">
|
||||||
|
{state.dataLoaded ? (
|
||||||
|
<P8PDataGrid
|
||||||
|
{...P8P_DATA_GRID_CONFIG_PROPS}
|
||||||
|
containerComponentProps={{ elevation: 6, style: STYLES.DATA_GRID_CONTAINER }}
|
||||||
|
fixedHeader={state.fixedHeader}
|
||||||
|
fixedColumns={state.fixedColumns}
|
||||||
|
columnsDef={state.columnsDef}
|
||||||
|
rows={state.rows}
|
||||||
|
size={P8P_DATA_GRID_SIZE.MEDIUM}
|
||||||
|
morePages={state.morePages}
|
||||||
|
reloading={state.reload}
|
||||||
|
onOrderChanged={handleOrderChanged}
|
||||||
|
onPagesCountChanged={handlePagesCountChanged}
|
||||||
|
dataCellRender={prms => dataCellRender({ ...prms, handleProdOrderClick, handleMatresCodeClick })}
|
||||||
|
groupCellRender={groupCellRender}
|
||||||
|
/>
|
||||||
|
) : !state.selectedPlan.NRN ? (
|
||||||
|
<InlineMsgInfo okBtn={false} text={"Укажите план для отображения его спецификаций"} />
|
||||||
|
) : null}
|
||||||
|
</Box>
|
||||||
|
</Grid>
|
||||||
|
</Grid>
|
||||||
|
{state.showIncomeFromDeps ? (
|
||||||
|
<IncomFromDepsDataGridDialog task={state.showIncomeFromDeps} onClose={() => handleProdOrderClick(null)} />
|
||||||
|
) : null}
|
||||||
|
{state.showFcroutelst ? (
|
||||||
|
<CostRouteListsDataGridDialog task={state.showFcroutelst} onClose={() => handleMatresCodeClick(null)} />
|
||||||
|
) : null}
|
||||||
|
</div>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { MechRecDeptCostProdPlans };
|
@ -144,12 +144,12 @@ const Projects = () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
//Отображение детализации точки графика затрат
|
//Отображение детализации точки графика затрат
|
||||||
const showCostNotesChartDetail = async ({ unitCode, year, month }) => {
|
const showCostNotesChartDetail = async ({ year, month }) => {
|
||||||
const data = await executeStored({
|
const data = await executeStored({
|
||||||
stored: "PKG_P8PANELS_PROJECTS.CHART_FCCOSTNOTES_SELECT_COST",
|
stored: "PKG_P8PANELS_PROJECTS.CHART_FCCOSTNOTES_SELECT_COST",
|
||||||
args: { NYEAR: year, NMONTH: month }
|
args: { NYEAR: year, NMONTH: month }
|
||||||
});
|
});
|
||||||
if (data.NIDENT) pOnlineShowUnit({ unitCode, inputParameters: [{ name: "in_SelectList_Ident", value: data.NIDENT }] });
|
if (data.NIDENT) pOnlineShowUnit({ unitCode: "CostNotes", inputParameters: [{ name: "in_IDENT", value: data.NIDENT }] });
|
||||||
else showMsgErr(TEXTS.NO_DATA_FOUND);
|
else showMsgErr(TEXTS.NO_DATA_FOUND);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -178,7 +178,7 @@ const Projects = () => {
|
|||||||
pageNumber: 1,
|
pageNumber: 1,
|
||||||
reload: true
|
reload: true
|
||||||
}));
|
}));
|
||||||
if (item.SUNITCODE && item.NYEAR && item.NMONTH) showCostNotesChartDetail({ unitCode: item.SUNITCODE, year: item.NYEAR, month: item.NMONTH });
|
if (item.SUNITCODE == "CostNotes" && item.NYEAR && item.NMONTH) showCostNotesChartDetail({ year: item.NYEAR, month: item.NMONTH });
|
||||||
};
|
};
|
||||||
|
|
||||||
//При необходимости обновить данные
|
//При необходимости обновить данные
|
||||||
|
@ -71,7 +71,7 @@ const StageArts = ({ stage, filters }) => {
|
|||||||
stored: "PKG_P8PANELS_PROJECTS.STAGE_ARTS_SELECT_COST_FACT",
|
stored: "PKG_P8PANELS_PROJECTS.STAGE_ARTS_SELECT_COST_FACT",
|
||||||
args: { NSTAGE: stage, NFPDARTCL: sender.NRN }
|
args: { NSTAGE: stage, NFPDARTCL: sender.NRN }
|
||||||
});
|
});
|
||||||
if (data.NIDENT) pOnlineShowUnit({ unitCode: "CostNotes", inputParameters: [{ name: "in_SelectList_Ident", value: data.NIDENT }] });
|
if (data.NIDENT) pOnlineShowUnit({ unitCode: "CostNotes", inputParameters: [{ name: "in_IDENT", value: data.NIDENT }] });
|
||||||
else showMsgErr(TEXTS.NO_DATA_FOUND);
|
else showMsgErr(TEXTS.NO_DATA_FOUND);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -92,7 +92,7 @@ const StageContracts = ({ stage, filters }) => {
|
|||||||
stored: "PKG_P8PANELS_PROJECTS.STAGE_CONTRACTS_SELECT_PAY_IN",
|
stored: "PKG_P8PANELS_PROJECTS.STAGE_CONTRACTS_SELECT_PAY_IN",
|
||||||
args: { NPROJECTSTAGEPF: sender.NRN }
|
args: { NPROJECTSTAGEPF: sender.NRN }
|
||||||
});
|
});
|
||||||
if (data.NIDENT) pOnlineShowUnit({ unitCode: "PaymentAccountsIn", inputParameters: [{ name: "in_SelectList_Ident", value: data.NIDENT }] });
|
if (data.NIDENT) pOnlineShowUnit({ unitCode: "PaymentAccountsIn", inputParameters: [{ name: "in_IDENT", value: data.NIDENT }] });
|
||||||
else showMsgErr(TEXTS.NO_DATA_FOUND);
|
else showMsgErr(TEXTS.NO_DATA_FOUND);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -112,7 +112,7 @@ const StageContracts = ({ stage, filters }) => {
|
|||||||
stored: "PKG_P8PANELS_PROJECTS.STAGE_CONTRACTS_SELECT_ININV",
|
stored: "PKG_P8PANELS_PROJECTS.STAGE_CONTRACTS_SELECT_ININV",
|
||||||
args: { NPROJECTSTAGEPF: sender.NRN }
|
args: { NPROJECTSTAGEPF: sender.NRN }
|
||||||
});
|
});
|
||||||
if (data.NIDENT) pOnlineShowUnit({ unitCode: "IncomingInvoices", inputParameters: [{ name: "in_SelectList_Ident", value: data.NIDENT }] });
|
if (data.NIDENT) pOnlineShowUnit({ unitCode: "IncomingInvoices", inputParameters: [{ name: "in_IDENT", value: data.NIDENT }] });
|
||||||
else showMsgErr(TEXTS.NO_DATA_FOUND);
|
else showMsgErr(TEXTS.NO_DATA_FOUND);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -106,7 +106,7 @@ const Stages = ({ project, projectName, filters }) => {
|
|||||||
stored: "PKG_P8PANELS_PROJECTS.STAGES_SELECT_COST_FACT",
|
stored: "PKG_P8PANELS_PROJECTS.STAGES_SELECT_COST_FACT",
|
||||||
args: { NRN: sender.NRN }
|
args: { NRN: sender.NRN }
|
||||||
});
|
});
|
||||||
if (data.NIDENT) pOnlineShowUnit({ unitCode: "CostNotes", inputParameters: [{ name: "in_SelectList_Ident", value: data.NIDENT }] });
|
if (data.NIDENT) pOnlineShowUnit({ unitCode: "CostNotes", inputParameters: [{ name: "in_IDENT", value: data.NIDENT }] });
|
||||||
else showMsgErr(TEXTS.NO_DATA_FOUND);
|
else showMsgErr(TEXTS.NO_DATA_FOUND);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -116,8 +116,7 @@ const Stages = ({ project, projectName, filters }) => {
|
|||||||
stored: "PKG_P8PANELS_PROJECTS.STAGES_SELECT_SUMM_REALIZ",
|
stored: "PKG_P8PANELS_PROJECTS.STAGES_SELECT_SUMM_REALIZ",
|
||||||
args: { NRN: sender.NRN }
|
args: { NRN: sender.NRN }
|
||||||
});
|
});
|
||||||
if (data.NIDENT)
|
if (data.NIDENT) pOnlineShowUnit({ unitCode: "GoodsTransInvoicesToConsumers", inputParameters: [{ name: "in_IDENT", value: data.NIDENT }] });
|
||||||
pOnlineShowUnit({ unitCode: "GoodsTransInvoicesToConsumers", inputParameters: [{ name: "in_SelectList_Ident", value: data.NIDENT }] });
|
|
||||||
else showMsgErr(TEXTS.NO_DATA_FOUND);
|
else showMsgErr(TEXTS.NO_DATA_FOUND);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -18,6 +18,23 @@ import { formatDateRF } from "../../core/utils"; //Вспомогательны
|
|||||||
//Шаблон имени ячейки месяца
|
//Шаблон имени ячейки месяца
|
||||||
const MONTH_COLUMN_REG_EXP = /[0-9]{4}_[0-9]{1,2}/;
|
const MONTH_COLUMN_REG_EXP = /[0-9]{4}_[0-9]{1,2}/;
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
GROUP_CELL: { padding: "2px" },
|
||||||
|
GROUP_CELL_LINK: { textOverflow: "ellipsis", overflow: "hidden", whiteSpace: "pre", minWidth: "800px", maxWidth: "800px" },
|
||||||
|
MONTH_CELL: { padding: "2px", maxWidth: "30px", overflow: "visible", fontSize: "smaller", whiteSpace: "nowrap" },
|
||||||
|
MONTH_CELL_FILLED: state => ({ backgroundColor: state == 0 ? "lightyellow" : state == 1 ? "lightgreen" : "lightblue", cursor: "pointer" }),
|
||||||
|
JOB_CELL: {
|
||||||
|
padding: "2px",
|
||||||
|
paddingLeft: "10px",
|
||||||
|
maxWidth: "300px",
|
||||||
|
textOverflow: "ellipsis",
|
||||||
|
overflow: "hidden",
|
||||||
|
whiteSpace: "pre",
|
||||||
|
fontSize: "smaller"
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
//-----------
|
//-----------
|
||||||
//Тело модуля
|
//Тело модуля
|
||||||
//-----------
|
//-----------
|
||||||
@ -46,9 +63,16 @@ const formatStageItemValue = (state, text) => {
|
|||||||
|
|
||||||
//Генерация представления ячейки заголовка группы
|
//Генерация представления ячейки заголовка группы
|
||||||
export const groupCellRender = ({ group, pOnlineShowDocument }) => ({
|
export const groupCellRender = ({ group, pOnlineShowDocument }) => ({
|
||||||
cellStyle: { padding: "2px" },
|
cellStyle: STYLES.GROUP_CELL,
|
||||||
data: (
|
data: (
|
||||||
<Link component="button" variant="body2" align="left" onClick={() => pOnlineShowDocument({ unitCode: "Projects", document: group.name })}>
|
<Link
|
||||||
|
component="button"
|
||||||
|
variant="body2"
|
||||||
|
align="left"
|
||||||
|
sx={STYLES.GROUP_CELL_LINK}
|
||||||
|
title={group.caption}
|
||||||
|
onClick={() => pOnlineShowDocument({ unitCode: "Projects", document: group.name })}
|
||||||
|
>
|
||||||
{group.caption}
|
{group.caption}
|
||||||
</Link>
|
</Link>
|
||||||
)
|
)
|
||||||
@ -67,14 +91,14 @@ export const dataCellRender = ({ row, columnDef, pOnlineShowDocument }) => {
|
|||||||
let data = null;
|
let data = null;
|
||||||
if ((dF <= mF && dT >= mT) || (dF >= mF && dF <= mT) || (dT >= mF && dT <= mT)) {
|
if ((dF <= mF && dT >= mT) || (dF >= mF && dF <= mT) || (dT >= mF && dT <= mT)) {
|
||||||
if (year == dF.getFullYear() && month == dF.getMonth() + 1) data = formatStageItemValue(row.NSTATE, row.SRESP);
|
if (year == dF.getFullYear() && month == dF.getMonth() + 1) data = formatStageItemValue(row.NSTATE, row.SRESP);
|
||||||
cellStyle = { backgroundColor: row.NSTATE == 0 ? "lightyellow" : row.NSTATE == 1 ? "lightgreen" : "lightblue", cursor: "pointer" };
|
cellStyle = STYLES.MONTH_CELL_FILLED(row.NSTATE);
|
||||||
cellProps = {
|
cellProps = {
|
||||||
title: `${formatDateRF(dF)} - ${formatDateRF(dT)}`,
|
title: `${formatDateRF(dF)} - ${formatDateRF(dT)}`,
|
||||||
onClick: () => pOnlineShowDocument({ unitCode: "ProjectsStages", document: row.NRN })
|
onClick: () => pOnlineShowDocument({ unitCode: "ProjectsStages", document: row.NRN })
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
return {
|
return {
|
||||||
cellStyle: { padding: "2px", maxWidth: "30px", overflow: "visible", fontSize: "smaller", whiteSpace: "nowrap", ...cellStyle },
|
cellStyle: { ...STYLES.MONTH_CELL, ...cellStyle },
|
||||||
cellProps,
|
cellProps,
|
||||||
data
|
data
|
||||||
};
|
};
|
||||||
@ -83,15 +107,7 @@ export const dataCellRender = ({ row, columnDef, pOnlineShowDocument }) => {
|
|||||||
case "SJOB":
|
case "SJOB":
|
||||||
return {
|
return {
|
||||||
cellProps: { title: row[columnDef.name] },
|
cellProps: { title: row[columnDef.name] },
|
||||||
cellStyle: {
|
cellStyle: STYLES.JOB_CELL
|
||||||
padding: "2px",
|
|
||||||
paddingLeft: "10px",
|
|
||||||
maxWidth: "300px",
|
|
||||||
textOverflow: "ellipsis",
|
|
||||||
overflow: "hidden",
|
|
||||||
whiteSpace: "pre",
|
|
||||||
fontSize: "smaller"
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -15,6 +15,15 @@ import { ApplicationСtx } from "../../context/application"; //Контекст
|
|||||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||||
import { dataCellRender, groupCellRender } from "./layouts"; //Дополнительная разметка и вёрстка клиентских элементов
|
import { dataCellRender, groupCellRender } from "./layouts"; //Дополнительная разметка и вёрстка клиентских элементов
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
DATA_GRID_CONTAINER: { minWidth: "95vw", maxWidth: "95vw", minHeight: "87vh", maxHeight: "87vh" }
|
||||||
|
};
|
||||||
|
|
||||||
//-----------
|
//-----------
|
||||||
//Тело модуля
|
//Тело модуля
|
||||||
//-----------
|
//-----------
|
||||||
@ -27,7 +36,9 @@ const PrjGraph = () => {
|
|||||||
columnsDef: [],
|
columnsDef: [],
|
||||||
groups: [],
|
groups: [],
|
||||||
rows: [],
|
rows: [],
|
||||||
reload: true
|
reload: true,
|
||||||
|
fixedHeader: false,
|
||||||
|
fixedColumns: 0
|
||||||
});
|
});
|
||||||
|
|
||||||
//Подключение к контексту приложения
|
//Подключение к контексту приложения
|
||||||
@ -42,6 +53,8 @@ const PrjGraph = () => {
|
|||||||
const data = await executeStored({ stored: "PKG_P8PANELS_PROJECTS.GRAPH", args: {}, respArg: "COUT" });
|
const data = await executeStored({ stored: "PKG_P8PANELS_PROJECTS.GRAPH", args: {}, respArg: "COUT" });
|
||||||
setdataGrid(pv => ({
|
setdataGrid(pv => ({
|
||||||
...pv,
|
...pv,
|
||||||
|
fixedHeader: data.XDATA_GRID.fixedHeader,
|
||||||
|
fixedColumns: data.XDATA_GRID.fixedColumns,
|
||||||
columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,
|
columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,
|
||||||
rows: [...(data.XROWS || [])],
|
rows: [...(data.XROWS || [])],
|
||||||
groups: [...(data.XGROUPS || [])],
|
groups: [...(data.XGROUPS || [])],
|
||||||
@ -61,7 +74,7 @@ const PrjGraph = () => {
|
|||||||
<div>
|
<div>
|
||||||
<Grid container spacing={1}>
|
<Grid container spacing={1}>
|
||||||
<Grid item xs={12}>
|
<Grid item xs={12}>
|
||||||
<Box p={5}>
|
<Box pt={1} display="flex" justifyContent="center" alignItems="center">
|
||||||
{dataGrid.dataLoaded ? (
|
{dataGrid.dataLoaded ? (
|
||||||
<P8PDataGrid
|
<P8PDataGrid
|
||||||
{...P8P_DATA_GRID_CONFIG_PROPS}
|
{...P8P_DATA_GRID_CONFIG_PROPS}
|
||||||
@ -70,9 +83,14 @@ const PrjGraph = () => {
|
|||||||
rows={dataGrid.rows}
|
rows={dataGrid.rows}
|
||||||
size={P8P_DATA_GRID_SIZE.LARGE}
|
size={P8P_DATA_GRID_SIZE.LARGE}
|
||||||
reloading={dataGrid.reload}
|
reloading={dataGrid.reload}
|
||||||
|
fixedHeader={dataGrid.fixedHeader}
|
||||||
|
fixedColumns={dataGrid.fixedColumns}
|
||||||
dataCellRender={prms => dataCellRender({ ...prms, pOnlineShowDocument })}
|
dataCellRender={prms => dataCellRender({ ...prms, pOnlineShowDocument })}
|
||||||
groupCellRender={prms => groupCellRender({ ...prms, pOnlineShowDocument })}
|
groupCellRender={prms => groupCellRender({ ...prms, pOnlineShowDocument })}
|
||||||
containerComponentProps={{ elevation: 6, sx: { overflowX: "visible" } }}
|
containerComponentProps={{
|
||||||
|
elevation: 3,
|
||||||
|
sx: STYLES.DATA_GRID_CONTAINER
|
||||||
|
}}
|
||||||
/>
|
/>
|
||||||
) : null}
|
) : null}
|
||||||
</Box>
|
</Box>
|
||||||
|
@ -45,7 +45,7 @@ const LabFactRptDtl = ({ periodId, title, onHide }) => {
|
|||||||
const loadFactRptDtl = useCallback(async () => {
|
const loadFactRptDtl = useCallback(async () => {
|
||||||
if (factRptDtl.reload) {
|
if (factRptDtl.reload) {
|
||||||
const data = await executeStored({
|
const data = await executeStored({
|
||||||
stored: "PKG_P8PANELS_PROJECTS.JB_PERIODS_LIST_FACT_RPT",
|
stored: "PKG_P8PANELS_PROJECTS.JB_PERIODS_FACT_RPT_LIST",
|
||||||
args: {
|
args: {
|
||||||
NJB_PERIODS: periodId,
|
NJB_PERIODS: periodId,
|
||||||
CORDERS: { VALUE: object2Base64XML(factRptDtl.orders, { arrayNodeName: "orders" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
CORDERS: { VALUE: object2Base64XML(factRptDtl.orders, { arrayNodeName: "orders" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
||||||
|
@ -44,7 +44,7 @@ const LabPlanFOTDtl = ({ periodId, title, onHide }) => {
|
|||||||
const loadPlanFOTDtl = useCallback(async () => {
|
const loadPlanFOTDtl = useCallback(async () => {
|
||||||
if (planFOTDtl.reload) {
|
if (planFOTDtl.reload) {
|
||||||
const data = await executeStored({
|
const data = await executeStored({
|
||||||
stored: "PKG_P8PANELS_PROJECTS.JB_PERIODS_LIST_PLAN_FOT",
|
stored: "PKG_P8PANELS_PROJECTS.JB_PERIODS_PLAN_FOT_LIST",
|
||||||
args: {
|
args: {
|
||||||
NJB_PERIODS: periodId,
|
NJB_PERIODS: periodId,
|
||||||
CORDERS: { VALUE: object2Base64XML(planFOTDtl.orders, { arrayNodeName: "orders" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
CORDERS: { VALUE: object2Base64XML(planFOTDtl.orders, { arrayNodeName: "orders" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
||||||
|
@ -49,7 +49,7 @@ const LabPlanJobsDtl = ({ periodId, title, onHide, onProjectClick }) => {
|
|||||||
const loadPlanJobsDtl = useCallback(async () => {
|
const loadPlanJobsDtl = useCallback(async () => {
|
||||||
if (planJobsDtl.reload) {
|
if (planJobsDtl.reload) {
|
||||||
const data = await executeStored({
|
const data = await executeStored({
|
||||||
stored: "PKG_P8PANELS_PROJECTS.JB_PERIODS_LIST_PLAN_JOBS",
|
stored: "PKG_P8PANELS_PROJECTS.JB_PERIODS_PLAN_JOBS_LIST",
|
||||||
args: {
|
args: {
|
||||||
NJB_PERIODS: periodId,
|
NJB_PERIODS: periodId,
|
||||||
CORDERS: { VALUE: object2Base64XML(planJobsDtl.orders, { arrayNodeName: "orders" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
CORDERS: { VALUE: object2Base64XML(planJobsDtl.orders, { arrayNodeName: "orders" }), SDATA_TYPE: SERV_DATA_TYPE_CLOB },
|
||||||
|
@ -9,13 +9,34 @@
|
|||||||
|
|
||||||
import React, { useContext, useState, useCallback, useEffect } from "react"; //Классы React
|
import React, { useContext, useState, useCallback, useEffect } from "react"; //Классы React
|
||||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
import { Drawer, Fab, Box, Grid, List, ListItemButton, ListItemText, ListItemIcon, Icon, Typography } from "@mui/material"; //Интерфейсные элементы
|
import {
|
||||||
|
Drawer,
|
||||||
|
Fab,
|
||||||
|
Box,
|
||||||
|
Grid,
|
||||||
|
List,
|
||||||
|
ListItemButton,
|
||||||
|
ListItemText,
|
||||||
|
ListItemIcon,
|
||||||
|
Icon,
|
||||||
|
Typography,
|
||||||
|
Divider,
|
||||||
|
ListItem,
|
||||||
|
Button,
|
||||||
|
Dialog,
|
||||||
|
DialogContent,
|
||||||
|
DialogActions,
|
||||||
|
TextField,
|
||||||
|
DialogTitle
|
||||||
|
} from "@mui/material"; //Интерфейсные элементы
|
||||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||||
import { formatDateJSONDateOnly } from "../../core/utils"; //Вспомогательные функции
|
import { formatDateJSONDateOnly } from "../../core/utils"; //Вспомогательные функции
|
||||||
import { P8P_GANTT_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
import { P8P_GANTT_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||||
import { P8PGantt } from "../../components/p8p_gantt"; //Диаграмма Ганта
|
import { P8PGantt } from "../../components/p8p_gantt"; //Диаграмма Ганта
|
||||||
|
import { formatDateRF } from "../../core/utils"; //Вспомогательные функции
|
||||||
|
import { BUTTONS } from "../../../app.text"; //Текстовые ресурсы и константы
|
||||||
import { ResMon } from "./res_mon"; //Монитор ресурсов
|
import { ResMon } from "./res_mon"; //Монитор ресурсов
|
||||||
import { taskAttributeRenderer } from "./layouts"; //Дополнительная разметка и вёрстка клиентских элементов
|
import { taskAttributeRenderer } from "./layouts"; //Дополнительная разметка и вёрстка клиентских элементов
|
||||||
|
|
||||||
@ -31,7 +52,6 @@ const GANTT_WIDTH = "98vw";
|
|||||||
|
|
||||||
//Стили
|
//Стили
|
||||||
const STYLES = {
|
const STYLES = {
|
||||||
PROJECTS_LIST_SAVE_BUTTON: { backgroundColor: "orange" },
|
|
||||||
PROJECTS_LIST_ITEM_NOJOBS: { backgroundColor: "#ff000045" },
|
PROJECTS_LIST_ITEM_NOJOBS: { backgroundColor: "#ff000045" },
|
||||||
PROJECTS_LIST_ITEM_PRIMARY: { wordWrap: "break-word" },
|
PROJECTS_LIST_ITEM_PRIMARY: { wordWrap: "break-word" },
|
||||||
PROJECTS_LIST_ITEM_SECONDARY: { wordWrap: "break-word", fontSize: "0.5rem", textTransform: "uppercase" },
|
PROJECTS_LIST_ITEM_SECONDARY: { wordWrap: "break-word", fontSize: "0.5rem", textTransform: "uppercase" },
|
||||||
@ -50,6 +70,122 @@ const STYLES = {
|
|||||||
//Вспомогательные функции и компоненты
|
//Вспомогательные функции и компоненты
|
||||||
//------------------------------------
|
//------------------------------------
|
||||||
|
|
||||||
|
//Диалог параметров инициализации панели
|
||||||
|
const InitPrmsDialog = ({ dateBegin, dateFact, onOk, onCancel }) => {
|
||||||
|
//Собственное состояние - значения с-по
|
||||||
|
const [values, setValues] = useState({ dateBegin: formatDateJSONDateOnly(dateBegin), dateFact: formatDateJSONDateOnly(dateFact) });
|
||||||
|
|
||||||
|
//Отработка воода значения в фильтр
|
||||||
|
const handleValueTextFieldChanged = e => setValues(prev => ({ ...prev, [e.target.name]: e.target.value }));
|
||||||
|
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<Dialog
|
||||||
|
open={true}
|
||||||
|
aria-labelledby="init-dialog-title"
|
||||||
|
aria-describedby="init-dialog-description"
|
||||||
|
onClose={() => (onCancel ? onCancel() : null)}
|
||||||
|
>
|
||||||
|
<DialogTitle>Параметры инициализации</DialogTitle>
|
||||||
|
<DialogContent>
|
||||||
|
<TextField
|
||||||
|
style={{ padding: "10px" }}
|
||||||
|
name="dateBegin"
|
||||||
|
type="date"
|
||||||
|
value={values.dateBegin}
|
||||||
|
onChange={handleValueTextFieldChanged}
|
||||||
|
label="Начало (будет использован первый день месяца)"
|
||||||
|
variant="standard"
|
||||||
|
fullWidth
|
||||||
|
/>
|
||||||
|
<TextField
|
||||||
|
style={{ padding: "10px" }}
|
||||||
|
name="dateFact"
|
||||||
|
type="date"
|
||||||
|
value={values.dateFact}
|
||||||
|
onChange={handleValueTextFieldChanged}
|
||||||
|
label="Факт на (будет использован последний день месяца)"
|
||||||
|
variant="standard"
|
||||||
|
fullWidth
|
||||||
|
/>
|
||||||
|
</DialogContent>
|
||||||
|
<DialogActions>
|
||||||
|
<Button onClick={() => (onOk ? onOk({ dateBegin: new Date(values.dateBegin), dateFact: new Date(values.dateFact) }) : null)}>
|
||||||
|
{BUTTONS.OK}
|
||||||
|
</Button>
|
||||||
|
<Button onClick={() => (onCancel ? onCancel() : null)}>{BUTTONS.CANCEL}</Button>
|
||||||
|
</DialogActions>
|
||||||
|
</Dialog>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Диалог параметров инициализации панели
|
||||||
|
InitPrmsDialog.propTypes = {
|
||||||
|
dateBegin: PropTypes.instanceOf(Date).isRequired,
|
||||||
|
dateFact: PropTypes.instanceOf(Date).isRequired,
|
||||||
|
onOk: PropTypes.func,
|
||||||
|
onCancel: PropTypes.func
|
||||||
|
};
|
||||||
|
|
||||||
|
//Область параметров инициализации панели
|
||||||
|
const InitPrmsArea = ({ dateBegin, dateFact, durationMeasCode, labMeasCode, onClick }) => {
|
||||||
|
return (
|
||||||
|
<List>
|
||||||
|
<ListItem>
|
||||||
|
<ListItemText
|
||||||
|
secondary={
|
||||||
|
<>
|
||||||
|
<b>Начало: </b>
|
||||||
|
{formatDateRF(dateBegin)}
|
||||||
|
<br />
|
||||||
|
<b>Факт на: </b>
|
||||||
|
{formatDateRF(dateFact)}
|
||||||
|
<br />
|
||||||
|
<b>Длительность: </b>
|
||||||
|
{durationMeasCode}
|
||||||
|
<br />
|
||||||
|
<b>Трудоёмкость: </b>
|
||||||
|
{labMeasCode}
|
||||||
|
</>
|
||||||
|
}
|
||||||
|
/>
|
||||||
|
</ListItem>
|
||||||
|
<ListItem>
|
||||||
|
<Button fullWidth variant="contained" startIcon={<Icon>refresh</Icon>} onClick={onClick ? onClick : null}>
|
||||||
|
Переформировать...
|
||||||
|
</Button>
|
||||||
|
</ListItem>
|
||||||
|
</List>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Область параметров инициализации панели
|
||||||
|
InitPrmsArea.propTypes = {
|
||||||
|
dateBegin: PropTypes.instanceOf(Date),
|
||||||
|
dateFact: PropTypes.instanceOf(Date),
|
||||||
|
durationMeasCode: PropTypes.string,
|
||||||
|
labMeasCode: PropTypes.string,
|
||||||
|
onClick: PropTypes.func
|
||||||
|
};
|
||||||
|
|
||||||
|
//Область сохранения изменений
|
||||||
|
const SaveChangesArea = ({ onClick }) => {
|
||||||
|
return (
|
||||||
|
<List>
|
||||||
|
<ListItem>
|
||||||
|
<Button fullWidth color="warning" variant="contained" startIcon={<Icon>save</Icon>} onClick={onClick}>
|
||||||
|
Сохранить
|
||||||
|
</Button>
|
||||||
|
</ListItem>
|
||||||
|
</List>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Область сохранения изменений
|
||||||
|
SaveChangesArea.propTypes = {
|
||||||
|
onClick: PropTypes.func
|
||||||
|
};
|
||||||
|
|
||||||
//Список проектов
|
//Список проектов
|
||||||
const ProjectsList = ({ projects = [], selectedProject, onClick } = {}) => {
|
const ProjectsList = ({ projects = [], selectedProject, onClick } = {}) => {
|
||||||
//Подключение к контексту сообщений
|
//Подключение к контексту сообщений
|
||||||
@ -123,7 +259,9 @@ const PrjJobs = () => {
|
|||||||
dateBegin: null,
|
dateBegin: null,
|
||||||
dateFact: null,
|
dateFact: null,
|
||||||
durationMeas: null,
|
durationMeas: null,
|
||||||
|
durationMeasCode: null,
|
||||||
labMeas: null,
|
labMeas: null,
|
||||||
|
labMeasCode: null,
|
||||||
resourceStatus: null,
|
resourceStatus: null,
|
||||||
ident: null,
|
ident: null,
|
||||||
projects: [],
|
projects: [],
|
||||||
@ -132,7 +270,8 @@ const PrjJobs = () => {
|
|||||||
selectedProject: null,
|
selectedProject: null,
|
||||||
selectedProjectDocRn: null,
|
selectedProjectDocRn: null,
|
||||||
selectedProjectGanttDef: {},
|
selectedProjectGanttDef: {},
|
||||||
selectedProjectTasks: []
|
selectedProjectTasks: [],
|
||||||
|
showInitDialog: false
|
||||||
});
|
});
|
||||||
|
|
||||||
//Подключение к контексту приложения
|
//Подключение к контексту приложения
|
||||||
@ -182,12 +321,12 @@ const PrjJobs = () => {
|
|||||||
|
|
||||||
//Изменение работы в графике
|
//Изменение работы в графике
|
||||||
const modifyJob = useCallback(
|
const modifyJob = useCallback(
|
||||||
async (job, dateFrom, dateTo, dateBegin, dateFact, durationMeas) => {
|
async (job, dateFrom, dateTo) => {
|
||||||
let data = null;
|
let data = null;
|
||||||
try {
|
try {
|
||||||
data = await executeStored({
|
data = await executeStored({
|
||||||
stored: "PKG_P8PANELS_PROJECTS.JB_JOBS_MODIFY_PERIOD",
|
stored: "PKG_P8PANELS_PROJECTS.JB_JOBS_MODIFY_PERIOD",
|
||||||
args: { NJB_JOBS: job, DDATE_FROM: dateFrom, DDATE_TO: dateTo, DBEGIN: dateBegin, DFACT: dateFact, NDURATION_MEAS: durationMeas }
|
args: { NJB_JOBS: job, DDATE_FROM: dateFrom, DDATE_TO: dateTo }
|
||||||
});
|
});
|
||||||
if (data?.NRESOURCE_STATUS != -1) {
|
if (data?.NRESOURCE_STATUS != -1) {
|
||||||
setState(pv => ({ ...pv, resourceStatus: data.NRESOURCE_STATUS, needSave: true }));
|
setState(pv => ({ ...pv, resourceStatus: data.NRESOURCE_STATUS, needSave: true }));
|
||||||
@ -216,25 +355,26 @@ const PrjJobs = () => {
|
|||||||
const data = await executeStored({
|
const data = await executeStored({
|
||||||
stored: "PKG_P8PANELS_PROJECTS.JB_INIT",
|
stored: "PKG_P8PANELS_PROJECTS.JB_INIT",
|
||||||
args: {
|
args: {
|
||||||
DBEGIN: state.dateBegin ? new Date(state.dateBegin) : null,
|
DBEGIN: state.dateBegin ? state.dateBegin : null,
|
||||||
DFACT: state.dateFact ? new Date(state.dateFact) : null,
|
DFACT: state.dateFact ? state.dateFact : null,
|
||||||
NDURATION_MEAS: state.durationMeas,
|
|
||||||
SLAB_MEAS: state.labMeas,
|
|
||||||
NIDENT: state.ident
|
NIDENT: state.ident
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
setState(pv => ({
|
setState(pv => ({
|
||||||
...pv,
|
...pv,
|
||||||
init: true,
|
init: true,
|
||||||
dateBegin: data.DBEGIN,
|
reInit: false,
|
||||||
dateFact: data.DFACT,
|
dateBegin: new Date(data.DBEGIN),
|
||||||
|
dateFact: new Date(data.DFACT),
|
||||||
durationMeas: data.NDURATION_MEAS,
|
durationMeas: data.NDURATION_MEAS,
|
||||||
labMeas: data.SLAB_MEAS,
|
durationMeasCode: data.SDURATION_MEAS,
|
||||||
|
labMeas: data.NLAB_MEAS,
|
||||||
|
labMeasCode: data.SLAB_MEAS,
|
||||||
resourceStatus: data.NRESOURCE_STATUS,
|
resourceStatus: data.NRESOURCE_STATUS,
|
||||||
ident: data.NIDENT
|
ident: data.NIDENT
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
}, [state.init, state.dateBegin, state.dateFact, state.durationMeas, state.labMeas, state.ident, executeStored]);
|
}, [state.init, state.dateBegin, state.dateFact, state.ident, executeStored]);
|
||||||
|
|
||||||
//Грузим список проектов при смене идентификатора процесса
|
//Грузим список проектов при смене идентификатора процесса
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
@ -246,11 +386,10 @@ const PrjJobs = () => {
|
|||||||
if (state.selectedProject) loadProjectJobs(false);
|
if (state.selectedProject) loadProjectJobs(false);
|
||||||
}, [state.selectedProject, loadProjectJobs]);
|
}, [state.selectedProject, loadProjectJobs]);
|
||||||
|
|
||||||
//При подключении компонента к странице
|
//При изменении флага инициализации
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
initJobs();
|
initJobs();
|
||||||
// eslint-disable-next-line react-hooks/exhaustive-deps
|
}, [state.init, initJobs]);
|
||||||
}, []);
|
|
||||||
|
|
||||||
//Выбор проекта
|
//Выбор проекта
|
||||||
const selectPoject = (project, projectDocRn) => {
|
const selectPoject = (project, projectDocRn) => {
|
||||||
@ -289,9 +428,19 @@ const PrjJobs = () => {
|
|||||||
|
|
||||||
//Обработка измненения сроков задачи в диаграмме Гантта
|
//Обработка измненения сроков задачи в диаграмме Гантта
|
||||||
const handleTaskDatesChange = ({ task, start, end, isMain }) => {
|
const handleTaskDatesChange = ({ task, start, end, isMain }) => {
|
||||||
if (isMain) modifyJob(task.rn, new Date(start), new Date(end), new Date(state.dateBegin), new Date(state.dateFact), state.durationMeas);
|
if (isMain) modifyJob(task.rn, new Date(start), new Date(end));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//Отработка нажатия на отображения диалога параметров инициализации панели
|
||||||
|
const handleShowInitDialogClick = () => setState(pv => ({ ...pv, showInitDialog: true }));
|
||||||
|
|
||||||
|
//Отработка нажатия на "ОК" в диалоге параметров инициализации панели
|
||||||
|
const handleOKInitDialogClick = values =>
|
||||||
|
setState(pv => ({ ...pv, dateBegin: values.dateBegin, dateFact: values.dateFact, showInitDialog: false, init: false }));
|
||||||
|
|
||||||
|
//Отработка нажатия на "Отмена" в диалоге параметров инициализации панели
|
||||||
|
const handleCancelInitDialogClick = () => setState(pv => ({ ...pv, showInitDialog: false }));
|
||||||
|
|
||||||
//Обработка нажатия на сохранение данных в проект
|
//Обработка нажатия на сохранение данных в проект
|
||||||
const handleSaveToProjectsClick = () => saveProjects();
|
const handleSaveToProjectsClick = () => saveProjects();
|
||||||
|
|
||||||
@ -304,6 +453,14 @@ const PrjJobs = () => {
|
|||||||
//Генерация содержимого
|
//Генерация содержимого
|
||||||
return (
|
return (
|
||||||
<Box p={2}>
|
<Box p={2}>
|
||||||
|
{state.showInitDialog ? (
|
||||||
|
<InitPrmsDialog
|
||||||
|
dateBegin={state.dateBegin}
|
||||||
|
dateFact={state.dateFact}
|
||||||
|
onOk={handleOKInitDialogClick}
|
||||||
|
onCancel={handleCancelInitDialogClick}
|
||||||
|
/>
|
||||||
|
) : null}
|
||||||
<Fab variant="extended" sx={STYLES.PROJECTS_BUTTON} onClick={() => setState(pv => ({ ...pv, showProjectsList: !pv.showProjectsList }))}>
|
<Fab variant="extended" sx={STYLES.PROJECTS_BUTTON} onClick={() => setState(pv => ({ ...pv, showProjectsList: !pv.showProjectsList }))}>
|
||||||
Проекты
|
Проекты
|
||||||
{state.needSave ? (
|
{state.needSave ? (
|
||||||
@ -321,15 +478,19 @@ const PrjJobs = () => {
|
|||||||
>
|
>
|
||||||
{state.projectsLoaded ? (
|
{state.projectsLoaded ? (
|
||||||
<>
|
<>
|
||||||
|
<InitPrmsArea
|
||||||
|
dateBegin={state.dateBegin}
|
||||||
|
dateFact={state.dateFact}
|
||||||
|
durationMeasCode={state.durationMeasCode}
|
||||||
|
labMeasCode={state.labMeasCode}
|
||||||
|
onClick={handleShowInitDialogClick}
|
||||||
|
/>
|
||||||
|
<Divider />
|
||||||
{state.needSave ? (
|
{state.needSave ? (
|
||||||
<List>
|
<>
|
||||||
<ListItemButton sx={STYLES.PROJECTS_LIST_SAVE_BUTTON} onClick={handleSaveToProjectsClick}>
|
<SaveChangesArea onClick={handleSaveToProjectsClick} />
|
||||||
<ListItemIcon>
|
<Divider />
|
||||||
<Icon>save</Icon>
|
</>
|
||||||
</ListItemIcon>
|
|
||||||
<ListItemText primary="Сохранить" secondary="Перенсти изменения в проекты" />
|
|
||||||
</ListItemButton>
|
|
||||||
</List>
|
|
||||||
) : null}
|
) : null}
|
||||||
<ProjectsList projects={state.projects} selectedProject={state.selectedProject} onClick={handleProjectClick} />
|
<ProjectsList projects={state.projects} selectedProject={state.selectedProject} onClick={handleProjectClick} />
|
||||||
</>
|
</>
|
||||||
|
155
app/panels/rrp_conf_editor/custom_dialog.js
Normal file
@ -0,0 +1,155 @@
|
|||||||
|
/*
|
||||||
|
Кастомный Dialog
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React from "react"; //Классы React
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
import { Dialog, DialogTitle, IconButton, Icon, DialogContent, Typography, DialogActions, Button } from "@mui/material"; //Интерфейсные компоненты
|
||||||
|
import { CustomFormControl } from "./custom_form_control"; //Кастомные строки ввода
|
||||||
|
import { Statuses, STYLES } from "./layouts"; //Статусы и стили диалогового окна
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
const CustomDialog = props => {
|
||||||
|
const {
|
||||||
|
formOpen,
|
||||||
|
closeForm,
|
||||||
|
curStatus,
|
||||||
|
curCode,
|
||||||
|
curName,
|
||||||
|
curColCode,
|
||||||
|
curRowCode,
|
||||||
|
btnOkClick,
|
||||||
|
codeOnChange,
|
||||||
|
nameOnChange,
|
||||||
|
dictColumnClick,
|
||||||
|
dictRowClick
|
||||||
|
} = props;
|
||||||
|
|
||||||
|
//Формирование заголовка диалогового окна
|
||||||
|
const formTitle = () => {
|
||||||
|
switch (curStatus) {
|
||||||
|
case Statuses.CREATE:
|
||||||
|
return "Добавление раздела";
|
||||||
|
case Statuses.EDIT:
|
||||||
|
return "Исправление раздела";
|
||||||
|
case Statuses.DELETE:
|
||||||
|
return "Удаление раздела";
|
||||||
|
case Statuses.COLUMNROW_CREATE:
|
||||||
|
return "Добавление показателя раздела";
|
||||||
|
case Statuses.COLUMNROW_EDIT:
|
||||||
|
return "Исправление показателя раздела";
|
||||||
|
case Statuses.COLUMNROW_DELETE:
|
||||||
|
return "Удаление показателя раздела";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
//Отрисовка диалогового окна
|
||||||
|
const renderSwitch = () => {
|
||||||
|
var btnText = "";
|
||||||
|
switch (curStatus) {
|
||||||
|
case Statuses.CREATE:
|
||||||
|
case Statuses.COLUMNROW_CREATE:
|
||||||
|
btnText = "Добавить";
|
||||||
|
break;
|
||||||
|
case Statuses.EDIT:
|
||||||
|
case Statuses.COLUMNROW_EDIT:
|
||||||
|
btnText = "Исправить";
|
||||||
|
break;
|
||||||
|
case Statuses.DELETE:
|
||||||
|
case Statuses.COLUMNROW_DELETE:
|
||||||
|
btnText = "Удалить";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return (
|
||||||
|
<Button variant="contained" onClick={btnOkClick}>
|
||||||
|
{btnText}
|
||||||
|
</Button>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
return (
|
||||||
|
<Dialog open={formOpen} onClose={closeForm}>
|
||||||
|
<DialogTitle>{formTitle()}</DialogTitle>
|
||||||
|
<IconButton
|
||||||
|
aria-label="close"
|
||||||
|
onClick={closeForm}
|
||||||
|
sx={{
|
||||||
|
position: "absolute",
|
||||||
|
right: 8,
|
||||||
|
top: 8,
|
||||||
|
color: theme => theme.palette.grey[500]
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<Icon>close</Icon>
|
||||||
|
</IconButton>
|
||||||
|
<DialogContent>
|
||||||
|
{curStatus == Statuses.DELETE || curStatus == Statuses.COLUMNROW_DELETE ? (
|
||||||
|
curStatus == Statuses.DELETE ? (
|
||||||
|
<Typography>Вы хотите удалить раздел {curName}?</Typography>
|
||||||
|
) : (
|
||||||
|
<Typography>Вы хотите удалить показатель раздела {curName}?</Typography>
|
||||||
|
)
|
||||||
|
) : (
|
||||||
|
<div>
|
||||||
|
{curStatus != Statuses.COLUMNROW_EDIT ? (
|
||||||
|
<CustomFormControl elementCode="code" elementValue={curCode} labelText="Мнемокод" changeFunc={codeOnChange} />
|
||||||
|
) : null}
|
||||||
|
<CustomFormControl elementCode="name" elementValue={curName} labelText="Наименование" changeFunc={nameOnChange} />
|
||||||
|
{curStatus == Statuses.COLUMNROW_CREATE ? (
|
||||||
|
<div>
|
||||||
|
<CustomFormControl
|
||||||
|
elementCode="column"
|
||||||
|
elementValue={curColCode}
|
||||||
|
labelText="Графа"
|
||||||
|
changeFunc={dictColumnClick}
|
||||||
|
withDictionary={true}
|
||||||
|
/>
|
||||||
|
<CustomFormControl
|
||||||
|
elementCode="row"
|
||||||
|
elementValue={curRowCode}
|
||||||
|
labelText="Строка"
|
||||||
|
changeFunc={dictRowClick}
|
||||||
|
withDictionary={true}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
) : null}
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
</DialogContent>
|
||||||
|
<DialogActions sx={STYLES.PADDING_DIALOG_BUTTONS_RIGHT}>
|
||||||
|
{renderSwitch()}
|
||||||
|
<Button variant="contained" onClick={closeForm}>
|
||||||
|
Отмена
|
||||||
|
</Button>
|
||||||
|
</DialogActions>
|
||||||
|
</Dialog>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
CustomDialog.propTypes = {
|
||||||
|
formOpen: PropTypes.bool.isRequired,
|
||||||
|
closeForm: PropTypes.func.isRequired,
|
||||||
|
curStatus: PropTypes.oneOf(Object.values(Statuses).filter(x => typeof x === "number")),
|
||||||
|
curCode: PropTypes.string,
|
||||||
|
curName: PropTypes.string,
|
||||||
|
curColCode: PropTypes.string,
|
||||||
|
curRowCode: PropTypes.string,
|
||||||
|
btnOkClick: PropTypes.func.isRequired,
|
||||||
|
codeOnChange: PropTypes.func.isRequired,
|
||||||
|
nameOnChange: PropTypes.func.isRequired,
|
||||||
|
dictColumnClick: PropTypes.func.isRequired,
|
||||||
|
dictRowClick: PropTypes.func.isRequired
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { CustomDialog };
|
58
app/panels/rrp_conf_editor/custom_form_control.js
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
/*
|
||||||
|
Кастомный FormControl
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React from "react"; //Классы React
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
import { Box, FormControl, InputLabel, OutlinedInput, InputAdornment, IconButton, Icon } from "@mui/material"; //Интерфейсные компоненты
|
||||||
|
import { STYLES } from "./layouts"; //Стили диалогового окна
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
const CustomFormControl = props => {
|
||||||
|
const { elementCode, elementValue, labelText, changeFunc, withDictionary, ...other } = props;
|
||||||
|
|
||||||
|
return (
|
||||||
|
<Box sx={{ p: 1 }}>
|
||||||
|
<FormControl sx={STYLES.DIALOG_WINDOW_WIDTH} {...other}>
|
||||||
|
<InputLabel htmlFor={`${elementCode}-outlined`}>{labelText}</InputLabel>
|
||||||
|
<OutlinedInput
|
||||||
|
id={`${elementCode}-outlined`}
|
||||||
|
value={elementValue ? elementValue : ""}
|
||||||
|
onChange={!withDictionary ? e => changeFunc(e.target.value) : null}
|
||||||
|
aria-describedby={`${elementCode}-outlined-helper-text`}
|
||||||
|
label={labelText}
|
||||||
|
endAdornment={
|
||||||
|
withDictionary ? (
|
||||||
|
<InputAdornment position="end">
|
||||||
|
<IconButton aria-label={`${elementCode} select`} onClick={changeFunc} edge="end">
|
||||||
|
<Icon>list</Icon>
|
||||||
|
</IconButton>
|
||||||
|
</InputAdornment>
|
||||||
|
) : null
|
||||||
|
}
|
||||||
|
/>
|
||||||
|
</FormControl>
|
||||||
|
</Box>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
CustomFormControl.propTypes = {
|
||||||
|
elementCode: PropTypes.string.isRequired,
|
||||||
|
elementValue: PropTypes.string,
|
||||||
|
labelText: PropTypes.string.isRequired,
|
||||||
|
changeFunc: PropTypes.func.isRequired,
|
||||||
|
withDictionary: PropTypes.bool
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { CustomFormControl };
|
41
app/panels/rrp_conf_editor/custom_tab_panel.js
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
/*
|
||||||
|
Кастомный Tab
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React from "react"; //Классы React
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
import { Box, Typography } from "@mui/material"; //Интерфейсные компоненты
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
const CustomTabPanel = props => {
|
||||||
|
const { children, value, index, ...other } = props;
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div role="tabpanel" hidden={value !== index} id={`simple-tabpanel-${index}`} aria-labelledby={`simple-tab-${index}`} {...other}>
|
||||||
|
{value === index && (
|
||||||
|
<Box sx={{ p: 3 }}>
|
||||||
|
<Typography>{children}</Typography>
|
||||||
|
</Box>
|
||||||
|
)}
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
CustomTabPanel.propTypes = {
|
||||||
|
children: PropTypes.node,
|
||||||
|
index: PropTypes.number.isRequired,
|
||||||
|
value: PropTypes.number.isRequired
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { CustomTabPanel };
|
16
app/panels/rrp_conf_editor/index.js
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - Редактор настройки регламентированного отчёта
|
||||||
|
Панель мониторинга: Точка входа
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import { RrpConfEditor } from "./rrp_conf_editor"; //Корневая панель выполнения работ
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export const RootClass = RrpConfEditor;
|
46
app/panels/rrp_conf_editor/layouts.js
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 -
|
||||||
|
Дополнительная разметка и вёрстка клиентских элементов
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React from "react"; //Классы React
|
||||||
|
import { Stack, IconButton, Icon, Typography } from "@mui/material"; //Интерфейсные компоненты
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
export const STYLES = {
|
||||||
|
DIALOG_WINDOW_WIDTH: { width: 400 },
|
||||||
|
PADDING_DIALOG_BUTTONS_RIGHT: { paddingRight: "32px" }
|
||||||
|
};
|
||||||
|
|
||||||
|
//Статусы диалогового окна
|
||||||
|
export const Statuses = { CREATE: 0, EDIT: 1, DELETE: 2, COLUMNROW_CREATE: 3, COLUMNROW_EDIT: 4, COLUMNROW_DELETE: 5 };
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Генерация представления ячейки c данными
|
||||||
|
export const dataCellRender = ({ row, columnDef }, editCR, deleteCR) => {
|
||||||
|
let data = row[columnDef.name];
|
||||||
|
columnDef.name != "SROW_NAME" && data != undefined && columnDef.visible == true
|
||||||
|
? (data = (
|
||||||
|
<Stack direction="row">
|
||||||
|
<Typography width="-webkit-fill-available">{row[columnDef.name]}</Typography>
|
||||||
|
<IconButton justifyContent="flex-end" onClick={() => editCR(row["NRN_" + columnDef.name.substring(5)], row[columnDef.name])}>
|
||||||
|
<Icon>edit</Icon>
|
||||||
|
</IconButton>
|
||||||
|
<IconButton justifyContent="flex-end" onClick={() => deleteCR(row["NRN_" + columnDef.name.substring(5)], row[columnDef.name])}>
|
||||||
|
<Icon>delete</Icon>
|
||||||
|
</IconButton>
|
||||||
|
</Stack>
|
||||||
|
))
|
||||||
|
: null;
|
||||||
|
return { data };
|
||||||
|
};
|
481
app/panels/rrp_conf_editor/rrp_conf_editor.js
Normal file
@ -0,0 +1,481 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Редактор настройки регламентированного отчёта
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React, { useCallback, useContext, useState, useEffect } from "react"; //Классы React
|
||||||
|
import { Box, Tab, Tabs, IconButton, Icon, Stack, Button } from "@mui/material"; //Интерфейсные компоненты
|
||||||
|
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||||
|
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||||
|
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||||
|
import { NavigationCtx } from "../../context/navigation"; //Контекст навигации
|
||||||
|
import { CustomTabPanel } from "./custom_tab_panel"; //Кастомный Tab
|
||||||
|
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||||
|
import { Statuses, dataCellRender } from "./layouts"; //Дополнительная разметка и вёрстка клиентских элементов
|
||||||
|
import { CustomDialog } from "./custom_dialog"; //Кастомное диалоговое окно
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Редактор настройки регламентированного отчёта
|
||||||
|
const RrpConfEditor = () => {
|
||||||
|
const dataGrid = {
|
||||||
|
rn: 0,
|
||||||
|
code: "",
|
||||||
|
name: "",
|
||||||
|
dataLoaded: false,
|
||||||
|
columnsDef: [],
|
||||||
|
groups: [],
|
||||||
|
rows: [],
|
||||||
|
reload: false
|
||||||
|
};
|
||||||
|
|
||||||
|
//Собственное состояние
|
||||||
|
const [rrpDoc, setRrpDoc] = useState({
|
||||||
|
docLoaded: false,
|
||||||
|
sections: [],
|
||||||
|
reload: true
|
||||||
|
});
|
||||||
|
|
||||||
|
//Состояние массива данных разделов
|
||||||
|
const [dataGrids] = useState([]);
|
||||||
|
|
||||||
|
//Состояние раздела
|
||||||
|
const [tabValue, setTabValue] = useState("");
|
||||||
|
|
||||||
|
//Состояние открытия диалогового окна
|
||||||
|
const [formOpen, setForm] = useState(false);
|
||||||
|
|
||||||
|
//Состояние диалогового окна
|
||||||
|
const [formData, setFormData] = useState({
|
||||||
|
filled: false,
|
||||||
|
rn: "",
|
||||||
|
prn: "",
|
||||||
|
sctnName: "",
|
||||||
|
sctnCode: "",
|
||||||
|
status: "",
|
||||||
|
code: "",
|
||||||
|
name: "",
|
||||||
|
colName: "",
|
||||||
|
colCode: "",
|
||||||
|
colVCode: "",
|
||||||
|
colVRn: 0,
|
||||||
|
rowName: "",
|
||||||
|
rowCode: "",
|
||||||
|
rowVCode: "",
|
||||||
|
rowVRn: 0
|
||||||
|
});
|
||||||
|
|
||||||
|
//Открытие диалогового окна
|
||||||
|
const openForm = () => {
|
||||||
|
setForm(true);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Закрытие диалогового окна
|
||||||
|
const closeForm = () => {
|
||||||
|
setForm(false);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Очистка диалогового окна
|
||||||
|
const clearFormData = () => {
|
||||||
|
setFormData({
|
||||||
|
rn: "",
|
||||||
|
code: "",
|
||||||
|
name: ""
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
//Подключение к контексту взаимодействия с сервером
|
||||||
|
const { executeStored } = useContext(BackEndСtx);
|
||||||
|
|
||||||
|
//Подключение к контексту приложения
|
||||||
|
const { pOnlineShowDictionary } = useContext(ApplicationСtx);
|
||||||
|
|
||||||
|
//Подключение к контексту навигации
|
||||||
|
const { getNavigationSearch } = useContext(NavigationCtx);
|
||||||
|
|
||||||
|
//Переключение раздела
|
||||||
|
const handleChange = (event, newValue) => {
|
||||||
|
setTabValue(newValue);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Отработка нажатия на кнопку добавления секции
|
||||||
|
const addSectionClick = () => {
|
||||||
|
setFormData({ status: Statuses.CREATE, prn: Number(getNavigationSearch().NRN) });
|
||||||
|
openForm();
|
||||||
|
};
|
||||||
|
|
||||||
|
//Отработка нажатия на кнопку исправления секции
|
||||||
|
const editSectionClick = (rn, code, name) => {
|
||||||
|
setFormData({ rn: rn, code: code, name: name, status: Statuses.EDIT });
|
||||||
|
openForm();
|
||||||
|
};
|
||||||
|
|
||||||
|
//Отработка нажатия на кнопку удаления секции
|
||||||
|
const deleteSectionClick = (rn, code, name) => {
|
||||||
|
setFormData({ rn: rn, code: code, name: name, status: Statuses.DELETE });
|
||||||
|
openForm();
|
||||||
|
};
|
||||||
|
|
||||||
|
//Отработка нажатия на кнопку добавления показателя раздела
|
||||||
|
const addColumnRowClick = (prn, sctnCode, sctnName) => {
|
||||||
|
setFormData({ status: Statuses.COLUMNROW_CREATE, prn: prn, sctnCode: sctnCode, sctnName: sctnName });
|
||||||
|
openForm();
|
||||||
|
};
|
||||||
|
|
||||||
|
//Отработка нажатия на кнопку исправления показателя раздела
|
||||||
|
const editColumnRowClick = (rn, name) => {
|
||||||
|
setFormData({ status: Statuses.COLUMNROW_EDIT, rn: rn, name: name });
|
||||||
|
openForm();
|
||||||
|
};
|
||||||
|
|
||||||
|
//Отработка нажатия на кнопку удаления показателя раздела
|
||||||
|
const deleteColumnRowClick = (rn, name) => {
|
||||||
|
setFormData({ status: Statuses.COLUMNROW_DELETE, rn: rn, name: name });
|
||||||
|
openForm();
|
||||||
|
};
|
||||||
|
|
||||||
|
//Отработка нажатия на словарь граф
|
||||||
|
const dictColumnClick = () => {
|
||||||
|
pOnlineShowDictionary({
|
||||||
|
unitCode: "RRPColumn",
|
||||||
|
callBack: res =>
|
||||||
|
res.success === true
|
||||||
|
? setFormData(pv => ({
|
||||||
|
...pv,
|
||||||
|
colCode: res.outParameters.out_CODE,
|
||||||
|
colVCode: res.outParameters.out_RRPVERSION_CODE,
|
||||||
|
colVRn: res.outParameters.out_RRPVERSION
|
||||||
|
}))
|
||||||
|
: null
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
//Отработка нажатия на словарь строк
|
||||||
|
const dictRowClick = () => {
|
||||||
|
pOnlineShowDictionary({
|
||||||
|
unitCode: "RRPRow",
|
||||||
|
callBack: res =>
|
||||||
|
res.success === true
|
||||||
|
? setFormData(pv => ({
|
||||||
|
...pv,
|
||||||
|
rowCode: res.outParameters.out_CODE,
|
||||||
|
rowVCode: res.outParameters.out_RRPVERSION_CODE,
|
||||||
|
rowVRn: res.outParameters.out_RRPVERSION
|
||||||
|
}))
|
||||||
|
: null
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
//Нажатие на кнопку подтверждения создания/исправления/удаления на форме
|
||||||
|
const formBtnOkClick = () => {
|
||||||
|
let formStateProps = {};
|
||||||
|
if (formData.status === (Statuses.CREATE || Statuses.EDIT || Statuses.COLUMNROW_CREATE))
|
||||||
|
formStateProps = { ...formStateProps, code: document.querySelector("#code-outlined").value };
|
||||||
|
if (formData.status === (Statuses.CREATE || Statuses.EDIT || Statuses.COLUMNROW_CREATE || Statuses.COLUMNROW_EDIT))
|
||||||
|
formStateProps = { ...formStateProps, name: document.querySelector("#name-outlined").value };
|
||||||
|
setFormData(pv => ({
|
||||||
|
...pv,
|
||||||
|
...formStateProps,
|
||||||
|
filled: true
|
||||||
|
}));
|
||||||
|
closeForm();
|
||||||
|
};
|
||||||
|
|
||||||
|
//Формирование разделов
|
||||||
|
const a11yProps = index => {
|
||||||
|
return {
|
||||||
|
id: `simple-tab-${index}`,
|
||||||
|
"aria-controls": `simple-tabpanel-${index}`
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
//Отработка изменений в разделе или показателе раздела
|
||||||
|
const changeSections = useCallback(async () => {
|
||||||
|
if (formData.filled) {
|
||||||
|
switch (formData.status) {
|
||||||
|
case Statuses.CREATE:
|
||||||
|
insertSections();
|
||||||
|
clearFormData();
|
||||||
|
break;
|
||||||
|
case Statuses.EDIT:
|
||||||
|
updateSections();
|
||||||
|
clearFormData();
|
||||||
|
break;
|
||||||
|
case Statuses.DELETE:
|
||||||
|
deleteSections();
|
||||||
|
clearFormData();
|
||||||
|
break;
|
||||||
|
case Statuses.COLUMNROW_CREATE:
|
||||||
|
addColumnRow();
|
||||||
|
clearFormData();
|
||||||
|
break;
|
||||||
|
case Statuses.COLUMNROW_EDIT:
|
||||||
|
editColumnRow();
|
||||||
|
clearFormData();
|
||||||
|
break;
|
||||||
|
case Statuses.COLUMNROW_DELETE:
|
||||||
|
deleteColumnRow();
|
||||||
|
clearFormData();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
setRrpDoc(pv => ({ ...pv, reload: true }));
|
||||||
|
}
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, [formData]);
|
||||||
|
|
||||||
|
//Добавление раздела
|
||||||
|
const insertSections = useCallback(async () => {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_RRPCONFED.INSERT_RRPCONF_SECTIONS",
|
||||||
|
args: {
|
||||||
|
NPRN: formData.prn,
|
||||||
|
SCODE: formData.code,
|
||||||
|
SNAME: formData.name
|
||||||
|
}
|
||||||
|
});
|
||||||
|
setFormData(pv => ({
|
||||||
|
...pv,
|
||||||
|
rn: Number(data.NRN)
|
||||||
|
}));
|
||||||
|
}, [formData.prn, formData.code, formData.name, executeStored]);
|
||||||
|
|
||||||
|
//Исправление раздела
|
||||||
|
const updateSections = useCallback(async () => {
|
||||||
|
await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_RRPCONFED.UPDATE_RRPCONF_SECTIONS",
|
||||||
|
args: {
|
||||||
|
NRN: formData.rn,
|
||||||
|
SCODE: formData.code,
|
||||||
|
SNAME: formData.name
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}, [formData.name, formData.code, formData.rn, executeStored]);
|
||||||
|
|
||||||
|
//Удаление раздела
|
||||||
|
const deleteSections = useCallback(async () => {
|
||||||
|
await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_RRPCONFED.DELETE_RRPCONF_SECTIONS",
|
||||||
|
args: {
|
||||||
|
NRN: formData.rn
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}, [formData.rn, executeStored]);
|
||||||
|
|
||||||
|
//Добавление показателя раздела
|
||||||
|
const addColumnRow = useCallback(async () => {
|
||||||
|
await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_RRPCONFED.INSERT_RRPCONF_COLUMNROW",
|
||||||
|
args: {
|
||||||
|
NPRN: formData.prn,
|
||||||
|
SCODE: formData.code,
|
||||||
|
SNAME: formData.name,
|
||||||
|
SCOLCODE: formData.colCode,
|
||||||
|
SCOLVER: formData.colVCode,
|
||||||
|
SROWCODE: formData.rowCode,
|
||||||
|
SROWVER: formData.rowVCode
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}, [executeStored, formData.code, formData.colVCode, formData.colCode, formData.name, formData.prn, formData.rowCode, formData.rowVCode]);
|
||||||
|
|
||||||
|
//Исправление показателя раздела
|
||||||
|
const editColumnRow = useCallback(async () => {
|
||||||
|
await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_RRPCONFED.UPDATE_RRPCONF_COLUMNROW",
|
||||||
|
args: { NRN: formData.rn, SNAME: formData.name }
|
||||||
|
});
|
||||||
|
}, [executeStored, formData.name, formData.rn]);
|
||||||
|
|
||||||
|
//Удаление показателя раздела
|
||||||
|
const deleteColumnRow = useCallback(async () => {
|
||||||
|
await executeStored({ stored: "PKG_P8PANELS_RRPCONFED.DELETE_RRPCONF_COLUMNROW", args: { NRN: formData.rn } });
|
||||||
|
}, [executeStored, formData.rn]);
|
||||||
|
|
||||||
|
//Получение мнемокода и наименования показателя раздела
|
||||||
|
const getSctnMrkCodeName = useCallback(async () => {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_RRPCONFED.GET_RRPCONFSCTNMRK_CODE_NAME",
|
||||||
|
args: { SSCTNCODE: formData.sctnCode, SROWCODE: formData.rowCode, SCOLUMNCODE: formData.colCode }
|
||||||
|
});
|
||||||
|
setFormData(pv => ({
|
||||||
|
...pv,
|
||||||
|
code: data.SCODE,
|
||||||
|
name: data.SNAME
|
||||||
|
}));
|
||||||
|
}, [executeStored, formData.colCode, formData.rowCode, formData.sctnCode]);
|
||||||
|
|
||||||
|
//Загрузка данных разделов регламентированного отчёта
|
||||||
|
const loadData = useCallback(async () => {
|
||||||
|
if (rrpDoc.reload) {
|
||||||
|
//Переменная номера раздела с фокусом
|
||||||
|
let tabFocus = 0;
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "PKG_P8PANELS_RRPCONFED.GET_RRPCONF_SECTIONS",
|
||||||
|
args: {
|
||||||
|
NRN_RRPCONF: Number(getNavigationSearch().NRN)
|
||||||
|
},
|
||||||
|
respArg: "COUT"
|
||||||
|
});
|
||||||
|
//Флаг первой загрузки данных
|
||||||
|
let firstLoad = dataGrids.length == 0 ? true : false;
|
||||||
|
//Копирование массива уже загруженных разделов
|
||||||
|
let cloneDGs = dataGrids.slice();
|
||||||
|
//Массив из нескольких разделов и из одного
|
||||||
|
const sections = data.SECTIONS.length ? data.SECTIONS : [data.SECTIONS];
|
||||||
|
//Заполнение очередного раздела по шаблону
|
||||||
|
sections.map(s => {
|
||||||
|
let dg = {};
|
||||||
|
Object.assign(dg, dataGrid, {
|
||||||
|
rn: s.NRN,
|
||||||
|
code: s.SCODE,
|
||||||
|
name: s.SNAME,
|
||||||
|
dataLoaded: true,
|
||||||
|
columnsDef: [...(s.XDATA.XCOLUMNS_DEF || [])],
|
||||||
|
groups: [...(s.XDATA.XGROUPS || [])],
|
||||||
|
rows: [...(s.XDATA.XROWS || [])],
|
||||||
|
reload: false
|
||||||
|
});
|
||||||
|
//Ищем загружен ли уже раздел с таким же ид.
|
||||||
|
const dgItem = dataGrids.find(x => x.rn === dg.rn);
|
||||||
|
//Его индекс, если нет соответствия, то -1
|
||||||
|
let index = dataGrids.indexOf(dgItem);
|
||||||
|
//Если было соответствие
|
||||||
|
if (dgItem) {
|
||||||
|
//Если в нём не найдено изменений
|
||||||
|
if (JSON.stringify(dgItem, null, 4) === JSON.stringify(dg, null, 4)) {
|
||||||
|
//То из копированного массива его удаляем
|
||||||
|
cloneDGs.splice(cloneDGs.indexOf(cloneDGs.find(x => x.rn === dgItem.rn)), 1);
|
||||||
|
} else {
|
||||||
|
//Иначе обновляем раздел в массиве
|
||||||
|
dataGrids[index] = dg;
|
||||||
|
//Удаляем из копированного массива
|
||||||
|
cloneDGs.splice(cloneDGs.indexOf(cloneDGs.find(x => x.rn === dg.rn)), 1);
|
||||||
|
//Устанавливаем фокус на обновлённый раздел
|
||||||
|
tabFocus = index;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
//Если раздел новый, то добавляем его в массив данных
|
||||||
|
dataGrids.push(dg);
|
||||||
|
//И устанавливаем на него фокус, если флаг первой загрузки = false
|
||||||
|
tabFocus = !firstLoad ? dataGrids.length - 1 : 0;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
//Обходим разделы, что остались в копированном массиве (на удаление)
|
||||||
|
cloneDGs.map(s => {
|
||||||
|
let curIndex = dataGrids.indexOf(dataGrids.find(x => x.rn === s.rn));
|
||||||
|
//Устаревший раздел удаляем из массива данных
|
||||||
|
dataGrids.splice(curIndex, 1);
|
||||||
|
//Фокус на предшествующий раздел
|
||||||
|
tabFocus = curIndex - 1;
|
||||||
|
});
|
||||||
|
setRrpDoc(pv => ({
|
||||||
|
...pv,
|
||||||
|
docLoaded: true,
|
||||||
|
reload: false,
|
||||||
|
sections: dataGrids
|
||||||
|
}));
|
||||||
|
setTabValue(tabFocus);
|
||||||
|
}
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, [rrpDoc.reload, rrpDoc.docLoaded, dataGrid.reload, dataGrid.docLoaded, executeStored]);
|
||||||
|
|
||||||
|
//При необходимости обновить данные таблицы
|
||||||
|
useEffect(() => {
|
||||||
|
loadData();
|
||||||
|
}, [rrpDoc.reload, dataGrid.reload, loadData]);
|
||||||
|
|
||||||
|
//Обновление при изменении разделов
|
||||||
|
useEffect(() => {
|
||||||
|
changeSections();
|
||||||
|
}, [changeSections]);
|
||||||
|
|
||||||
|
//Получение наименования и мнемокода показателя раздела при заполнении необходимых полей
|
||||||
|
useEffect(() => {
|
||||||
|
formData.status == Statuses.COLUMNROW_CREATE && formData.sctnName && formData.sctnCode && formData.colCode && formData.rowCode
|
||||||
|
? getSctnMrkCodeName()
|
||||||
|
: null;
|
||||||
|
}, [formData.colCode, formData.rowCode, formData.sctnCode, formData.sctnName, formData.status, getSctnMrkCodeName]);
|
||||||
|
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<Box sx={{ width: "100%" }}>
|
||||||
|
{formOpen ? (
|
||||||
|
<CustomDialog
|
||||||
|
formOpen={formOpen}
|
||||||
|
closeForm={closeForm}
|
||||||
|
curStatus={formData.status}
|
||||||
|
curCode={formData.code}
|
||||||
|
curName={formData.name}
|
||||||
|
curColCode={formData.colCode}
|
||||||
|
curRowCode={formData.rowCode}
|
||||||
|
btnOkClick={formBtnOkClick}
|
||||||
|
codeOnChange={v => setFormData(pv => ({ ...pv, code: v }))}
|
||||||
|
nameOnChange={v => setFormData(pv => ({ ...pv, name: v }))}
|
||||||
|
dictColumnClick={dictColumnClick}
|
||||||
|
dictRowClick={dictRowClick}
|
||||||
|
/>
|
||||||
|
) : null}
|
||||||
|
{rrpDoc.docLoaded ? (
|
||||||
|
<Box sx={{ borderBottom: 1, borderColor: "divider" }}>
|
||||||
|
<Stack direction="row">
|
||||||
|
<Tabs value={tabValue} onChange={handleChange} aria-label="section tab">
|
||||||
|
{rrpDoc.sections.map((s, i) => {
|
||||||
|
return (
|
||||||
|
<Tab
|
||||||
|
key={s.rn}
|
||||||
|
{...a11yProps(i)}
|
||||||
|
label={
|
||||||
|
<Stack direction="row" textAlign="center">
|
||||||
|
{s.name}
|
||||||
|
<IconButton onClick={() => editSectionClick(s.rn, s.code, s.name)}>
|
||||||
|
<Icon>edit</Icon>
|
||||||
|
</IconButton>
|
||||||
|
<IconButton onClick={() => deleteSectionClick(s.rn, s.code, s.name)}>
|
||||||
|
<Icon>delete</Icon>
|
||||||
|
</IconButton>
|
||||||
|
</Stack>
|
||||||
|
}
|
||||||
|
wrapped
|
||||||
|
/>
|
||||||
|
);
|
||||||
|
})}
|
||||||
|
</Tabs>
|
||||||
|
<IconButton onClick={addSectionClick}>
|
||||||
|
<Icon>add</Icon>
|
||||||
|
</IconButton>
|
||||||
|
</Stack>
|
||||||
|
{rrpDoc.sections.map((s, i) => {
|
||||||
|
return (
|
||||||
|
<CustomTabPanel key={s.rn} value={tabValue} index={i}>
|
||||||
|
<Button variant="contained" onClick={() => addColumnRowClick(s.rn, s.code, s.name)}>
|
||||||
|
+ Добавить
|
||||||
|
</Button>
|
||||||
|
{s.dataLoaded ? (
|
||||||
|
<P8PDataGrid
|
||||||
|
{...P8P_DATA_GRID_CONFIG_PROPS}
|
||||||
|
columnsDef={s.columnsDef}
|
||||||
|
groups={s.groups}
|
||||||
|
rows={s.rows}
|
||||||
|
size={P8P_DATA_GRID_SIZE.LARGE}
|
||||||
|
reloading={s.reload}
|
||||||
|
dataCellRender={prms => dataCellRender({ ...prms }, editColumnRowClick, deleteColumnRowClick)}
|
||||||
|
/>
|
||||||
|
) : null}
|
||||||
|
</CustomTabPanel>
|
||||||
|
);
|
||||||
|
})}
|
||||||
|
</Box>
|
||||||
|
) : null}
|
||||||
|
</Box>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { RrpConfEditor };
|
@ -9,11 +9,12 @@
|
|||||||
|
|
||||||
import React, { useState, useContext, useCallback, useEffect } from "react"; //Классы React
|
import React, { useState, useContext, useCallback, useEffect } from "react"; //Классы React
|
||||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
import { Typography, Grid, Stack, Icon, Box } from "@mui/material"; //Интерфейсные элементы
|
import { Typography, Grid, Stack, Icon, Box, Button } from "@mui/material"; //Интерфейсные элементы
|
||||||
import { object2Base64XML } from "../../core/utils"; //Вспомогательные процедуры и функции
|
import { object2Base64XML } from "../../core/utils"; //Вспомогательные процедуры и функции
|
||||||
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||||
|
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||||
|
|
||||||
//---------
|
//---------
|
||||||
//Константы
|
//Константы
|
||||||
@ -25,7 +26,8 @@ const DATA_GRID_PAGE_SIZE = 5;
|
|||||||
//Стили
|
//Стили
|
||||||
const STYLES = {
|
const STYLES = {
|
||||||
CONTAINER: { textAlign: "center", paddingTop: "20px" },
|
CONTAINER: { textAlign: "center", paddingTop: "20px" },
|
||||||
TITLE: { paddingBottom: "15px" }
|
TITLE: { paddingBottom: "15px" },
|
||||||
|
DATA_GRID_CONTAINER: { maxWidth: 700, maxHeight: 500, minHeight: 500 }
|
||||||
};
|
};
|
||||||
|
|
||||||
//---------------------------------------------
|
//---------------------------------------------
|
||||||
@ -93,12 +95,17 @@ const DataGrid = ({ title }) => {
|
|||||||
rows: [],
|
rows: [],
|
||||||
reload: true,
|
reload: true,
|
||||||
pageNumber: 1,
|
pageNumber: 1,
|
||||||
morePages: true
|
morePages: true,
|
||||||
|
fixedHeader: false,
|
||||||
|
fixedColumns: 0
|
||||||
});
|
});
|
||||||
|
|
||||||
//Подключение к контексту взаимодействия с сервером
|
//Подключение к контексту взаимодействия с сервером
|
||||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||||
|
|
||||||
|
//Подключение к контексту приложения
|
||||||
|
const { pOnlineShowDocument } = useContext(ApplicationСtx);
|
||||||
|
|
||||||
//Загрузка данных таблицы с сервера
|
//Загрузка данных таблицы с сервера
|
||||||
const loadData = useCallback(async () => {
|
const loadData = useCallback(async () => {
|
||||||
if (dataGrid.reload) {
|
if (dataGrid.reload) {
|
||||||
@ -115,6 +122,8 @@ const DataGrid = ({ title }) => {
|
|||||||
});
|
});
|
||||||
setdataGrid(pv => ({
|
setdataGrid(pv => ({
|
||||||
...pv,
|
...pv,
|
||||||
|
fixedHeader: data.XDATA_GRID.fixedHeader,
|
||||||
|
fixedColumns: data.XDATA_GRID.fixedColumns,
|
||||||
columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,
|
columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,
|
||||||
rows: pv.pageNumber == 1 ? [...(data.XROWS || [])] : [...pv.rows, ...(data.XROWS || [])],
|
rows: pv.pageNumber == 1 ? [...(data.XROWS || [])] : [...pv.rows, ...(data.XROWS || [])],
|
||||||
groups: data.XGROUPS
|
groups: data.XGROUPS
|
||||||
@ -138,6 +147,9 @@ const DataGrid = ({ title }) => {
|
|||||||
//При изменении количества отображаемых страниц
|
//При изменении количества отображаемых страниц
|
||||||
const handlePagesCountChanged = () => setdataGrid(pv => ({ ...pv, pageNumber: pv.pageNumber + 1, reload: true }));
|
const handlePagesCountChanged = () => setdataGrid(pv => ({ ...pv, pageNumber: pv.pageNumber + 1, reload: true }));
|
||||||
|
|
||||||
|
//При нажатии на копку контрагента
|
||||||
|
const handleAgnButtonClicked = agnCode => pOnlineShowDocument({ unitCode: "AGNLIST", document: agnCode, inRnParameter: "in_AGNABBR" });
|
||||||
|
|
||||||
//При необходимости обновить данные таблицы
|
//При необходимости обновить данные таблицы
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
loadData();
|
loadData();
|
||||||
@ -151,14 +163,17 @@ const DataGrid = ({ title }) => {
|
|||||||
</Typography>
|
</Typography>
|
||||||
<Grid container spacing={1} pt={5}>
|
<Grid container spacing={1} pt={5}>
|
||||||
<Grid item xs={12}>
|
<Grid item xs={12}>
|
||||||
<Box p={5}>
|
<Box p={5} display="flex" justifyContent="center" alignItems="center">
|
||||||
{dataGrid.dataLoaded ? (
|
{dataGrid.dataLoaded ? (
|
||||||
<P8PDataGrid
|
<P8PDataGrid
|
||||||
{...P8P_DATA_GRID_CONFIG_PROPS}
|
{...P8P_DATA_GRID_CONFIG_PROPS}
|
||||||
|
containerComponentProps={{ elevation: 6, style: STYLES.DATA_GRID_CONTAINER }}
|
||||||
columnsDef={dataGrid.columnsDef}
|
columnsDef={dataGrid.columnsDef}
|
||||||
groups={dataGrid.groups}
|
groups={dataGrid.groups}
|
||||||
rows={dataGrid.rows}
|
rows={dataGrid.rows}
|
||||||
size={P8P_DATA_GRID_SIZE.LARGE}
|
size={P8P_DATA_GRID_SIZE.LARGE}
|
||||||
|
fixedHeader={dataGrid.fixedHeader}
|
||||||
|
fixedColumns={dataGrid.fixedColumns}
|
||||||
filtersInitial={dataGrid.filters}
|
filtersInitial={dataGrid.filters}
|
||||||
morePages={dataGrid.morePages}
|
morePages={dataGrid.morePages}
|
||||||
reloading={dataGrid.reload}
|
reloading={dataGrid.reload}
|
||||||
@ -169,6 +184,10 @@ const DataGrid = ({ title }) => {
|
|||||||
onOrderChanged={handleOrderChanged}
|
onOrderChanged={handleOrderChanged}
|
||||||
onFilterChanged={handleFilterChanged}
|
onFilterChanged={handleFilterChanged}
|
||||||
onPagesCountChanged={handlePagesCountChanged}
|
onPagesCountChanged={handlePagesCountChanged}
|
||||||
|
expandable={true}
|
||||||
|
rowExpandRender={({ row }) => (
|
||||||
|
<Button onClick={() => handleAgnButtonClicked(row.SAGNABBR)}>Показать в разделе</Button>
|
||||||
|
)}
|
||||||
/>
|
/>
|
||||||
) : null}
|
) : null}
|
||||||
</Box>
|
</Box>
|
||||||
|
@ -17,6 +17,7 @@ import { Loader } from "./loader"; //Пример: Индикатор проце
|
|||||||
import { DataGrid } from "./data_grid"; //Пример: Таблица данных "P8PDataGrid"
|
import { DataGrid } from "./data_grid"; //Пример: Таблица данных "P8PDataGrid"
|
||||||
import { Chart } from "./chart"; //Пример: Графики "P8PChart"
|
import { Chart } from "./chart"; //Пример: Графики "P8PChart"
|
||||||
import { Gantt } from "./gantt"; //Пример: Диаграмма Ганта "P8PGantt"
|
import { Gantt } from "./gantt"; //Пример: Диаграмма Ганта "P8PGantt"
|
||||||
|
import { Svg } from "./svg"; //Пример: Интерактивные изображения "P8PSVG"
|
||||||
|
|
||||||
//---------
|
//---------
|
||||||
//Константы
|
//Константы
|
||||||
@ -30,7 +31,8 @@ const MODES = {
|
|||||||
LOADER: { name: "LOADER", caption: "Индикатор процесса", component: Loader },
|
LOADER: { name: "LOADER", caption: "Индикатор процесса", component: Loader },
|
||||||
DATAGRID: { name: "DATAGRID", caption: 'Таблица данных "P8PDataGrid"', component: DataGrid },
|
DATAGRID: { name: "DATAGRID", caption: 'Таблица данных "P8PDataGrid"', component: DataGrid },
|
||||||
CHART: { name: "CHART", caption: 'Графики "P8PChart"', component: Chart },
|
CHART: { name: "CHART", caption: 'Графики "P8PChart"', component: Chart },
|
||||||
GANTT: { name: "GANTT", caption: 'Диаграмма Ганта "P8PGantt"', component: Gantt }
|
GANTT: { name: "GANTT", caption: 'Диаграмма Ганта "P8PGantt"', component: Gantt },
|
||||||
|
SVG: { name: "SVG", caption: 'Интерактивные изображения "P8PSVG"', component: Svg }
|
||||||
};
|
};
|
||||||
|
|
||||||
//Стили
|
//Стили
|
||||||
|
124
app/panels/samples/svg.js
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - Примеры для разработчиков
|
||||||
|
Пример: Интерактивные изображения "P8PSVG"
|
||||||
|
*/
|
||||||
|
|
||||||
|
//---------------------
|
||||||
|
//Подключение библиотек
|
||||||
|
//---------------------
|
||||||
|
|
||||||
|
import React, { useState, useEffect } from "react"; //Классы React
|
||||||
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
|
import { Typography, Grid, FormControl, FormLabel, RadioGroup, FormControlLabel, Radio } from "@mui/material"; //Интерфейсные элементы
|
||||||
|
import { P8PSVG } from "../../components/p8p_svg"; //Интерактивные изображения
|
||||||
|
|
||||||
|
//---------
|
||||||
|
//Константы
|
||||||
|
//---------
|
||||||
|
|
||||||
|
//Адрес тестового изображения
|
||||||
|
const SAMPLE_URL = "img/sample.svg";
|
||||||
|
|
||||||
|
//Стили
|
||||||
|
const STYLES = {
|
||||||
|
CONTAINER: { textAlign: "center", paddingTop: "20px" },
|
||||||
|
TITLE: { paddingBottom: "15px" },
|
||||||
|
FORM: { justifyContent: "center", alignItems: "center" },
|
||||||
|
SVG: { height: "30vw", display: "flex", justifyContent: "center" }
|
||||||
|
};
|
||||||
|
|
||||||
|
//-----------
|
||||||
|
//Тело модуля
|
||||||
|
//-----------
|
||||||
|
|
||||||
|
//Пример: Интерактивные изображения "P8PSVG"
|
||||||
|
const Svg = ({ title }) => {
|
||||||
|
//Собственное состояние - SVG-изображение
|
||||||
|
const [svg, setSVG] = useState({
|
||||||
|
loaded: false,
|
||||||
|
data: null,
|
||||||
|
mode: "items1",
|
||||||
|
items1: [
|
||||||
|
{ id: "1", backgroundColor: "red", desc: "Цифра на флюзеляже", title: "Цифра на флюзеляже" },
|
||||||
|
{ id: "2", backgroundColor: "magenta", desc: "Ребро флюзеляжа", title: "Ребро флюзеляжа" },
|
||||||
|
{ id: "3", backgroundColor: "yellow", desc: "Люк", title: "Люк" }
|
||||||
|
],
|
||||||
|
items2: [
|
||||||
|
{ id: "4", backgroundColor: "green", desc: "Хвост", title: "Хвост" },
|
||||||
|
{ id: "5", backgroundColor: "blue", desc: "Хвостовой руль", title: "Хвостовой руль" },
|
||||||
|
{ id: "6", backgroundColor: "aquamarine", desc: "Ребро жесткости хвоста", title: "Ребро жесткости хвоста" }
|
||||||
|
],
|
||||||
|
items3: [
|
||||||
|
{ id: "7", backgroundColor: "blueviolet", desc: "Крыло левое", title: "Крыло левое" },
|
||||||
|
{ id: "8", backgroundColor: "orange", desc: "Двигатель левый", title: "Двигатель левый" },
|
||||||
|
{ id: "9", backgroundColor: "springgreen", desc: "Крыло правое", title: "Крыло правое" }
|
||||||
|
],
|
||||||
|
selectedItemDesc: ""
|
||||||
|
});
|
||||||
|
|
||||||
|
//Загрузка изображения
|
||||||
|
const loadSVG = async () => {
|
||||||
|
const resp = await fetch(SAMPLE_URL);
|
||||||
|
const data = await resp.text();
|
||||||
|
setSVG(pv => ({ ...pv, loaded: true, data }));
|
||||||
|
};
|
||||||
|
|
||||||
|
//Отработка нажатия на изображение
|
||||||
|
const handleSVGClick = () => {
|
||||||
|
setSVG(pv => ({ ...pv, selectedItemDesc: "Выбрано изображение целиком" }));
|
||||||
|
};
|
||||||
|
|
||||||
|
//Отработка нажатия на элемент изображения
|
||||||
|
const handleSVGItemClick = ({ item }) => {
|
||||||
|
setSVG(pv => ({ ...pv, selectedItemDesc: item?.desc ? `Выбран элемент: ${item.desc}` : "Для выбранного элемента не задано описание" }));
|
||||||
|
};
|
||||||
|
|
||||||
|
//При подключении к странице
|
||||||
|
useEffect(() => {
|
||||||
|
loadSVG();
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
//Генерация содержимого
|
||||||
|
return (
|
||||||
|
<div style={STYLES.CONTAINER}>
|
||||||
|
<Typography sx={STYLES.TITLE} variant={"h6"}>
|
||||||
|
{title}
|
||||||
|
</Typography>
|
||||||
|
<FormControl sx={STYLES.FORM}>
|
||||||
|
<FormLabel>Группа элементов</FormLabel>
|
||||||
|
<RadioGroup row value={svg.mode} onChange={e => setSVG(pv => ({ ...pv, mode: e.target.value, selectedItemDesc: "" }))}>
|
||||||
|
<FormControlLabel value="items1" control={<Radio />} label="Первая" />
|
||||||
|
<FormControlLabel value="items2" control={<Radio />} label="Вторая" />
|
||||||
|
<FormControlLabel value="items3" control={<Radio />} label="Третья" />
|
||||||
|
</RadioGroup>
|
||||||
|
<FormLabel>{svg.selectedItemDesc ? svg.selectedItemDesc : "Нажмите на элемент изображения для получения его описания"}</FormLabel>
|
||||||
|
</FormControl>
|
||||||
|
<Grid container spacing={0} pt={5} direction="column" alignItems="center">
|
||||||
|
<Grid item xs={12}>
|
||||||
|
{svg.loaded ? (
|
||||||
|
<P8PSVG
|
||||||
|
data={svg.data}
|
||||||
|
items={svg[svg.mode]}
|
||||||
|
onClick={handleSVGClick}
|
||||||
|
onItemClick={handleSVGItemClick}
|
||||||
|
canvasStyle={STYLES.SVG}
|
||||||
|
fillOpacity={"0.4"}
|
||||||
|
/>
|
||||||
|
) : null}
|
||||||
|
</Grid>
|
||||||
|
</Grid>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Контроль свойств - Пример: Интерактивные изображения "P8PSVG"
|
||||||
|
Svg.propTypes = {
|
||||||
|
title: PropTypes.string.isRequired
|
||||||
|
};
|
||||||
|
|
||||||
|
//----------------
|
||||||
|
//Интерфейс модуля
|
||||||
|
//----------------
|
||||||
|
|
||||||
|
export { Svg };
|
19
db/P8PNL_JB_PRMS.sql
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
/*
|
||||||
|
Парус 8 - Панели мониторинга - ПУП - Балансировка планов-графиков проектов
|
||||||
|
Параметры балансировки
|
||||||
|
*/
|
||||||
|
create table P8PNL_JB_PRMS
|
||||||
|
(
|
||||||
|
RN number(17) not null, -- Рег. номер записи
|
||||||
|
IDENT number(17) not null, -- Идентификатор процесса
|
||||||
|
DATE_BEGIN date not null, -- Дата начала периода балансировки
|
||||||
|
DATE_FACT date not null, -- Факт по состоянию на
|
||||||
|
DURATION_MEAS number(1) not null, -- Единица измерения длительности (0 - день, 1 - неделя, 2 - декада, 3 - месяц, 4 - квартал, 5 - год)
|
||||||
|
DURATION_MEAS_CODE varchar2(40) not null, -- Единица измерения длительности (мнемокод)
|
||||||
|
LAB_MEAS number(17) not null, -- Единица измерения трудоёмкости
|
||||||
|
LAB_MEAS_CODE varchar2(40) not null, -- Единица измерения трудоёмкости (мнемокод)
|
||||||
|
constraint C_P8PNL_JB_PRMS_RN_PK primary key (RN),
|
||||||
|
constraint C_P8PNL_JB_PRMS_LAB_MEAS_FK foreign key (LAB_MEAS) references DICMUNTS (RN) on delete cascade,
|
||||||
|
constraint C_P8PNL_JB_PRMS_DUR_MEAS_VAL check (DURATION_MEAS in (0, 1, 2, 3, 4, 5)),
|
||||||
|
constraint C_P8PNL_JB_PRMS_UN unique (IDENT)
|
||||||
|
);
|
@ -3,6 +3,10 @@ create or replace package PKG_P8PANELS_BASE as
|
|||||||
/*Константы - Типовой постфикс тега для массива (при переводе XML -> JSON) */
|
/*Константы - Типовой постфикс тега для массива (при переводе XML -> JSON) */
|
||||||
SXML_ALWAYS_ARRAY_POSTFIX constant PKG_STD.TSTRING := '__SYSTEM__ARRAY__';
|
SXML_ALWAYS_ARRAY_POSTFIX constant PKG_STD.TSTRING := '__SYSTEM__ARRAY__';
|
||||||
|
|
||||||
|
/* Константы - признаки наличия доступа */
|
||||||
|
NACCESS_YES constant number(1) := 1; -- Доступ есть
|
||||||
|
NACCESS_NO constant number(1) := 0; -- Доступа нет
|
||||||
|
|
||||||
/* Конвертация строки в число */
|
/* Конвертация строки в число */
|
||||||
function UTL_S2N
|
function UTL_S2N
|
||||||
(
|
(
|
||||||
@ -15,6 +19,14 @@ create or replace package PKG_P8PANELS_BASE as
|
|||||||
SVALUE in varchar2 -- Конвертируемое строковое значение
|
SVALUE in varchar2 -- Конвертируемое строковое значение
|
||||||
) return date; -- Конвертированная дата
|
) return date; -- Конвертированная дата
|
||||||
|
|
||||||
|
/* Проверка доступности документа */
|
||||||
|
function UTL_DOC_ACCESS_CHECK
|
||||||
|
(
|
||||||
|
NCOMPANY in number, -- Рег. номер организации
|
||||||
|
SUNIT_CODE in varchar2, -- Код раздела
|
||||||
|
NDOCUMENT in number -- Рег. номер документа
|
||||||
|
) return number; -- Флаг доступности (см. константы NACCESS_*)
|
||||||
|
|
||||||
/* Базовое исполнение действий */
|
/* Базовое исполнение действий */
|
||||||
procedure PROCESS
|
procedure PROCESS
|
||||||
(
|
(
|
||||||
@ -132,6 +144,53 @@ create or replace package body PKG_P8PANELS_BASE as
|
|||||||
P_EXCEPTION(0, 'Неверный формат даты (%s).', SVALUE);
|
P_EXCEPTION(0, 'Неверный формат даты (%s).', SVALUE);
|
||||||
end UTL_S2D;
|
end UTL_S2D;
|
||||||
|
|
||||||
|
/* Проверка доступности документа */
|
||||||
|
function UTL_DOC_ACCESS_CHECK
|
||||||
|
(
|
||||||
|
NCOMPANY in number, -- Рег. номер организации
|
||||||
|
SUNIT_CODE in varchar2, -- Код раздела
|
||||||
|
NDOCUMENT in number -- Рег. номер документа
|
||||||
|
) return number -- Флаг доступности (см. константы NACCESS_*)
|
||||||
|
is
|
||||||
|
NRES PKG_STD.TNUMBER; -- Буфер для результата
|
||||||
|
NVERSION PKG_STD.TREF; -- Рег. номер версии
|
||||||
|
NCATALOG PKG_STD.TREF; -- Рег. номер каталога
|
||||||
|
NJUR_PERS PKG_STD.TREF; -- Рег. номер юридической принадлежности
|
||||||
|
NHIERARCHY PKG_STD.TREF; -- Рег. номер ирерархии
|
||||||
|
BTMP boolean; -- Буфер для расчетов
|
||||||
|
NTMP PKG_STD.TNUMBER; -- Буфер для расчетов
|
||||||
|
begin
|
||||||
|
/* Считаем стандартную атрибутику */
|
||||||
|
PKG_DOCUMENT.GET_ATTRS(NFLAG_SMART => 0,
|
||||||
|
SUNITCODE => SUNIT_CODE,
|
||||||
|
NDOCUMENT => NDOCUMENT,
|
||||||
|
BFOUND => BTMP,
|
||||||
|
NCOMPANY => NTMP,
|
||||||
|
NVERSION => NVERSION,
|
||||||
|
NCATALOG => NCATALOG,
|
||||||
|
NJUR_PERS => NJUR_PERS,
|
||||||
|
NHIERARCHY => NHIERARCHY);
|
||||||
|
/* Проверким доступ */
|
||||||
|
PKG_ENV.SMART_ACCESS(NCOMPANY => NCOMPANY,
|
||||||
|
NVERSION => NVERSION,
|
||||||
|
NCATALOG => NCATALOG,
|
||||||
|
NJUR_PERS => NJUR_PERS,
|
||||||
|
NHIERARCHY => NHIERARCHY,
|
||||||
|
SUNIT => SUNIT_CODE,
|
||||||
|
SACTION => null,
|
||||||
|
NRESULT => NRES);
|
||||||
|
/* Вернём результат */
|
||||||
|
if (NRES = 1) then
|
||||||
|
return NACCESS_YES;
|
||||||
|
else
|
||||||
|
return NACCESS_NO;
|
||||||
|
end if;
|
||||||
|
exception
|
||||||
|
/* В случае ошибки - доступ закрыт */
|
||||||
|
when others then
|
||||||
|
return NACCESS_NO;
|
||||||
|
end UTL_DOC_ACCESS_CHECK;
|
||||||
|
|
||||||
/* Формирование сообщения об отсутствии значения */
|
/* Формирование сообщения об отсутствии значения */
|
||||||
function MSG_NO_DATA_MAKE
|
function MSG_NO_DATA_MAKE
|
||||||
(
|
(
|
||||||
|
435
db/PKG_P8PANELS_RRPCONFED.pck
Normal file
@ -0,0 +1,435 @@
|
|||||||
|
create or replace package PKG_P8PANELS_RRPCONFED as
|
||||||
|
|
||||||
|
/* Добавление раздела регламентированного отчёта */
|
||||||
|
procedure INSERT_RRPCONF_SECTIONS
|
||||||
|
(
|
||||||
|
NPRN in number, -- Ид. настройки форм регламентированного отчёта
|
||||||
|
SCODE in varchar2, -- Мнемокод
|
||||||
|
SNAME in varchar2, -- Наименование
|
||||||
|
NRN out number -- Ид. созданной записи
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Исправление раздела регламентированного отчёта */
|
||||||
|
procedure UPDATE_RRPCONF_SECTIONS
|
||||||
|
(
|
||||||
|
NRN in number, -- Ид. раздела
|
||||||
|
SCODE in varchar2, -- Мнемокод раздела
|
||||||
|
SNAME in varchar2 -- Наименование раздела
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Удаление раздела регламентированного отчёта */
|
||||||
|
procedure DELETE_RRPCONF_SECTIONS
|
||||||
|
(
|
||||||
|
NRN in number -- Ид. раздела
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Добавление показателя раздела регламентированного отчёта */
|
||||||
|
procedure INSERT_RRPCONF_COLUMNROW
|
||||||
|
(
|
||||||
|
NPRN in number, -- Ид. раздела
|
||||||
|
SCODE in varchar2, -- Мнемокод показателя раздела
|
||||||
|
SNAME in varchar2, -- Наименование показателя раздела
|
||||||
|
SCOLCODE in varchar2, -- Мнемокод графы
|
||||||
|
SCOLVER in varchar2, -- Мнемокод редакции графы
|
||||||
|
SROWCODE in varchar2, -- Мнемокод строки
|
||||||
|
SROWVER in varchar2, -- Мнемокод редакции строки
|
||||||
|
NRN out number -- Ид. созданной записи
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Исправление показателя раздела регламентированного отчёта */
|
||||||
|
procedure UPDATE_RRPCONF_COLUMNROW
|
||||||
|
(
|
||||||
|
NRN in number, -- Ид. показателя раздела
|
||||||
|
SNAME in varchar2 -- Новое наименование
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Удаление показателя раздела регламентированного отчёта */
|
||||||
|
procedure DELETE_RRPCONF_COLUMNROW
|
||||||
|
(
|
||||||
|
NRN in number -- Ид. показателя раздела
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Формирование кода и наименования показателя раздела регламентированного отчёта */
|
||||||
|
procedure GET_RRPCONFSCTNMRK_CODE_NAME
|
||||||
|
(
|
||||||
|
SSCTNCODE in varchar2, -- Мнемокод раздела
|
||||||
|
SROWCODE in varchar2, -- Мнемокод строки
|
||||||
|
SCOLUMNCODE in varchar2, -- Мнемокод графы
|
||||||
|
SCODE out varchar2, -- Мнемокод показателя раздела
|
||||||
|
SNAME out varchar2 -- Наименование показателя раздела
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Получение разделов регламентированного отчёта */
|
||||||
|
procedure GET_RRPCONF_SECTIONS
|
||||||
|
(
|
||||||
|
NRN_RRPCONF in number, -- Ид. нстройки форм регламентированного отчёта
|
||||||
|
COUT out clob -- Список разделов
|
||||||
|
);
|
||||||
|
|
||||||
|
end PKG_P8PANELS_RRPCONFED;
|
||||||
|
/
|
||||||
|
create or replace package body PKG_P8PANELS_RRPCONFED as
|
||||||
|
|
||||||
|
/* Добавление раздела регламентированного отчёта */
|
||||||
|
procedure INSERT_RRPCONF_SECTIONS
|
||||||
|
(
|
||||||
|
NPRN in number, -- Ид. настройки форм регламентированного отчёта
|
||||||
|
SCODE in varchar2, -- Мнемокод
|
||||||
|
SNAME in varchar2, -- Наименование
|
||||||
|
NRN out number -- Ид. созданной записи
|
||||||
|
)
|
||||||
|
is
|
||||||
|
NCOMPANY PKG_STD.TREF := GET_SESSION_COMPANY(); -- Рег. номер организации
|
||||||
|
begin
|
||||||
|
P_RRPCONFSCTN_INSERT(NCOMPANY => NCOMPANY,
|
||||||
|
NPRN => NPRN,
|
||||||
|
SCODE => SCODE,
|
||||||
|
SNAME => SNAME,
|
||||||
|
SRRPCONFSCTN => null,
|
||||||
|
SRRPPRMGRP => null,
|
||||||
|
SNOTE => null,
|
||||||
|
NHTML_HIDE => 0,
|
||||||
|
NHTML_HIDE_NAME_COL => 0,
|
||||||
|
NHTML_MAKE_HIER_GRP => 0,
|
||||||
|
SCLSF_CODE => null,
|
||||||
|
NLINKS_UPDATE => 0,
|
||||||
|
NDUP_RN => null,
|
||||||
|
NRN => NRN);
|
||||||
|
end INSERT_RRPCONF_SECTIONS;
|
||||||
|
|
||||||
|
/* Исправление раздела регламентированного отчёта */
|
||||||
|
procedure UPDATE_RRPCONF_SECTIONS
|
||||||
|
(
|
||||||
|
NRN in number, -- Ид. раздела
|
||||||
|
SCODE in varchar2, -- Мнемокод раздела
|
||||||
|
SNAME in varchar2 -- Наименование раздела
|
||||||
|
)
|
||||||
|
is
|
||||||
|
NCOMPANY PKG_STD.TREF := GET_SESSION_COMPANY(); -- Рег. номер организации
|
||||||
|
begin
|
||||||
|
P_RRPCONFSCTN_UPDATE(NRN => NRN,
|
||||||
|
NCOMPANY => NCOMPANY,
|
||||||
|
SCODE => SCODE,
|
||||||
|
SNAME => SNAME,
|
||||||
|
SRRPCONFSCTN => null,
|
||||||
|
SRRPPRMGRP => null,
|
||||||
|
SNOTE => null,
|
||||||
|
NHTML_HIDE => 0,
|
||||||
|
NHTML_HIDE_NAME_COL => 0,
|
||||||
|
NHTML_MAKE_HIER_GRP => 0,
|
||||||
|
SCLSF_CODE => null,
|
||||||
|
NFORMULA_UPDATE => 0,
|
||||||
|
NMARK_UPDATE => 0);
|
||||||
|
end UPDATE_RRPCONF_SECTIONS;
|
||||||
|
|
||||||
|
/* Удаление раздела регламентированного отчёта */
|
||||||
|
procedure DELETE_RRPCONF_SECTIONS
|
||||||
|
(
|
||||||
|
NRN in number -- Ид. раздела
|
||||||
|
)
|
||||||
|
is
|
||||||
|
NCOMPANY PKG_STD.TREF := GET_SESSION_COMPANY(); -- Рег. номер организации
|
||||||
|
begin
|
||||||
|
P_RRPCONFSCTN_DELETE(NRN => NRN, NCOMPANY => NCOMPANY);
|
||||||
|
end DELETE_RRPCONF_SECTIONS;
|
||||||
|
|
||||||
|
/* Добавление показателя раздела регламентированного отчёта */
|
||||||
|
procedure INSERT_RRPCONF_COLUMNROW
|
||||||
|
(
|
||||||
|
NPRN in number, -- Ид. раздела
|
||||||
|
SCODE in varchar2, -- Мнемокод показателя раздела
|
||||||
|
SNAME in varchar2, -- Наименование показателя раздела
|
||||||
|
SCOLCODE in varchar2, -- Мнемокод графы
|
||||||
|
SCOLVER in varchar2, -- Мнемокод редакции графы
|
||||||
|
SROWCODE in varchar2, -- Мнемокод строки
|
||||||
|
SROWVER in varchar2, -- Мнемокод редакции строки
|
||||||
|
NRN out number -- Ид. созданной записи
|
||||||
|
)
|
||||||
|
is
|
||||||
|
NCOMPANY PKG_STD.TREF := GET_SESSION_COMPANY(); -- Рег. номер организации
|
||||||
|
NCOUNT PKG_STD.TNUMBER; -- Счётчик показателей раздела
|
||||||
|
begin
|
||||||
|
select count(*) into NCOUNT from RRPCONFSCTNMRK T where T.PRN = NPRN;
|
||||||
|
P_RRPCONFSCTNMRK_INSERT(NCOMPANY => NCOMPANY,
|
||||||
|
NPRN => NPRN,
|
||||||
|
NNUMB => NCOUNT + 1,
|
||||||
|
SCODE => SCODE,
|
||||||
|
SNAME => SNAME,
|
||||||
|
SRRPROW => SROWCODE,
|
||||||
|
SRRPVERSION_ROW => SROWVER,
|
||||||
|
SRRPCOLUMN => SCOLCODE,
|
||||||
|
SRRPVERSION_COLUMN => SCOLVER,
|
||||||
|
SPKG_ROW => null,
|
||||||
|
SPRC_ROW => null,
|
||||||
|
SPKG_COL => null,
|
||||||
|
SPRC_COL => null,
|
||||||
|
SRRPPRM => null,
|
||||||
|
NIGNORE_ZOOM => 0,
|
||||||
|
NIGNORE_SHARP => 0,
|
||||||
|
SCLSF_CODE => null,
|
||||||
|
SNOTE => null,
|
||||||
|
NDUP_RN => null,
|
||||||
|
NRN => NRN);
|
||||||
|
end INSERT_RRPCONF_COLUMNROW;
|
||||||
|
|
||||||
|
/* Исправление показателя раздела регламентированного отчёта */
|
||||||
|
procedure UPDATE_RRPCONF_COLUMNROW
|
||||||
|
(
|
||||||
|
NRN in number, -- Ид. показателя раздела
|
||||||
|
SNAME in varchar2 -- Новое наименование
|
||||||
|
)
|
||||||
|
is
|
||||||
|
NCOMPANY PKG_STD.TREF := GET_SESSION_COMPANY(); -- Рег. номер организации
|
||||||
|
NNUMB PKG_STD.TNUMBER; -- Номер показателя раздела
|
||||||
|
SCODE PKG_STD.TSTRING; -- Мнемокод показателя раздела
|
||||||
|
SCOLCODE PKG_STD.TSTRING; -- Мнемокод графы
|
||||||
|
SCOLVER PKG_STD.TSTRING; -- Мнемокод редакции графы
|
||||||
|
SROWCODE PKG_STD.TSTRING; -- Мнемокод строки
|
||||||
|
SROWVER PKG_STD.TSTRING; -- Мнемокод редакции строки
|
||||||
|
begin
|
||||||
|
select T.NUMB,
|
||||||
|
T.CODE,
|
||||||
|
R.CODE,
|
||||||
|
RVER.CODE,
|
||||||
|
C.CODE,
|
||||||
|
CVER.CODE
|
||||||
|
into NNUMB,
|
||||||
|
SCODE,
|
||||||
|
SROWCODE,
|
||||||
|
SROWVER,
|
||||||
|
SCOLCODE,
|
||||||
|
SCOLVER
|
||||||
|
from RRPCONFSCTNMRK T,
|
||||||
|
RRPCOLUMN C,
|
||||||
|
RRPVERSION CVER,
|
||||||
|
RRPROW R,
|
||||||
|
RRPVERSION RVER
|
||||||
|
where T.RN = NRN
|
||||||
|
and T.RRPROW = R.RN(+)
|
||||||
|
and R.RRPVERSION = RVER.RN(+)
|
||||||
|
and T.RRPCOLUMN = C.RN(+)
|
||||||
|
and C.RRPVERSION = CVER.RN(+);
|
||||||
|
P_RRPCONFSCTNMRK_UPDATE(NRN => NRN,
|
||||||
|
NCOMPANY => NCOMPANY,
|
||||||
|
NNUMB => NNUMB,
|
||||||
|
SCODE => SCODE,
|
||||||
|
SNAME => SNAME,
|
||||||
|
SRRPROW => SROWCODE,
|
||||||
|
SRRPVERSION_ROW => SROWVER,
|
||||||
|
SRRPCOLUMN => SCOLCODE,
|
||||||
|
SRRPVERSION_COLUMN => SCOLVER,
|
||||||
|
SPKG_ROW => null,
|
||||||
|
SPRC_ROW => null,
|
||||||
|
SPKG_COL => null,
|
||||||
|
SPRC_COL => null,
|
||||||
|
SRRPPRM => null,
|
||||||
|
NIGNORE_ZOOM => 0,
|
||||||
|
NIGNORE_SHARP => 0,
|
||||||
|
SCLSF_CODE => null,
|
||||||
|
NFORMULA_UPDATE => 0,
|
||||||
|
SNOTE => null);
|
||||||
|
end UPDATE_RRPCONF_COLUMNROW;
|
||||||
|
|
||||||
|
/* Удаление показателя раздела регламентированного отчёта */
|
||||||
|
procedure DELETE_RRPCONF_COLUMNROW
|
||||||
|
(
|
||||||
|
NRN in number -- Ид. показателя раздела
|
||||||
|
)
|
||||||
|
is
|
||||||
|
NCOMPANY PKG_STD.TREF := GET_SESSION_COMPANY(); -- Рег. номер организации
|
||||||
|
begin
|
||||||
|
P_RRPCONFSCTNMRK_DELETE(NCOMPANY => NCOMPANY, NRN => NRN);
|
||||||
|
end DELETE_RRPCONF_COLUMNROW;
|
||||||
|
|
||||||
|
/* Формирование кода и наименования показателя раздела регламентированного отчёта */
|
||||||
|
procedure GET_RRPCONFSCTNMRK_CODE_NAME
|
||||||
|
(
|
||||||
|
SSCTNCODE in varchar2, -- Мнемокод раздела
|
||||||
|
SROWCODE in varchar2, -- Мнемокод строки
|
||||||
|
SCOLUMNCODE in varchar2, -- Мнемокод графы
|
||||||
|
SCODE out varchar2, -- Мнемокод показателя раздела
|
||||||
|
SNAME out varchar2 -- Наименование показателя раздела
|
||||||
|
)
|
||||||
|
is
|
||||||
|
NCOMPANY PKG_STD.TREF := GET_SESSION_COMPANY(); -- Рег. номер организации
|
||||||
|
NROWRN PKG_STD.TREF; -- Ид. строки
|
||||||
|
NCOLUMNRN PKG_STD.TREF; -- Ид. графы
|
||||||
|
begin
|
||||||
|
P_RRPCONFSCTNMRK_MAKE_CODE(SRRPCONFSCTN => SSCTNCODE,
|
||||||
|
SRRPROW => SROWCODE,
|
||||||
|
SRRPCOLUMN => SCOLUMNCODE,
|
||||||
|
SCODE => SCODE);
|
||||||
|
select R.RN into NROWRN from RRPROW R where R.CODE = SROWCODE;
|
||||||
|
select C.RN into NCOLUMNRN from RRPCOLUMN C where C.CODE = SCOLUMNCODE;
|
||||||
|
P_RRPCONFSCTNMRK_MAKE_NAME(NCOMPANY => NCOMPANY,
|
||||||
|
NRRPROW => NROWRN,
|
||||||
|
NRRPCOLUMN => NCOLUMNRN,
|
||||||
|
NCHANGE_NAME => 1,
|
||||||
|
NCHANGE_NAME_PARENT => 0,
|
||||||
|
SNAME => SNAME);
|
||||||
|
end GET_RRPCONFSCTNMRK_CODE_NAME;
|
||||||
|
|
||||||
|
/* Получение разделов регламентированного отчёта */
|
||||||
|
procedure GET_RRPCONF_SECTIONS
|
||||||
|
(
|
||||||
|
NRN_RRPCONF in number, -- Ид. нстройки форм регламентированного отчёта
|
||||||
|
COUT out clob -- Список разделов
|
||||||
|
)
|
||||||
|
is
|
||||||
|
NVERSION PKG_STD.TREF; -- Рег. номер версии словаря контрагентов
|
||||||
|
RDG PKG_P8PANELS_VISUAL.TDATA_GRID; -- Описание таблицы
|
||||||
|
RDG_ROW PKG_P8PANELS_VISUAL.TROW; -- Строка таблицы
|
||||||
|
CDG clob; -- XML данных раздела
|
||||||
|
CCURCLOB clob; -- XML текущего раздела
|
||||||
|
NCURRN PKG_STD.TREF; -- Ид. текущего раздела
|
||||||
|
SCURCODE PKG_STD.TSTRING; -- Мнемокод текущего раздела
|
||||||
|
SCURNAME PKG_STD.TSTRING; -- Наименование текущего раздела
|
||||||
|
SCUR_ROW PKG_STD.TSTRING := 'default'; -- Текущая строка таблицы
|
||||||
|
CXML PKG_CONTVALLOC2NS.TCONTAINER; -- Контейнер для данных XML
|
||||||
|
|
||||||
|
/* Курсор с отбором показателей раздела по ид. раздела */
|
||||||
|
cursor C1 (NSCTN_RN in number) is
|
||||||
|
select T.RN NRN,
|
||||||
|
T.PRN NPRN,
|
||||||
|
T.RRPCONF NRRPCONF,
|
||||||
|
T.RRPPRM NRRPPRM,
|
||||||
|
T.CODE SCODE,
|
||||||
|
T.NAME SNAME,
|
||||||
|
R.CODE SROW_CODE,
|
||||||
|
R.NAME SROW_NAME,
|
||||||
|
C.CODE SCOLUMN_CODE,
|
||||||
|
C.NAME SCOLUMN_NAME
|
||||||
|
from RRPCONFSCTNMRK T,
|
||||||
|
RRPROW R,
|
||||||
|
RRPCOLUMN C
|
||||||
|
where T.PRN in (select T2.RN
|
||||||
|
from RRPCONFSCTN T2
|
||||||
|
where T2.PRN = NRN_RRPCONF
|
||||||
|
and T2.VERSION = NVERSION)
|
||||||
|
and T.VERSION = NVERSION
|
||||||
|
and T.RRPROW = R.RN (+)
|
||||||
|
and T.RRPCOLUMN = C.RN (+)
|
||||||
|
and T.PRN = NSCTN_RN
|
||||||
|
order by T.CODE;
|
||||||
|
|
||||||
|
/* Курсор с отбором граф раздела по ид. раздела */
|
||||||
|
cursor CN (NSCTN_RN in number) is
|
||||||
|
select distinct(C.CODE) SCOLUMN_CODE,
|
||||||
|
C.NAME SCOLUMN_NAME
|
||||||
|
from RRPCONFSCTNMRK T,
|
||||||
|
RRPCOLUMN C
|
||||||
|
where T.PRN in (select T2.RN
|
||||||
|
from RRPCONFSCTN T2
|
||||||
|
where T2.PRN = NRN_RRPCONF
|
||||||
|
and T2.VERSION = NVERSION)
|
||||||
|
and T.VERSION = NVERSION
|
||||||
|
and T.RRPCOLUMN = C.RN (+)
|
||||||
|
and T.PRN = NSCTN_RN
|
||||||
|
order by SCOLUMN_CODE;
|
||||||
|
begin
|
||||||
|
/* Очистка контейнера */
|
||||||
|
PKG_CONTVALLOC2NS.PURGE(RCONTAINER => CXML);
|
||||||
|
/* Определение версии раздела */
|
||||||
|
NVERSION := GET_SESSION_VERSION(SUNITCODE => 'RRPConfig');
|
||||||
|
/* Цикл по разделам настройки форм регламентированного отчёта */
|
||||||
|
for C in (select T.RN NRN,
|
||||||
|
T.VERSION NVERSION,
|
||||||
|
T.CRN NCRN,
|
||||||
|
T.PRN NPRN,
|
||||||
|
T.CODE SCODE,
|
||||||
|
T.NAME SNAME
|
||||||
|
from RRPCONFSCTN T
|
||||||
|
where T.PRN = NRN_RRPCONF
|
||||||
|
and T.VERSION = NVERSION)
|
||||||
|
loop
|
||||||
|
/* Инициализируем таблицу данных */
|
||||||
|
RDG := PKG_P8PANELS_VISUAL.TDATA_GRID_MAKE();
|
||||||
|
/* Формируем структуру заголовка */
|
||||||
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
||||||
|
SNAME => 'SROW_NAME',
|
||||||
|
SCAPTION => 'Наименование строки',
|
||||||
|
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR);
|
||||||
|
/* Цикл формирования колонок с графами */
|
||||||
|
for CL in CN(C.NRN)
|
||||||
|
loop
|
||||||
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
||||||
|
SNAME => 'SCOL_' || CL.SCOLUMN_CODE,
|
||||||
|
SCAPTION => CL.SCOLUMN_NAME,
|
||||||
|
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR);
|
||||||
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
||||||
|
SNAME => 'NRN_' || CL.SCOLUMN_CODE,
|
||||||
|
SCAPTION => CL.SCOLUMN_NAME || ' Идентификаторы',
|
||||||
|
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_NUMB,
|
||||||
|
BVISIBLE => false);
|
||||||
|
end loop;
|
||||||
|
/* Для нового раздела очищаем переменную кода строки */
|
||||||
|
SCUR_ROW := 'default';
|
||||||
|
/* Инициализируем строку */
|
||||||
|
RDG_ROW := PKG_P8PANELS_VISUAL.TROW_MAKE();
|
||||||
|
/* Цикл заполнения строк данными о показателях раздела */
|
||||||
|
for CR in C1(C.NRN)
|
||||||
|
loop
|
||||||
|
/* Если новая строка */
|
||||||
|
if (SCUR_ROW != CR.SROW_CODE) then
|
||||||
|
/* Если строка не первая */
|
||||||
|
if (SCUR_ROW != 'default') then
|
||||||
|
/* Добавим строку для раздела */
|
||||||
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_ROW(RDATA_GRID => RDG, RROW => RDG_ROW);
|
||||||
|
/* Инициализируем новую строку */
|
||||||
|
RDG_ROW := PKG_P8PANELS_VISUAL.TROW_MAKE();
|
||||||
|
end if;
|
||||||
|
/* Запоминаем мнемокод новой строки */
|
||||||
|
SCUR_ROW := CR.SROW_CODE;
|
||||||
|
/* Заполняем наименование строки */
|
||||||
|
PKG_P8PANELS_VISUAL.TROW_ADD_COL(RROW => RDG_ROW, SNAME => 'SROW_NAME', SVALUE => CR.SROW_NAME);
|
||||||
|
end if;
|
||||||
|
/* Заполняем наименование показателя раздела */
|
||||||
|
PKG_P8PANELS_VISUAL.TROW_ADD_COL(RROW => RDG_ROW, SNAME => 'SCOL_' || CR.SCOLUMN_CODE, SVALUE => CR.SNAME);
|
||||||
|
/* Заполняем ид. показателя раздела */
|
||||||
|
PKG_P8PANELS_VISUAL.TROW_ADD_COL(RROW => RDG_ROW, SNAME => 'NRN_' || CR.SCOLUMN_CODE, NVALUE => CR.NRN);
|
||||||
|
end loop;
|
||||||
|
/* Добавим последнюю строку для раздела */
|
||||||
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_ROW(RDATA_GRID => RDG, RROW => RDG_ROW);
|
||||||
|
/* Сериализуем описание */
|
||||||
|
CDG := PKG_P8PANELS_VISUAL.TDATA_GRID_TO_XML(RDATA_GRID => RDG, NINCLUDE_DEF => 1);
|
||||||
|
/* Заполняем контейнер данными о разделе */
|
||||||
|
PKG_CONTVALLOC2NS.PUTS(RCONTAINER => CXML, NTABID => C.NRN, SROWID => C.NRN || '_CODE', SVALUE => C.SCODE);
|
||||||
|
PKG_CONTVALLOC2NS.PUTS(RCONTAINER => CXML, NTABID => C.NRN, SROWID => C.NRN || '_NAME', SVALUE => C.SNAME);
|
||||||
|
PKG_CONTVALLOC2NS.PUTLC(RCONTAINER => CXML, NTABID => C.NRN, SROWID => C.NRN || '_CLOB', LCVALUE => CDG);
|
||||||
|
end loop;
|
||||||
|
/* Формируем XML с данными */
|
||||||
|
PKG_XFAST.PROLOGUE(ITYPE => PKG_XFAST.CONTENT_);
|
||||||
|
PKG_XFAST.DOWN_NODE(SNAME => 'DATA');
|
||||||
|
/* Цикл по контейнеру с данными о разделах */
|
||||||
|
for X in 1 .. PKG_CONTVALLOC2NS.COUNT_(RCONTAINER => CXML)
|
||||||
|
loop
|
||||||
|
/* Ид. раздела */
|
||||||
|
if (X = 1) then
|
||||||
|
NCURRN := PKG_CONTVALLOC2NS.FIRST_(RCONTAINER => CXML);
|
||||||
|
else
|
||||||
|
NCURRN := PKG_CONTVALLOC2NS.NEXT_(RCONTAINER => CXML, NTABID => NCURRN);
|
||||||
|
end if;
|
||||||
|
/* Мнемокод раздела */
|
||||||
|
SCURCODE := PKG_CONTVALLOC2NS.GETS(RCONTAINER => CXML, NTABID => NCURRN, SROWID => NCURRN || '_CODE');
|
||||||
|
/* Наименование раздела */
|
||||||
|
SCURNAME := PKG_CONTVALLOC2NS.GETS(RCONTAINER => CXML, NTABID => NCURRN, SROWID => NCURRN || '_NAME');
|
||||||
|
/* Clob с показателями раздела */
|
||||||
|
CCURCLOB := PKG_CONTVALLOC2NS.GETLC(RCONTAINER => CXML, NTABID => NCURRN, SROWID => NCURRN || '_CLOB');
|
||||||
|
/* Формирование элемента XML с данными о разделе */
|
||||||
|
PKG_XFAST.DOWN_NODE(SNAME => 'SECTIONS');
|
||||||
|
PKG_XFAST.ATTR(SNAME => 'NRN', NVALUE => NCURRN);
|
||||||
|
PKG_XFAST.ATTR(SNAME => 'SCODE', SVALUE => SCURCODE);
|
||||||
|
PKG_XFAST.ATTR(SNAME => 'SNAME', SVALUE => SCURNAME);
|
||||||
|
PKG_XFAST.VALUE_XML(LCVALUE => CCURCLOB);
|
||||||
|
PKG_XFAST.UP();
|
||||||
|
end loop;
|
||||||
|
PKG_XFAST.UP();
|
||||||
|
/* Сериализуем описание */
|
||||||
|
COUT := PKG_XFAST.SERIALIZE_TO_CLOB();
|
||||||
|
PKG_XFAST.EPILOGUE();
|
||||||
|
/* Очистка контейнера */
|
||||||
|
PKG_CONTVALLOC2NS.PURGE(RCONTAINER => CXML);
|
||||||
|
end GET_RRPCONF_SECTIONS;
|
||||||
|
|
||||||
|
end PKG_P8PANELS_RRPCONFED;
|
||||||
|
/
|
@ -255,7 +255,7 @@ create or replace package body PKG_P8PANELS_SAMPLES as
|
|||||||
NROW_FROM => NROW_FROM,
|
NROW_FROM => NROW_FROM,
|
||||||
NROW_TO => NROW_TO);
|
NROW_TO => NROW_TO);
|
||||||
/* Инициализируем таблицу данных */
|
/* Инициализируем таблицу данных */
|
||||||
RDG := PKG_P8PANELS_VISUAL.TDATA_GRID_MAKE();
|
RDG := PKG_P8PANELS_VISUAL.TDATA_GRID_MAKE(BFIXED_HEADER => true, NFIXED_COLUMNS => 2);
|
||||||
/* Описываем колонки таблицы данных */
|
/* Описываем колонки таблицы данных */
|
||||||
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
||||||
SNAME => 'SAGNABBR',
|
SNAME => 'SAGNABBR',
|
||||||
@ -264,7 +264,8 @@ create or replace package body PKG_P8PANELS_SAMPLES as
|
|||||||
SCOND_FROM => 'AgentAbbr',
|
SCOND_FROM => 'AgentAbbr',
|
||||||
BVISIBLE => true,
|
BVISIBLE => true,
|
||||||
BORDER => true,
|
BORDER => true,
|
||||||
BFILTER => true);
|
BFILTER => true,
|
||||||
|
NWIDTH => 150);
|
||||||
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
||||||
SNAME => 'SAGNINFO',
|
SNAME => 'SAGNINFO',
|
||||||
SCAPTION => 'Сведения',
|
SCAPTION => 'Сведения',
|
||||||
@ -272,7 +273,8 @@ create or replace package body PKG_P8PANELS_SAMPLES as
|
|||||||
BVISIBLE => true,
|
BVISIBLE => true,
|
||||||
BORDER => false,
|
BORDER => false,
|
||||||
BFILTER => false,
|
BFILTER => false,
|
||||||
BEXPANDABLE => true);
|
BEXPANDABLE => true,
|
||||||
|
NWIDTH => 300);
|
||||||
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
||||||
SNAME => 'SAGNNAME',
|
SNAME => 'SAGNNAME',
|
||||||
SCAPTION => 'Наименование',
|
SCAPTION => 'Наименование',
|
||||||
@ -281,7 +283,8 @@ create or replace package body PKG_P8PANELS_SAMPLES as
|
|||||||
BVISIBLE => true,
|
BVISIBLE => true,
|
||||||
BORDER => true,
|
BORDER => true,
|
||||||
BFILTER => true,
|
BFILTER => true,
|
||||||
SPARENT => 'SAGNINFO');
|
SPARENT => 'SAGNINFO',
|
||||||
|
NWIDTH => 200);
|
||||||
PKG_P8PANELS_VISUAL.TCOL_VALS_ADD(RCOL_VALS => RAGN_TYPES, NVALUE => 0);
|
PKG_P8PANELS_VISUAL.TCOL_VALS_ADD(RCOL_VALS => RAGN_TYPES, NVALUE => 0);
|
||||||
PKG_P8PANELS_VISUAL.TCOL_VALS_ADD(RCOL_VALS => RAGN_TYPES, NVALUE => 1);
|
PKG_P8PANELS_VISUAL.TCOL_VALS_ADD(RCOL_VALS => RAGN_TYPES, NVALUE => 1);
|
||||||
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
||||||
@ -293,12 +296,21 @@ create or replace package body PKG_P8PANELS_SAMPLES as
|
|||||||
BORDER => true,
|
BORDER => true,
|
||||||
BFILTER => true,
|
BFILTER => true,
|
||||||
SPARENT => 'SAGNINFO',
|
SPARENT => 'SAGNINFO',
|
||||||
|
NWIDTH => 100,
|
||||||
RCOL_VALS => RAGN_TYPES,
|
RCOL_VALS => RAGN_TYPES,
|
||||||
SHINT => 'В Системе бывают контрагенты двух типов:<br>' ||
|
SHINT => 'В Системе бывают контрагенты двух типов:<br>' ||
|
||||||
'<b style="color:blue">Юридическое лицо</b> - организация, которая имеет в собственности, хозяйственном ведении ' ||
|
'<b style="color:blue">Юридическое лицо</b> - организация, которая имеет в собственности, хозяйственном ведении ' ||
|
||||||
'или оперативном управлении обособленное имущество, отвечает по своим обязательствам этим имуществом, может от своего ' ||
|
'или оперативном управлении обособленное имущество, отвечает по своим обязательствам этим имуществом, может от своего ' ||
|
||||||
'имени приобретать и осуществлять имущественные и личные неимущественные права, отвечать по своим обязанностям.<br>' ||
|
'имени приобретать и осуществлять имущественные и личные неимущественные права, отвечать по своим обязанностям.<br>' ||
|
||||||
'<b style="color:green">Физическое лицо</b> - субъект правовых отношений, представляющий собой одного человека.');
|
'<b style="color:green">Физическое лицо</b> - субъект правовых отношений, представляющий собой одного человека.');
|
||||||
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
||||||
|
SNAME => 'SFULLNAME',
|
||||||
|
SCAPTION => 'Полное наименование',
|
||||||
|
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR);
|
||||||
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_COL_DEF(RDATA_GRID => RDG,
|
||||||
|
SNAME => 'SAGNIDNUMB',
|
||||||
|
SCAPTION => 'ИНН',
|
||||||
|
SDATA_TYPE => PKG_P8PANELS_VISUAL.SDATA_TYPE_STR);
|
||||||
/* Обходим данные */
|
/* Обходим данные */
|
||||||
begin
|
begin
|
||||||
/* Добавляем подсказку совместимости */
|
/* Добавляем подсказку совместимости */
|
||||||
@ -309,7 +321,9 @@ create or replace package body PKG_P8PANELS_SAMPLES as
|
|||||||
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => PKG_SQL_BUILD.SQLROWNUM() || ' NROW');
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => PKG_SQL_BUILD.SQLROWNUM() || ' NROW');
|
||||||
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' from (select AG.AGNABBR SAGNABBR,');
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' from (select AG.AGNABBR SAGNABBR,');
|
||||||
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' AG.AGNNAME SAGNNAME,');
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' AG.AGNNAME SAGNNAME,');
|
||||||
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' AG.AGNTYPE NAGNTYPE');
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' AG.AGNTYPE NAGNTYPE,');
|
||||||
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' AG.FULLNAME SFULLNAME,');
|
||||||
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' AG.AGNIDNUMB SAGNIDNUMB');
|
||||||
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' from AGNLIST AG');
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' from AGNLIST AG');
|
||||||
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' where exists (select ' || PKG_SQL_BUILD.SET_HINT(SHINT => 'INDEX(UP I_USERPRIV_CATALOG_ROLEID)') || ' null');
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' where exists (select ' || PKG_SQL_BUILD.SET_HINT(SHINT => 'INDEX(UP I_USERPRIV_CATALOG_ROLEID)') || ' null');
|
||||||
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' from USERPRIV UP');
|
PKG_SQL_BUILD.APPEND(SSQL => CSQL, SELEMENT1 => ' from USERPRIV UP');
|
||||||
@ -341,7 +355,9 @@ create or replace package body PKG_P8PANELS_SAMPLES as
|
|||||||
PKG_SQL_DML.DEFINE_COLUMN_STR(ICURSOR => ICURSOR, IPOSITION => 1);
|
PKG_SQL_DML.DEFINE_COLUMN_STR(ICURSOR => ICURSOR, IPOSITION => 1);
|
||||||
PKG_SQL_DML.DEFINE_COLUMN_STR(ICURSOR => ICURSOR, IPOSITION => 2);
|
PKG_SQL_DML.DEFINE_COLUMN_STR(ICURSOR => ICURSOR, IPOSITION => 2);
|
||||||
PKG_SQL_DML.DEFINE_COLUMN_NUM(ICURSOR => ICURSOR, IPOSITION => 3);
|
PKG_SQL_DML.DEFINE_COLUMN_NUM(ICURSOR => ICURSOR, IPOSITION => 3);
|
||||||
PKG_SQL_DML.DEFINE_COLUMN_NUM(ICURSOR => ICURSOR, IPOSITION => 4);
|
PKG_SQL_DML.DEFINE_COLUMN_STR(ICURSOR => ICURSOR, IPOSITION => 4);
|
||||||
|
PKG_SQL_DML.DEFINE_COLUMN_STR(ICURSOR => ICURSOR, IPOSITION => 5);
|
||||||
|
PKG_SQL_DML.DEFINE_COLUMN_NUM(ICURSOR => ICURSOR, IPOSITION => 6);
|
||||||
/* Делаем выборку */
|
/* Делаем выборку */
|
||||||
if (PKG_SQL_DML.EXECUTE(ICURSOR => ICURSOR) = 0) then
|
if (PKG_SQL_DML.EXECUTE(ICURSOR => ICURSOR) = 0) then
|
||||||
null;
|
null;
|
||||||
@ -374,6 +390,8 @@ create or replace package body PKG_P8PANELS_SAMPLES as
|
|||||||
PKG_P8PANELS_VISUAL.TROW_ADD_COL(RROW => RDG_ROW, SNAME => 'SAGNINFO', SVALUE => SAGNINFO);
|
PKG_P8PANELS_VISUAL.TROW_ADD_COL(RROW => RDG_ROW, SNAME => 'SAGNINFO', SVALUE => SAGNINFO);
|
||||||
PKG_P8PANELS_VISUAL.TROW_ADD_COL(RROW => RDG_ROW, SNAME => 'SAGNNAME', SVALUE => SAGNNAME);
|
PKG_P8PANELS_VISUAL.TROW_ADD_COL(RROW => RDG_ROW, SNAME => 'SAGNNAME', SVALUE => SAGNNAME);
|
||||||
PKG_P8PANELS_VISUAL.TROW_ADD_COL(RROW => RDG_ROW, SNAME => 'NAGNTYPE', NVALUE => NAGNTYPE);
|
PKG_P8PANELS_VISUAL.TROW_ADD_COL(RROW => RDG_ROW, SNAME => 'NAGNTYPE', NVALUE => NAGNTYPE);
|
||||||
|
PKG_P8PANELS_VISUAL.TROW_ADD_CUR_COLS(RROW => RDG_ROW, SNAME => 'SFULLNAME', ICURSOR => ICURSOR, NPOSITION => 4);
|
||||||
|
PKG_P8PANELS_VISUAL.TROW_ADD_CUR_COLS(RROW => RDG_ROW, SNAME => 'SAGNIDNUMB', ICURSOR => ICURSOR, NPOSITION => 5);
|
||||||
/* Добавляем строку в таблицу */
|
/* Добавляем строку в таблицу */
|
||||||
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_ROW(RDATA_GRID => RDG, RROW => RDG_ROW);
|
PKG_P8PANELS_VISUAL.TDATA_GRID_ADD_ROW(RDATA_GRID => RDG, RROW => RDG_ROW);
|
||||||
end loop;
|
end loop;
|
||||||
|
@ -54,7 +54,8 @@ create or replace package PKG_P8PANELS_VISUAL as
|
|||||||
SHINT PKG_STD.TSTRING, -- Текст всплывающей подсказки
|
SHINT PKG_STD.TSTRING, -- Текст всплывающей подсказки
|
||||||
SPARENT PKG_STD.TSTRING, -- Наименование родительской колонки
|
SPARENT PKG_STD.TSTRING, -- Наименование родительской колонки
|
||||||
BEXPANDABLE boolean, -- Разрешить сокрытие/отображение дочерних колонок
|
BEXPANDABLE boolean, -- Разрешить сокрытие/отображение дочерних колонок
|
||||||
BEXPANDED boolean -- Отобразить/скрыть дочерние колонки
|
BEXPANDED boolean, -- Отобразить/скрыть дочерние колонки
|
||||||
|
NWIDTH PKG_STD.TNUMBER -- Ширина колонки (обязательно для фиксированных)
|
||||||
);
|
);
|
||||||
|
|
||||||
/* Типы данных - коллекция описателей колонок таблицы данных */
|
/* Типы данных - коллекция описателей колонок таблицы данных */
|
||||||
@ -95,6 +96,8 @@ create or replace package PKG_P8PANELS_VISUAL as
|
|||||||
/* Типы данных - таблица данных */
|
/* Типы данных - таблица данных */
|
||||||
type TDATA_GRID is record
|
type TDATA_GRID is record
|
||||||
(
|
(
|
||||||
|
BFIXED_HEADER boolean, -- Зафиксировать заголовок
|
||||||
|
NFIXED_COLUMNS PKG_STD.TNUMBER, -- Количество фиксированных колонок
|
||||||
RCOL_DEFS TCOL_DEFS, -- Описание колонок
|
RCOL_DEFS TCOL_DEFS, -- Описание колонок
|
||||||
RGROUPS TGROUPS, -- Описание групп
|
RGROUPS TGROUPS, -- Описание групп
|
||||||
RROWS TROWS -- Данные строк
|
RROWS TROWS -- Данные строк
|
||||||
@ -319,7 +322,10 @@ create or replace package PKG_P8PANELS_VISUAL as
|
|||||||
|
|
||||||
/* Формирование таблицы данных */
|
/* Формирование таблицы данных */
|
||||||
function TDATA_GRID_MAKE
|
function TDATA_GRID_MAKE
|
||||||
return TDATA_GRID; -- Результат работы
|
(
|
||||||
|
BFIXED_HEADER in boolean := false, -- Зафиксировать заголовок
|
||||||
|
NFIXED_COLUMNS in number := 0 -- Количество фиксированных колонок
|
||||||
|
) return TDATA_GRID; -- Результат работы
|
||||||
|
|
||||||
/* Поиск описания колонки в таблице данных по наименованию */
|
/* Поиск описания колонки в таблице данных по наименованию */
|
||||||
function TDATA_GRID_FIND_COL_DEF
|
function TDATA_GRID_FIND_COL_DEF
|
||||||
@ -345,6 +351,7 @@ create or replace package PKG_P8PANELS_VISUAL as
|
|||||||
SPARENT in varchar2 := null, -- Наименование родительской колонки
|
SPARENT in varchar2 := null, -- Наименование родительской колонки
|
||||||
BEXPANDABLE in boolean := false, -- Разрешить сокрытие/отображение дочерних колонок
|
BEXPANDABLE in boolean := false, -- Разрешить сокрытие/отображение дочерних колонок
|
||||||
BEXPANDED in boolean := true, -- Отобразить/скрыть дочерние колонки
|
BEXPANDED in boolean := true, -- Отобразить/скрыть дочерние колонки
|
||||||
|
NWIDTH in number := null, -- Ширина колонки (обязательно для фиксированных)
|
||||||
BCLEAR in boolean := false -- Флаг очистки коллекции описаний колонок таблицы данных (false - не очищать, true - очистить коллекцию перед добавлением)
|
BCLEAR in boolean := false -- Флаг очистки коллекции описаний колонок таблицы данных (false - не очищать, true - очистить коллекцию перед добавлением)
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -595,6 +602,7 @@ text="Формат data_grid и gant как в chart"
|
|||||||
SRESP_TAG_XGANTT_DEF constant PKG_STD.TSTRING := 'XGANTT_DEF'; -- Тэг для описания заголовка диаграммы Ганта
|
SRESP_TAG_XGANTT_DEF constant PKG_STD.TSTRING := 'XGANTT_DEF'; -- Тэг для описания заголовка диаграммы Ганта
|
||||||
SRESP_TAG_XGANTT_TASKS constant PKG_STD.TSTRING := 'XGANTT_TASKS'; -- Тэг для описания коллекции задач диаграммы Ганта
|
SRESP_TAG_XGANTT_TASKS constant PKG_STD.TSTRING := 'XGANTT_TASKS'; -- Тэг для описания коллекции задач диаграммы Ганта
|
||||||
SRESP_TAG_XCHART constant PKG_STD.TSTRING := 'XCHART'; -- Тэг для описания графика
|
SRESP_TAG_XCHART constant PKG_STD.TSTRING := 'XCHART'; -- Тэг для описания графика
|
||||||
|
SRESP_TAG_XDATA_GRID constant PKG_STD.TSTRING := 'XDATA_GRID'; -- Тэг для описания таблицы данных
|
||||||
|
|
||||||
/* Константы - атрибуты ответов (универсальные) */
|
/* Константы - атрибуты ответов (универсальные) */
|
||||||
SRESP_ATTR_NAME constant PKG_STD.TSTRING := 'name'; -- Атрибут для наименования
|
SRESP_ATTR_NAME constant PKG_STD.TSTRING := 'name'; -- Атрибут для наименования
|
||||||
@ -616,6 +624,9 @@ text="Формат data_grid и gant как в chart"
|
|||||||
SRESP_ATTR_PARENT constant PKG_STD.TSTRING := 'parent'; -- Атрибут для ссылки на родителя
|
SRESP_ATTR_PARENT constant PKG_STD.TSTRING := 'parent'; -- Атрибут для ссылки на родителя
|
||||||
SRESP_ATTR_EXPANDABLE constant PKG_STD.TSTRING := 'expandable'; -- Атрибут для доступности действия сокрытия/отображения
|
SRESP_ATTR_EXPANDABLE constant PKG_STD.TSTRING := 'expandable'; -- Атрибут для доступности действия сокрытия/отображения
|
||||||
SRESP_ATTR_EXPANDED constant PKG_STD.TSTRING := 'expanded'; -- Атрибут для флага сокрытия/отображения
|
SRESP_ATTR_EXPANDED constant PKG_STD.TSTRING := 'expanded'; -- Атрибут для флага сокрытия/отображения
|
||||||
|
SRESP_ATTR_FIXED_HEADER constant PKG_STD.TSTRING := 'fixedHeader'; -- Атрибут для флага фиксации заголовка
|
||||||
|
SRESP_ATTR_FIXED_COLUMNS constant PKG_STD.TSTRING := 'fixedColumns'; -- Атрибут для количества фиксированных колонок
|
||||||
|
SRESP_ATTR_WIDTH constant PKG_STD.TSTRING := 'width'; -- Атрибут для ширины
|
||||||
|
|
||||||
/* Константы - атрибуты ответов (таблица данных) */
|
/* Константы - атрибуты ответов (таблица данных) */
|
||||||
SRESP_ATTR_DT_ORDER constant PKG_STD.TSTRING := 'order'; -- Атрибут для флага сортировки
|
SRESP_ATTR_DT_ORDER constant PKG_STD.TSTRING := 'order'; -- Атрибут для флага сортировки
|
||||||
@ -743,7 +754,8 @@ text="Формат data_grid и gant как в chart"
|
|||||||
SHINT in varchar2 := null, -- Текст всплывающей подсказки
|
SHINT in varchar2 := null, -- Текст всплывающей подсказки
|
||||||
SPARENT in varchar2 := null, -- Наименование родительской колонки
|
SPARENT in varchar2 := null, -- Наименование родительской колонки
|
||||||
BEXPANDABLE in boolean := false, -- Разрешить сокрытие/отображение дочерних колонок
|
BEXPANDABLE in boolean := false, -- Разрешить сокрытие/отображение дочерних колонок
|
||||||
BEXPANDED in boolean := true -- Отобразить/скрыть дочерние колонки
|
BEXPANDED in boolean := true, -- Отобразить/скрыть дочерние колонки
|
||||||
|
NWIDTH in number := null -- Ширина колонки (обязательно для фиксированных)
|
||||||
) return TCOL_DEF -- Результат работы
|
) return TCOL_DEF -- Результат работы
|
||||||
is
|
is
|
||||||
RRES TCOL_DEF; -- Буфер для результата
|
RRES TCOL_DEF; -- Буфер для результата
|
||||||
@ -762,6 +774,7 @@ text="Формат data_grid и gant как в chart"
|
|||||||
RRES.SPARENT := SPARENT;
|
RRES.SPARENT := SPARENT;
|
||||||
RRES.BEXPANDABLE := COALESCE(BEXPANDABLE, false);
|
RRES.BEXPANDABLE := COALESCE(BEXPANDABLE, false);
|
||||||
RRES.BEXPANDED := COALESCE(BEXPANDED, true);
|
RRES.BEXPANDED := COALESCE(BEXPANDED, true);
|
||||||
|
RRES.NWIDTH := NWIDTH;
|
||||||
/* Возвращаем результат */
|
/* Возвращаем результат */
|
||||||
return RRES;
|
return RRES;
|
||||||
end TCOL_DEF_MAKE;
|
end TCOL_DEF_MAKE;
|
||||||
@ -783,6 +796,7 @@ text="Формат data_grid и gant как в chart"
|
|||||||
SPARENT in varchar2 := null, -- Наименование родительской колонки
|
SPARENT in varchar2 := null, -- Наименование родительской колонки
|
||||||
BEXPANDABLE in boolean := false, -- Разрешить сокрытие/отображение дочерних колонок
|
BEXPANDABLE in boolean := false, -- Разрешить сокрытие/отображение дочерних колонок
|
||||||
BEXPANDED in boolean := true, -- Отобразить/скрыть дочерние колонки
|
BEXPANDED in boolean := true, -- Отобразить/скрыть дочерние колонки
|
||||||
|
NWIDTH in number := null, -- Ширина колонки (обязательно для фиксированных)
|
||||||
BCLEAR in boolean := false -- Флаг очистки коллекции (false - не очищать, true - очистить коллекцию перед добавлением)
|
BCLEAR in boolean := false -- Флаг очистки коллекции (false - не очищать, true - очистить коллекцию перед добавлением)
|
||||||
)
|
)
|
||||||
is
|
is
|
||||||
@ -805,7 +819,8 @@ text="Формат data_grid и gant как в chart"
|
|||||||
SHINT => SHINT,
|
SHINT => SHINT,
|
||||||
SPARENT => SPARENT,
|
SPARENT => SPARENT,
|
||||||
BEXPANDABLE => BEXPANDABLE,
|
BEXPANDABLE => BEXPANDABLE,
|
||||||
BEXPANDED => BEXPANDED);
|
BEXPANDED => BEXPANDED,
|
||||||
|
NWIDTH => NWIDTH);
|
||||||
end TCOL_DEFS_ADD;
|
end TCOL_DEFS_ADD;
|
||||||
|
|
||||||
/* Поиск описания колонки по наименованию */
|
/* Поиск описания колонки по наименованию */
|
||||||
@ -853,6 +868,9 @@ text="Формат data_grid и gant как в chart"
|
|||||||
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_PARENT, SVALUE => RCOL_DEFS(I).SPARENT);
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_PARENT, SVALUE => RCOL_DEFS(I).SPARENT);
|
||||||
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_EXPANDABLE, BVALUE => RCOL_DEFS(I).BEXPANDABLE);
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_EXPANDABLE, BVALUE => RCOL_DEFS(I).BEXPANDABLE);
|
||||||
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_EXPANDED, BVALUE => RCOL_DEFS(I).BEXPANDED);
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_EXPANDED, BVALUE => RCOL_DEFS(I).BEXPANDED);
|
||||||
|
if (RCOL_DEFS(I).NWIDTH is not null) then
|
||||||
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_WIDTH, NVALUE => RCOL_DEFS(I).NWIDTH);
|
||||||
|
end if;
|
||||||
/* Предопределённые значения */
|
/* Предопределённые значения */
|
||||||
if (RCOL_DEFS(I).RCOL_VALS is not null) and (RCOL_DEFS(I).RCOL_VALS.COUNT > 0) then
|
if (RCOL_DEFS(I).RCOL_VALS is not null) and (RCOL_DEFS(I).RCOL_VALS.COUNT > 0) then
|
||||||
for V in RCOL_DEFS(I).RCOL_VALS.FIRST .. RCOL_DEFS(I).RCOL_VALS.LAST
|
for V in RCOL_DEFS(I).RCOL_VALS.FIRST .. RCOL_DEFS(I).RCOL_VALS.LAST
|
||||||
@ -1148,11 +1166,16 @@ text="Формат data_grid и gant как в chart"
|
|||||||
|
|
||||||
/* Формирование таблицы данных */
|
/* Формирование таблицы данных */
|
||||||
function TDATA_GRID_MAKE
|
function TDATA_GRID_MAKE
|
||||||
return TDATA_GRID -- Результат работы
|
(
|
||||||
|
BFIXED_HEADER in boolean := false, -- Зафиксировать заголовок
|
||||||
|
NFIXED_COLUMNS in number := 0 -- Количество фиксированных колонок
|
||||||
|
) return TDATA_GRID -- Результат работы
|
||||||
is
|
is
|
||||||
RRES TDATA_GRID; -- Буфер для результата
|
RRES TDATA_GRID; -- Буфер для результата
|
||||||
begin
|
begin
|
||||||
/* Формируем объект */
|
/* Формируем объект */
|
||||||
|
RRES.BFIXED_HEADER := COALESCE(BFIXED_HEADER, false);
|
||||||
|
RRES.NFIXED_COLUMNS := COALESCE(NFIXED_COLUMNS, 0);
|
||||||
RRES.RCOL_DEFS := TCOL_DEFS();
|
RRES.RCOL_DEFS := TCOL_DEFS();
|
||||||
RRES.RGROUPS := TGROUPS();
|
RRES.RGROUPS := TGROUPS();
|
||||||
RRES.RROWS := TROWS();
|
RRES.RROWS := TROWS();
|
||||||
@ -1188,6 +1211,7 @@ text="Формат data_grid и gant как в chart"
|
|||||||
SPARENT in varchar2 := null, -- Наименование родительской колонки
|
SPARENT in varchar2 := null, -- Наименование родительской колонки
|
||||||
BEXPANDABLE in boolean := false, -- Разрешить сокрытие/отображение дочерних колонок
|
BEXPANDABLE in boolean := false, -- Разрешить сокрытие/отображение дочерних колонок
|
||||||
BEXPANDED in boolean := true, -- Отобразить/скрыть дочерние колонки
|
BEXPANDED in boolean := true, -- Отобразить/скрыть дочерние колонки
|
||||||
|
NWIDTH in number := null, -- Ширина колонки (обязательно для фиксированных)
|
||||||
BCLEAR in boolean := false -- Флаг очистки коллекции описаний колонок таблицы данных (false - не очищать, true - очистить коллекцию перед добавлением)
|
BCLEAR in boolean := false -- Флаг очистки коллекции описаний колонок таблицы данных (false - не очищать, true - очистить коллекцию перед добавлением)
|
||||||
)
|
)
|
||||||
is
|
is
|
||||||
@ -1207,6 +1231,7 @@ text="Формат data_grid и gant как в chart"
|
|||||||
SPARENT => SPARENT,
|
SPARENT => SPARENT,
|
||||||
BEXPANDABLE => BEXPANDABLE,
|
BEXPANDABLE => BEXPANDABLE,
|
||||||
BEXPANDED => BEXPANDED,
|
BEXPANDED => BEXPANDED,
|
||||||
|
NWIDTH => NWIDTH,
|
||||||
BCLEAR => BCLEAR);
|
BCLEAR => BCLEAR);
|
||||||
end TDATA_GRID_ADD_COL_DEF;
|
end TDATA_GRID_ADD_COL_DEF;
|
||||||
|
|
||||||
@ -1249,6 +1274,18 @@ text="Формат data_grid и gant как в chart"
|
|||||||
RDATA_GRID.RROWS(RDATA_GRID.RROWS.LAST) := RROW;
|
RDATA_GRID.RROWS(RDATA_GRID.RROWS.LAST) := RROW;
|
||||||
end TDATA_GRID_ADD_ROW;
|
end TDATA_GRID_ADD_ROW;
|
||||||
|
|
||||||
|
/* Сериализация описания таблицы данных */
|
||||||
|
procedure TDATA_GRID_DEF_TO_XML
|
||||||
|
(
|
||||||
|
RDATA_GRID in TDATA_GRID -- Описание таблицы данных
|
||||||
|
)
|
||||||
|
is
|
||||||
|
begin
|
||||||
|
/* Cтатические атрибуты заголовка */
|
||||||
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_FIXED_HEADER, BVALUE => RDATA_GRID.BFIXED_HEADER);
|
||||||
|
PKG_XFAST.ATTR(SNAME => SRESP_ATTR_FIXED_COLUMNS, NVALUE => RDATA_GRID.NFIXED_COLUMNS);
|
||||||
|
end TDATA_GRID_DEF_TO_XML;
|
||||||
|
|
||||||
/* Сериализация таблицы данных */
|
/* Сериализация таблицы данных */
|
||||||
function TDATA_GRID_TO_XML
|
function TDATA_GRID_TO_XML
|
||||||
(
|
(
|
||||||
@ -1262,6 +1299,12 @@ text="Формат data_grid и gant как в chart"
|
|||||||
PKG_XFAST.PROLOGUE(ITYPE => PKG_XFAST.CONTENT_);
|
PKG_XFAST.PROLOGUE(ITYPE => PKG_XFAST.CONTENT_);
|
||||||
/* Открываем корень */
|
/* Открываем корень */
|
||||||
PKG_XFAST.DOWN_NODE(SNAME => SRESP_TAG_XDATA);
|
PKG_XFAST.DOWN_NODE(SNAME => SRESP_TAG_XDATA);
|
||||||
|
/* Открываем таблицу данных */
|
||||||
|
PKG_XFAST.DOWN_NODE(SNAME => SRESP_TAG_XDATA_GRID);
|
||||||
|
/* Формируем описание таблицы данных */
|
||||||
|
TDATA_GRID_DEF_TO_XML(RDATA_GRID => RDATA_GRID);
|
||||||
|
/* Закрываем таблицу данных */
|
||||||
|
PKG_XFAST.UP();
|
||||||
/* Если необходимо включить описание колонок */
|
/* Если необходимо включить описание колонок */
|
||||||
if (NINCLUDE_DEF = 1) then
|
if (NINCLUDE_DEF = 1) then
|
||||||
TCOL_DEFS_TO_XML(RCOL_DEFS => RDATA_GRID.RCOL_DEFS);
|
TCOL_DEFS_TO_XML(RCOL_DEFS => RDATA_GRID.RCOL_DEFS);
|
||||||
|
@ -2,3 +2,4 @@ grant execute on PKG_P8PANELS to public;
|
|||||||
grant execute on PKG_P8PANELS_PROJECTS to public;
|
grant execute on PKG_P8PANELS_PROJECTS to public;
|
||||||
grant execute on PKG_P8PANELS_SAMPLES to public;
|
grant execute on PKG_P8PANELS_SAMPLES to public;
|
||||||
grant execute on PKG_P8PANELS_EQUIPSRV to public;
|
grant execute on PKG_P8PANELS_EQUIPSRV to public;
|
||||||
|
grant execute on PKG_P8PANELS_RRPCONFED to public;
|
546
dist/p8-panels.js
vendored
BIN
docs/img/66.png
Before Width: | Height: | Size: 165 KiB After Width: | Height: | Size: 119 KiB |
BIN
docs/img/68.png
Before Width: | Height: | Size: 130 KiB After Width: | Height: | Size: 103 KiB |
BIN
docs/img/69.png
Before Width: | Height: | Size: 157 KiB After Width: | Height: | Size: 128 KiB |
BIN
docs/img/70.png
Normal file
After Width: | Height: | Size: 131 KiB |
BIN
docs/img/71.png
Normal file
After Width: | Height: | Size: 78 KiB |
955
img/sample.svg
Normal file
@ -0,0 +1,955 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" id="Layer14" x="0" y="0" style="opacity:1;z-index:1" viewBox="0 0 1920 1920">
|
||||||
|
<style>
|
||||||
|
.stn0{fill:#d7d6d6}.stn5{fill:#aeb0b4}.stn6{fill:#909294}.stn13{fill:#84878a}.stn14{fill:#4e4e50}.stn17{fill:#f9f9f9}.stn22{fill:#444041}.stn28{fill:#b9b9ba}.stn32{fill:#bebfc1}.stn33{fill:#7d7f80}.stn34{fill:#575558}.stn35{fill:#b6b8ba}.stn46{fill:#babbbe}.stn53{fill:#cacbcd}.stn62{fill:#babcbf}
|
||||||
|
</style>
|
||||||
|
<g id="Group_2">
|
||||||
|
<path d="M1180.3 1180.2c-3.5 1.5-6.9 3.2-10.3 4.8 2.1 1.9 4.7 1.2 7.2 1.2 3 .1 6 .1 8.8 1.3 4.8 2 5.5 4.3 2.4 8.3-.2.2-.2.6-.1 1 .1.8.5 1.3 1.2 1.8 4.2-.3 7.3 1.1 10 3.4-4.4-8.6-10.1-16.4-17.3-23.8.2.9-.5 1.4-1.9 2zm149.8-59.1c-2-1.3-4.1-1-6.3-.9-12.2.9-23.8 4.5-35.1 8.8-1.4.5-2.5.7-3.4.5 4.9 14.8 12.6 28.1 20.1 41.6.5-.9 1.5-1.6 3-1.9 13.2-2.5 25.1-8.9 37.9-12.3 2.9-.8 5.9-1.4 7.3-4.5.3-11.8-11.2-27-23.5-31.3z" class="stn0"/>
|
||||||
|
<path fill="#b8b9b9" d="M1315.1 1203.1c-2-.1-2.1-1.8-2.6-3.2-3-8.6-5.9-17.2-8.9-25.9-1.1-3.1.5-5.2 3.1-5.7 13.6-2.5 25.9-9.1 39.2-12.5 2.6-.7 5.7-1 7.2-3.9 3.3 1.3 2.9 4.5 3.2 7.1.6 7.1.3 14.2-2.3 20.9-3.5 5.3-8.6 8.8-13.9 11.8-8 4.6-16.3 8.7-25 11.4z"/>
|
||||||
|
<path fill="#bcbdbf" d="M1170 1185h9.9c4.8 0 8.9 1.5 12.1 5.4 2.1 2.6 3.5 4.5-1.4 4.7-1 .1-1.3.9-1.5 1.7-4.8 1.4-9.7 1.9-14.6 2.7-3 .5-4.6 2.1-4 5.1 1.5 9 4.9 17 12.9 22.2 4.8 3.1 8.3 1.8 9.7-3.8 1.7-6.5.4-12.9-2-19.1-.7-1.9-2.5-3.7-1-6 6.8-1.7 10.3 2.5 14.2 7.1 4.8 5.7 8.7 12 13.4 17.6 3.1 3.6 2.4 5-1.7 6.2-6.6.8-13.2 1.1-19.7 2.3-15.2 2.8-19.3-1.5-26.3-13.7-2.5-4.4-4.2-9.4-3.9-14.8.1-2.7-.8-3.8-3.6-4-2-.1-4.5-.4-5.2-3-.7-2.6 1.4-3.9 2.9-5.3 2.6-2.6 6.3-3.8 9.8-5.3z"/>
|
||||||
|
<path fill="#7e8185" d="M1353.9 1179.9c-1.7-1.6.1-3 .3-4.4 1.2-8 1.9-15.9-1.2-23.6-3-13.7-10.7-23.9-23-30.8 7.2.4 12.3 4.4 17 9.3 12.6 13.1 15.7 35.1 6.9 49.5z"/>
|
||||||
|
<path fill="#101317" d="M1190 1198c2.8 6.6 5.6 13.1 5.1 20.4-.3 4.4-.6 9.4-5.1 11.1-4.7 1.8-8.6-1.6-11.7-4.9-5.7-6.2-8.8-13.5-9.5-21.9-.1-1.2-.7-3.4.8-3.6 6.5-.9 12.7-3.6 19.4-2.4.3.5.6.9 1 1.3z"/>
|
||||||
|
</g>
|
||||||
|
<g id="Group_1">
|
||||||
|
<path d="M1338 1265.2c-2.2-7.7-8-13.6-10.4-21.4-3.7-12.2-8.4-24.1-12.6-36.1-.5-1.5-1.4-3.1 0-4.6-3.4-9-6.1-18.3-9.4-27.3-.7-1.9-.8-3.5-.2-4.7-7.5-13.4-15.2-26.8-20.1-41.6-1.6-.3-2.5-1.7-3.4-3.7l-6-14.1c-9-21.4-17.7-42.9-27-64.1-2.1-4.9-1.3-6.5 3.2-8.8 18.8-9.6 38.3-17.7 57.8-25.8 1.1-2 3.1-3.2 3.1-6-.1-6.3-4.9-12.9-11-15.2-5.6-2.1-11.3-1.9-17.1-1.9-4.3-1.9-8.5-.2-12.7.3-12.2 1.7-23.9 5.7-35.7 9.1-3.1.9-5.6 1.2-7.2-2.7-4.5-11.1-9.8-21.8-14.2-32.9-2.2-4-2.4-8.2-1.8-12.5.7-6.3 2.2-7.9 8.5-9 3.9-.7 8-.8 11.1-3.7.7-1 .5-2 .2-3-.7-2.1-1.8-3.9-3.2-5.6-4-3.7-8.8-5.4-14.1-5.2-7.3.2-14.5-.8-21.8 0-4.5.2-8.7 1.8-13.1 2.5-13.3 3.8-26.8 6.8-40.2 10.1-42.4 10.5-84.7 21-126.8 32.7-9.9 2.8-20.1 4.5-29.9 8.2-2.4 1.8-4.8 3.6-7.6 4.6-2 .7-4.4 1.4-4.8 3.9-.5 2.6 2.9 2.1 3.9 3.6-1.3 1.6-3 2-4.5 2.6-14.6 6.2-29.7 10.8-44.4 16.5-9 3.4-17.7 7.7-26.9 10.6-11.4 4.6-22.5 9.7-33.5 15.1-1.5.7-3 1.4-3.5 3.3 1.6 4.2 4.8 2.2 7.2 1.5 10.4-3 20.6-6.5 31-9.5 21.8-6.5 43.7-13.1 66.3-16.4 9.9-1.4 19.2-.8 27.3 7 5 4.8 12.2 8.8 19 9.1 6.7.3 11.7 3.1 17.1 5.7 1.1.5 2.8.9 2.6 2.6-.2 1.3-1.8 1.3-2.8 1.8-3.9 1.8-8.2 2.7-12.1 4.6-1.2.6-2.6 1.5-2.3 2.9.3 1.7 1.9 2.1 3.5 2.3 1.2.1 2.3-.2 3.5-.3 6.6-.8 13.1-2.3 19.6-3.7 3-.6 5.5-.2 8.2 1.1 6.6 3.1 12.5 7.6 19.1 10.8 1.5.7 3 1.5 4.3 2.5 3.6 2.9 3.4 5.2-.4 7.7-2.6 1.7-5.8 2.8-6.7 6.3-1.5 2.2-2.8 4.5-4.4 6.6-2 2.8-4.2 6.2-1.7 9 2 2.3 5.7 2.6 9.3 1.8 9.8-2 19.2-5.4 28.6-8.7 3.4-1.2 5.7-.7 7.8 2.1 5.3 6.8 10.7 13.6 16.3 20.1 2.4 2.8 2.2 3.8-1.2 5-4.3 1.6-8.6 3.5-12.7 5.8-2 1.1-4.6 2.9-3.7 5.9.9 3.1 3.9 3.2 6.6 3.3 6.9.1 13.5-1.9 20-3.5 2.7-.7 4.5-.1 6.1 1.9 14.4 17.8 28.8 35.6 43.4 53.3.5.6.8 1.1.9 1.5 7.2 7.4 12.9 15.1 17.3 23.8 1.8 1.5 3.4 3.4 5.1 5.4 4 4.7 7.1 10.1 11.1 14.7 2.1 2.4 2.1 4.5.3 6.8 3.5-.3 5.8.8 7.8 4 3.7 5.9 8.1 11.4 11.8 17.2 7.4 11.4 15.8 22.1 22.6 33.9 3.2 5.5 6.2 11.4 10.8 16 3-1.6 2.9-4.6 3.3-7.3 1.6-11.3 3.5-22.6 5.9-33.7.5-2.5 1.1-5 3.6-6.3 6.8-3.5 13.7-5 21-1.4 5.9 2.9 10.6 7.3 15.7 11.4 6.3 5.1 12.2 10.8 20.7 12.3 1.8-3.8-.5-7-1.4-10.1z" class="stn0"/>
|
||||||
|
<path id="4" d="M148 898.1c-6.6-15.8-13.3-31.7-19.9-47.5-6.2-15-12.4-29.9-17.8-45.2-.9-2.6-1.8-5.3-2.1-8.1-.7-5.7 1.2-9 7-10.2 10.7-2.2 21.2-5.5 32.5-5.6 4.2 0 8.8-3.1 13.5-3.9 16.6-3.1 33.1-6.3 49.7-9.3 4.8-.9 9.3.7 13.2 3.5 9.4 6.7 18.2 14.3 27.1 21.8 13 11.1 26 22.1 39 33.2 12.5 10.7 24.8 21.5 37.3 32.1 12.5 10.6 25.1 21.1 37.5 31.7 10.2 8.7 20.3 17.6 30.5 26.3 13.2 11.3 26.5 22.5 39.7 33.8 13.1 11.2 26.1 22.5 39 34 6.4 5.7 13.2 9.8 22.2 9.5 3.6-.1 7.2.7 10.9 1-.2 3-2.5 3-4.6 3.1-2.3.1-4.4.6-6.4 1.8-10.6 4.9-21.9 3.9-33 2.8-28.3-2.9-55.4-11.5-82.6-19.4-20.3-5.9-40.3-12.9-60.4-19.3-9.4-3-18.3-7.2-27.8-9.8-2.1-.4-4.1-1-5.8-2.2-4.8-3-10.1-4.9-15.7-5.9-3.6-1-7.4-1.7-10.5-4.1-6.7-4.1-13.8-7.5-21.5-9.1-16.3-5.8-33.1-9.8-49.6-14.8-12.9-3.9-25.3-8.8-36.3-17-1.7-1.2-3.2-2.6-5.1-3.2z" class="stn5"/>
|
||||||
|
<path d="M1032.1 854.1c43.3-11.2 86.6-22.5 130-33.7 38.8-10 77.7-20 116.6-29.9 1.1-.3 2.3-.2 3.4-.3 6.5-.3 12.8-1.6 19.2-2.2 2.7-.2 5.3-.5 7.9 0 5.8 1.2 7.4 5.4 4.2 10.4-1.5 2.2-4.9 4-3.1 7.2 1.7 3.2 5.2 2.3 8.1 2.4 9.1.5 18.2.2 27.3 1.7 5.8.9 11.6 1.7 16.5 5.1 2.5 1.8 4.7 0 7.1.3 1.3 1.7 1.1 3.6.5 5.5-1.8 1.9-.9 5.1-3.2 6.8-3.2.4-4.7-2.2-6.4-4-2.4-2.4-4.8-3.2-8-2.1-4 1.4-8.3 2-12.5 4.1 6.2-1.4 7.8 2.9 9.2 7.1 1.1 3.2 3.3 6.2 2.1 9.9-13.5 7.5-27.3 14.5-41.9 19.6-2.7 1-5.4 1.8-8.2.5-2.7-2.2-2.9-5.5-4-8.4-2.9-7.5-5.1-8.8-12.8-6.9-11.4 2.7-11.5 3.3-8.7 14.4 1.1 4.5 3.8 9 1.6 13.9-9.1 2.6-18.6 3.8-27.8 5.7-38.7 7.5-77.3 15.8-115.7 24.3-28.2 6.3-56.4 12.9-84.5 20-22.6 5.7-45.2 11.2-68 16.1-4.9 1.1-9.6 2.9-14.5 3.7-4.4-.3-8.4 3.1-12.9 1.2-1.7-3.2 2.4-3.3 3.1-6.2-6.4-1.7-12.7-3.7-19.4-2.6-4.4.7-8.5.5-12.7-1.4-3.5-1.6-7.5-1.6-11.1-2.8-1.7-.6-3.4-1.3-5-2.2-5.1-3.2-5.4-6-.7-9.5 8.2-6.3 16.9-11.8 26.9-15.1 1.6-.5 3.2-1 4.7-1.8 1.6-.8 3.7-1.6 3-4-.5-2-2.6-1.6-4.2-1.8-8.6-1.2-16.8 1.5-25.2 2.1-3.1.2-6.2 1.1-9.4 1.4-2.3.2-5.1.8-5.8-2.2-.8-3 .3-5.7 3.5-6.9 6.1-2.3 11.9-5.3 18-7.4 2.1-.7 4.1-1.5 4.7-4 6-3.4 12.8-4.6 19.3-6.2 25.8-6.1 51.1-13.6 76.8-20 3.9-1 7.9-1.5 12-1.8z" class="stn6"/>
|
||||||
|
<path id="5" fill="#c5c5c6" d="M213.1 1090c-.8-1.8-2.4-2.7-4-3.5-16.6-8.6-33.3-17.2-49.8-25.9-25.4-13.3-50.8-26.5-76.1-40.2-8.8-4.8-18.8-7.1-27-13-1.2-.9-2.5-1.6-3.6-2.7-2.4-2.4-2-4.5 1.3-5.6 14.9-4.9 30.1-8.8 45.6-11.3 15.1-2.4 28.7 3.5 42.8 6.4 15.7 3.3 31.3 7.2 46.9 10.9 1.1.3 2.2 1 3.2-.2 2.7.5 3 2.9 3.8 4.8 2.8 7.4 6.8 14.4 9.1 22 6 13.2 11.2 26.7 16.9 40 3.1 7.2 6.5 9.3 14.4 8.3 11.3-1.4 21.9-5.7 32.8-8.8 13.1-3.7 26.1-7.9 39.2-11.7 2.5-.7 5.4-1.3 6.9 1 3.2 4.8 7.6 4.7 12.3 4 4.8 0 9.5.7 14.3 1.4 4.9.7 10.2.5 15.2.1 14.2-1.2 28.3-.4 42.5-.6 2 .3 4.2.2 4.9 2.6.6 2.2-.9 3.7-2.2 5.2-2 2.1-4 3.9-7.2 3.7 6 .9 11.9 1.9 17.6 3.3 5 1.3 6 4.6 3.4 9.1-1.7 2.9-4.1 5.2-5.3 8.4-3.4 8-9.4 14.5-12.9 22.4-1.8 3.8-4.5 7.1-6.5 10.7-2.3 4.4-1.1 6.5 3.7 6.6h19.8c2 0 4-.2 5.8.9.5.4.5.9.1 1.4-10.8 0-21.6.1-32.5 0-2.9 0-4.3 1-5.8 3.5-13.3 22.9-26.8 45.8-40.4 68.6-4 6.6-9.7 11.1-17.2 13.5-16.5 5.4-33.1 10.6-50.2 14-5 1-6 .4-5.8-4.8.5-16.1-1.7-32.1-2.3-48.1-.4-10.7-1.5-21.4-1.9-32.2-.2-5.1-1.4-10.2-.9-15.3.2-2.5-1.3-2.9-3.4-3-8.9-.3-17.9-.8-26.8-1.2 2.4-4.1 4.1-8.4 4.1-13.3 0-2 1.1-3.7 3.2-4.5 13.7-.1 26.5-4.7 39.4-8.5 6.5-2 13.2-3.5 19.9-4.9 12.8-2.6 25.4-6.4 38.4-8 .6-.2-.2-1.2 0-.6l-.2.1c-11 2.6-21.9 5-33.3 5.3-2.3.1-4.6.3-7 .8-15.2 2.8-30.8 3.7-46.1 5.9-4.4.6-9 1.3-13.2-1-1.4-1.2-2.3-2.9-3.1-4.5-1.5-3.9-3.8-7.4-6.3-10.7-3.8-5-4.3-5.1-9.9-2.5-1.8 1-3.8 3.2-6.6 1.7z"/>
|
||||||
|
<path fill="#d4d3d3" d="M1032.1 854.1c-20 5.3-39.9 10.5-59.8 15.9-16.1 4.4-32.5 7.7-48.3 12.9-1.1 2-3.2 2.3-5.1 2.7-40.1 9.9-80 20.5-120.1 30.7-1.9.5-3.9 1.3-5.7-.3 3.8-6.9 11.3-8.8 17.5-12.4-1.9-4.5-6.5-1.1-8.8-3.6-2-2.1-2.5-5-6.2-6.2-15.8-5-31.5-10.3-47.1-16-5.8-2.2-11.1-.2-16.5.3-5.6.6-11.1 1.7-16.7 2.6-.2 0-.3.1-.5.1-3.4-.3-8.1.4-9.1-3.3-1-3.6 3.5-4.6 6.3-5.8 2.3-1.1 4.9-1.7 8.8-2.9-5.9-2.2-10.6-4.1-15.3-5.7-18.7-6.5-37.3-12.8-56-19.3-4.1-1.4-7.9.8-11.6 1.5-9.4 2-19.1 1.7-28.5 3.7-2.5.5-5-.6-7.2-1.6-3-1.4-2.8-4 .4-6.1 4.7-3 10.2-3.8 15.4-5.4 3.2-2.2-.4-2-1-2.8-1.4-.2-3 .3-4-1.1-3.4-2.5-7.5-3.4-11.4-4.9-11.2-4.5-22.9-8.2-33.3-14.5-.7-.4-1.5-.7-2.2-1.2-2.3-1.6-5.4-3-4.5-6.4.9-3.1 4.1-2.2 6.5-2.2 3.2 0 6 0 6.6-4.1.1-.5.4-.9.8-1.2 3.6-3.2 5-6.5 1.2-10.5-.5-.5-.2-1.3.3-1.8 10.2.8 20.2 3.3 30.3 5.2 29.4 5.4 58.8 11.1 88.1 16.8 18.7 3.7 37.2 7.8 55.9 11.5 28 5.6 56.2 10.9 84.2 16.4 19.6 3.8 39.2 7.8 58.9 11.6 20.3 4 40.6 7.7 60.8 12.1 6.8 1.5 13.3-2.1 19.9-3.4 9.9-1.9 19.7-4.2 29.9-4.4 5-.7 10-.7 15 0 4 1 8 2 12.1 3.1z"/>
|
||||||
|
<path id="6" fill="#777a7e" d="M496 999c1.5-1.8 3.7-1.9 5.8-2 2 0 4 .3 5.3-1.8 12.1-3.6 24.2-7.4 36.3-10.9 23.9-6.9 47.9-13.7 71.9-20.3 24.9-6.9 49.8-13.5 74.8-20.2.2 2.7-2.2 3.1-3.8 3.9-7.3 3.4-15.1 5.2-22.7 7.8-12.7 4.4-25.7 8.2-38.2 13.3-1.7.7-3.5 1.2-5.4 2.7 6.4.6 12.3-.5 18-1.2 32.9-4 65.7-8.3 98.6-12.9 10.3-1.5 20.6-4 31.2-3.9 1.3 0 2.7-.2 4 .1 3.1.8 3.8 2.7 1.6 5.1-2.3 2.5-5.3 4-8.4 5.3-10 4.3-19.6 9.2-28.9 14.9-2 1.2-4 2.4-5.4 4.4-1.8 2.6-1.3 4.4 1.9 5.1 3.3.7 6.5 1.3 9.9 1.2 1.5 0 3 0 4.5.5 1.3.5 2.4 1.2 2.5 2.8.1 1.4-.9 2.1-1.9 2.7-2.7 1.3-5.6 2.2-7.9 4.3-8.4 3.5-17.5 4.3-26.1 7.3-30 7.1-59.8 14.9-89.7 22.1-32.9 7.9-66.2 13.7-99.8 17.4-14.1 1.5-28 4.2-42.1 5.3-15.4 1.2-30.9 2-46.3 2.5-17.8.5-35.6.1-53.5.1-2.4 0-5 .4-7.1-1.5-.8-3.3 2-3.4 3.9-4 20-6.2 40.2-12 60.3-18 23.1-6.9 46.3-13.5 70.5-21-4.9-1.3-8.4-2.9-8.4-8.1-.2-2.7-4.1-1-5.4-3z"/>
|
||||||
|
<path fill="#86888b" d="M739 999c1.5-2.5 4.2-3 6.6-4 1.2-.5 3-.6 2.8-2.2-.3-2-2.2-1.8-3.6-1.7-4.2.2-8.3-.4-12.4-1-5-.7-6.3-3.3-3.2-7.3 4.6-5.8 11.8-7.9 17.8-11.6 7.5-4.7 16.3-6.8 23.6-11.8 1.3-.9 3.6-1.7 2.8-3.5-.6-1.4-2.8-1.1-4.5-.9-21.7 2.4-43.3 5-64.8 8.8-12.2 2.2-24.6 2.9-36.9 4.3-9 1.1-18 2.5-27 3.4-7.7.8-15.3 2.2-23.6 1.4 1.2-2.8 3.5-3.4 5.6-4.2 16.8-6.7 34.1-12 51.3-17.7 5.7-1.9 11.9-3 16.7-7.1 22-5.9 44.1-11.9 66.1-17.8l36.9-9.9c9-2.2 18-4.3 27-6.6 28.2-7.2 56.5-14.5 84.7-21.7 6.4-1.6 12.8-3.2 19.1-4.9 2.1 2.8-.9 3-2.1 3.6-6.4 2.7-12.8 5.4-19.4 7.7-2.7.9-3.5 2.6-3.9 5-.3 2.1.8 2.8 2.6 2.6 9-1.4 18-2.5 26.8-4.4 4.5-1 8.7 1.4 13.2.3 1.2-.3 3.3 1.1 3.3 3.1-.1 1.6-.4 3.3-2.3 4.1-1.5.7-3 1.5-4.5 2-11.2 3.3-20.7 9.6-30 16.3-3 2.2-3 3.8.1 6 1.5 1.1 3.1 2.1 4.8 2.4 8.8 1.5 16.7 6.8 26.4 4.6 6.2-1.4 12.7 1.5 19 2.9 2.4.5 1.8 1.9.3 3.1-1.6 1.4-4.2 1.5-5.2 3.7-1.8 3.2-5.3 3.2-8.3 3.9-20.6 5.5-41.2 11-61.9 15.8-19.9 4.7-39.7 9.8-59.7 14.4C797.6 986 772 992 746.6 999c-2.4.7-5 2.1-7.6 0z"/>
|
||||||
|
<path fill="#9ea0a5" d="M421.2 1139.1c-10.2 0-20.4-.1-30.6-.2-1.4 0-3.3.8-4-.9-.5-1.2.7-2.4 1.5-3.5 1-1.5 1.9-3 2.9-4.6 14.2-2.6 28.8-3.2 43.1-5 16.6-2.2 33.4-3.9 50.1-5.6 3.9-.4 7-.7 7.3 4.6.1 2.3 2 2.9 4 2.7 8.7-1.1 17.4-2.7 25.9-5 1.3-.4 2.5-1.2 3.2-2.3 2.5-4.5 6.6-5.6 11.3-6.1 33.9-4.1 67.5-10.2 100.8-17.6 51.2-11.3 102-24.6 152.6-38.2 18-4.8 36-9.8 54-14.6 1.9-.5 3.8-1.1 5.9-.5 2.3 2 0 2.7-1.1 3.4-4.7 3.4-9.9 6-15 8.7-12.3 6.6-24.4 13.3-36 21.1-3.9 2.6-7.3 5.7-10.9 8.5-25.5 7.6-51.2 14.8-77 21.1-2.1.5-4.1 1.3-6.1 1.9-12.5 2.8-25.1 5.7-37.6 8.4-17.3 3.8-34.7 7-52.2 9.6-13.1 1.9-26.2 4.1-39.3 5.9-7.6 1-15.4 1.1-23 2.1-10 1.3-20 1.5-29.9 2.8-9.5 1.2-19.1 1-28.7 1.4-3.7 1.1-7.5-.4-11.1.8-3.3.1-6.6.1-9.9.2-5.3 1.1-10.8-.4-16.1.8-3.6.1-7.2.1-10.8.2-8.1.5-15.7.5-23.3-.1z"/>
|
||||||
|
<path fill="#b1b3b7" d="M204 1032c-3.4-9.2-7.4-18.1-11.7-27-4.7-11.4-9.5-22.8-14.2-34.1 1.9-1.1 3.1.2 4.3 1.2 3.3 2.7 7 4.8 10.9 6.4 10.9 4.5 22.3 6.5 33.9 8 14.6 2 29.3 4.2 44 5.3 16.8 1.3 32.8 6.7 49.5 8.5 24.5 2.7 48.9 5.7 73.5 7.2 23.6 1.4 47.2 1.9 70.9 1.9 2.9 0 7.3-.5 7.5 2.9.2 4-4.3 3.7-7.4 3.9-8.5.6-16.8 2.4-25.2 3.5-4.4.6-8.3.5-11.6-2.8-.9-.9-2-2-3.5-1.4-1.5.7-.6 2-.5 3.1.3 2.5-1.3 3.2-3.2 3.8-3.4 1-6.9 1.3-10.3 1.9-14.3 2.2-28.8 3.4-43.1 5.8-16.4 1.1-32.7 2.8-49 3.9-9.6.6-19.2.5-28.8 1.3-19 1.5-38.1 1.7-57.2 2.8-10 .7-19.8-.9-28.8-6.1z"/>
|
||||||
|
<path d="M1301 862c7.8.3 14.2-4.2 21.1-6.6 8.5-2.9 16-8 24-11.9 1.5-.7 2.9-1.6 4.7-1.4.8.3 1.1 1.2 2.3 1.3-.7-4.7-2.7-8.9-4.2-13.2-.7-1.9-2.5-4.2.1-5.8 2.6-1.6 5.5-3.8 8.8-1.8 4.5 2.7 7.9 6.6 11.2 10.6 2 2.5.2 4.8-1.3 6.9 3.7-3.8 4.6-19.3 1.6-24.9-2.1 2.9-3.8 3.6-7.3 1-7.1-5.2-15.9-5.3-24.2-5.9-7.3-.5-14.6-1-22-.5-2.5.2-6-.1-7.2-3.3-1.2-3 .2-5.3 2.8-7.2 2.2-1.7 3.5-4.2 2.6-7-.9-2.8-3.9-3.1-6.3-3-5.6.2-11.2.9-16.7 1.5-2.9.3-5.9 1.1-8.7-.4 11.3-3 22.6-6.3 33.9-9.1 28.7-7.2 57.4-14.2 86.1-21.2 2-.7 4-.8 5.1 1.4 1 2 3.1 2.4 4.7 3.4-1.1 3.9.8 5.9 3.8 8.3 6.3 4.8 10.1 11.5 10.6 19.6.2 3.4 2 6.8.2 10.3-2.8.5-4.1 1.9-4.2 4.9-.2 3.6-.7 7.2-2.5 10.5-1.2 1.6-2.4 3.1-4.6 3.4-2.4-.6-2.4-2.9-3.2-4.7-1.5-3.1-2-6.6-4.4-9.3-1.8 1.3-1.6 3.2-2.6 4.6 4.9-.2 8.9 7.4 8.4 15.1-3.4 1.2-5.5 4.8-9.4 4.9-1.1-2.2-2.9-2-5.1-1.7-4.2.7-5.1-.6-3.5-4.7.9-2.3 2.3-4.4 2.6-7 .5-4.8-2.9-8.4-7.3-7.7-3.1.5-4.6 2.2-3.5 5.5.1-3.1 1.7-4.8 4.8-4.6 3.1.2 4.8 2 5.3 5 .3 1.9-.1 3.6-.9 5.3-.9 2-2 3.8-2.8 5.8-.6 1.5-2.1 3.2-.8 4.6 1.1 1.2 2.8 0 4.2-.3 2.1-.3 4-1.8 6.2-.7.9 3-1.4 4.1-3.3 5.3-5.2 3.2-10.6 6.2-16 9.1-2.6 1.4-4.2 2.8-4.1 6 .1 3.5-2.5 5-5.7 3.8-3.8-1.5-5.5-.1-5 4-4.7 2.7-9.6 3.2-14.8 1.5-2.1-2.4-4-2.2-5.8.6-1.8 2.3-4.2 2.4-6.7 1.9-2.3-1.5-4.4-1.5-6.2 1-4.2 2.7-9.1.9-13.6 2.2-5.7 1.7-11.5 3-17.5 3.3-1.1.1-2.2.3-3-.6-1.1-2.9-2.5-5.4-.7-8.1z" class="stn13"/>
|
||||||
|
<path d="M191.9 979.1c-5.5-1.1-9.1-5.5-13.8-8.2-4.6-10.8-9.2-21.5-13.7-32.3-5.6-13.5-11-27-16.5-40.5.3-.5.2-2.2 1.3-1.3 21.4 18 48.5 21.6 73.8 29.8 5.4 1.7 11.1 2.5 16 5.5.4.3 1.1.5 1.2.9 1.6 6.9 7.3 11.4 10.4 17.3 3.6 7 3.9 13.9-.5 20.7 1.4 1.7 2.7.5 3.9-.2 2.4-1.5 4.3-1 5 1.7 1 4 3.3 7.2 5.7 10.4 1.4 1.9 2.5 4.1 1.1 6.5-1.4 2.5-3.9 2.4-6.1 2.1-16.6-2.3-33.2-3.8-49.6-7.3-6.2-1.3-12.2-3.1-18.2-5.1z" class="stn14"/>
|
||||||
|
<path fill="#72767a" d="M1403.9 832c2.9-1.7 4.8-5.4 8.9-5 1.6-.1 1.7-1.1 1.5-2.4-.2-1.3-.6-2.6.5-3.7 1.3-1 2.7-2 4-3 1.7.8 3.3 1.5 5.2.8 2.7-1 4.8-.2 6.3 2.7.8-2.6.8-4.4-.7-6.7-2.3-3.4-4.8-7.1-3.9-11.7-.5-8.2-.6-16.5-5.7-23.6-2.1-2.9-4.3-5.4-7.4-7.1-4.8-2.7-4.8-3.8-.8-7.4-.1-.8.2-1.7-.1-2.5-1.6-4.1.8-5.1 4.1-5.5 9.6-1.3 19.1-2.9 28.8-2.8 1.7 0 3.7-.6 5.2.8 5 1.6 10.2 3 14.6 6.1 7.6 5.4 12.6 12.2 12.8 22 .1 4.2-1 7.5-4.7 9.8-2.7 1.4-5.6 2.1-8.4 3.2-3.4 1.4-4.4 3.6-3.2 7.1 2.1 6.3 3.8 12.7 4.8 19.3 1.2 8.8.5 17.6.5 26.3 0 1.5-.3 3-2.1 3.5-6.3-1.8-12.6 0-18.8.4-13.1.8-26.2 2.3-39.3 3.3-4.4.3-8.8 1-13.2 1.1-4.9-2.7-8.8 1.9-13.4 1.9-3.5.3-6.9 2.5-10.4 0-3.6-1.5-2.4-4.3-1-6 1.4-1.7 3.8-1.9 5.1.9.9 1.9 2.6 1.6 4.3 1 1.9-.7 1.4-1.9.9-3.2-1.2-3.4.9-4.8 3.4-6.2 6.1-3.3 12.1-6.8 18.2-10.1 1.4-.8 2.2-2 2.9-3.3.4-.3.7-.3 1.1 0z"/>
|
||||||
|
<path fill="#c9c9c9" d="M577 785.1c.1 1.3.8 2.1 1.8 2.8 3.1 2.6 2.8 5.2 0 7.9-1.8 1.7-4.4 3.1-3.2 6.6.6 1.7-1.3 1.5-2.4 1.5-2.3.1-4.7 0-7 .1-1.4.1-3.2-.7-3.8 1.3-.4 1.5.8 2.6 1.9 3.2 6.3 3.5 12.3 7.6 19.2 10 9.9 3.5 19.6 7.8 29.3 11.8.6.3 1 .9.3 1.5-9.2-2-18.3-4.9-26.9-8.7-11.6-5.1-23.8-8-35.8-12-13-4.3-26.3-7.8-39.4-11.9-12.6-4-25.5-7.3-37.8-12.1-8.1-3.2-13.9-8.4-17.3-16.1-4.5-10-7.4-20.5-9.8-31.2-1.2-5.4 0-6.5 5.5-7.1 9.1-1 16.1 3.5 23 8.1 9.4 6.2 18.4 13.1 27.7 19.4 11.2 7.6 23.3 13.1 36.8 15.7 12.6 2.8 24.9 7.5 37.9 9.2z"/>
|
||||||
|
<path d="M1284.9 990c-15.4 1.4-30.2 5.1-44.9 9.9-.9.3-1.9.6-2.8.9-6.9 1.9-6.7 1.8-9.5-4.8-4.5-10.7-9.2-21.2-13.8-31.9 5.8-4.9 12-9.4 16.7-15.6 1.1-1.5 3.1-1.8 4.8-2.5 9-3 18.2-5.3 27.1-8.3 1.7-.6 3.5-1.1 5.3.1-3.7 5.8-9.2 9.9-13.9 14.7-2.4 2.4-2.6 3.7 0 6.2 10.5 10.2 20.7 20.8 31 31.3z" class="stn17"/>
|
||||||
|
<path fill="#9da0a3" d="M1392 856.1c2.8-.2 6.3 1 6.9-4.1 1.1 3 3.1 3.2 5.4 3 13.2-1.2 26.3-2.5 39.5-3.7 5.4-.5 10.9-.9 16.3-1.2 1.6-.1 3.5-.5 3.9 2 1.1 5 4.2 4.7 8.1 3.5 4.9-1.6 9.1-3.9 12.4-7.9 4.2-1.6 8.7-1.8 13.1-2 6.7-.3 13.5.2 20.2-.9 2.1-.3 4.3-.4 6.1 1.3-9.9 7.4-20.6 13.4-32.1 17.9-17.2 1.2-34.5 2.7-51.6 5.4-2.3.4-4.7.5-6.8-.7-1.4-2.7 1.2-2.8 2.5-3.6 2.9-1.8 6.4-2.5 9.9-5-3.3-1-5.7-.5-8.2-.2-27.6 3.4-54.9 8.1-82.2 13.2-4.7.9-9.3 2.6-14.2 1.9-3-1.2.1-3.7-1.1-5.4-1.7 1.9-.2 3.8-.2 5.7-3.3 1.9-6.8 2.7-10.5 1.5-1.6-.9-1.2-2.9-2-4.4-2.7.9-1.7 3.8-3.3 5.1-2.4 1.4-5.3 1.8-7.6 3.7-1.6 1.3-3.4.8-5.2.4-4.7-1.2-5.3-.7-5.9 4.2-.3 2.3-1.3 3.6-2.9 3.8-1.3-4.5-.9-9-.4-13.5.6-2.2 3.3-1.9 4.5-3.4.3-2.1-3.1-1.4-2.6-3.6 4.8.5 9.3-1.4 13.8-2.4 6.1-1.4 12.3-1.1 18.2-2.7 1.5-1.3 3.2-1.7 5-1 2.4-.3 5.3 1.1 7-1.9 1.8-1.5 3.6-2.7 5.9-1 5.2 2.1 10.1.7 15.1-1 3.7-.4 7.3-.7 11-1.1 3.8-1.4 8.3 1.2 12-1.9z"/>
|
||||||
|
<path fill="#63676d" d="M1472.9 791.9c7.7-9.1.3-23-7.4-28.5-4-2.9-8.4-5.2-13.3-6.3-1.1-.2-2.9.2-2.2-2 25.5 1.9 48.9 8.6 66.2 29.1 3.3 3.9 7.8 6 11.7 9-.9 2.1-2.3 3.9-2.1 6.4.2 1.9-1 3.4-2.1 4.9-2.9 4-4 4-7.4.3 0-.7-.7.3-.1 0 1.1 2.5-.5 3.1-2.4 3.6-1.6-.5-1.3-1.7-.9-2.8 1.6-4.2-1.1-7.7-2.1-11.4-.3-1.1-1.2-1.7-2.3-1.1-1.5.9-2.6 2.2-2.2 4 .5 2.6 1.7 5 2.1 7.6.5 3.3 2.4 6.6.9 10.1-4.2-.5-6.1 2.2-7.5 5.5-2.1 5.1-5.7 9.2-9.4 13.2-1.5 1.7-3.3 4-6.2 1.8-1.4-5.2-.4-10.5-1.4-15.7-.9-4.7-2-9.3-3.2-14-1.5-5.4-3.7-10.4-8.7-13.7z"/>
|
||||||
|
<path fill="#55585b" d="M1486.9 836c6.3-3.1 9.6-8.9 12.9-14.5.9-1.5 1.8-3.1 2.6-4.8 1.6-3.4 3.8-3.7 6.7-1.8 2.2-1.9 4-4 4.8-6.9 1.5-1 2.2-2.6 2.5-4.3 1.9.5 2.2 4 3.7 2.7 2.3-1.8 5.3-4.2 4.5-7.7-.8-3.3.9-4.5 3.2-5.7 9.7 5.5 16.3 12.9 15.1 24.9-.8 8.3-5.9 14.5-11.1 20.4-2.4 2.7-5.2 5-7.8 7.5-12.4.7-24.8 1.3-37.2 2-.9.1-1.8.7-2.8 1-.6-4.4-.6-9 2.9-12.8z"/>
|
||||||
|
<path fill="#65676a" d="M1432.9 868.1c10.8-.1 21.2-2.8 31.9-3.5 8.9-.5 17.9-3 26.9-.7-4.7 2.5-9.6 4.9-14.8 6.2-12.1 3.6-24.7 3.2-37 5.3-9.8 1.7-19.8 2.8-29.6 4.7-11.8 2.2-23.6 4-35.3 6.2-22.2 4.3-44.4 8.5-66.5 13.5-2.7.6-5.2 1.3-6.3 4.2-1.8 4.4-5.3 6.7-9.6 8-3 1-6 2-9.1 2.6-6.1 1.2-7.9-.5-7.2-6.8.1-.7.2-1.3.2-2-.1-2.9.1-5.7.9-8.5.4-5.5-.1-11-.8-16.4-.3-2-.6-4 .2-5.9-.9-6.4-2.6-12.7-4.4-18.8-1.4-4.6-.1-7.3 4.7-8.5 2.9-.7 5.7-1.8 8.6-2.5 5.9-1.4 8.7 0 11.1 5.6 1.6 3.7 2.8 7.5 4.1 11.2.4 2.7.8 5.5 1.2 8.2 1.2 1.4 1.9 2.9.9 4.8.1 5 .1 10 .1 15.1 6.4.7 12.5-1.5 18.6-2.8 21.9-4.8 44-8.5 66-12.7 13.1-2.5 26.2-4.6 39.3-6.5 2-.4 4-1.1 5.9 0z"/>
|
||||||
|
<path d="M1232 935.9c.3-2.1-2.1-3-2.3-4.9.5-3 3.2-3.1 5.3-3.7 21.5-6 43.2-11 64.8-16.4 20.7-5.1 41.4-9.9 62.3-14.2 12.9-2.7 25.8-4.9 38.7-7.7 8.3-1 16.3-3.2 24.5-4.4 1.3-.2 2.6-.6 3.9-.6 1.3 0 3-.2 3.4 1.3.4 1.7-1.4 2.2-2.6 2.5-6.9 1.3-8.7 6.5-9.7 12.3-.5 2.7-1.2 5.2-3.5 7-4.1 5.1-4.6 10.9-3.2 17-.3 2.2-2 3.4-3.5 4.7-3.3 3-5.8 6.4-6.1 11-.1 1.3-.1 3.4-2.2 3.2-1.6-.1-2.5-1.6-2.8-3.1-.8-3.8 0-7.2 2.3-10.4.8-1.1 2.6-2.3.9-3.8-1.8-1.5-2.5.5-3.3 1.7-2.4 3.5-4.7 2.1-6.8-.3.3-2.9 2.6-4.6 4.5-6.1 9.9-7.7 9.1-14.8 7.2-23.6-.5-2.3-2.3-1.7-3.4-1.2-2.4 1.1-4.8 1.9-7.5 2-51.1 12.9-102.6 24.2-153.4 38-2.4.6-5 1.8-7.5-.3z" class="stn22"/>
|
||||||
|
<path fill="#a9abaf" d="M1417 907c1.3-3.6 2.3-7.2 2.9-11 .8-4.7 2.7-8.4 8.1-9 1.4-.2 2.8-.9 4-2.1-10.3 1.7-20.7 3.4-31 5.1 1.2-4.1 5.4-4.3 8.4-6 3-1.8 3.5-3.1.5-5.2 8.6-2.3 17.5-3.1 26.3-4.5 13.6-2 27.2-3.7 40.9-4.4-4 2.5-8.4 3.8-12.8 5.2-2.3.8-3.6 1.8-3.3 4.5 1 8.5-2.1 13.7-10.9 16.3-8.7 2.6-16.9 6.7-25.2 10.5-2.9 1.5-5.2 1.9-7.9.6z"/>
|
||||||
|
<path fill="#abadb0" d="M1232 935.9c8.4-.4 16.2-3.5 24.2-5.6 44.6-11.5 89.3-22.3 134.3-32.1.8-.2 1.6 0 2.5-.1-10 4.9-21 7.2-31.5 10.5-17.9 5.7-36 11-54 16.6-13.2 4.1-26.4 8.3-39.7 12.5-9.7 2.8-19.3 5.7-28.9 8.5-1.3.4-2.6.6-3.8.9-3.2.9-3.2-1.6-3.5-3.5-.3-2-.1-4 1.3-5.7-.3-.6-.6-1.3-.9-2z"/>
|
||||||
|
<path fill="#535458" d="m237 1101 2.1 3.9c1.9 2.5 4.6 4.3 6.5 6.8 1 1.3 2.6 2.4 2 4.3-.7 2.3-2.7 1.3-4.2 1.5-.8.1-1.7-.1-2.3.5-2.3 2.1-2.1 4.9-2.1 7.7-.1 3.9-1.5 7.1-5 9.2-11-1.1-22.2-1-32.4-5.9-8.2-3.9-11.2-14.8-6.3-21.9 2.6-1.3 3.5 1 4.5 2.5 2.2 3.4 5.4 3.9 8.7 2.5 7.1-3.1 14.7-3.2 22.2-3.9 3.1-.3 5.2-.4 4.5-4.3-.2-1.3-.2-2.9 1.8-2.9z"/>
|
||||||
|
<path fill="#121111" d="M1392.1 927.1c3.2 1.2 5.6 2 7.2-2.7 1-3.1 3.2.1 4.7.7 2.2.9 1.4 2.2.1 3.4-2.9 2.4-4.1 5.5-4.1 9.2 0 1.9.2 3.6 2.9 5.1-.7-9 5.1-13.8 10.9-18.6 6.2 0 11.4 1.8 14.2 7.9.4 3.3 1.1 6.6-.4 9.9-4.1 9.5-9 14-16.8 11.6-5.8-1.8-12.4-3.6-17.3-7.6-5.4-4.6-5.5-10.1-1.4-18.9z"/>
|
||||||
|
<path fill="#71747a" d="M237 1101c-.2.2-.7.6-.6.7 1.5 6.1 0 8.9-7 7.8-4.5-.7-9.1 1.9-13.8 1.5-1.7-.2-3.1.5-4.6 1.4-5.6 3.3-9.4 2.3-12.7-3.1-.8-1.2-1.5-2.2-3-2.2 4.1-7.6 11.3-12 17.9-17 3.5-.6 6.1-3.1 9.4-4.4 2.1-.8 3.8-1 5.4.8 3.6 4.4 7.3 8.9 9 14.5z"/>
|
||||||
|
<path d="M1415.9 757c-2.5 1-5.7 1.5-2.6 5.3 1 1.2-.5 2-1.4 2.7-2.5-.1-5.3.4-6-3.4-.4-2.3-2.4-1.7-4-1.8.9-.9 1.5-2 2.2-3.2 1.2-2.3 3.8-3.8 6-1.6 1.9 2 3.7 2 5.8 2zm-994.7 382.1h22.9c-7.6 2-15.4.4-23.1.9 0-.3.1-.6.2-.9zm33.7-.2c5.3-1.6 10.8-.7 16.1-.8-5.3 1.8-10.8.5-16.1.8zM1020 851h-15c5-1.6 10-1.6 15 0zm-539.1 286.9c3.6-1.5 7.4-.7 11.1-.8-3.6 1.9-7.4.5-11.1.8zm946.7-196c.8-3.3.7-6.6.4-9.9 1.3 3.4 1.9 6.7-.4 9.9zM617 833.1c1.7-.2 3.2.2 4.3 1.5-.7 1.6-2.1 1.3-3.3 1.3-.3-.9-.6-1.9-1-2.8z" class="stn17"/>
|
||||||
|
<path d="M786 1083.9c1.3-2.8 3.4-4.7 5.9-6.6 15.3-11 32.1-19.4 48.4-28.6 3.3-1.8 6.4-3.9 9.6-5.9 3.7-3.5 7.9-5.4 13.1-4.8 1.9 3.4 4.6 1 6.6.5 12.7-3.7 25.4-7.6 38-11.6 19.9-6.2 40.1-11.5 60.7-14.8 7.8-1.2 16.7-1.2 22.5 3.9 5.7 4.9 12.2 7.6 18.3 11.3 2.4 1.4 4.9 2.9 7.9 1.1 1-.6 1.9 0 2.8.3 5.4 1.8 10.1 5 15 7.7 2.1 1.2 2.4 2.6-.5 3.6-5.9 2-11.8 4.3-18.3 6.7 1.5 1.7 2.7 2.3 4.3 2 7.9-1.6 15.9-3.1 23.7-4.8 2.2-.5 4 0 5.7.9 8.4 4.6 16.8 9.2 25.1 14.1 5.2 3.1 5 6.8 0 9.8-2.7 1.6-5.2 3.6-7.8 5.3-.7.1-1.4.1-1.9.4-4 2.1-5.5.5-6.1-3.6-.8-5.9-2.2-11.8-2.8-17.7-.3-3.1-1.7-3.5-4.3-3-8.9 1.8-17.9 3.5-26.8 5.3-4 .8-7.8.9-11.8-.2-4.9-1.4-9.5 1.1-14.1 2.1-15 3.2-30.2 4.5-45.4 5.8-9.3.8-18.5 2-27.8 2-2.2 0-4.6.2-6.2-1.4-2.9-3.1-5.9-2.4-9.5-1.3-27.1 8-54.2 15.9-82 21-9.3 1.7-18.7 3.1-28.2 2.7-4.9-.2-9.1-3.7-14.1-2.2z" class="stn28"/>
|
||||||
|
<path fill="#b7b8b8" d="M1268.9 1300c2.2-8.2 2.8-16.6 4.3-24.9 1.3-6.9 2.2-14.2 4.8-21 .4-1 1-1.6 1.9-2.1 10.4-5.8 19.6-5.8 29.1 1.6 6.9 5.4 13.7 10.9 20.7 16.2 2.3 1.7 4.6 3.8 8.1 2.9 1.4-.3.8 1.4 1.1 2.2-5.5 5.6-12.7 8.4-19.7 11.3-11.4 4.6-22.2 10.7-34.4 13.2-3.9.8-7.8 1.5-11.7 2.3-1.8.4-3.3.1-4.2-1.7z"/>
|
||||||
|
<path d="M984 979.1c-1.8 2.9-4.8 3.9-7.8 5-1.5.6-3.8.8-3.7 2.7.1 2.1 2.5.7 3.7 1.4.7.4 1.4.8 2.4 1.3-3.4 4.3-8.4 5.2-12.7 6.8-21.3 7.7-42.7 15.3-63.6 24.1-.7.3-1.6.4-2.4.6-5.3 0-9.9 2.5-14.9 3.8-62 16.3-124 32.5-186.3 47.6-46.9 11.4-94.1 21.7-141.8 29.3-6.9 1.1-13.8 2.3-20.7 3.3-7 1-8.5-.2-8.6-7-.1-3.8-2.1-7.5 0-11.3 1.2-1.3 2.8-1.8 4.4-2 15.8-1.3 31.3-4.8 46.9-7.7 1-.2 2-.3 3-.3 2.2 0 3.6 1.2 4.6 3.2.6 1.2 1.4 2.4 3 2.1 1.5-.2 2.4-1.4 2.5-2.7.1-4.1 3-4.6 6-5.2.7-.2 1.4-.3 2.1-.3 1.9-.1 3.7.2 4.9 1.9 2.4 3.4 4.3 2.3 5.8-.8.7-1.3 1.1-2.8 2.5-3.6 3.7-1.2 7.3-2.6 10.7.7 1.5 1.5 3.2.8 4.2-.9 2-3.7 5.5-4.6 9.2-5.1 2.4-.3 3.9 1.7 6.3 2.5-.5-3.7 2-4.5 4.7-5.1 13.2-3.3 26.5-6.6 40-8.8 5.4-.9 10.5-2.3 15.8-3.4 6.8-1.3 13.2-4.9 19.8-5.2 8.3-.4 15.3-4.5 23.4-5.4 6.3-.7 12.8-4 19.4-5.8 28.4-7.6 56.9-15 85.4-22.1 7.3-1.8 14.6-3.6 21.6-6.1 2-.7 5.2-.1 5.5-3.3.2-3.2-.6-6.3-4-7.9-.3-2.7 1.9-2.5 3.2-2.3 3 .4 5.7-.5 8.5-1.2 2.2 1.8 2.3 4.4 2.3 6.7-.1 3.5 1.3 3.9 4.2 2.8 1.5-.6 3.1-1.1 4.6-1.8 2-.6 3.9-1.5 6-1.9 4-.4 8-.5 11.4-3.1 1.4-1.1 3-1.5 4.7-1.2 4.3.8 8.1-.9 11.9-2.8 1.3-.6 2.7-.9 4.1-1 4.5-.2 8.9-.9 12.6-4 .9-.4 1.9-.5 2.9-.4 9-.7 17.5-3.9 26.2-6 1.7-.7 4-2 6.1-.1z" class="stn28"/>
|
||||||
|
<path fill="#3a3737" d="M528.1 1087.1c.3 4.2 1 8.3.8 12.4-.2 4.4 1.8 4.9 5.4 4.3 13.1-2.2 26.3-4.1 39.4-6.4 80.3-14 159-34.7 237.8-54.9 27.9-7.2 55.7-14.6 83.6-21.8 1.5-.4 3.3-2 4.8.2-12.5 5.3-25 10.6-37 17.1-4.4 1.6-8.7 3.2-13.1 4.8-13.9 2.8-27.4 7-41 10.7-49 13.2-98 26.2-147.5 37.8-29.3 6.9-58.8 12.8-88.5 17.8-13.7 2.3-27.5 3.8-41.2 5.9-1.9.3-3.7.5-4.4 2.6-1.2 3.6-4.2 5.1-7.6 5.8-8 1.7-16 3.1-24 4.5-4 .7-7.2.1-6-5.4.5-2.2-.9-2.5-2.7-2.3-23.1 2.8-46.2 5.5-69.4 8.2-8.2 1-16.6.9-24.8 2.4-.9.2-1.6-.2-2.1-1 2.1-3.3 4.1-6.7 6.2-10 3.2-2.2 7-1.8 10.6-2.3 24.1-3 48.2-5.5 72.3-8.3.5-.1 1-.1 1.5-.2 8.5-1.1 8.9-1.6 7.6-10-.3-2.1-.6-4.3-.6-6.4-1.2-5.5-1.4-11.1-2.4-16.7-.7-4.6-2.8-9.1-1.9-14 1.2-3.4 3.8-5.4 7.1-6.5 6.5-2 13.1-3.8 19.9-4.6 5.7-.7 9 1.9 11.7 8.6 1.6 4.8 3.1 9.6 4.2 14.5 1 4.6 3.7 8.7 1.3 13.2z"/>
|
||||||
|
<path fill="#8e9091" d="M984 979.1c-10.3 2.5-20.6 4.9-30.8 7.4-.9.2-1.6.4-2.2-.5 0-2 .5-3.9.7-5.9.3-4.6 3.5-7.1 8-6.8 2.3.1 3.1 1.6 3.5 3.5.3 1.2.4 3 2.2 2.9 1.7-.1 2.1-1.7 2-3-.2-5.5 3.3-7.1 7.9-7.8 5.3-.8 10.3-2.8 15.5-3.9 2.9-.6 5.3-.5 6.4 2.9.3 1.1.9 2.3 2.4 2 1.5-.3 1.7-1.5 1.6-2.7-.2-3 1-4.7 3.9-5.5 3-.9 5.2-.3 6.7 2.6.5 1 1.4 2 2.8 1.4 1.2-.5 1.7-1.7 1.7-2.9 0-3 1.4-4.6 4.3-5.2 2.3-.5 4.3-.6 5.5 2 .5 1 .9 2.4 2.4 2.2 1.3-.2 1.9-1.4 2-2.6.5-3.3 2.7-4.7 5.6-5.6 8.8-2.6 17.9-4.2 26.5-7.2 7-2.4 14.4-3.3 21.4-5.8 7-2.5 14.9-2.8 22.4-4.5 1.9-.4 3.3 1.2 5.4 1.8-1.1-1.4-3.2-2.2-1.9-4.2 1-1.6 2.7-2.1 4.4-1.6 6.2 1.9 11.8-1.2 17.6-2 1.7-.2 2.9-1.4 3.9-2.8 2.1-3 4.7-4.2 8-1.6 2.5 2 4.2.7 5.7-1.5 3.1-4.5 4.3-4.8 8.7-2 2.5 1.6 3.9.8 5.2-1.5 3.1-5.4 3.2-5.4 8-1.6 2 1.6 4.5.7 5.3-2 .4-1.4.4-3 1.8-3.9 1.3-.9 2.8-1.4 4.3-.7 2.8 1.2 2.1 3.9 2.5 6-.3 4.4-4.3 4.8-6.9 6.9.7.9 3.2.5 2.4 2.9-9.8 3.6-20.1 5.5-30.2 8.1-23.2 5.8-46.4 11.5-69.5 17.5-32.3 8.2-64.7 16.7-97.1 25.2z"/>
|
||||||
|
<path d="M1409.8 879c1.7.3 4-.5 4.4 2.1.3 2.1-1.7 2.5-3.1 3.3l-10.2 5.7c-17.4 3.6-34.8 7-52.2 10.8-38.8 8.6-77.3 18.1-115.8 28.2-1.2.3-2.7.5-3.3 1.9-4.4-3.5-9.4-5.3-15.2-5.1-6.9.2-13.8 0-20.7 0 .5-2.6 2.8-2.5 4.6-3 23.3-5.3 46.4-11.6 69.8-16.7 3.1-.7 6.3-2.7 9.5-.1-.6 8.9-.3 9.2 8.6 6.5 2.7-.8 5.4-1.7 8-2.7 2.7-1 5.5-2.4 6.1-5.4.9-4.6 4.1-5.4 7.8-6.2 30.4-6.8 61.1-12.3 91.7-18.2 3.5-.5 6.9.5 10-1.1z" class="stn32"/>
|
||||||
|
<path d="M1277.8 906.2c-9.5.7-18.4 3.7-27.6 5.8-17.9 4.1-35.7 8.5-53.6 12.8-1 .2-2 .2-2.7 1.1-4.3.7-8.6 1.5-12.9 2.2-1.1-1.6-2.7-2.2-5-1.7 2.4-3.8 7.2-3.8 8.9-7.5.9-2.2 3-2.5 4.9-2.8 27.5-5.3 54.6-12.5 82-18.6 1.5-.3 2.9-.7 4.4-.7.9 0 1.7.2 2.4.8-.9 2.9-.6 5.8-.8 8.6z" class="stn33"/>
|
||||||
|
<path d="M1232.9 938c1 3-2 6.9 2.1 9.1-2.6 1.2-4.4 3-6.2 5.2-4.1 4.9-8.5 9.6-14.8 11.8-3.5-4.9-2.4-10.3-1.6-15.6.7-4.9 3.7-7.3 8.7-7.5 4.1-.2 8-1.6 11.8-3z" class="stn32"/>
|
||||||
|
<path d="M191.9 979.1c9.6 2.5 19.2 4.9 29 6.4 6.7 1 13.3 2.5 20.1 2.6 5.5.1 10.9 1.7 16.4 2.6 2.7.5 5.6.9 7.3-1.6 1.9-2.9-.6-5-2.2-6.9-2.3-2.7-4.3-5.5-4.5-9.2-.2-3-1.7-3-3.4-1-1.9 2.2-3.9 2.3-6.1.7-1.4-1-1.7-2.3-.2-3.2 6.3-3.6 3.1-9.4 3.1-14.1 0-2.8-2-6.3-4.2-8.3-4.5-4.2-6.7-9.3-8.2-15 8.1 1 15 4.8 21.9 9-1.2 1.4-2.8.2-4.5.8 1.7 4.3 4.9 7.8 5.2 12.7.2 3.2 4.1 1.3 5.7 3 .5-1.1-.4-1.4-.6-2-.9-2.2-1.7-4.8.4-6.5 2.4-2 4.3.3 6 1.8 5.8 5.2 12.4 3.4 19 2.2 7.7 1.1 14.4 4.9 21.7 7.2 15.8 5 31.5 10.4 47.3 15.6 28.4 9.4 57.2 17.5 86.6 23.5 11.5 2.3 23.1 3.1 34.8 2.8 4.8-.2 9.1-2 13.6-3.1h3.5c2.5 0 5-.7 3.4 3.8-1.3 3.6 1.9 5 5.3 5.2 1.5.1 3.9-.8 4 1.6.1 1.8-2.3 1.6-3.6 2-20.5 6.2-40.9 12.3-61.4 18.4-23.3 7-46.7 13.9-70 20.9-.8.2-1.4.7-2.1 1.1-8.8 3-17.4 7.1-27 7.4-3.1-4.7-7.5-8.7-7.7-15.1-.1-2.8-9.4-7.4-12.6-6.7-2.4.6-5.8 2.1-6.4-1-.5-3 3.1-3.5 5.9-3.7 13.2-1 26.3-2.5 39.5-3.5.5 0 .9-.2 1.3-.6 11.5-2.6 23.4-2.9 35-4.9 5.9-1 11.8-1.9 17.7-2.7 2.8-.4 3.6-1.2 1.6-3.7-.7-.9-2.2-2.4-.3-3.3 1.5-.7 3.8-2.5 5-.5 4.4 7.1 10.8 4.9 17 4.1 7.9-1 15.7-2.9 23.7-2.9 1.8 0 3.6-.4 4.7-2.3-1.7-1.9-4-1.5-6.1-1.5-8.8-.1-17.7-.1-26.5-.1-31-.3-61.8-2.2-92.6-5.8-18.8-2.2-37.8-3.7-56.1-8.4-13.6-3.5-27.4-3.3-41.1-5.7-18-3-36.4-3.7-53.8-9.9-1.6-.6-3.3-.9-4.5-2.2z" class="stn34"/>
|
||||||
|
<path d="M292.1 953c-.1.9-.4 1.6-1.2 2-2.5 1.4-15.3-.4-17.6-2.3-1.6-1.4-3.1-5-5.4-3.1-2.1 1.8-.9 4.9 1.3 7 .7.7 1 1.7 1.8 3.2-3.6-.7-6.2-2.7-9.4-2.4-.9.1-1.6-1.3-1.4-2.4.8-4.8-2.7-8-4.5-11.8-.5-1.1-2.2-2.1-1.1-3.5s2.3.4 3.5.6c1 .2 1.9.4 2.9.5 3 2.2 6.8 2.6 10.1 4 5.3 2.1 10.7 3.8 15.9 6l5.1 2.2z" class="stn14"/>
|
||||||
|
<path d="M287 951c-5.6-1.1-10.9-3.2-15.9-6 5.7 1 11 2.9 15.9 6z" class="stn34"/>
|
||||||
|
<path d="M1278.6 897.7c-.6.1-1.1.2-1.7.2-.5-2.1-.9-4.2-3.9-4.2-1.6 0-2.5-1.5-3.2-2.9-.5-1.1-1.1-2.2-2.6-2-1.7.3-1.7 1.8-2 3.1-.1.3-.1.7-.1 1-.3 2.3-1 4.4-3.6 4.8-2.9.5-4.4-1.3-4.9-3.8-.8-3.7-4.6-2.1-6.4-3.8-2.9-2.7-4.1-.4-5.8 1.5-2.1 2.2-5 3-7.8 1.9-2.2-.8-3.7-.9-5.2 1.1-1.1 1.4-2.8 2.1-4.4 2-11.3-.4-21.7 3.7-32.3 6.4-15.5 3.9-31.3 6.6-46.8 10.1-26.3 5.9-52.6 11.9-78.8 18.2-27.2 6.6-54.2 13.7-81.4 20.3-14.7 3.6-29.5 6.9-44 11.3-2 .6-4.1 1.5-6.3.6-1.7-2.9 1-3.2 2.5-4 3.3-1.8 7.1-2.5 10.7-4.2-4-3.7-3.7-5.1 1.3-7 4.6-1.8 9.6-2.2 14.1-4.3 23.9-5.9 47.8-12 71.9-17.3 13.2-2.9 26.3-6.8 39.5-10 25.4-6 50.9-12 76.4-17.5 17.4-3.8 35-7.2 52.4-11.2 21.9-5 44.1-8.8 66.2-13 1.4-.3 3-.1 4.5-.1 1.7 7.6 2.3 15.2 1.7 22.8z" class="stn35"/>
|
||||||
|
<path id="2" fill="#a9abae" d="M966 944c-3.1 2.8-7.1 3.4-10.9 4.5-2.4.7-4.8 1.4-6.6 3.2.1.3.2.7.4.9 1.3 1.1 4.3-.6 4.3 2.1 0 2.1-2.6 2.2-4.2 2.9-4 1.7-8.7 2.1-12 5.5-1.3 2.1-3.5 2.3-5.6 2.9-23.2 6.2-46.8 11.3-70.1 17.4-11.7 3-23.6 5.5-35.3 8.8-10.6 1.2-20.7 4.8-30.9 7.4-12.7 3.2-25.5 6.2-38.2 9.3-14.2 3.4-28.3 7.1-42.5 10.6-2.2.5-4.5 1.3-6.8.3-1.6-2.2.2-2.8 1.7-3.6 1.6-.8 3.6-.8 5.7-2.2-2.2-.9-4.1-.4-5.8-.6-1.5-.2-3.8.2-3.9-2.1-.1-1.8 1.6-2.7 3.3-3.2 1.9-.6 3.8-1.1 5.5-2 8-3.5 16.8-4.2 25-6.9 9.6-1.2 18.6-4.7 27.9-7 21.7-5.2 43.5-10.1 65.3-15.3 19.6-4.7 39.2-9.7 58.8-14.6 20.7-5.1 41.5-10 61.9-16.2 4.5.5 8.5-2.3 13-2.1z"/>
|
||||||
|
<path fill="#cccdcf" d="M1369.1 815.1c1.4 0 2.9-.2 2.8 1.8-.1 7.3 1 14.6-1.1 21.8-.5 1.7-1.1 3.2-3.1 3.4-1.2.1-2.4.2-3.1-1.1-1-1.8.6-1.7 1.6-2.2 3.2-1.7 3.2-3.8.6-6.2-2.6-2.4-5.2-4.7-7.4-7.4-3.4-4.1-6.7-1.3-10-.2-1.9.7-.4 2-.1 2.8 1.6 4.5 3.3 9 4.8 13.6.5 1.6 1.9 3.8-.9 4.4-3.1.6-1.9-2.3-2.5-3.8l-4.2-11.7c-1.1-2.9-2.5-5-6.1-3.1-1.3.7-2.7.8-3.3-.8-.9-2.2 1-2.6 2.3-3 4.9-1.4 9.9-2.6 14.9-4 2.1-.6 3.5.2 4.9 1.6 2.1 2.1 4.3 4.1 6.5 6.2.7-.4 1.9 2 2.2-.5.2-1.9-.5-3.9.9-5.6l.3-6z"/>
|
||||||
|
<path d="M1368.9 821v8.2c-1.8.1-2.3-1.2-3.1-2.2 2.6-1.1-.6-5.3 3.1-6z" class="stn13"/>
|
||||||
|
<path fill="#5f5e61" d="M368.1 1028.9c-3.3 1.5-6.9 1.8-10.5 2.1-10.2.9-20.4 2-30.6 2.9-2.2.2-3.7 1.2-5.4 2.7.6.4 1.4 1.1 1.7 1 5.4-2.9 9.8-1.6 14.4 2.3 2.3 2 5.7 2 4 6.8-.6 1.7 2.3 4.8 3.8 7.1 1.1 1.7 2.4 3.2 2.5 5.3-.1 2.5-2.3 2.4-3.9 3-5.6 2-11.4 3.1-17.2 3.9-4.9 1.4-9.1.8-11.9-4.1-1.3-2.3-3.4-1.9-5.7-1.2-21.6 6.5-43.2 13-64.8 19.3-4.8 1.4-9.6 2.1-14.7 1.1-4-.8-6.4-2.6-8-6.4-5.8-14.3-11.9-28.5-17.9-42.7 6 .7 11.6 3.3 17.6 4.1 11.2 1.6 22.2 0 33.3-.5 9.9-.4 19.9-.6 29.8-1.4 25.2-1.9 50.6-1.8 75.8-5.2 2.7-.2 5.2 0 7.7-.1z"/>
|
||||||
|
<path fill="#9da0a4" d="M327 1065.9c6.9-2.8 14.4-3.7 21.1-6.9 6.6-1.9 13.2-3.8 19.8-5.8 2.4-.7 4.7-1.4 7.2-1.1 1.5 1.5 3.5.9 5.2.9 18.8.1 37.6.7 56.4-.1 25.9-1 51.8-2.2 77.5-6.4 14.3-2.3 28.9-3.5 43.3-5.6 13.1-1.8 26-4.7 39-7.2 34-6.5 67.2-16.5 100.9-24.4 5.5-1.3 11-2.3 16.5-3.4-2 2.8-6.2 2.2-8.6 5.6 3.1 1 6 .2 8.7.5 1.2.1 3.1-.7 3.3 1.1.2 1.6-1.5 2.3-3 2.8-2.5.9-5.8.1-7.5 3-2.6 2.8-6.2 3-9.5 3.8-38.2 9.8-76.8 17.8-115.4 25.6-17.5 3.5-35 6.2-52.6 9-2.7.4-5.1 1.4-7.4 2.7-3.6-7.5-5.2-8.5-13.5-7.1-5.5 1-11 2.6-16.5 3.9-3.1.7-5.4 2.4-6.8 5.3-6.4 2.4-13.2 1.1-19.8 1.8-18.2 1.7-36.4 3.6-54.6 3.7-3.3 0-6.4-1.8-9.7-.7h-34.3c-6.1 0-12.2.2-18.1.6-4.5.3-8.1-.9-12.1-1.4-3.2-.4-6.3-.1-9.5-.2z"/>
|
||||||
|
<path fill="#b7b8bc" d="M401 1067c1.3-1.5 3.1-1 4.7-.9 11.5.6 23-.2 34.3-1.3 14.3-1.3 28.7-2.1 43-3.6.9-.1 1.6.3 2.1 1-.5 4.8 1.6 9.2 2 13.8.4 4.7-.4 5.8-5.8 6.2-7.8.5-15.5 1.5-23.2 2.3-10.9 1.1-21.8 1.6-32.6 3.1-3.3.5-6 1.4-7.8 4.5-1.6 2.7-3.8 5.1-6.9 6.1-.3-.1-.5-.2-.8-.3.1-3.8 3.4-5.9 5.1-8.8 2.4-4.2 1.7-7.3-3-7.7-5.7-.4-11.1-3.4-17.1-2-1.5.4-2.5-1-2.5-2.4s1.4-2.3 2.4-1.8c4.8 2.5 5.9-2.5 8.2-4.3 2.1-1.7 1.2-3.9-2.1-3.9z"/>
|
||||||
|
<path d="M489.9 1092.3c.4 4.8.7 9.6 1.1 14.4.2 2-.5 3-2.7 3.2-30.4 3.3-60.8 6.7-91.2 10 3.1-8 9.1-14.4 13-22.1l.2.3c11.3.1 22.4-1.8 33.6-3 13.5-1.4 27-2.8 40.6-4.3 1.9-.2 3.9-.2 5.4 1.5z" class="stn5"/>
|
||||||
|
<path fill="#6c6f73" d="M241.1 1118c5.8-2.3 5.7-2.3 1.7-7.6-1.3-1.8-3.8-2.8-3.7-5.5 7.2 2.5 14.4.2 21.6-.3 16.7-1.3 33.1-4.9 49.9-5.8 8.1-.5 16.1-2.1 24.2-3.2 2-.3 3.9-.4 6 0-4.1.9-8.4 1.7-12.5 2.9-19.6 5.4-39.9 8.4-59.1 14.9-9.2 3.1-18.5 4.7-28.1 4.6z"/>
|
||||||
|
<path fill="#878a8f" d="M343.6 1089c-2.8-.3-5.6-.7-8.4-.9-3.7-.3-3.8-3.7-4.3-5.9-.6-2.7 2.3-2.8 4.1-3 2.8-.4 5.7.3 8.3-1.2 1.4-.8 2.2 0 2.7 1.2.6 1.4 1.2 2.8 1.6 4.2 2.1 5.5 1.9 5.8-4 5.6z"/>
|
||||||
|
<path id="1" fill="#bfc1c3" d="M1425.9 803.1c2.4 4.2 1.9 10 7.2 12.8.2.1-.8 5.1-1.2 7.8-.1.8-2.3.2-2.5-1.1-.7-4.3-3.4-3.2-5.8-2.3-2.5 1-4.2.8-4.6-2.3 1.3-4.5 1.8-9.2 2.5-13.9.5-3.7 2.2-3.9 4.4-1z"/>
|
||||||
|
<path fill="#c8c9cb" d="M1403.9 832c-.3 0-.6.1-.9.2-3 .8-6.1 1.5-9.1 2.4-3.6 1-4.1-.2-3.2-3.5.9-3.1 2.6-5.8 4-8.6 1-2 1.7-4 1.2-6.2s-2-3.4-4.3-3.4c-2.1 0-3.7.8-3.3 3.2.2 1.3-.1 2-1.3 2.2-1.6.2-1.9-1-2-2.3-.2-2.5 0-4.8 2.7-5.8 4-1.5 7.5-1 10.1 2.6 2.1 3 1.9 6.2.5 9.5-1.1 2.3-2.2 4.7-3.1 6.6 2.5 3.4 8.2-5.5 8.7 3.1z"/>
|
||||||
|
<path fill="#c6c8ca" d="M1414.9 821c.3 1.7.8 3.5 1 5.2.2.9.3 2.1-1 2.4-1.2.3-1.7-.7-2.1-1.6-1.1-5-2.7-9.8-4.9-14.2-2.3-.7-1.9 3.9-4.2 2-1.9-1.5.2-3.3.7-4.9.2-.6.5-1.2.6-1.9.2-1.2.3-2.5 1.7-2.7 1.7-.2 2.1 1.3 2.6 2.5 1.9 4.5 3.7 8.9 5.6 13.2z"/>
|
||||||
|
<path d="M1303.1 875c-.2-1.6-1.3-3-.9-4.8.6-.4 1.2-.7 1.7-1.1l.3.3c1.3 1.4 5.1-.6 4.5 3-.5 2.9-3.3 2.6-5.6 2.6z" class="stn46"/>
|
||||||
|
<path d="M1353.9 860.1c-2 .3-3.9.7-5.9 1 .1-2.2 1.3-3.7 3.4-3.9 1.8-.1 2.5 1.2 2.5 2.9zM1341 863c-1.5 1-3.2 1.1-5 1 .9-3.7 2.6-4 5-1z" class="stn6"/>
|
||||||
|
<path fill="#323538" d="M1486.9 836c-1 4.3-2 8.7-2.9 13-2.4 4.2-13.6 10-18.2 9-3.9-.8-1.2-4-1.8-6 1.8-9.5 1.3-19 .5-28.5-.6-6.7-2.6-13.3-4.7-19.7-1.8-5.6-1.2-7.1 4.2-9.2 2.9-1.1 6-1.8 9-2.7 4.8.4 6.6 3.9 8 7.7 4.3 11.7 6.6 23.8 5.9 36.4z"/>
|
||||||
|
<path d="M1392 856.1c-1.9 2.3-3.3 5.6-7.2 2.2-1-.8-3.2-.3-4.8-.3 2.5-1.5 5.7-1.1 8-3.5 1.3-1.6 2.8.5 4 1.6z" class="stn13"/>
|
||||||
|
<path d="M1432.9 868.1c-10.9 2.9-22.2 3.7-33.3 5.7-30.5 5.6-61 11.1-91.3 17.6-1.8.4-4.3 2.4-5.1-1.3 1.2-1.8.6-3.9.7-5.8.2-4.4 3.1-6.7 6.8-4.5 2.7 1.5 4.1 1.6 6.3-.7 1.6-1.8 4.5-2 7-1.9 1.6-.6 3.3-.6 5-1 3.8.1 7.5-.3 11-2 12.3-1.5 24.4-4.4 36.6-6.3 16.9-2.7 33.7-6.2 50.8-7.8 5.7-.5 11.4-2.2 17.2-1.9 1.3.1 3.5-.9 3.8 1.1.3 1.5-1.5 2.4-2.9 3-4.2 1.9-8.4 3.8-12.6 5.8z" class="stn46"/>
|
||||||
|
<path d="M1328.9 876c-1.2 2.4-3 2.3-5 1 0-1 .1-2 0-3-.3-2.6 1.4-3.1 3.4-3.2 2.8-.1 1.2 2 1.6 3.2.2.6 0 1.3 0 2zm20.2-8c.6-1.8-.1-4.1 2.3-3.5 1.4.3 2.6 1.6 2.4 3.3-.2 1.8-1.7 2.6-3.2 2.6-1.7-.1-1.7-1.6-1.5-2.4zm-9.1 6c-5.5 0-.8-3-1.3-4.4-.5-1.7 1-2.4 1.9-1.9 2 1.1 1.5 3 .4 4.7-.3.5-.7 1.1-1 1.6z" class="stn6"/>
|
||||||
|
<path fill="#8293a3" d="M1513.9 808c1.4 4.4-1.2 6-4.8 6.9-.7-5.8-2.1-11.3-3.9-16.8-.9-2.7 1.5-6.9 4.1-7.6 1.8-.4 2 1 2.3 2 1.7 5 4.3 10 2.3 15.5z"/>
|
||||||
|
<path id="3" fill="#bbbdbf" d="M1299.7 872.2c.3 5.8 1.4 11.5 1.2 17.4-.1 2.4-1 3.6-3.3 4.1-4.4.9-8.8 2-13.1 3-2.5.6-3.3-.2-3.3-2.7.1-6.6 0-13.3-1.1-19.9 2.3-1.9 5.2-3.2 5.6-7 .2-1.9 3.3-3 4.4-1.8 2.7 3.3 6.8 4.1 9.6 6.9z"/>
|
||||||
|
<path fill="#8e9092" d="M1299.7 872.2c-.9-.8-2-1.4-3.2-1-2.8 1-4.4.5-4.7-2.8-.2-1.7-1.5-2.5-3.3-2.3-1.3.1-2.6 1-2.3 2.1 1.4 5.7-2.8 5.3-6.1 6-1.5-5.6-2.8-11.2-4.5-16.8-1.1-3.5-.2-5.5 3.2-6.4 2.7-.8 5.5-1.2 8.1-2.2 4.5-1.8 6.5.4 7.8 4.2 2.2 6.2 3.8 12.6 5 19.2z"/>
|
||||||
|
<path fill="#babcbe" d="M1280.1 908.4c0-2.2 1-3.8 3.6-4.3 3.4-.7 6.8-1.7 10.2-2.4 1.7-.4 3.9-1.8 4.8.4 1 2.2-.7 4.2-2.8 5.2-4.2 2.1-8.7 3.2-13.2 4.3-2.7.6-2.7-1.1-2.6-3.2z"/>
|
||||||
|
<path d="M1411.8 929.8c-.4 2.7-1.3 3.8-3.5 3.9-.1-2.3 1.3-2.9 3.5-3.9z" class="stn22"/>
|
||||||
|
<path fill="#262a2d" d="M919.6 1060.1c3.5-1.1 6.7-2.1 10.1-3.1.6 2.8-.6 4.9-2.7 5.9-2.6 1.2-5-.3-7.4-2.8z"/>
|
||||||
|
<path d="M826 991c12.1-4.2 24.6-6.3 36.9-9.5 15.9-4 31.6-8.7 47.6-12 8.9-1.8 17.5-4.7 26.4-6.6 6.2-.3 11.9-3 17.8-4.4 22.6-5.7 45.3-11.2 67.8-17.1 25.6-6.7 51.3-13 77.1-19 27.4-6.3 54.8-12.5 82.4-17.6 8.1-1.5 16-4.1 23.9-6.4 3.1-.9 6.4.2 9.3-1.4 3.3-1.8 6.4-4.1 10.6-1.5.9.5 4.4.1 5.5-2.9.7-1.9 2.3-4.4 4.9-.8 1.6 2.2 7 .7 8.2-2.2 1.5-3.7 2.9-5.6 5.8-1.1.1.1.2.4.3.4 5-.1 8 2 8.5 7.3.1.9 2.1.9 3.2.3 1.9-.9 1.8-2.7 1.7-4.3-.2-3.3 0-6.1 4.6-5.3 1.3.2 2.2.6 2.3 2.1.4 5.2 3.2 4.5 6.6 2.5.9 2.4.6 4.4-.5 6.4-26.6 6.1-53.3 12.3-79.9 18.4-4 .9-8.2.9-12.1 2.6-1.2-.8-1-2-1-3.2.1-1.7-.2-3.2-2.4-2.8-1.8.3-4.1.8-3.2 3.4 1.6 4.5-1.9 3.9-4.2 4.7-2.4.8-4.3 1.3-4.1-2.4.1-1.2-.8-1.8-2-1.5-1.5.4-3.3.8-3 2.7.6 3.6-1.8 4-4.3 4.7-2.5.7-3.5 0-4.2-2.5-.5-1.7-4.6-.7-5.5 1.4-2.4 5.5-4.2 5.8-8.6 2.4-1.9-1.5-4.7-.6-5.4 2-.6 2.3-1.8 2.8-3.7 3.2-4.1.8-8.1 2-12.1 2.8-2.1.4-4.3 1.5-6.5-.6-1.1-1-3.7-.6-4.3 1.2-.6 2.1 1.6 1.4 2.7 1.6 1.5.3 2.1 1.1 1.4 2.4-.8 1.6-2.9 2.2-3.7 1-2.7-4-5.9-1.8-8.9-1.2-4.7.9-9.1 2.8-14 2.4-1.7-.1-4-.2-5.3 2-.8 1.5-2.6 1.3-4.1 1.5-14.4 2.1-28.1 7.2-42.2 10.7-2.7.7-4.7 1.3-4.3 4.8.2 2.2-1.1 3.9-3.4 4.2-2.5.4-3.1-1.5-3.4-3.4-.3-1.8-1.1-3-2.9-2-1.6.8-4.9-.6-4.5 3.2.1.7.2 1.4.1 2-.4 2-1 4-3.4 4.3-2.4.3-3.4-1.2-3.8-3.1-.6-3.2-2.4-2.7-4.7-2.1-2.3.6-4.1 1-3.1 4.2.7 2.2 0 4.5-2.7 5-2.8.6-4-.9-4.1-3.6 0-2.6-1.3-3-3.6-2.4-6.9 1.8-13.8 3.5-20.8 5.1-1.7.4-2.6 1.4-2.5 3.1v3.5c-.1 2.3-1.2 3.9-3.5 4.2-2.8.3-3.1-1.9-3.5-3.9-.3-1.5.8-4.5-2.4-3.5-2.5.8-6.5-.3-6.6 4.4 0 2.5 1.1 5.5-1.9 7.2-1.1 0-2.1 0-3.2.1-2 .1-2.5-1.3-2.9-2.8-.4-1.7-.8-3.3-3.1-2.9-2 .4-3.2 1.5-3.5 3.6-.3 2.2.5 4.8-2.4 5.9-1.2.8-2.5 1.1-3.8 1-2.8.3-3-2.1-3.8-3.8-.7-1.4-1.3-2.8-3.3-2.4-1.7.3-2.3 1.6-2.6 3.2-.4 2.2.5 4.9-2.6 5.9-1.6.3-3.2.7-4.8 1.1-2.5 0-2.6-2.2-3.1-3.8-.5-1.7-.8-3.3-3.1-2.9-2.1.4-3.1 1.6-3.4 3.7-.3 2 .5 4.4-1.5 6-1.6 1.4-3.4 2.4-5.6 2-.5 0-.9-.3-1.3-.6-2.1-1.9-.7-5.7-2.8-7-1.8-1.1-4.6 1.6-7-.3-2.5 1.7-4.8 3.7-8.2 2-1.1-.5-2.9-.5-3.9 1-2.3 3.2-5.8 5.5-9.3 5.4-5.9-.2-10.8 2.1-16.1 3.7-2.8.3-4.7-1.3-6.3-3.3-2.3-2.6-5-3.3-8.5-2.8-10.8 1.6-21.8 1.6-32.2 5.6-2.9 1.1-6.2 1-9.4.4-1-.2-2.1-.5-2.2-1.6-.1-1.1.7-1.8 1.6-2.3 2.8-1.5 5.9-2.3 9-2.8 8-1.2 15.9-4.2 24-6.3z" class="stn53"/>
|
||||||
|
<path fill="#6e7073" d="M850 1003c4.9-2 9.6-4.1 15.4-3.7 3.1.3 6.4-2.7 9.6-4.2 3.6-.6 4 1.2 5.1 4.5 2.3 6.4-1.1 6.8-5.5 8.2-22.9 6.9-46.3 11.8-69.3 18.1-7.8 2.1-15.6 4.2-23.3 6.5-7.7 2.3-15.6 4.3-23.6 5.9-3.2.6-6.6 1-9 3.8-1 1.1-2.4.9-3.7.7-5.1-.7-9.2 1.8-13.7 3.8-4 1.8-10.3-1.4-13.7 2.3-3.6 3.8-7.5 1.3-10.7 2.6-6.9 2.6-13.8 4-21.2 5-12.9 1.8-25.6 5.6-38.3 8.7-.8.2-6.2-.9-1.5 2.8.6.5-.1 1.3-.7 1.6-1.6.8-3.3 1.1-4.7-.1-1.2-1.2-2.2-2.5-4.1-2.2-.2-.4-.3-.9-.1-1.4 1.8-4.6.7-8-4.1-9.8.7-2.3 2.8-2.1 4.5-2.5 44.2-10.7 88.4-21.7 132.5-32.6 12.1-3 24.2-5.6 36.2-9.1 3.4-1 7-.6 10.4-1.2.5-.2.9-.5 1.4-.7 3.3-2.3 7.1-3.1 11.1-3 1.5 0 3-.2 4.4-.8 4.4-2.3 8.9-3.9 14-2.4.7-.1 1.8 0 2.6-.8z"/>
|
||||||
|
<path fill="#5c5f63" d="M633 1056c1.9.6 5-1.2 5.7 1.4.7 3.2 1.6 6.9-1.6 9.6-3.4 1.2-7.6 1.2-8.7 6.2-.2 1.1-3.3 2.4-4.2.9-3.1-5.2-7.2-2.2-11-2-3 1.2-3.9-.3-3.8-3 0-1.8.4-4.1-2.2-4-2.7.1-2.8 2.5-2.4 4.5.7 3.8-1.4 5-4.6 5.2l-1.9.3c-3 .7-5.6 1-6.5-3-.4-1.8-1.7-3-3.7-2.4-2 .7-2.2 2.4-1.7 4.1 1.1 3.2-.9 3.7-3.2 4-14.7 2.6-29.3 5.8-44.1 7.7-3.6.4-7.3.1-10.8 1.5.1-4.5-1.5-8.7-2.1-13 1.9-2 4.6-1.8 7-2.2 30.9-4.5 61.7-10.1 92.4-16.1 2.2-.4 4.9-1.8 7.4.3z"/>
|
||||||
|
<path fill="#918882" d="M583 1077.9c1.3-1.1 3.9-1.2 1.7-4.2-1.5-2.1 0-4.7 2.5-5.5 2.6-.8 5.5-.3 5.6 3 .1 4.1 2.6 3.9 5.3 3.9-2.6.9-5.3 1.2-5 5.3.2 1.9-1.7 3.4-4 3.6-2 .1-2.8-1.3-3.5-2.9-.6-1.3-.6-3.1-2.6-3.2z"/>
|
||||||
|
<path fill="#938a83" d="M600 1074.9c1.9-1.2 4.9-1.4 3.2-5.2-.8-1.8-.8-4.3 1.7-5.6 1.3-.7 2.6-1.5 4.1-.4 2 1.5 2.3 3.4 1.4 5.7-1 2.6 1 2.6 2.7 2.8-1.1 1.2-.9 2.8-1.4 4.2-.7 1.9-2.3 2.8-4.2 3.2-1.8.4-2.9-.9-3.3-2.4-.5-2.7-2.5-2.1-4.2-2.3z"/>
|
||||||
|
<path fill="#77797c" d="M887.2 992.1c2.7-.5 5.8-2 8-1.2 2.7 1 .3 5.1 2 7.4.4.5.7 1.1 1 1.7-2.7 3.2-6.9 2.5-11.2 4.4 2-4.7-.2-8.4.2-12.3z"/>
|
||||||
|
<path fill="#7b7d7f" d="M903.8 998c.1-1.6.6-3.3.2-4.9-1.2-4.9 1.8-5.8 5.5-6.5 2.5-.5 3.4.4 3.4 2.6.1 2.2.1 4.3 2 5.8l.3.9c-3.6 1.5-7.2 3.4-11.4 2.1z"/>
|
||||||
|
<path fill="#808284" d="M935.9 990c1.6-1.8 1.1-4 1.1-6.1 0-1.8-.2-3.4 2.2-4.2 4.8-1.7 5.8-1.4 6.8 3.7.2 1.2.7 2.2 1.8 2.7.1.3.4.8.4.9-3.8 2.3-7.7 4.2-12.3 3z"/>
|
||||||
|
<path fill="#7c7e81" d="M919.8 994c1.5-1.6 1.4-3.7 1.1-5.6-.6-3.6 1.4-4.6 4.2-5.2 2.6-.6 4-.1 4.3 2.9.2 1.8.4 4 2.7 4.9-3.6 3.1-7.6 4.5-12.3 3z"/>
|
||||||
|
<path d="M633 1056c-15.3 2.8-30.7 5.8-46 8.5-20.3 3.6-40.5 7.4-61 9.6-1.3-4.7-2.7-9.3-4-14-.3-4 3.2-3.6 5.2-3.8 8.7-1 17.2-2.9 25.9-4.2 21.1-3.1 41.8-7.8 62.7-12.1 27.8-5.8 55.6-11.8 83.1-19 2.7-.7 5.4-1.4 8.2-2 9.1-.7 17.7-4 26.5-6 18.2-4.1 36.3-8.6 54.4-13 10.6-2.6 21.1-5.5 31.6-8.4 2.2-.6 4.3-.5 6.4-.6-7 4.1-14.8 5.6-22.6 6.9-4.1.7-8 1.8-12.5 4.3 5.7 1.5 10.6 1.1 15-.8 10.2-4.4 21.3-2.5 31.8-5.2 3-.8 5.2 1.9 7 4.1 1.5 1.8 2.9 3.2 5.3 2.7-1.6 1.6-3.7.8-5.6.9-4.1.1-7.7 2-11.4 3.2-2.5-5-2.5 1.3-4 .9-4-.3-7.8.6-11.1 3-.7-.7-1.4-1.3-2.5-1.3.7.6 1.8.6 2.4 1.4-3.2 2.4-7.2.2-10.6 1.7-9.1 4-19 5.3-28.4 7.5-20.6 4.6-40.9 10.2-61.4 15-27.8 6.4-55.3 14.1-83.2 20.1-.4-.1-.8.3-1.2.6z" class="stn62"/>
|
||||||
|
<path fill="#5b5e62" d="M489.9 1092.3c-9.1-.2-18.1 1.5-27.1 2.4-16.1 1.6-32.2 3.6-48.4 5.2-1.4.2-3.9 1.4-4.2-1.8 2.5-3.2 6.6-5.1 7.6-9.6.4-1.6 1.9-1.7 3.2-1.8 8.1-.7 16.1-2.2 24.2-2.7 12.6-.8 25.1-2.3 37.7-3.5 2.7-.3 4.9-1.1 4.3-4.5.9 5.4 1.8 10.8 2.7 16.3z"/>
|
||||||
|
<path fill="#b6b8bb" d="M492.2 1078.8c-1-4.2-2-8.4-2.9-12.6-.7-3.1 1-4.7 3.7-5.6 6.2-2 12.6-3.1 19-4.2 2.9-.5 5.2.9 6.1 3.9 1.1 3.8 2.1 7.7 3.1 11.5.9 2.4 0 4.1-2.3 4.6-8.3 1.7-16.6 3.1-25 3.3-.7.1-1.3-.4-1.7-.9z"/>
|
||||||
|
<path fill="#acafb2" d="M524 1088.1c.4 4.5.6 8.9 1.1 13.4.3 2.7-.7 3.9-3.4 4.3-7.8.9-15.5 2-23.2 3-2.2.3-3.4-.2-3.4-2.8-.1-5-.6-9.9-.9-14.9 1.6-1.7 3.7-2.2 5.9-2.3 5.6-.5 11.2-1.3 16.9-2 2.3-.4 4.9-.7 7 1.3z"/>
|
||||||
|
<path fill="#5f6164" d="M524 1088.1c-10.1-.2-19.9 2.1-29.9 3-.6-4.1-1.3-8.2-1.9-12.2 8.5-1.1 17-2.1 25.4-3.2 2-.3 4-.8 3.6-3.6.9 5.2 1.8 10.6 2.8 16z"/>
|
||||||
|
<path fill="#979a9e" d="M497.4 1125.8c-2.2.1-3.5-.3-3.4-2.4.1-1.8-.1-3.8 2.5-4.2 8.4-1 16.7-2.1 25.1-3.1 2.2-.3 2.6.8 1.7 2.6-.6 1.3-1.7 2.1-3 2.5-7.7 2.4-15.6 3.3-22.9 4.6z"/>
|
||||||
|
<path d="M1043.9 953.9c1.6 0 3.1.1 2.9 2.2-.2 2.3-1.6 3.6-3.8 3.7-2 .1-3-1.2-2.9-3.1.1-2.3 1.8-2.7 3.8-2.8zm14.5-3.8c1.5-.1 2.5.3 2.5 1.8 0 2.3-1.4 3.7-3.6 3.9-1.5.1-2.3-1.1-2.4-2.6 0-2.4 2-2.6 3.5-3.1z" class="stn53"/>
|
||||||
|
<path fill="#65686d" d="M1484 830.5c-.1 5-.1 9.9-1 14.9s-3.2 7.8-8 8.8c-2.8.6-6 3.5-8.4 1.3-2.5-2.2.1-5.6.6-8.5 2.2-13.6-.2-26.7-4-39.7-.8-2.7-2.8-5.9-.5-8 3.2-2.8 7.7-3.9 12-4 2.7-.1 3.4 2.9 4.2 5 3.6 9.8 5.7 19.8 5.1 30.2z"/>
|
||||||
|
<path d="M1237.9 898.9c.5 3.4-.8 5.8-3.6 5.7-3.7-.1-2.3-3.9-2.7-5.9-.7-3.3 2.7-2.7 4.4-3 3.1-.6 1.5 2.3 1.9 3.2zm13.1-4.2c.2 3.1-.3 5.8-3.4 6-2.8.2-2.5-2.4-2.7-4.4-.4-3.3 1.5-4.6 4.3-4.9 3.1-.1 1 2.6 1.8 3.3z" class="stn35"/>
|
||||||
|
<path d="M1197.7 911.9c-.2 1.6-1.5 3.4-3.5 3.6-1.7.2-2.1-1.9-2.1-3.3-.1-2.5 1.8-2.9 3.7-3.1 1.5-.2 2 .8 1.9 2.8z" class="stn33"/>
|
||||||
|
<path d="M784.9 1026.1c.4 5.2-3.9 4.6-6.2 5-2.2.4-2.4-2.9-2.5-4.5 0-4.2 4.1-3 6.3-3.6 2.5-.7 2.2 2.1 2.4 3.1z" class="stn28"/>
|
||||||
|
<path fill="#b6b6b6" d="M850.7 1005c2.2-.3 3.2.5 3.5 2.9.4 3.9-2.1 4.1-4.8 4.5-2.6.4-3.1-1.2-3.3-3.1-.5-3.7 2.1-4 4.6-4.3z"/>
|
||||||
|
<path d="M797.4 1026c-2.6 0-3.5-1.5-3.3-3.5.3-3.8 3.9-3 6.1-3.8 2.2-.9 2.5 1.3 2.5 2.6 0 3.5-3 3.9-5.3 4.7z" class="stn28"/>
|
||||||
|
<path d="M870.9 1003c.3 4.5-3.1 4.4-5.4 4.7-2.3.3-2.4-1.9-2.3-3.5.1-4 3.6-3.4 5.9-3.9 2.3-.5 1.5 1.9 1.8 2.7z" class="stn53"/>
|
||||||
|
<path fill="#bababa" d="M831.3 1016.5c-2.5-.4-2.3-2.3-2.3-3.8.1-3.6 3.2-3.1 5.4-3.6 2.3-.5 2.8 1.2 2.6 3-.5 3.6-3.7 3.2-5.7 4.4z"/>
|
||||||
|
<path fill="#babab9" d="M819.9 1016.5c-.6 2.5-2.2 4-4.9 4.5-2.6.5-3.2-1.3-3.4-3.1-.3-3.8 3.1-3.1 5.2-3.8 1.5-.5 2.8.3 3.1 2.4z"/>
|
||||||
|
<path fill="#b9b8b8" d="M747 1038c-2 0-4.1.3-4-2.5.1-3.8 3.7-3.2 5.8-4.1 2.1-.9 2.2 1.2 2.3 2.7.2 3.2-1.6 4-4.1 3.9z"/>
|
||||||
|
<path d="M711.9 1046.8c-2.4.3-2.8-1-2.9-2.7-.3-4.5 3.7-2.7 5.7-3.8 1.5-.9 2.4.5 2.4 2 .1 3.8-3.4 3.4-5.2 4.5zm22.6-7.9c-.9 3.3-4 2.7-6.2 3.4-1.8.6-2.2-.9-2.2-2.3 0-4.5 4-2.9 6.2-3.9 2.5-1.3 1.2 1.7 2.2 2.8z" class="stn28"/>
|
||||||
|
<path d="M829 1007.9c-.1-1.5.1-3 1.7-3.8 1.1-.5 2.3-1.6 3.5-.2 1.4 1.7-.9 2-1.2 3.2-1.1 1.1-2.5 1-4 .8z" class="stn53"/>
|
||||||
|
<path d="M659.8 1054.9c-1.5.1-3-.1-2.5-1.3.8-2 3.3-1.3 5-2.1 1-.4 1.8.4 1.5 1.2-.7 2.1-3.1 1.3-4 2.2z" class="stn62"/>
|
||||||
|
<path d="M817.9 1011c-.3 0-.7.1-1 0-1.5-.3-3.4.9-4.4-1-.5-.8.5-1.5 1.3-1.7 2.3-.6 3.9 0 4.1 2.7z" class="stn53"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" id="Layer16" x="0" y="0" style="opacity:1;z-index:1" viewBox="0 0 1920 1920">
|
||||||
|
<style>
|
||||||
|
.stp0{fill:#cfcfcf}.stp1{fill:#bbbbbc}.stp3{fill:#8c8f93}.stp5{fill:#bfbfbf}.stp8{fill:#919396}.stp11{fill:#7e8185}.stp15{fill:#86888c}.stp17{fill:#cbcbcc}.stp20{fill:#6f7277}.stp24{fill:#9fa1a4}.stp25{fill:#cccbcb}.stp30{fill:#abadb1}.stp41{fill:#b5b7ba}.stp42{fill:#babbbe}.stp43{fill:#bbbcbf}.stp64{fill:#606367}.stp67{fill:#585b60}.stp69{fill:#8d9092}.stp70{fill:#676a6e}.stp72{fill:#cecfd0}
|
||||||
|
</style>
|
||||||
|
<g id="Group_2">
|
||||||
|
<path d="M1085.9 1232.9c11.5-3.7 23.5-5.3 35.2-7.8 17.4-3.8 34.9-7.5 52.7-9.8 11.8-1.5 23.7-2.6 35.6-3.2 15.1-.7 30.2-.6 45.3-1.5 11.9-.7 23.4.6 35.1 1.5.7.1 1.4.7 2.1 1 2.6 1.2 3.2 3.6 3.9 5.9 2 6.7 2.9 13.5 2.5 20.4-.6 6.8-1.8 8.1-8.6 8-17.3-.1-34.6 1.1-51.8 1.8-9.6.4-19.3-.4-28.9-1.1-9-.6-17.9-.6-26.9-.7-10.8-.2-21.6-.2-32.1-3.7-3.3-1.1-6.9-.9-10.4-.4-3.3.5-6.6 1.2-9.9 1-10.5-.8-20.9 0-31.4 0-9.4.2-11.3-1.6-12.4-11.4z" class="stp0"/>
|
||||||
|
<path d="M1219 1295.9h-27c-3.3-1.2-6.8.3-10.1-.8-15.1 0-29.8-2.7-44.7-4.8-14.2-2-28.3-4.2-42.5-6.3-1.9-.3-3.9-.7-5.8-1.1-3.6-3.3-3-7.7-3-11.9 1.2-2.6-.3-6 2.2-8.3 11.2-.9 22.3.8 33.4.9 15.4.2 30.4 3.6 45.6 5.4 8.8 1.1 17.6.2 26.5.8 18.1 1.2 36.3.9 54.4.5 16.4-.4 32.9-.2 49.4-1.7 2.5 1.5 2 4 1.9 6.2-.3 4.6-1.2 9.1-3.2 13.3-9 3.7-18.6 4.9-28.1 5.7-10.6.8-21.2 1.7-31.9 1.3-5.7 1.1-11.5-.4-17.1.8z" class="stp1"/>
|
||||||
|
<path fill="#ccc" d="M1085.9 1232.9c1.6.7 2 2 2.2 3.6.4 5.3 3.8 6.7 8.5 6.4 6.9-.3 13.9-1.1 20.8-.6 9 .7 17.8.6 26.6-1.1 1.8-.4 4 .1 5.8.8 16.8 5.8 34.2 2.7 51.2 4.2 10.4.9 20.8.6 31.2 1.4 10.8.8 21.8-1 32.7-1.4 8.3-.3 16.6-.2 24.9-.2 6.7 0 6.8-.2 7.1-7.1 4.2 2.2 1.9 6 2.5 9.2-.5 3.4.8 7.1-1.4 10.2-1.4 1.1-3.1 1.2-4.8.9-11.4-1.7-22.6.2-33.9 1.1-3.3.3-6.7.2-10 .2-27.3.1-54.7 1.3-81.9-1.4-24.8-2.5-49.5-2.3-74.3-2.7-5.5-.1-6-.8-7-7.4-.5-1.3-.5-2.6-.6-4 .3-2.3-.3-4.2-2.6-5.1.5-2.5-1.3-6 3-7z"/>
|
||||||
|
<path d="M1298 1247.9c-.4-3 .9-6.2-1-9 .4-9-1-17.7-5-25.8 6.3.3 10.2 3.6 11.7 9.6 1.6 6.6 2.9 13.3 2.3 20.2-.1 4.4-2.4 6.7-6.7 7.3-1.1-.3-.6-1.6-1.3-2.3z" class="stp3"/>
|
||||||
|
<path fill="#5b5d60" d="M1299 1250c3.5-1.2 5.4-3.9 7-7 .9 4.7.6 9.4.1 14.2.1 7.1-.7 14.1-2.2 21-1 4.6-3.2 8.3-7.8 10-.9-4.2 1.6-7.8 1.7-11.8.1-2.5.2-4.9.3-7.4-.4-.5-.6-1-.6-1.6 0-5.9.8-11.6 1.5-17.4z"/>
|
||||||
|
<path d="M1083.1 1240c4.3-1.3 4 1.5 3.8 4.2-.5 7.1.8 14.2.5 21.3-.1 1.8.5 3.6-.4 5.4 0 4.1.8 8.1 1.9 12-5.7-.8-4.2-5.9-4.7-9.1-1.7-11.2-1.5-22.5-1.1-33.8z" class="stp5"/>
|
||||||
|
<path d="M1219 1295.9c5.6-1.9 11.4-.5 17.1-.8-5.7 1.8-11.4.5-17.1.8z" class="stp0"/>
|
||||||
|
<path d="M1306.1 1257.1c0-4.7-.1-9.4-.1-14.2 1.3 4.8 1.1 9.5.1 14.2z" class="stp3"/>
|
||||||
|
<path d="M1181.9 1295c3.4.2 6.8-1 10.1.8-3.4-.1-6.9 1-10.1-.8z" class="stp0"/>
|
||||||
|
<path d="M1298 1268.2c.1.3.1.5 0 .8-4.5 3.4-10.2 2.5-15 2.3-8.5-.3-16.8.4-25.3.6-17.8.4-35.7.8-53.4-.1-20.8-1.1-41.9.3-62.5-5.3-7.7-2.1-16.4-.5-24.7-1.5-8.6-1-17.2-1.2-25.8-1.1-1.1 0-2.2-.6-3.3-.9-1.5-4.9-2.3-9.9-.8-15 1.2 4.7 4.6 7 10 7 13.5 0 27 .2 40.4-.1 8-.2 15.7 2.3 23.7 2.4 1.5 0 2.9.6 4.4.7 30 1 60.1 1.4 90.1.9 9.9-.2 19.8-2.1 29.7-1.9 4.1.1 8.2.6 12.4.9 1 3.4.8 6.8.1 10.3z" class="stp5"/>
|
||||||
|
<path fill="#545556" d="M1087.2 1247.9c.3 5 .5 10 .8 15-.7 2.6.8 5.5-1 7.9-.7-6.8-1.6-13.7-1.2-20.6.1-2.1-.5-4.3 1.1-6.1.1 1.4.2 2.6.3 3.8z"/>
|
||||||
|
<path d="M1298 1268.2c0-3.4-.1-6.8-.1-10.3 0-3.3.1-6.7.1-10 .3.7.7 1.4 1 2.1-.4 6 .7 12.2-1 18.2z" class="stp1"/>
|
||||||
|
</g>
|
||||||
|
<g id="Group_1">
|
||||||
|
<path fill="#d6d5d5" d="M1088 1112.9c-10.8 9.6-21.5 19.2-32.3 28.8-17 15.1-34 30.1-51 45.2-9.9 8.8-19.8 17.7-29.7 26.6-6.8 6.1-13.5 12.3-21 17.4-7.2 3.5-13 8.8-19.3 13.5-6.3 4.7-12.7 9.1-19.5 13-5 2.9-6.8 1.8-7.5-3.8-.9-7.7-6.7-11.1-12.9-13.6-3-1.2-5.8-2.1-8-4.7-2.2-2.7-5.3-4-8.8-4-3.5 0-6.5-.7-6.5-5.5-.5 3.9-2.8 5.9-5.6 7.6-4.2 2.7-7.5 6.6-11.7 9.2-1.8 1.1-3.7 3-5.9 1.5-2.2-1.6-1.1-3.9-.4-5.9.6-1.7 1.4-3.5.9-5.3-1.3-4.5 1.1-6.5 5-7.5 2.2-.6 4.4-1.6 6.8-1.4-1.8-.1-3.5-.1-5.3-.5-6.1-1.4-8.1-5.7-5.1-11.2 1.5-2.8 3.5-5.3 5.6-7.6 2.1-2.3 3-4.7 2.3-7.7 14-18.2 28.1-36.5 42.2-54.8 3.5-4.5 3.3-4.3-2.2-5.3-4.2-.8-8.6-.9-12.3-3.5-3.5-2.4-3.5-4.7.5-6.4 2.5-1.1 5.4-1.7 8.2-1.9 5.4-.6 10.9-.9 16.4-1.1 2.2-.1 3.9-.7 5.2-2.4 4.6-5.9 9.1-11.8 13.7-17.7 1.7-2.2 1.1-2.8-1.4-2.9-1 0-2 0-3-.1-6.2-.8-8-5.2-4.3-10.3 4.9-6.7 12.1-9.2 19.7-10.5 3.7-.6 6-1.5 5.6-5.7-.1-.8.5-1.6.6-2.4.8-11.5.8-11-8.7-11.1-4.2-.1-8.2-.9-12.1-2.6-1.8-.8-4-1.7-3.8-4.1.1-2.3 2.2-3.2 4.2-3.6 5.2-1 10.4-1.8 15.8-1.8 7 0 7 0 6.9-7-1.3-4.3-.4-8.9-1.5-13.3-1.6-6.5-4.9-11-11.1-13.7-12-5.3-24.3-8.6-37.6-8.5-19.3.1-38.6.1-57.8.1-8 0-15.9 1.6-23.9.9-2.2-.2-5.4.6-5.3-3.4 5.3-3.7 11.6-3.1 17.5-4.2 5.1-1 10.4-1.5 15.6-2.3 3.5-.2 6.9-1.2 10.4-1.2 13.3-1.6 26.6-3.2 40-3.9 10.8-.6 21.5-1.8 32.3-2.5 13-.8 25.9-1.6 38.8-2.6 15.7-1.2 31.6-1.7 46.9-6.3 1.1-.3 2.3-.5 3.5-.5 17-.2 33.9-2.1 50.9-.8 21.3 1.6 42.6-.1 63.8-.5 18.8-.4 37.6-.7 56.4-.4 9.5.1 19.1 1.8 28.7 2.4 4.8.3 9.6.6 14.4 1.3 9.5 1.5 18.6 4 26.6 9.6.9.7 1.9 1.4 2.7 2.3.4.4.6.9.7 1.5-.3 4.2-3.2 4.1-6.2 3.7-6.8-.8-13.4-2.5-20.3-2.2-3 .1-5.6.3-6.4 4-.6 2.4-2.7 3.8-4.9 4.7-18.1 7.9-31.9 21.5-46 34.7-5.7 5.3-11.1 11-17.9 15.3 9-.8 17.9-.8 26.7-.3 12.8.8 25.7 0 38.2 3.2 1.9.7 4.2.4 5.9 1.8 5.4 2.2 10.9 4.2 16.3 6.5 5.9 2.5 10.7 6.4 12.8 12.8-3.7 1.1-7.3.6-10.8-.7-16.1-5.7-33-6.5-49.7-7.7-20.5-1.5-40.9 1.1-61.3 1.9-3.4.1-5.8 2.1-8.3 4.2-14.2 11.7-27.3 24.1-41.4 35.2z"/>
|
||||||
|
<path d="M1091.1 872.2c40.4-.8 80.9-1.5 121.3-2.4 29.8-.6 59.6-1.3 89.3-2 31.9-.7 63.9-1.4 95.8-2 32.3-.7 64.6-1.3 96.8-1.9 1.5 0 3 .1 4.5.1 3.3 1.7 7.1 1.5 10.5 2.8 1.7.6 3.7 1.1 4.1 3.2.5 2.4-1.3 3.7-2.9 4.8-6.3 4.1-13 7.3-20.1 9.8-1.9.7-5.1 1-4.9 3.4.1 2.4 3.3 2.3 5.3 2.9 9.5 2.5 18.8 5.5 27.7 9.8 3.6 1.8 7 3.8 10 6.5 2.2 2 2.8 4.2-.2 6.1-4.3-3.4-6.9-.5-9.4 2.6 6.1-1.1 7.4.7 5.4 7.4-2.1 1.6-4.5 2.9-7 3.8-2.9 1-4.6 3.2-6.2 5.4-3.3 1.5-6.8.9-10.3.7-1.1 0-2.5-.3-2.8-1.7-.3-1.4.6-2.6 1.6-3.5 2.1-1.9 4.6-3.3 6.4-5.6 3.3-4.2 2.9-8-1-10.7-4-2.8-9.9-1.4-12.4 3.1 2-.4 2.7-2.1 4.1-2.8 3.3-1.6 6.2-1.2 8.6 1.5 2.3 2.5 1.8 5.2-.2 7.7-2.5 3.1-5.5 5.8-8.6 8.3-1.3 1-3.1 2.2-2.6 4 .6 2 2.8.9 4.4 1.2 2.7.6 6.1-1.5 8 2.1-1.7 2.2-4.2 1.8-6.5 1.7-10.1-.3-19.9 1.3-29.6 3.8-9.2 2.4-18.8 2.6-28.1 4.2-3.2.5-6.3 1-8.8 3.2-1.6.9-2.4 3.5-4.9 2.4-.5-.2.3-3-1.7-.7-3.2 3.7-7.4 4.3-11.5 1.5-2.7-1.8-5-2-7.8-.5s-6 1.8-8.7.6c-3.9-1.7-7.6-1-11.6-.7-7.8.6-15.5-1.1-23.3-1.1-1.7 0-3.2-.8-4.2-2.3-1.3-5.7-1.3-11.5-1.8-17.2-.8-7.7-2.8-10-10.6-10-4.8 0-9.6-.3-14.4.6-3.9.7-5.7 3-5.9 6.8-.2 4.5 0 9-.1 13.4-.1 2.3.2 4.7-1.9 6.4-1.1.6-2.2.8-3.4.7-19.1-1.3-38.2-1.1-57.3-2.5-10.8-.8-21.6-1-32.4-1.1-41.3-.2-82.5-1.8-123.8-2.5-61.3-1-122.5-.1-183.8-.7h-6.5c-1.8-.1-3.7-.1-5.2-1.4-.7-2.2 1.3-2.3 2.4-2.8 5.6-2.5 11.4-2.2 17.1-.8 2.1.5 4.1 1.2 6.3.8-4.8-.9-9.9-.9-14.2-4.2-3.5-2.7-5.2-5.8-4.4-10.3.8-4.3 3.7-6.2 7.5-6.9 15-2.8 30.1-5.7 45.3-7.5 15.5-1.8 30.9-4.6 46.3-7.8-6.2-1-12.6-1.1-18.6-3.1-6.4-2-12.8-1.2-19.3-.4-4.4.6-8.6-.7-12.7-2.3-4.4-1.8-8.8-3-13.5-3-10.5 0-20.5-4.5-31.1-3.8-2.4.2-4.9-.8-7.1-2.2-1.3-.8-2.6-1.9-2.4-3.5.2-1.7 1.7-2.4 3.1-2.8 5.1-1.5 10.2-2.3 15.5-2.1-3.2 0-6.3.2-9.5-.2-1.6-.2-3.9.5-4.2-2.3 2.5-2.4 5.6-1.8 8.6-1.7 24.3.5 48.6-.9 72.9-1.3 26.1-.4 52.2-1.3 78.3-1.8 4.2-.2 8.2 1 12.3.8z" class="stp8"/>
|
||||||
|
<path fill="#adafb3" d="M119 738.1c-6.7-16.8-13.3-33.7-20-50.5-5-12.7-10.2-25.3-14.4-38.3-.5-1.6-1.1-3.2-1.4-4.8-1-5.9 1.2-9.4 7.2-9.3 9.6.1 19.2-1.9 28.8.2 3.2.7 6.3-1.4 9.7-1.4 14.8.2 29.7.2 44.5-.1 6.2-.2 10.9 2 15.2 6.1 5.2 4.9 10.5 9.7 15.6 14.7 28.1 27.7 56 55.6 84.4 83.1 18.4 17.8 36.3 36.3 54.9 53.9 18.3 17.3 35.7 35.4 53.7 52.9 11.2 10.9 22.4 21.9 33.7 32.7 6 5.8 14.1 7.1 21.6 9.6 1.9.6 3.9.7 5.5 2-1.1 2.5-3.4 2.7-5.5 2.3-9-1.6-18.1-.4-27.2-.8-10-1-19.6-3.8-29-7.1-21.7-7.7-42.6-17.3-63.3-27.3-39.6-19.1-78.9-38.9-116.6-61.7-22.6-13.7-46.5-24.5-70.1-36.1-7.2-3.5-14.2-7.4-20.5-12.4-2.6-2.3-4.5-5.1-6.8-7.7z"/>
|
||||||
|
<path fill="#d4d3d3" d="M1091.1 872.2c-1.3 1-2.9.7-4.3.8-22.8.4-45.6.5-68.3 1.2-17.6.6-35.3.3-52.9 1.2-14 .7-27.9.3-41.9.8-1.6.1-3.4-.4-4.8.8-6.7 2.7-13.3 2.8-19.9-.1 4.7-1.7 9.5-.4 14.3-.9 1.4-.1 3.4.5 4-1.1.6-1.6-1.4-2.4-2.3-3.5-5.6-5.9-11.5-11.5-16.7-17.8-4.3-5.2-9.7-6.6-15.8-6.5-5.8.1-11.6-.6-17.2-2-2.4-.6-4.8-1.7-4.7-4.3.1-2.3 2.7-2.4 4.6-3 4.6-1.7 9.7.4 14.7-2.3-6.9-7.2-13.8-14.3-20.6-21.4-4.5-6.5-10.5-11.5-15.7-17.3-5.9-6.5-12.8-12.2-18.2-19.2-2.6-3.4-4.4-7.4-7-10.9-2-2.8-1-6.8-.3-10.2.4-2 3-1.7 4.8-1.5 2.5.3 4.9 2.1 7.2 1.7 6.3-1.1 12.5-3 17.2-7.7 2.1-2.1 3.5-4.5 1.6-7.5-.5-.7-.4-1.6.2-2.3 12.7 6.5 25.5 12.8 38 19.6 17.2 9.3 34.3 19 51.4 28.6 16.2 9.1 32.4 18.3 48.6 27.3 22 12.2 44.2 24.3 66.2 36.6 11.3 6.3 22.5 12.8 33.8 19.2 1.2.6 2.6 1.1 4 1.7z"/>
|
||||||
|
<path d="M677.8 882.9c1-.2 1.9-.6 2.9-.6 36.2-.9 72.4-1.7 108.6-2.6.5 0 1 .1 1.5.2 6.3-.9 12.6-.1 18.8-.4 1.8-.1 3.7.4 5.4-.4 4.9-.1 9.9-.1 14.8-.2 2.4-.6 4.8-.7 7.7.2-2.8 3.3-6.1 3.2-9.3 3.3-15.7.2-31.2 2.5-46.6 4.9-1.6.2-3.4.1-4.9 1.8 5.4 3.1 11.3 3.8 17.2 4.5 17 1.9 34.1 3.8 51.1 5.7 4.5.5 8.7 2.2 13 3.6 1.9.6 3.8 1.7 3.8 4.1 0 2.2-1.2 3.8-3 4.9-2.2 1.3-4.6 2-7 2.5-9.4 2.3-18.5 5.7-27.7 8.5-4.5 1.3-8 4.7-12.1 7-2.2 1.2-1 2.8.1 4.1 2.1 2.7 2.4 5.1-.8 7.1-6.9 1.4-14 1.4-20.8 1.2-29.5-1-59.1-.1-88.6-.5-2.8 0-5.7.4-8.3-1.1.6-2.6.7-3 4-3 7.5.2 14.9-1.1 22.4-.7 1.3.1 2.5.1 4.7-.6-8.8-.7-16.8-1.5-24.7-1.7-7.2-.2-14.3 0-21.5-.1-29.1-.5-58.2-1.7-87.2-3.6-30.1-2-60.1-4.6-90-7.5-9-.9-17.7-2.9-26.6-4.2-2.8-.4-6.1-1.3-6.4-4.6-.4-3.7 2.8-4.8 5.7-6 16.5-6.8 34.1-9 51.6-11.2 21-2.7 42-4.3 63.1-5.8 13.4-.9 26.9-1.3 40.4-2.3 19.9-1.3 39.9-2.4 59.7-4.5 3.7-.4 7.4-.6 11.2-.5-5.2-.1-10.5.2-15.7.1-2.6 0-4.8.3-6.5-1.6z" class="stp11"/>
|
||||||
|
<path fill="#c7c7c8" d="M273.1 976.9c-5.9-.1-11 2.6-16.3 4.4-32.4 11.1-64.7 22.4-97.1 33.7-13.3 4.6-26.7 9.1-40.1 13.7-6.8 2.4-14 2.8-21.1 3.1-12.8.5-25.7.2-38.5.2-2.2 0-5.2.5-6-2.3-.8-2.9 1.9-4.3 4-5.7 8.8-6 19-9.3 28.3-14.6 32.4-18.4 64.9-36.5 97.3-54.8 1-.6 2.2-1 2.1-2.5.7-2.3.3-4.6.1-6.9-.5-4.7 1.4-6.8 5.9-6.3 19.7 2.1 39.5-.7 59.2.6 6.8.5 13.6.1 20.4 1 .7 0 0-1 .1-.4 0 .2-.1.3-.3.3-12-.4-23.8-1.8-35.7-3.1-11.6-1.3-23.1-2.4-34.7-3.9-15.1-1.9-15-3.5-14.3-19 .1-1.7.8-3.2 2.1-4.3.6-.7 3.3.7 2.1-2 4-1.8 8.4-1.5 12.6-1.7 18.6-.7 37.2-2.1 55.8-3.3 7-.5 7-.5 9.2 6.3.3.8.8 1.4 1.5 1.9 1.3.9 2.7 1.2 4.3 1.2 1.2 0 2.7-.2 3.4.5 4.6 4.6 10.9 4 16.4 5.4 5.8 1.5 11.7 2.5 17.6 3.8 2.6.6 5.2 1 7.5 2.5 1.5 1.3 3.3 2.2 5 3.3 1 .6 2.1 1.3 1.7 2.7-.4 1.5-1.7 2.1-3.1 2.1-3 0-6.1-.3-9.3-.5 3.2.2 5.3 2.1 7.3 4.4 1.1 1.3 2.9 1.6 4.5 1.8 4.2.4 8 2 11.9 3.5 3.8 1.5 4.5 4.3 2.1 7.5-1.4 1.9-2.6 3.8-3.7 5.9-2 2.2-4.7 2.2-7.3 2.8-12.3 4.4-24.8 8.1-37 12.5-5 1.9-10.1 3.6-15.2 5.1-.7.4-1.9.1-2.7 1.1z"/>
|
||||||
|
<path fill="#545355" d="M119 738.1c3.6.2 4.4 3.9 6.7 5.8 9.4 8 20.7 12.7 31.6 18 18.9 9.3 38.1 17.9 56.2 29.1 19.6 12.1 40 23.3 60.6 33.7 20.2 10.2 40.2 20.9 60.6 30.6 27.4 12.9 54.5 26.6 84.4 33.1 1.6.3 3.3.6 4.9.9 6.8 1 13.6.3 20.3.4 3 0 5.3.3 5.8 3.9.3 2.1 1.8 3 3.5 3.9 1.8.9 3.9 1.8 3.5 4.3-.5 2.7-3 2.8-5.1 3-10.2 1.2-20.5 1.8-30.8 2-9-.9-17.9.8-26.8 1.3-5.4.3-9-.5-11.8-5 .8 1.4 2.8 2.1 2.3 3.9-.5 1.7-2.4 1.7-3.8 1.7-11.4.7-22.9 1.5-34.3 2-10.3.4-20.5 1.7-30.9 1.1-3.6-.2-5.8-1.7-8.5-4-6.6-5.5-11.5-13.5-20.9-15.3-1.1-.2-2.2-.7-3.2-1.4-1.4-.9-2.9-2.1-2.4-4 .6-2.2 2.5-1.7 4.2-1.5 12.7 1.6 25.4 2.9 38 4.1 2.1.2 4.3.1 6.5.1 9.5.3 18.9 1.7 28.4 2 2.5.1 4.6.6 5-3.5.3-3.3 4.6-2.9 6-1.3 6.2 7.6 14.9 6.7 23 7.4 6.2.6 12.5 1 18.6 2-10.3-3.3-21-5.1-31.5-7.5-24.2-5.4-48.2-11.7-71.9-18.8-19.6-5.9-39.3-11.9-58.2-19.7-25-10.3-50.9-17.3-76-26.4-5.3-1.9-10.6-4-15.5-6.8-4.1-2.3-8-4.9-10.4-9-8.3-20.8-16.7-41.5-25-62.3-1.1-2.7-3.1-4.9-3.1-7.8z"/>
|
||||||
|
<path fill="#a1a3a7" d="M273.1 976.9c0-1.4.7-2 2.1-1.8 21.2 2.8 42.4 6.5 63.6 9.2 18.3 2.4 36.6 4.8 55 7.1 3.1.4 6.3.9 9.4 1.4 3.3.5 6.1 1.8 7.2 5.3.9 2.6 3 3.6 5.3 4 7.2 1.3 14.5 1.8 21.8 1.4 1.2-.1 2.4-.2 3.1-1.3 2.7-4.4 7-3.9 11.1-3.5 10.4.9 20.8 2.8 31.3 3.3 21.4 1 42.8 2.8 64.3 3.5 53.8 2 107.5 2.3 161.3 1.6 23.8-.3 47.6-.6 71.4-.8 2.7 0 5.3-.3 7.9.7 3 3-.5 2.9-1.7 3.1-11 1.8-21.5 5.4-32.2 8.3-6.9 1.9-13.6 4.2-20 7.4-3.3 1.7-6.9 2.9-8.4 7.2-1.1 3.1-4.5.6-6.6 1.9-152 6.4-300-17.1-445.9-58z"/>
|
||||||
|
<path d="M812 940c.8-2.3 1-4.4-1.7-5.9-3.8-2.1-2.3-4.1.4-5.9C823 920.3 837 917 850.8 913c.3-.1.7 0 1-.2 3.3-1.5 8.9-1 8.8-5.8-.1-4.4-5.3-3.1-8.3-4.2-10.5-3.9-21.7-3.1-32.5-4.9-14.3-2.3-29.1-1.8-43-6.8-1.4-.5-3.3-.2-3.2-2.3.1-1.9 2.1-2 3.5-2.2 8.3-1.7 16.6-2.6 25-3.7 11.3-1.5 22.7-1.8 34-3.7-2-.1-4-.2-6.1-.3 1.8-1 3.9-.7 5.9-.7 21.1-.5 42.2-.9 63.3-1.4 6.6 0 13.3 0 19.9.1 6 .5 12.2-.5 18.7.6-1.6 2.8-3.8 2.6-5.8 2.4-5-.3-9.9.9-14.7 2-1 .2-2.2.3-2.4 1.4-.2 1.1.9 1.8 1.7 2.2 2.7 1.5 5.7 2.6 8.5 2.2 10-1.3 19.1 3.9 29 3.4 5.8-.3 11.3 1.9 16.7 4.1 4.9 2 9.9 1.8 15.1.8 8.8-1.8 16.9 2.7 25.5 3.2 3.1.2 6.2.5 9.3.8 1.2.1 2.6 0 2.7 1.5.1 1.2-1.2 1.3-2.2 1.5-11 2-22.1 4.3-33.2 5.9-16 2.4-32.2 3.9-48 7.3-4.7 1-9.5 1-14.2 2.5-3 .9-4.3 2.2-4.9 5.3-.6 3.5.1 6 2.8 8.3 4.2 3.6 9.3 3.9 14.3 4.7.8.1 1.5.2 2.6.4-1.3 4.1-4.9 3.1-6.7 2.4-6.6-2.7-12.8-2.4-19.3.2-.7.3-1.7.1-2.5.1-.8 1-1.9 1.3-3.1 1.4-12.9.5-25.7 2.2-38.6.8-4.5-1.4-9.3-1.2-13.8-.6-10.2 1.4-20.4 1.3-30.6.1-3.3-.4-6.6-.1-9.9-.1-1.6 0-3.6.8-4.1-1.7z" class="stp15"/>
|
||||||
|
<path fill="#767a7f" d="M421.1 905c10.9-.1 21.8-1 32.7-2.1 1.1-.1 2.5-.1 2.5-1.7 0-1.3-.9-2-2.2-2.3-3.5-.9-6.7-1.8-5.6-6.9.5-2.1-2.2-2-3.8-2-5.2 0-10.3 0-15.5-.1-1.8 0-3.7.5-5.2-.9 9.8.5 19.6-1 29.3.8 1.6.3 3.3 0 4.8-.9 11 4.2 22.2.7 33.3 1 2.5.1 4.9 0 7.4 0 4-1 8.2.3 12.2-.8l8.7-.2c4-1.1 8.2.3 12.2-.7 3.2-.1 6.5-.2 9.8-.3 4.4-1.1 8.9.3 13.2-.8 3.3-.1 6.5-.2 9.8-.2 4.7-1.1 9.5.3 14.2-.8 3.3-.1 6.5-.2 9.8-.2 5.3-1.1 10.8.3 16.2-.8 3.3-.1 6.5-.2 9.8-.2 6.4-1.2 12.8.3 19.2-.8 3.9-.1 7.9-.1 11.8-.2 6.4-1.2 12.8.3 19.2-.8 4.3-.1 8.5-.2 12.8-.2 7.7.8 15.6-1.1 24 1.7-10.5 2.1-20.4 2.7-30.2 3.4-17.5 1.3-35 2.7-52.5 3.9-6.8.5-13.6.6-20.4.9-16.1.7-32.1 1.9-48.1 3.4-22.2 2.1-44.4 4.4-66.1 9.9-4.3 1.1-8 3.9-12.5 4.7-1.5.3-3.7 1.6-3.3 3.8.3 1.9 2.2 2.4 3.9 2.6 10 1.6 19.9 3.4 29.9 4.6 12.5 1.5 25 2.7 37.5 3.8 5.8.5 11.6.7 17.3 1.2 16 1.6 32.1 1.6 48 3.8.7.1 1.3.2 2 .1 13.6-.5 27.3.6 40.8 1.3 18.6.9 37.3-.2 55.9.9 8 .5 16.3-.4 24.7 3.1-3.9 1.4-7 2-10.7 2.2-8.3.5-16.8-.6-25.1 1.5-2.9 2.6-6.5 1.5-9.8 1.6-2.8.1-5.5.2-8.3-.1-37.6-.3-75.1 0-112.7-.1-1.7 0-3.3.3-4.9.7-8.6.7-17.2.7-25.7.1-4.4-1.3-9-.7-13.5-.7-17 0-33.8-.9-50.7-2.7-19.8-2.1-39.8-3.2-59.5-6.2-19-2.9-38.1-5.6-56.7-11.2-4.6-1.4-9.5-1.8-14.1-3.1-2-.5-4.4-.5-5.3-3.1 1.8-2.9 4.8-2.8 7.6-2.4 8.5 1 16.9.3 25.4.2 6.8-.1 13-1.2 19.4-3.1 10.2-2.9 21-3.1 31.5-3.9 2 .2 3.9.2 5.6-.7z"/>
|
||||||
|
<path d="M719 1034.8c4.2 0 5-3.9 7.3-6.1 4-3.7 9.4-5.6 14.5-7.5 13.4-4.8 27.3-8.2 41-12 2.4-.7 5 .6 7.2-1.2 7.2-3.6 14.8-5.9 23-4.1.2 1.4 1 2 2.4 2 6.1-.3 12.3.8 18.4-.7 1.4-.3 3-.3 4.5-.3 22.5 0 45.1-.2 67.7.1 13 .2 25 4.4 36.2 10.7 7.3 4.1 10.9 17.2 7.9 26.1-17.6.1-35.2.8-52.8 1.4-15.8.5-31.6-.1-47.4.9-16.3 1.1-32.6 1.1-48.9.5-19.8-.7-39.9-.3-59.4-4.7-2.6-.6-5.4-.9-7.6-2.2-4.5-2.6-9.2-2.8-14-2.9z" class="stp5"/>
|
||||||
|
<path d="M858 1197c2.7 1.8 2.7 3.8.7 6.2-2 2.4-3.7 5.1-5.8 7.4-2.4 2.7-4 5.8-2.2 9.1 1.9 3.5 6.1 2.6 9.4 3.2.6.1 1.2-.4 1.9-.6 1-.2 2.2-.1 2.4 1.1.2 1.3-1.1 1.6-2 1.6-3.5-.3-6.4 1.6-9.7 2.2-2.3.5-4 1.7-2.7 4.6 1.3 2.9-.1 5.5-1.2 8.1-.6 1.2-1.1 2.7.1 3.7 1.1.9 2.1-.1 3.1-.7 5.9-3.5 10.2-8.9 16.2-12.3 1.2-.7 2.2-2 1.7-3.8-.3-1.1-1.6-2.8.5-3.1 1.5-.2 3.3 1.2 3 2.7-.9 4.7 2.3 3.8 4.8 3.8 1.9 0 4.1-.1 5.3 1.1 6.9 7.2 17.9 8.3 24.1 16.3 1.3 1.7 1.5 3.6 1.6 5.6.1 5.7.7 5.9 5.5 3.3 12.8-7.1 24.1-16.5 36.2-24.6 1-.7 1.7-2.4 3.2-.8-23.6 18.2-47.2 36.2-70.6 54.5-7.4 5.8-14 12.6-21.2 18.8-4.2 3.7-8.5 7.4-14.3 8.6-12.8 2.6-22.9-3.8-33.1-9.9-8.6-5.1-17.1-10.3-25.5-15.8-1.5-1-3.9-1.6-3.4-4.3 16.5-18.5 32.3-37.5 49.1-55.6 3.5-3.8 6.5-7.9 9.9-11.8 2.2-2.5 1.3-3.8-1.6-4.1-4.8-.5-9.6-1.2-14-3.2-2-.9-4.7-1.6-4.4-4.7.3-2.7 2.8-3.1 4.8-3.6 9.3-2.5 18.8-2.8 28.2-3z" class="stp17"/>
|
||||||
|
<path fill="#7e8084" d="M1527.9 913.1c1.6-2.1 1.8-3.3-.9-5.4-10.9-8.6-23.9-11.8-36.7-15.5-3-.9-7.3-1.1-7.5-4.5-.1-2.5 4.1-3.4 6.7-4.2 7.3-2.4 14.1-5.7 20.5-9.8 1.2-.8 3-1.3 2.7-3.2-.3-1.7-2.1-1.8-3.5-2.3-3.5-1.3-7.7-.5-10.3-4 1.9 0 3.9 0 5.9-.1 8.3-.9 16.5-.2 24.8-.4 9.1-.2 18.2.4 27.3-.4.7-.1 1.3-.1 2-.2 2.2.5 2.5 3.1 4.2 4 2 1 4.3 1.2 6.3.5 2.4-.8-.5-3 .7-4.3 10.4-.2 20.8-.6 31.1.7-1.8 2.1-4.3 1.4-6.5 1.5-4.1.2-8.3-.1-12.9.2.8 1.8 2.4 2.1 3.5 2.9 8.6 5.6 13.7 21.6 3.8 31-3.7 3.5-5.6 7.9-5.7 12.9-.1 4.3-2.7 7.4-4.7 10.8-4.6 7.6-9.4 15-17.8 19-2.1 1-2.2 2.4-1.4 4.5 1.5 3.9 1.5 7.9-.8 11.5-1.5 2.3-3.7 3.5-6.4 2.3-2.7-1.2-3.5-3.3-2.4-6.2 1-2.8 1.2-6.2-2.4-6.8-3.8-.6-5 2.4-5 5.9 0 1.7-.1 3.4-.9 4.9-1.2 2.1-2.9 3.8-5.5 3.7-2.8-.1-3.9-2.1-4.8-4.4-.8-2 .3-5.4-3-5.5-3.8-.2-3.5 3.3-4.1 5.8-.8 2.8-2.8 4.4-5.5 5.3-2.9.4-5.8 1.1-8.4-1-.2-.5-.3-1 .2-1.3 1.5-1 3.3-1.8 2.3-4.2-1.1-2.5-2.9-1.5-4.7-1.1-1 .2-2 .4-2.9-.1-1.3-1.3-1-3-1.2-4.6-.2-1.4-.6-2.6-2.3-2.7-1.2 0-2.2.6-2.8 1.7-.7 1.4.4 2 1.3 2.8 1.8 1.6 3.6 3.3 5.7 4.7.7 1.5 1.5 2.9.2 4.4-4.3 2-8.6.4-12.9-.3-1.3-.3-2.6-.6-3.8-1-3-.9-5.2-2.4-3.5-6.1.7-1.6 1-3.2-.5-4.6-.9-.9-2.1-1-3.2-.4-1.7.9-2.1 2.5-2 4.2.1 2.5.6 5.2-2.9 5.9-1.3.2-2.5.1-3.8-.2-1.6-.6-3.5-.6-4.6-2.3-.6-1.4 0-3.1-1-4.3-1-1.2-.2-3.8-2.7-3.6-2 .2-2.4 2-2.9 3.6-.1.5-.3 1-.4 1.4-.9 2.7-3 3.5-5.6 3.5-3.4.2-5.1-1.8-6.2-4.7-.4-1.2-1.1-2.6-2.7-2.6s-2.3 1.2-2.7 2.5c-1.6 4.5-5.2 4.2-8.6 3.4-3.5-.8-4.3-3.7-3.8-7 1.6-3.5 5.2-3.6 8.1-3.8 16-1.2 31.5-5.2 47.3-7.7 4.4-.7 8.9-.3 13.4-.5 1.8-.1 3.7.5 5.2-.9 1.5-1.5 3.8-2.1 4.9-4-.1-1.7.3-3.5 1.9-4.3 3.6-1.8 7.1-4 11.1-4.8 2.8 2.7.4 6.7 2.6 10.2 1.7-3.6.8-6.9.5-10.2-.6-3.6-1.7-7.1.6-10.2z"/>
|
||||||
|
<path fill="#b2b4b7" d="M147 808.1c15.5 13.5 35.4 17.1 53.9 23.7 9.5 3.4 19 6.9 29 8.8 4.8.9 9 4.8 13.9 6.6 39.2 14.5 79 26.9 119.6 36.7 13.9 3.3 27.9 6.1 41.8 9.3 3.2.7 6.5 1.2 9.1 3.4-.9 1.7-2.4 1.5-3.6 1.3-10.6-2.1-21.5-2.2-32.2-3.4-3.5-.4-5.9-1.8-7.9-4.4-.1-.1-.2-.2-.3-.4-1.4-2.6-4-3.7-6.2-2.2-2.4 1.6 1.5 3.1.9 5.7-11.6.4-23.2-1.8-34.8-2.2-15.8-1.7-31.5-3.4-47.2-5.2-10.1-1.1-20-2.8-30-4.5-12.1-2-24.3-3.8-36.5-5.8-12.3-2.1-24.7-3.9-36.8-7-4.4-1.1-8.5-3-11.6-6.5-7-18-14.1-35.9-21.1-53.9z"/>
|
||||||
|
<path d="M1518.9 962c2.4-1.8 4.5-3.7 4.1-7.3-.4-3.5 2.4-4.4 5.2-4.6 3.3-.3 3.6 2 3.7 4.6.1 2.9.3 6.4 4.1 6.1 3.7-.2 5.3-3.3 4.8-6.9-.7-5.3 1.5-7.6 6.6-8.3 2.3-.3 3.3.3 3.3 2.3-.1 2.5 3.3 5.2-.4 7.8-1.3.9.3 2.8 1.6 3.6 1.8 1.2 3.4.7 4.9-.8 2.4-2.5 3.3-9.2.8-12.1-2.5-3-1-4 1.5-5 11.5-4.9 16.1-15.9 22.2-25.4 1.1-1.8.2-4 .6-5.9.8-4.3 2.2-8.5 5.8-11.3 9.9-8 5.1-25.2-4.6-30.1-.7-.4-1.5-.7-2.2-1.1-.9-.6-2.6-.8-2.2-2.2.3-1.3 1.8-1.2 3-1.2 6.5-.1 13-.1 19.5-.2 14.5.1 28.8 1.8 42.7 6.1 2.6 3.1 6.4 4.6 9.4 7.3 4 3.5 6 6.9 4.5 13-2.6 10.4-8.5 18.2-15.9 25.3-1.4 1.4-2.6 3-4.1 4.4-1.7 1.5-3.3 3.6-6 1.5-.8-1.1-1.3-2.3-1.7-3.6-1.1-3.5-3.5-5-7.1-5.3-5.5-.4-10.9.5-16.3 1.3-3.7.6-5.5 3-5.5 7-.1 13.8.7 27.6-.9 41.3-.4 3.5-.3 7-2.4 10-1.6 1.1-3.5.9-5.3.7-23.1-2.7-46.1-6.1-69.2-8.7-1.6-.1-3.4-.5-4.5-2.3z" class="stp20"/>
|
||||||
|
<path fill="#55585c" d="M1763.7 949c4.6 8.2 4.1 12.5-2.6 19-10.1 10-23 14.8-36.1 19.2-6.2 1.4-12.4.9-18.8.3-24.1-2-47.8-6.8-71.8-9.2-1.5-.2-3-.3-4.4-1-1.7-4.8 0-9.1 1.9-13.5 4.4.9 8-1.3 11.6-3.3 8.1-4.5 15.7-10 24.7-12.9 5.1-1.6 10.3-2.2 15.3-3.5 1.5-.4 3.1-.4 4.5-1.3 2.1-2.1 4-4.7 7.5-2.5 6.1-1.4 11.6-3.9 16.5-7.8 3.5-3.4 7.8-3.3 11.4-1.2 7.7 4.5 15.8 7.7 24.6 9.5 6.1 1.2 11.5 3.6 15.7 8.2z"/>
|
||||||
|
<path fill="#cacacb" d="M849 739.1c.8 3.1 5 5.7.3 9.5-2.7 2.2-4.1 6.1-8.6 5.5-.7-.1-1.6.5-2.2 1-4 3.2-8.2 4-13 1.9-2.1-.9-6-2.1-6.3-.4-.7 3-1.9 7.3.1 9.8 4.7 5.7 7.7 12.5 13.1 17.7 8.6 8.2 16.7 17 24.8 25.7 1 1.1 3.7 1.8 1.8 4.2-.7-.5-1.5-.9-1.9-1.5-6.7-10.6-17.4-11.1-28.3-11.5-5.1-.2-10.2-.7-15-2.6-1.7-.7-3.8-1.6-3.3-3.8.4-2 2.4-2.2 4.3-2.7 5.9-1.6 11.9 0 17.8-1.6l2.4-.8c-5.6-4.4-10.2-9.2-14.8-13.9-16.2-16.7-34-31.6-52.1-46.1-12.3-9.8-17.3-22.6-19-37.5-.6-4.9-1.2-9.9-2-14.8-.7-4.3 1.3-6 5.4-6.3 4.7-.3 8.8 1.3 12.7 3.7 7.1 4.5 13.3 10.1 19 16.1 18.6 20.2 41.1 35.1 64.8 48.4z"/>
|
||||||
|
<path fill="#636365" d="M168.1 862c20.9 10.1 44.1 10.8 66.4 14.8 19.9 3.6 39.7 7.5 59.8 9.7 10.7 1.2 21.4 2.4 32.1 3.5 1.3.1 2.7-.1 3.8.9-10.3-.3-20.5-1.2-30.6-2.5-5.4-.7-10.9-.9-16.2-2.1-.7-.2-1.4-.2-1.7.5-.4 1 .3 1.8 1 2.1 2.7 1.2 5.5 2.4 8.3 3.2 3.2.9 6.2 2.3 7.6 5.2 2.7 5.4 10.4 5.6 11.9 12 .1.4 1.4.8 2.2.7 7.5-.2 14.9.4 22.4-.6 7.9-1 15.9-1.3 23.8-1.2 8.5 0 16.8-1.8 26.3-.9-2.3-2.7-3.9-4.6-5.6-6.5.5-.2.8-.3.8-.3 7.1 10 17.4 5.3 26.4 5.2 4.7 0 9.6-.4 14.4-.6-.9 1.1-2.2 1.9-3.4 1.8-7.2-.5-14.1 1.7-21.2 2.3-6.2.5-12.5 1.5-18.2 4.4-2.8 1.4-5.5 1.2-8.6 1-7.8-.3-15.5.2-23.3.5-4.7.1-9.5-2.3-14.2 0-2.5 2.1-5.2 1-7.6.1-8.7-3.2-17.6-2.7-26.6-1.9-9.2.8-18.5 1.1-27.8-.1-3.2 0-4-1.7-3.4-4.5.6-2.7.1-4.9-3.4-4.3-10.5 1.8-21.1 1.5-31.7 2.5-11.6 1-23.2 1.5-34.7 2-2 .1-3.9-.3-5.9-.5-2.9-1-5.5-2.4-6.8-5.5-5.5-13.7-10.9-27.3-16.3-40.9z"/>
|
||||||
|
<path d="M1630 977c5.8-1.4 11.4.8 17.1 1.3 18.1 1.7 35.9 6 54.2 6.9 7.9.4 15.8 2 23.8 1.9-11.1 5.1-23.2 6.6-35.1 8.7-4.7.8-9.5 1.3-14.2 2-5.3-.6-10.6.4-15.9 0-18-1.3-35.6-5.1-53.5-6.7-20.7-1.9-41.4-4.5-62.2-5.6-2.1-.1-4.5.3-5.5-2.4 5.1-2.6 10.8-2.5 16.3-3.6 3.7-.7 7.5-1.1 11.2-2.1-11.1-2.3-22.3-2.9-33.4-3.9-21.5-2-43.1-3.5-64.7-4.7-15.8-.9-31.6-1.5-47.3-2.5-12.1-.8-24.3.5-36.2-2.2-1-.2-2.2-.6-2.9-.2-7.4 4.1-13.7-2.1-20.6-2.1-.6 0-1.2-.5-1.7-1-1.1-4-2.2-8.1.7-11.9 10.8.3 21.5 4 32.3.3 1.5-.5 2.4.3 3.6 1.1 3.8 2.5 7.6 2.5 11.4.1 2.9-1.8 5.5-2.4 8 1.1 2 2.7 7.5 1.9 9.8-.8 1-1.2 1.8-3.9 3.4.1.7 1.7 1.7-2 3.4-1.9 1.7 2.9 2.1 7.1 7.3 6.1 2.2-.4 3.8-.5 3.7-3.3-.2-2.8 1.8-3.6 4.1-3.9 2.6-.3 3.4 1.5 4 3.5.7 2.5 1.2 5.3 5 4.6 2.8.8 6.3-.2 7.6 3.9.4 1.3 2.1.4 2.8-.5 1.8-2.5 4.1-2.2 6.6-1.4l4 .1c4.6 3.7 10.2.3 15 1.9 4.7.1 9.2 1.7 14 1 1.3-1.2 2.7-1.1 3.9.1 2.8 1.8 6 .6 9 1 9.4 1.2 18.7 2.3 28.1 3.5 16.9 2.2 33.8 4.3 50.8 6.5 1.1.7 1.5 1.9 1.4 3-.6 5 2.2 5.8 6.3 5.5 3-.2 6-.2 8.9 0 5.5.7 10.7-.4 15.5-3.5z" class="stp24"/>
|
||||||
|
<path d="M1088 1112.9c1.9-5.4 7.2-7.5 11-11.1 9.2-8.8 19.2-16.7 28.8-25.2 3.4-3 6.8-4.6 11.5-4.8 19.6-.7 39.1-3.1 58.7-1.7 16.9 1.2 34.1 1.8 50.3 7.9 3.5 1.3 7.4 0 10.7 2 2.2 7.5-.6 11.5-8.2 12-25.9 1.7-51.6 4.5-77.2 9-1 .2-2 .2-2.6 1.2-4 2.6-8.8 2.2-13.2 3.2-4 .9-8.1 1.5-12.1 2-4.3.3-8.5 1.4-12.7 2.4-8.6.4-17 2.3-25.5 3.2-3.7.4-7.4 1.5-11.2.1-2.8-.1-5.6-.1-8.3-.2z" class="stp25"/>
|
||||||
|
<path fill="#61656a" d="M1763.7 949c-9.1-6.4-20.3-7.3-30.4-11.1-3.8-1.5-7.1-4.2-10.9-5.7-3.3-1.3-7-2.1-9.5 1.8-3.2-5-6.8-9.8-10.7-14.3-1.9-2.2-3.9-2.6-6.6-1.5-3 1.2-2.6 3.5-2.2 5.8.8 4.6 1.6 9.1 2.1 13.8.2 1.5.7 3-.6 4.2-3.6-4-4.1.9-5.9 2-1.9-1.8-1.5-4.3-1.5-6.5-.1-4.2-.1-8.3-.9-12.4-.5-2.5-1.7-3.2-4.2-3-6.8.7-8 1.9-8 8.6 0 1.5 0 3 .2 4.5.6 4.7 3.1 7.6 7.6 8.8.7.2 1.2.5 1.6 1-4.6 2.6-9.9 2.2-14.7 3.8-11.2 3.6-20.2 11.2-30.7 16-1.9.8-4.2 3.1-5.6-.7-2.4-2.7-1.7-6-1.3-9 .9-8 .9-15.9 0-23.8-.3-3-1.1-6.3 1.3-9.1 5.5-3.9 10.7-8.4 14.4-14 2.6-4 6.2-7.3 7.8-12 1.1-3.3 1.8-6.8 2.4-10 .8-4.1-3.5-6.4-6.4-8.8-2.6-2.2-6.5-3-7.2-7.1 14.8 3.4 28.6 9.2 41.8 16.6 7.9 4.3 14.9 9.9 21.3 16.3 1.6 2.3 2.6 4.9.7 7.3-2.4 3.1-.8 4.8 1.3 7.1 2.3 2.5 4.9 4.4 7.4 6.6 2.7 2.3 4.2 1.3 6-1.1 1.1-1.6.4-4.5 3.4-4.7 9 5.8 18.7 10.7 26.8 17.8 4.6 3.3 8.7 7.5 11.2 12.8z"/>
|
||||||
|
<path fill="#b7b7b8" d="M786 1282.9c4.8 4.6 10.8 7.4 16.4 10.9 8.8 5.4 17.4 11.3 26.9 15.5 4.2 1.8 8.3 3 12.9 2.8 1.9-.1 4-.8 5.7.8-8.1 3.9-17 4.2-25.6 4.9-9.7.7-19.5 1.8-29.3 1.3-3.3 1.2-6.8-.3-10.1.8-11.7.9-23.2-1.8-34.7-3.1-5.2-.6-8.3-4.8-10.4-9.3-5.8-12.4-7.4-25.8-9.7-39-.4-2.2 1-3.1 3.2-3.5 9.5-1.8 18.5-.3 27.3 3.4 9.6 4 18.2 9.7 27.4 14.5z"/>
|
||||||
|
<path d="M1223.7 1060c-22.5-3-45.1-4-67.9-2 .4-2.5 2-3.7 3.4-4.5 10-5.3 17.1-14.2 25.2-21.7 11.3-10.5 23.1-19.9 37-26.5 3.1-1.5 6-2.8 5.8-7.1-.2-2.5 2-2.1 3.6-2.2 8.4-.7 16.5 1 24.7 2.3 2.9.5 4.6 0 4.6-3.3 4.3.1 5.7 3.6 7.5 6.6 3.9 6.8 3.5 11-1.5 15.4-7.8 7-17.1 11-27.5 12-5.2.5-8.7 2.1-7.7 8.1-2.5-.1-1.8-4.9-4.4-3.6-2.2 1.2-.8 4.3-.9 6.5-.1 4.8 0 9.7-.1 14.5-.2 2 .2 4.2-1.8 5.5z" class="stp25"/>
|
||||||
|
<path fill="#444040" d="M1266.2 1001.6c-1.5-2.8-3.7-4.8-6.2-6.6.8-3.2 3.6-2.6 5.7-2.6 20.3-.1 40.6-.3 61 0 14.3.2 28.6 1.2 42.9.9 20.5-.5 40.9 1 61.4 1.2 15.8.2 31.6 1 47.3 2.1 6.3 1.7 12.8.4 19.2 1 .6 0 1.2.1 1.8.2 8.2 1.5 16.5.8 24.8 1.3 20.2 1.3 40.4 2.8 60.7 3.3 1.8 0 3.7 0 5.3 2.1-2.9 2.9-6.7 2.3-10 2.7-8.7 1.2-8.7 1-9.7 9.8-.4 3.8-1.4 7.6 1.6 10.9-2.4 3.7-4.5 7.4-1.7 11.8-.5 3.6-1.5 6.4-5.2 8.3-2.1 1.1-2.6 4.4-5.2 5.6-2.2.9-4.2 1.6-5.8-.5-1.5-2 .2-3.3 1.5-4.6.6-.6 1.5-1 1.1-2-.5-1-1.5-1.2-2.5-1.1-2.4.1-4.8 1.3-7.2.4 3.2-4.8 5.3-10.4 9.6-14.5 4.3-4.2 5.8-9.1 5.6-15.2-.4-9.3 0-9.3-9.4-9.2-3.2 0-6.3.2-9.5.2-1.4.6-3 .2-4.4.3-18.8 1.3-37.7.5-56.5-.1-23.4-.7-46.8-1.1-70.2-2.5-8-.5-16-.1-23.9-.2-38.1-.2-76.2-1.6-114.2-1-3.1.1-5.9.3-7.9-2z"/>
|
||||||
|
<path fill="#aaacaf" d="M1266.2 1001.6c2 .2 3.9.5 5.9.5 24 .1 47.9-.1 71.9.2 34.1.4 68.2.8 102.3 2 32.2 1.1 64.5 2.5 96.7 2.8-4 1.5-8.2.8-12.3.8-3.6 0-6.5.7-8.7 3.6-.9 1.2-2 2.3-3.7 2.3-1.9 0-4.1.2-2.8-2.8 1.1-2.6-.3-2.7-2.3-2.6-16.4.6-32.9 1-49.3 1.7-28.6 1.3-57.1 2.1-85.7 3.1-18.8.6-37.5 1.4-56.3 2-18.6.6-37.2 1.9-55.8 1.8 2.8-5.1 4.2-10.2.1-15.4z"/>
|
||||||
|
<path d="M1571.9 1028c-2.8.3-4.4-.3-4-3.7.7-4.8 1-9.6 1.3-14.4.2-2.8 1.3-4 4.4-4 5.1 0 10.1-.7 15.1-1.4-28.5-1.5-57.1-3.1-85.6-4.6-1.5-.1-3 .2-4.4-.7 1.3-1.7 3.2-1.6 5-1.5 8.6.5 16.5-2.8 24.7-4 .6-.1-.1-1.3.1-.6 0 .2-.1.2-.3.2-3.7-.4-7.2-1.8-11-2.3-1-.1-2.3-1-.8-2.4 6.4-2.3 12.9-.2 19.3.3 21.5 1.6 43.1 3.2 64.6 5.8 17 2.1 34 4.3 51.2 3.9 2 0 4.1-.1 5.5 1.6-5.8 1.5-11.8 1.6-17.7 1.9-10.2.5-10.1.4-12 9.9-.6 3.1.8 6.8-1.5 9.1s-6.1 1-9.1 1.5c-10.5 1.4-21.1 2.8-31.6 3.4-4.6.1-8.5 3.7-13.2 2z" class="stp30"/>
|
||||||
|
<path fill="#64676a" d="M1657 1000.1c-31.9.8-63.2-5.5-94.8-7.9-15.4-1.2-30.8-2.1-46.2-3.2-.9 1-2.1 1-3.3.8-4.4-.9-8.8-.5-13.2-.3-26.7-1.9-53.4-2.9-80.1-4.1-17.9-.8-35.8-2-53.8-1.8-2.5 0-5 .3-7.3-1.1-2.3-3.5-1.1-6.7.8-9.8 4-1 8-.5 11.9-.2 16.3 1.3 32.6.7 48.9 1.8 15.8 1.1 31.6 1.5 47.3 2.6 14.3 1 28.6 1.5 42.8 2.3 8.5.5 16.9 1.3 25.4 2.2 1.3.1 2.7.4 3.6 1.5 6.4 2 13.1 1 19.7 1.8 21.5 2.6 43.2 4.1 64.7 6.8 16.6 2.1 33 5.8 49.8 5.4 1 0 2 0 2.8.8-6.5.9-12.7 1.6-19 2.4z"/>
|
||||||
|
<path fill="#66696d" d="M188.8 910.2c-1.3 5.1-.9 10.2-.6 15.4.2 2.7 1.2 4 4 4.7 10.4 2.6 21 3.4 31.6 4.3 17.1 1.4 33.8 5.1 50.9 6.5-9.4 0-18.9.1-28.3 0-13.5-.1-26.9-.7-40.4.9-4.5.5-8.9-.6-13.4-1.3-5.1-.8-6.1.5-5 5.7.4 2 3.5 5.3-1.7 5.9-7-2.2-13.9-4.4-20.2-8.2-8.8-5.3-9.7-16.4-1.6-22.8 7.3-5.8 15.5-9.6 24.7-11.1z"/>
|
||||||
|
<path fill="#121111" d="M1145 1106c8.6-1.4 17.1-3.3 25.9-3.9 4.9 3.8 8.3 8.6 8.3 15.1 0 1.4.7 2.5 1.3 3.7 4.1 7.9 3.2 15.8-2.4 22.2-5.8 6.7-14.9 9.2-23.1 6.5-8.1-2.7-12.8-9-13.3-18 0-.5 0-1-.1-1.5 1.2-7.9-.9-16.4 3.4-24.1z"/>
|
||||||
|
<path fill="#100f0f" d="M1096.2 1113c11.6-1.7 23.1-3.3 34.7-5 .8-.1 1.6.1 2.1.9.5.2 1.1.4 1.2.8 1.5 6.4 4 12.6 6.3 18.7.2.4-.3.9-.6 1.3-1.2.6-.8 1.7-.9 2.6-.4 11.2-8.9 19.4-20.2 19.6-11.3.3-19.7-7.3-20.6-18.7-.1-1 .2-2.2-.3-2.9-3.3-5.4-2.9-11.3-1.7-17.3z"/>
|
||||||
|
<path fill="#0d0d0d" d="M1546.8 1045.9c4.3-1.1 8.7-4.4 12.4 1.1-.1 1.5-1.6 1.4-2.4 2.1-1.1.9-3.1 1.6-2.2 3.3.9 1.6 2.7 1.7 4.2.3 1.5-1.3 4.4-1.3 3.7-4.4-.1-.3.5-1.1.8-1.2 4.7-.2 4.2-5.3 6.8-7.4 6.2 4.8 10.1 11.5 12.3 18.6 2.6 7.9-3.9 16.8-12.6 19.3-8.2 2.4-16.2-1.4-19.5-9.3-.7-1.6-1.6-2.8-2.7-4.1-4.5-5.7-4.8-11.6-.8-18.3z"/>
|
||||||
|
<path fill="#888380" d="M1725.9 918c-.3.5-.8 1.1-.9 1.7-2.2 8-4.4 8.7-10.8 4.2-4-2.8-5.9-7.6-10.6-9.6 3.1-3.3 5-6.9 3.5-11.5 6.2 5.1 12.5 10.1 18.8 15.2z"/>
|
||||||
|
<path fill="#585b5f" d="M1223.7 1060c0-8.4.2-16.8-.1-25.2-.1-2.7.5-3.5 3-3.7 2.6-.2 3.6.7 3.5 3.2 0 .9.4 1.9.7 2.8v8.7c-1 3.3.2 6.8-.6 10.2-.1 1.6-.3 3.1-.4 4.7-2-.2-4.3 1.2-6.1-.7z"/>
|
||||||
|
<path fill="#69696c" d="M1139.9 1129.8c-2.8-6.8-6-13.4-6.9-20.8 3.6-2.8 7.9-2.6 12.1-3-.4 3.9-2.7 8.6-1.6 11.5 1.9 5.1-1.4 8.5-1.7 12.7-.7-.1-1.3-.3-1.9-.4z"/>
|
||||||
|
<path fill="#cccccb" d="M1570.1 863.2c.5.8 1.1 1.7 1.6 2.5 1.3 2.1 1.2 3-1.7 3.3-5.1.5-9.5-.1-11.1-6 0-.5-.1-1 0-1.5.3-1.5-2.9-3.3-.1-4.4 2.6-1 5.7-2.1 7.9 1.3 1 1.7 2.3 3.2 3.4 4.8z"/>
|
||||||
|
<path d="M1556.9 863.2c-.8.8-1.8.8-2.8.8-16.4 0-32.9 0-49.3-.1 2.8-1.3 5.9-.7 8.8-.7 14.5-.1 28.9 0 43.3 0z" class="stp8"/>
|
||||||
|
<path d="M815 879.1c-8 1.9-16.2.5-24.2.8 8-1.4 16.1-.7 24.2-.8z" class="stp15"/>
|
||||||
|
<path d="M634 884.1c-6.3 1.9-12.8.5-19.2.8 6.4-1.4 12.8-.7 19.2-.8zm31-1c-6.3 1.9-12.8.5-19.2.8 6.3-1.4 12.8-.7 19.2-.8zm-60 2.1c-5.3 1.8-10.8.6-16.2.8 5.4-1.4 10.8-.8 16.2-.8zm-26 1c-4.7 1.8-9.5.5-14.2.8 4.7-1.4 9.5-.8 14.2-.8zm-24 1c-4.3 1.8-8.8.5-13.2.8 4.3-1.4 8.8-.8 13.2-.8zm-44 1.9c-4 1.8-8.2.6-12.2.8 4-1.3 8.1-.7 12.2-.8zm21-.9c-4 1.7-8.2.6-12.2.7 4-1.3 8.1-.7 12.2-.7z" class="stp11"/>
|
||||||
|
<path d="M1230.2 1056c-.2-3.4-.3-6.8.6-10.2.2 3.5.9 6.9-.6 10.2z" class="stp25"/>
|
||||||
|
<path d="M783 1319.8c3.2-1.8 6.7-.6 10.1-.8-3.3 1.8-6.7.7-10.1.8z" class="stp17"/>
|
||||||
|
<path fill="#3b3838" d="M812 1004c-7.8.3-15.3 2.8-23 4.1-35.8.2-71.6.5-107.4.7-41.6.3-83.2-.1-124.9-1.2-24.8-.6-49.5-2.3-74.2-4.1-11.5-.9-23-2.7-34.5-3.5-2.4-.2-4.9-1-5.6 2.9-.3 1.9-2.7 2.1-4.6 2.2-7.3.2-14.6-.5-21.9-1.4-3.6-.5-6.7-2-7.4-6.2-.5-2.9-3-2.9-5-3.2-15.8-2.2-31.6-4.2-47.5-6.3-23.4-3.1-46.8-5.6-69.9-10.3-3.6-.8-7.7.1-10.9-2.6 5.3-1.7 10.6-3.5 15.8-5.2 8.9-1.7 17.5 1.1 26.2 2.3 27.2 3.7 54.5 7 81.7 10.7 5 .7 5.4.2 4.9-5-.3-3.3-.3-6.7-1-9.9-.4-3.3-.3-6.6-.2-9.9.1-5.4-1-11 1.4-16.2 2.1-3.8 5.9-4.7 9.8-5.1 5-.5 10-.5 15 0 7.4.7 9.3 2.9 11.4 12.4.6 3.6.3 7.2.6 10.7.9 4.5 1 9.1.8 13.7.3 3.5.6 7 1.2 10.4.5 2.7 1.9 4 4.6 4.3 11.6 1.2 23.2 2.2 34.8 3.1 25 1.9 50.2 2.3 75.2 3.9 1.3.1 2.7.1 4 .1 65.8 1.5 131.5.9 197.3 1 26.5 0 53 .4 79.4.3 2.3 0 5.5-1.2 6.7 2.3-10.9 1.6-21.8 3.3-32.8 5z"/>
|
||||||
|
<path d="M844.9 998.9c-1.7-1.7-3.8-.8-5.7-.8-78.7 0-157.5.5-236.2-.4-41.6-.5-83.2-2.1-124.7-5-11-.8-21.9-2-32.8-2.9-2.8-.2-4.2-1.2-4.3-4.2-.2-4.1-1.3-8.2-.9-12.3 1.4-2 3.5-1.7 5.5-1.4 23 2.7 46.1 3.2 69.1 4.5 17.9 1 35.8 1.9 53.8 2.2 9 .1 18-.8 26.9.2 7 1.7 14.2.2 21.2.8 14.1 1.2 28.2-.3 42.3.1 3.7 1.7 7.3.8 11-.1 7.2-.4 14.4-.2 21.6-.2 5.6.3 11.2 1.1 16.9.3 2.1-.3 4.3-.5 6.2 1-1.1 3.1.1 3.7 3.2 3.9 13.5 1 26.9 1 40.4 2 1.3.1 2.7.2 3.9.6 10.1 3.3 20.8 3.7 31.2 5.7 18.2 3.7 36.5 2 54.7 2.6 2.4.1 5.5-1 6.7 2.5-3.3.3-6.6.6-10 .9z" class="stp41"/>
|
||||||
|
<path d="M1513.1 988.9c1 0 1.9.1 2.9.1 4.7 1.6 10.2.5 14.3 5.2-10.2 3.2-20.7 5.3-31.5 4.9l-.4.1-.4-.1c-4.6-1.3-9.2-.2-13.8-.6-1.8-.1-3.7.4-5.4-.4l-82.8-2.7c-3-.1-6-.2-9-.2-40.4-.4-80.9-1.4-121.4-1-1.9 0-4-.9-5.6.9-.9 0-1.6-.2-2.1-1-.3-1.8.8-3 2.1-3.6 3.5-1.8 5.9-4.8 8.8-7.9h-35.6c-2 0-4 .2-5.9-.4-1.1-.3-2.9-.4-2.2-2.4 1-.8 2.2-1 3.4-1.2 21.6-.3 43.2-.7 64.8.1 9.9.4 19.9-.2 29.8 1.4 2.1 1.1 2.2 3.2 2.3 5.1.3 3 2 4.3 4.9 4.4 6.9.1 13.9.2 20.8-1 2-.3 3.4-1.3 4.2-3 .7-1.3 1.1-2.8 2.6-3.5 19.8-.4 39.6.4 59.3 1.7 7.3.5 14.6.7 21.9 1 20.2.9 40.5 1.7 60.7 3.3 4.4 1.3 8.9-.4 13.3.8z" class="stp42"/>
|
||||||
|
<path d="M855 998c-1.5-1.6-3.4-1-5.2-1-9.5-.1-19-.2-28.5 0-8.8.2-17.3-1.6-25.9-2.3-8.5-.7-16.7-4.2-25.4-2.8h-.5c-18-8-37.3-3.2-55.8-5.9-1.5-.2-3-.2-4-1.7 1.2-2 4.1-1.3 5.3-3.3 2.6-2.3 5.7-.7 8.5-1.1 5.2-.7 10.5-.6 15.7-.1 2.9 1 5.9.7 8.9.7 12.8-.3 25.6.7 38.4-.5 6.2-.8 12.5.7 18.7-.4 6.6-.2 13.2.5 19.8-.7 1.5-.3 3-.4 4.5-.4 2.7.1 5 .2 4.4-3.8-.3-2.3 1.5-3.5 3.8-3.7 2.6-.3 5.1.5 5.6 3.1.9 4.7 4 4.4 7.5 4.4 32.5.4 64.9-1.8 97.3-1.1 11.2.3 22.3 0 33.5 0 2.5 0 5-.3 7.2 1.2.6 2.3-1.3 2.3-2.6 2.6-1.9.5-4 .3-6 .3h-58.8c-3 0-6 .1-8.9.8-3.2.8-6.2 1.2-5.7 5.8.2 2.1-1.5 3.4-3.8 3.8-2.8.5-5.7.4-8.2 2-13.1 1.4-26.5 2.8-39.8 4.1z" class="stp5"/>
|
||||||
|
<path d="M895 994c1.5-2.4 3.8-2.9 6.4-3 4.5-.2 5.8-2 3.9-6-1.4-3-1.1-3.9 2.3-3.3 4 .7 7.4-1.9 11.6-1.8 21.4.3 42.8.2 64.2.1 1.9 0 4 .7 5.7-.9 1.7-1.8 3.9-1.6 6.1-1.6 16-.2 31.9.1 47.9-.1 16.8-.2 33.6-1.1 50.3-.6 34.1 1.1 68.2-.1 102.3.8 8.3.2 16.6 1.2 24.9 1.1 1.7 0 3.4 0 4.6 1.5 1.5 1.5 3.4.9 5.2.9 12.7 0 25.5 0 38.2.1 1.6 0 3.3-.4 5.4.8-6.1 3.4-10.3 8.6-15.9 12.2-11.9-7.8-25.3-9.8-39.2-11.2-25.3-2.5-50.7-3.6-76-2.6-15.5.6-31-.5-46.3 1.1-14.6 1.5-28.8-.7-43.3-.5-12.3.2-24.6 1.9-36.9 1.1-2.7-.2-4.5 1.7-7 2.2-15.1 3-30.5 4.1-45.8 5-16.8.9-33.7 2.8-50.5 3.7-6.2.1-12.1 1.2-18.1 1z" class="stp25"/>
|
||||||
|
<path d="M870 941c14 .6 28-1.1 42-1 1.7 1.6 3.8.9 5.7.9 56.2.1 112.3-.3 168.5.3 24 .2 47.9.1 71.9 1 25.3.9 50.5 1.5 75.8 2 17.8.4 35.5 1 53.3 2.1 12.6.8 25.3-.4 37.8 1.7 2.6 3.8 2 7.8.4 11.8-2.2.8-2.9-.9-3.7-2.3-1.7-3.4-3.2-2.9-5.4-.3-3.6 4.2-7.8 4.4-12.1.4-2.2-2.1-3.9-2.4-6.4-.5-4.6 3.5-7.9 3.3-12.5-.4-1.7-1.4-3-1.7-4.8-.4-4.1 3-8.4 2.8-12.7.5-2.1-1.2-4.1-1.2-6.1 0-2.4 1.4-5.3 2.5-7.6 1.4-5.7-2.5-11.4-.5-17-.9-7.6-.7-15.2-.8-22.9-.7-32.5.4-64.9-1.5-97.3-2.2-53-1.1-105.9-.4-158.9-.8-15.2-.1-30.3-.3-45.5.1-12.1.3-24.2.2-36.3.8-9.5.5-19 .1-28.3-1.7-2-1.9-1-4.6-1.8-6.9-.5-1.4.9-2.5 2.2-2.8 7.1-1.4 14.3-3.2 21.7-2.1z" class="stp43"/>
|
||||||
|
<path fill="#54575a" d="M1324.9 960v-11.9c0-6.5 0-13 .1-19.4 0-4.3 1.6-7 6.4-7.9 6.5-1.1 12.9-.8 19.4-.6 4.9.1 7.8 3.8 8.2 9.6.5 6.4.8 12.9 1.2 19.3-.1 4-.1 8-.2 11.9.2 1-.2 1.3-1.1 1.1-.2.7-.8-2.9-.8.1 0 3.8-.3 4-3 2.7-1.1-5.2-.5-10.4-.5-15.6-.3-6 .2-11.9-.7-17.9-.6-4.3-2.8-6-7-5.8-3.2.1-6.3 0-9.5 0-5.8.1-6.7.9-6.8 6.6-.2 5.3.1 10.6-.1 15.9-.2 4.6 1.1 9.3-1.2 13.6-.4 1-3-1.2-2.2 1.8.3 1.2.6 4.3-2.8 2.8-.8-2.2-1.1-4.4.6-6.3z"/>
|
||||||
|
<path fill="#cbccce" d="M1510.9 932.1c.9 4.4-2.3 3.9-4.9 4-3.5 0-7 0-10.5-.1-1.4 0-3.2.7-4.1-.8-1.1-1.9.7-3.3 1.7-4.3 3.4-3.6 7.2-6.8 10.8-10.3 2.2-2.2 2.6-4.8 0-7s-5.5-2.1-8.1.2c-.3.3-.6.8-.7 1.3-.4 2-1.9 2.4-3.4 1.8-2.1-.8-.8-2.7-.4-3.8 1.4-3.9 9.1-5.7 13.6-3.4 4.6 2.4 6.2 7.5 3.6 11.7-1.7 2.7-3.9 5-6.7 6.5-1.5.9-2.6 1.9-3.3 4.2h12.4z"/>
|
||||||
|
<path fill="#cdced0" d="M1462.3 925.7c2.7-3.8 3.8-8.1 5.5-12 .6-1.3.8-3 2.4-3.5.8-.2 1.7-.2 2.4.1 1.1.5.5 1.5.2 2.2-3.2 7.3-5.9 14.8-10.4 21.5-1.6 2.4-3.8 3.8-6.7 3.7-1.6 0-3-.8-2.8-2.8.2-1.9 1.4-1.2 2.6-1.1 2 .2 3.5-.5 4.6-2.3 1.2-2-.4-3.1-1.3-4.4l-9.3-12.9c-.8-1.1-2.7-2.4-.8-3.7 1.6-1.1 3 0 4.1 1.6 3.1 4.5 6.3 8.9 9.5 13.6z"/>
|
||||||
|
<path fill="#cfd1d3" d="M1442.9 910.1c1.8 0 3.6 0 3.7 2 .2 2.4-1.9 1.8-3.2 1.9-6.4.5-6.2.5-5.7 6.8.4 4.8.2 9.7.3 14.5 0 1.2-.2 2.4-1.8 2.5-1.8.2-2.2-1-2.3-2.5-.3-5.3-.9-10.6-1-15.9 0-3.5-1.2-5-4.7-4.5-1.1.2-2.3 0-3.5 0-1.5-.1-2.7-.6-2.7-2.3 0-1.7 1.4-1.5 2.6-1.6 6.4-.3 12.5.5 18.3-.9z"/>
|
||||||
|
<path fill="#c9cbcd" d="M1527.9 913.1c.3 6.2.7 12.5 1 18.7.1 1.8.1 4-2.4 4.1-2.5.1-2.6-2-2.6-3.9v-8.9c0-1.2 0-2.3.1-3.5.1-3.2-.8-4.5-4-2.3-1 .7-2.4 2.6-3.6.7-.9-1.5.8-2.7 1.9-3.6 1.1-1 2.6-1.7 3.4-2.8 3.4-4.6 4.9-2.2 6.2 1.5z"/>
|
||||||
|
<path fill="#9fa2a6" d="M870 941c-7.2.2-14.2 2.3-21.4 3.1-1.9.2-2.9 1.3-1.1 2.9 2.3 2.1.3 3.4-.5 5-5.6 3.5-11.6 2.3-17.6 1.5-61.7.1-123.3.3-185 .1-15.8 0-31.6-.6-47.4-.7-7.6-.1-15.3.1-22.9 0-16.8-.1-33.6-1-50.4-1.5-18-.4-36-.5-53.9-2.4-8.2-.9-16.6-.9-24.9-1.9-2.4-.3-4.1.9-6 1.9-2.6-10.3-3.3-10.9-14.8-11-4.3 0-8.5-.3-12.8.4-2.6.4-4.7 1.4-6.4 3.3-13.6-1.8-27.2-4.2-40.8-6.1-12-1.7-23.8-4.4-35.7-6.6-3.3-.6-6.3-1.9-9.4-3.2-10.3-3.6-21.2-5-31.8-7.3-2.8-.6-5-1.1-6.9-2.9-3-2.8-7.2-.6-10.3-2.7 10.8-.7 21.5-1.2 32.2-2 8.5-.7 16.9.1 24.9 3.1 1.6.6 3.2.8 4.9.8 11.8 3.7 23.9 6.4 36 8.9 5.8 1.2 11.7 2.3 17.5 3.5 23 4.6 46.2 6.5 69.4 8.7 13.2 1.3 26.3 2.9 39.6 3.2 7.8.2 15.6.6 23.4.8 4.3 1.3 8.8-.4 13.1.9h26c1.8-.8 3.6-.4 5.4-.4h107.2c1.8 0 3.7.5 5.4-.5 6 0 12 0 18-.1 39.7 0 79.3 0 119 .1 14.6-.6 29.2 2.4 43.9.2 4.5-.5 9.5-1.2 14.1.9z"/>
|
||||||
|
<path fill="#aeb0b4" d="M403.9 968.2c1.7 4.8 1.3 9.8 1.9 14.7.4 3.2-2.5 2-4 1.9-8.4-.9-16.9-2-25.3-3.2-26.9-3.6-53.7-7.2-80.6-10.8-1.6-.2-3.3-.6-4.9-.9 9.5-4.3 19.6-6.5 29.3-10.1 2.6-1 5.3-1.8 7.9-2.7 10.6 2 21.4 2.8 32 4.3 13.4 1.8 26.7 4 40.1 5.2 1.5.1 2.7.4 3.6 1.6z"/>
|
||||||
|
<path fill="#b6b8bb" d="M319 926c5.3 0 10.4 1.7 15.5 2.8 18.5 3.9 37.3 6.6 56 9.4 4.8.7 10.2.4 14.4 3.7-1.7 5.1-.7 10.5-1.2 15.7-1.3 2-3.2 1.4-5 1.1-12.9-2.1-26-2.9-38.9-5.7-4.7-1-9.6-.9-14.3-1.6-2.1-.3-3.9.3-5.4 1.9-1.4 1.4-2.9 2.9-5.2 1.7.1-2.7 1.9-4.5 3.6-6.3 2.4-2.5 1-4.8-1.4-5.3-4.7-1-8.8-4-13.8-3.5-1.4.2-2.8-.4-3.5-1.6-1.6-2.9-4-4.8-7.5-5.3 4.2-3.6 8.8 0 13.1-1.7-1.4-2.9-5.2-2.5-6.4-5.3z"/>
|
||||||
|
<path fill="#585c60" d="M335.1 955.1c1.2 0 2.7-.3 3.1-1.3 2.5-5.7 7.1-4 11.4-3.4 17.4 2.4 34.8 4.9 52.2 7.3.6.1 1.3 0 2-.1 0 3.5.1 7 .1 10.5-18-1.1-35.8-4.4-53.7-6.7L331 959c-1.3-.2-2.8 0-2.8-2 2.3-.6 4.6-1.2 6.9-1.9z"/>
|
||||||
|
<path fill="#888c91" d="M282.1 933.2c.1 2.2-.5 3.8-3.4 2.9-2.8-.9-5.7-1.5-8.4-2.7-2.9-1.2-2.5-4.1-2.1-6.5.5-2.9 2.6-1.7 4.3-1.3 1 .2 2 .3 2.9.4 5.4.3 6.7 1.7 6.7 7.2z"/>
|
||||||
|
<path d="M675.1 940c-1.2 1.3-2.8.9-4.2.9H557.1c1.3-1.5 3.1-.9 4.7-.9h113.3zM531 941c-4.3-.4-8.8 1.1-13.1-.9 4.4.4 8.9-1.2 13.1.9z" class="stp11"/>
|
||||||
|
<path fill="#c2c4c6" d="M1556.9 927c-4.4.6-1.8 5.7-4.4 7.5-2.1 1.4-3.5-.4-3.4-2.6.2-3.8-1.8-4.2-4.7-3.2-.5.2-1 .3-1.5.2-2.2-.2-5.1 1.2-6.4-1.3-1.2-2.5 1.2-4.2 2.5-6 2.6-3.7 4.9-7.5 7.4-11.2 1-1.4 2.2-2.7 4.1-2.1 2 .6 1.3 2.4 1.5 3.8.4 3.3.7 6.6 1 9.9.1 1.5.1 3.1 2.2 3.2.9-.1 1.6.4 1.7 1.8z"/>
|
||||||
|
<path d="M1492 960c-2.6.1-5 0-7.5 1.5-3.7 2.2-5.4-1.4-7.6-3.4 2.8-.6 1.8-2.5 1.5-4.3-.5-2.6-.1-5 2.6-6.3 1.9-.9 4-1.2 5.4.7 1.5 2.1 2.4 4.4.1 6.7-2.2 2.1.3 2.9 1.3 3.7 1.2.9 3.1-.1 4.2 1.4zm12.9-3c-4.3.7-5-4.5-8.6-5.2-.7-.1.3-2.4 1.2-3.4 1.3-1.5 2.6-2.7 5.1-2 1.6.5 2.3 1.2 2.3 2.6.1 2 0 4 0 6 .7.7.6 1.3 0 2z" class="stp8"/>
|
||||||
|
<path d="M1460.9 953c-.2-2.5.2-4.7 2.8-5.7 1.4-.5 4.1-.5 4 .4-.1 2.9 3.7 5.2 1.2 8.3-5.5 2.7-8 1.7-8-3z" class="stp24"/>
|
||||||
|
<path d="M1504.9 957v-2c1.1-.4 2.2-.7 3.2-1.1 1.7-.8 3.5-1.6 4.9.1 1.4 1.7 1.5 4.2 1.1 6-.3 1.8-2.8.6-4.4 1-1.3 0-2.6-.1-3.9-.1-.6-1.2-1-2.5-.9-3.9z" class="stp20"/>
|
||||||
|
<path d="M1460.9 953c.9 5.9 5.4 1.8 8.1 3 .9 1.6 3.1.4 4 2-2.2.1-4.7-.6-5.6 2.7-.4 1.3-2.1 2.2-3.7 1.6-1.3-.4-2.1-1-2.1-2.8.1-3.9-4.3-1.3-5.6-3.4 2.6.6 3.8-1.1 4.9-3.1zm54-3.2c-.1-2.9 1.4-4 4-3.9 1.9.1 4 .2 3.8 2.8-.3 3.8-4.2 2.3-6.2 3.6-1.7 1.1-1.3-1.5-1.6-2.5z" class="stp8"/>
|
||||||
|
<path fill="#2b2d30" d="M1632.9 922c1.1 14 1.3 28 0 42-1 4.3-2 8.7-2.9 13.1-1.8 4-5.4 4.7-9.1 4.8-5.5.3-10.9.4-16.4.4-6.6 0-7-.6-6.7-7.2.1-1 0-2 0-3 2.5-17.1 2.3-34.3 2-51.6-.1-4.9 2.2-7.6 6.7-8.3 4.1-.7 8.2-1 12.3-1.1 10.9-.2 11.5.3 14.1 10.9z"/>
|
||||||
|
<path fill="#8898a7" d="M1683.9 945c-6.5-.1-10.1-3.3-10.8-9.8-.1-.8-.1-1.7-.1-2.5-.3-10.9.7-11.9 11.7-12.6 2.4-.2 2.9.8 3.3 3.1 1.2 6.9.7 13.9 1 20.9-1.5 1.4-3.4.6-5.1.9z"/>
|
||||||
|
<path fill="#8898a8" d="M1694.9 942c-1-6.7-2.1-13.4-3-20.2-.2-1.2-1.8-3.2.6-3.8 2.6-.7 5.7-3.9 7.7-1.9 5.3 5 11 10.1 12.7 17.8-5.7 3.3-11.4 6.8-18 8.1z"/>
|
||||||
|
<path fill="#bdbec1" d="M1359.1 962.2c.3-.4.5-.8.8-1.2 4.5.3 9.4-1.5 12.9 3.2.9 1.2 2.3.5 3.2-.1 3.8-2.9 8.1-2.3 11.8-.9 4.2 1.5 8.1.6 12.1.8 17.4 1 34.8 1.3 52.1 2.8 7.8.7 15.6.3 23.4 1 17.8 1.5 35.7 2.5 53.5 4 14.1 1.2 28.2 2.2 42.3 5.3-10.5 3.5-21.3 5.3-32.3 5.9-26.8-1.7-53.7-3.5-80.5-5-27-1.5-54.1-2.9-81.2-3.4-6-.1-12.3.5-18.2-1.7-2.6-3.6-1.5-7.1.1-10.7z"/>
|
||||||
|
<path fill="#ededed" d="M1556.1 1037.8c1.7-3.2 3.9-5.3 6.1-7.6 1.8 6.3 1.7 6.5-6.1 7.6z"/>
|
||||||
|
<path d="M1478.8 998.1c6.4.4 12.9-1.4 19.2 1-6.5-.1-12.9.4-19.2-1z" class="stp30"/>
|
||||||
|
<path fill="#353536" d="M1359.1 962.2c0 3.6-.1 7.2-.1 10.8-.3 3-.7 6.1-1 9.1-.7 5.7-3.8 8.4-9.6 8.4-4.4 0-8.9.5-13.4.6-10.3.2-10.4 0-11.2-10-2.4-3-.4-6.1-.4-9.2.1-1.8.1-3.6 1.7-4.8 1.9-2.9.1-6.3 1.5-9.7 1.9 1.3.8 3.3 1.4 4.8 2.3 3 1.2 6.4 1.4 9.7-.1 2.9.2 5.8-.2 8.6-.9 6.2-.2 7 5.9 7.1 3.6 0 7.3.1 10.9 0 2.7-.1 5.3-.5 6.8-3.3 1.5-3.3.2-6.9 1-10.3 1-2.6 0-5.8 2.4-7.9 1.9-2.9-.1-6.4 1.6-9.8 1.9 1.8.7 4.1 1.3 5.9z"/>
|
||||||
|
<path d="M1513.1 988.9c-4.4-.3-8.8 1.2-13.1-.9 4.3.2 8.8-.7 13.1.9z" class="stp30"/>
|
||||||
|
<path fill="#424346" d="M1164.1 1124c5.9 0 10 3.7 9.9 8.8-.1 5.7-5.1 10.1-11.3 10.2-5.5 0-9.6-3.8-9.6-9.2-.1-5.3 4.9-9.8 11-9.8z"/>
|
||||||
|
<path fill="#3c3e41" d="M1118.7 1144c-5.6-.1-9.8-4.1-9.6-9.2.2-5.1 5.5-9.7 11.4-9.7 5.5 0 9.6 3.9 9.6 9.2-.1 6-4.6 9.8-11.4 9.7z"/>
|
||||||
|
<path fill="#2f2f30" d="M1577 1064c-.2 5.7-4.4 10-9.7 9.9-4.7-.1-9.3-4-9.3-8 0-5.4 5.4-10.1 11.5-9.9 4.6.1 7.6 3.4 7.5 8z"/>
|
||||||
|
<path d="M439 949.1c-.4-3.8 1.6-4.6 4.9-4 10.8 2.2 21.8 1.9 32.6 2.7 22.4 1.7 44.8 1.4 67.2 2.5 12.9.6 25.8-.1 38.8 1.4 8.7 1 17.7-.6 26.6-.6 7.9 0 15.8.8 23.6.8 64.1.1 128.2 0 192.3 0h5c.1 2-1.5 2.1-2.7 2.2-12.6.7-25.2 1.3-36.3 1.4 4.8.6 11.3-.9 17.6 1 3.3 1 6.7 1.8 10 3.2 5.3 2.2 10.8 3.2 16.6 2.9 8.3-.5 16.6 1.5 24.9.4.8-.1 1.7 0 2.4.4 4.4 2.4 8.6 3.1 12.8-.7 1.5-1.4 4.1-1.3 5.6.3 4.6 5 8.9 3.9 13.5.1 1.7-1.4 4.1-1.8 6-.2 1.8 1.4 2 3.3.8 5.3-3.7 2.6-8 2-12 2.1-22.1.5-44.2-.9-66.3-1.2-7.6-.1-15.3.8-23.1-.8-4.7-1-10.4 1.3-15.7 1-2.4-1-4.7-1.1-7.3-.5-8.4 1.8-16.9.3-25.4.4-31.8.2-63.6.1-95.4.2-37.6.1-75.2-.1-112.8.1-15.6-.5-31.2-1-46.8-2.2-16.1-1.2-32.1-2.2-48.2-3.7-3.4-.3-7.1.1-9.1-3.8 0-3.6-.1-7.1-.1-10.7z" class="stp43"/>
|
||||||
|
<path d="M439.2 959.8c5.5 3.7 12 2.3 17.9 2.8 28.6 2.5 57.2 4.4 85.9 5.4 7.6 1.1 15.2.2 22.8.5 2.3.1 4.8-.4 5.1 3 .1 1.1 1 1.7 2.2 1.6 1.4-.1 1.3-1.2 1.4-2.2.1-.8.2-1.7 1-2.2 1.2-.8 12.2-.3 13 .8 2 2.8 4.4 2.5 7 1.2 7.4-2.3 11.1-.3 11.2 6.1 0 2.8-.9 4-3.7 3.7-2.3-.3-4.6.5-6.8-.5-16.8-.1-33.5.4-50.3-.3-29.6-1.2-59.1-3.1-88.7-4.8-5.6-.3-11.1-2-16.8-1.6-.5-4.5.1-9.1-1.2-13.5z" class="stp64"/>
|
||||||
|
<path fill="#adafb2" d="M436 972.1c1.8 4.7.6 9.8 1.7 14.7.4 1.9-1.1 2.1-2.5 1.9-7.6-.9-15.1-1.8-22.7-2.6-2.1-.2-2.9-1.4-3.1-3.2-.4-4.2-1.8-8.4-1.2-12.7.5-1.8 1.9-2.3 3.4-2.1 7.6.9 15.2 1.4 22.7 2.9.7.1 1.2.7 1.7 1.1z"/>
|
||||||
|
<path fill="#b5b7bb" d="M435.9 957.2v2.5c-.4 1.5-1.5 2.2-2.9 2.1-7.4-.3-14.7-.8-22-2.2-1.1-.2-2.1-1-2.9-1.8-1-10.9 3.9-16.2 14.8-15.9 2.3.1 4.6.1 6.9.2 2.9.2 5.1 1.4 5.3 4.7 1.1 3.6-.2 7.1.8 10.4z"/>
|
||||||
|
<path d="m408.1 957.9 24.6 2.7c1.2.1 2.3 0 3.2-.9 0 4.1.1 8.2.1 12.4-7.7-.8-15.4-1.6-23.1-2.5-1.6-.2-3.2-.9-4.6.6-.1-4.1-.2-8.2-.2-12.3z" class="stp67"/>
|
||||||
|
<path fill="#989a9f" d="M429.6 1003.2c-4.1-.4-8.3-.8-12.4-1.2-1.9-.2-3.6-.8-4.5-2.7-1-2-1.1-3.7 1.9-3.4 7.3.8 14.5 1.7 21.8 2.7 1.4.2 2.6.6 2.5 2.4-.1 1.9-1.5 2-2.8 2-2.2.1-4.3 0-6.5 0 .1.1 0 .2 0 .2z"/>
|
||||||
|
<path d="M435.9 957.2c-1.2-3.3-.7-6.8-.7-10.2 1.6 3.3.7 6.8.7 10.2z" class="stp67"/>
|
||||||
|
<path d="M595 972c-2.3 3.9-7.2.5-7.2.3-.6-6-5-2.7-7.6-3.1-2-.3-6.7-1.8-3.6 3.8.9 1.6-1.1 2.2-2.5 2-2-.3-5.5 1.3-5-2.7.4-3.4-1.2-3.3-3.5-3.3-6 .1-12 0-17.9 0-1.6 0-3.4.5-4.7-.9h158.7c17.5 0 35 .4 52.5-.2 5.8-.2 11.5.5 17.2.3 2.3-.1 4.5.1 6.6-1.4 2.9-2.1 4.8.6 6.8 2.2l.5.5c.5 1 .6 2.2.7 3.3.4 4.1 2.6 6.1 6.7 6 1.3 0 2.6-.1 3.9-.3 2.3.1 4.6.3 6.9.1.8.1 1.3.6 1.7 1.2.2.5.1.9-.3 1.3-6 1.1-12-.2-18 .1-16 .7-32 .6-47.9 0-5.4 0-10.8-.7-16.3.6-2.4.5-5.2-.4-7.8-.7-7.7-.5-15.4 1.6-23-.1.9-2.6 4.8-2.6 5-5.7 5.4-2.3 7.6-1.8 11 2.8 2.9.4 6.2 2.2 8-1.9 3.5-3.1 8.3-3.1 11.2.2 2.6 3.1 5.4 2.8 8.3.8 5.5-3.8 6.1-3.8 11.7.4 2 1.5 4.9 1.8 6.6.6 2-1.5 1-4.6 1.5-7 .1-.7-1.3-.7-2.1-.7-2.8 0-5.5.1-8 2-3.1 2.4-6.2 2.7-9.4-.3-2.8-2.6-6-2.2-9.1-.1-4 2.8-6.9 2.8-11.1-.2-2.8-1.9-5.7-2.2-8.1.3-2.2 2.3-4.8 1.9-7.4 1.8-1 0-2.4-.6-2.1-1.6.9-2.8-1-1.9-2.2-1.9-9.6-.2-19.2.4-28.7-.5-.7-.5-.1.6 0 0 0-.4.1-.2.5 0 2 1.2 1.8 2.9.5 4.1-1.9 1.9-4.2 1.5-6.4.2-1.5-.9-1.8-3.3-4-3.5-2.7-.4-5-.1-7.2 2.1-2.7 2.5-6 2.4-8.9-.2-3.4-3.1-6-2.9-9 .5-2.8 3.1-6.4 3-9.3-.4-2.7-3.1-6.9-3.1-9.8 0-2.2 2.3-5.5 2.3-7.8-.1-3.1-3.6-6.8-3.8-10.6-.7z" class="stp69"/>
|
||||||
|
<path d="M595 972c.2-1-1-3.1.6-2.8 3.6.7 8.3-3.1 10.8 2.7.9 2.1 6.2 1.4 6.3-.8.1-3 2-2.3 3.3-2.1 2.7.5 6.4-2.1 7.8 1.9 1 2.8 2.6 3.1 4.9 3 2.2-.1 3.5-1.1 3-3.5-.2-1.2.6-1.7 1.4-1.4 3.1 1.2 7.7-3.2 9.6 3.1.5 1.7 5.9 1.7 6.5 0 2-5.1 5.8-2.5 8.8-3.1 3.8 1.1 2.3 4.6 3.3 7 .1 1.8.1 3.5-1.3 4.9-4.8.8-9.7-.7-14.7 1.2-2 .8-5.8-1.4-8.9-1.3-2.3.1-4.7-.1-6.8 1.2-.5.3-1.3.8-1.8.6-10-3.4-20.4-.8-30.5-2-.5 0-.8-.5-1.3-.7 1.2 0 2.3.1 3.5 0 1.9-.2 4.8 1 5.5-.8.7-1.9.8-4.8-.6-6.7-1.6-2-4.1-1.8-6.5-1.3-1 .3-1.9.6-2.9.9zm102.1 4c2.5 5.9-3.8 2.9-5.1 4.9h-22.9c-1.6-1.5-1.5-3.4-1.3-5.3 1.6-6.1 2.2-6.5 8.5-5.9 5.5.5 11 0 16.4.3 4.4.2 5.2 1.5 4.4 6z" class="stp70"/>
|
||||||
|
<path d="M669 976c0 1.6 0 3.3.1 4.9-3 1.2-6 2.8-9 .1v-5c2.9-1.6 5.9-1.5 8.9 0zm115.9-7.1c4.8-1.4 10-1.5 14.9-2.4 3.4-.7 7.7 2.1 11.8 1.6 1.9-.2 3.7.6 5.4-2 1.8-2.7 1.2 3.9 4.4 2.1 1.6-.9 4.2 0 6.4-.1 9-.1 18.1-1.4 26.9-.1 11.4 1.6 22.7.1 34 .9 4 .3 8.1-.5 12.2-.9.3 0 .5-.1.8-.2 4.2-.6 8.4.5 12.5-.9 2.1-.4 4.3-.9 6.4-.6 11.9 1.7 23.8-.4 35.8.1 2.8.1 5.6.3 8.4.8 1 .2 2.3.6 2.9.1 5.1-3.9 10.4-.7 15.7-.8 5.7-.2 11.3.7 16.9.8 2.3.1 4.7.2 6.9-.7 2.7-1 5.5-1 8.4-.6 5 .6 9.9 1 14.8-.6 1.4-.5 3-.6 4.4 0 4.1 1.5 8.1 1.3 12.2-.1 3.2-1.1 6.2.1 9.1 1.5 1.8.9 3.9.5 5.8 1.3 2.1 1.4 3.6 4 6.6 3.4-1.4-2.2-4.9-.4-5.9-3.3 1.3-3.8 4.6-5.5 8.4-3.6 7.3 3.6 15.2 1 22.6 2.3 1.2.2 2.1-1 3.1-1.5 3.3-1.9 6.5-2.6 9.5.6 1.1 1.2 2.6 1.5 4.1 1.5 5.7.1 11.3 0 17 0 1.7 0 3.1-.5 4.5-1.7 3.7-3 6.6-3 10.2 0 4.1 3.3 5.3 3.3 9.2-.3 2.6-2.4 5.9-2.4 8.4.1 4.3 4 5.6 4 9.6 0 2.7-2.8 7-2.5 9.4.7 2.6 3.4 6.3 3.3 8.6-.2 2.1-3.1 6.8-3.3 9.3-.3 3.3 4 6.1 4 8.9-.3 1.5-2.2 3.7-2.6 6.1-2.5 2 .1 3 1.3 3.1 3.3 0 2.6 1.9 2.2 3.5 2.4 2.4.3 5.5-1 6.9 2.3-1.8 2-4.3 1.4-6.5 1.5-3.3.1-5.6 1.4-6.9 5 4 .3 7.8 0 11.5.2 1.8.1 4.1-.5 4.8 2.2-1 0-2 .1-3 .2-78.6-1.9-157.3-1.4-235.9-1-31.6 0-63.2-.6-94.7.3-17.4.5-34.8.2-52.9.7 2.1-3 2-5.9-.5-7.6-1.5-1-4.5-.5-5.4.7-1.5 2.2-.2 4.7 2 7H825c-1.5.5-3.6.9-3.2-1.4.7-4-1.3-4.4-4.3-4.3-1 0-1.9-.4-2.7-1.1-1.2-2.4-3.1-3.1-5.7-3-2.5.1-5 1.2-7.3 1.1-3.8-.2.6 1.6-.6 1.8-2.2 1.3-3.4 4-6 4.9-2.5-2.3-1.3-5.2-1.1-7.8-3.1 0-6.2 1.1-9-1.2l-.2-.3z" class="stp69"/>
|
||||||
|
<path fill="#797c7e" d="M1228 979.9c-4.2-2-8.7-.4-13.1-1-2.1-.2-4.2.5-6.1-.5 2.8-8.4 9.6-7.7 16.2-7.5 2.4-2.1 5.4-1.5 8.1-1.5 26.6 0 53.2 1.4 79.8 1.1 3.9 0 8 .4 11.8 1.4-.3 3.1-.6 6.1-.9 9.2-31.9-1-63.8-1.2-95.8-1.2z"/>
|
||||||
|
<path d="M815.1 973.1c1.1.1 2.3.6 3.4.3 4.2-1 6.6-.5 4.4 4.6-1 2.2 1 1.8 2.1 2-6.6 2-13.4.4-20 .8 0-.3.1-.6.2-.9.5-.8 1.3-1.3 2-1.2 4.5.7 7.5-.6 7.9-5.6zm-76 8.1H787c-.9 1-2.1.9-3.2.9h-41.4c-1.2-.1-2.4 0-3.3-.9z" class="stp41"/>
|
||||||
|
<path d="M1324.8 971.9c-1.6 1.2-3.5 1-5.3.9-12.4-1.2-24.9-.7-37.3-.9l-57.2-.9c-3.9-2-8.2 0-12.2-1.2-.8-1.8 2.2-3.5.5-5-1.5-1.3-3.5-.4-5.2.1-1.3.3-2.4.9-1.4 2.3 2.1 3.1-.2 2.8-2.1 2.8h-7c-1.1 0-2.4.1-2.2-1.8.8-5.2-3.3-3-5.2-3-3.9.1-1.2 2.7-1.2 4.8h-8.3c-2 0-4.2.4-3.4-3 .5-2.2-1.5-1.9-2.6-1.8-1.7.2-4.5-1.2-4.7 2-.2 2.7-1.7 3.1-3.6 2.8-2.5-.4-6.1 1.7-7.2-2.2-.6-2.2-1.6-2.6-3.5-2.5-1.9 0-3.3 0-4.1 2.5-1 3.3-8.6 3-10.7-.2-2-3.1-6.3-3.3-7.9-.1-.9 1.8-2.1 1.8-3.6 1.8-7 0-14-.1-21-.2-1.3 0-2.5.2-3.4-1.3-2-3-6-3.3-7.9-.4-1.1 1.7-2.3 1.8-3.7 1.5-5.8-1.2-11.6-.4-17.4-.7-1.4-.1-2.8.2-4.2-1-3.5-3-7.1-2.1-9 1.9h.1c-3.5-.5-7.2.8-10.4-2.3-.9-.9-3.8-1-6 .2-3.8 2-7.9 2.1-11.7-.1-1.7-1-2.9-.2-4.2.2-5 1.7-9.9 1.4-15 .5-2.4-.5-5.1-.7-7.7.6-4.2 2.2-8.9.7-13.2.5-5.1-.3-10.3-.1-15.4-.5-2.2-.2-5 .9-4.6-4-.7 4.5-3.2 5-5.9 4.8-6.6-.4-13.2-1.2-19.9-.7-11.6.8-23.2-.2-34.8-.1-4.3.7-8.7.8-13 0 0-1.8.4-3.9-1.8-4.7-2.3-.8-4.2.4-5.8 2-3.9 4-8.7 3.8-12.2-.4-2.7-3.2-5.3-2.2-7.5.5-2.1 2.5-4.5 3-6.9 1.4-4.8-3.1-10.1-1.4-15.1-2-12.2-1.5-24.8 1.4-36.5-4.7-4.7-2.5-10.3-3.6-16-3.1-3.8.3-7.5-1-11.2-1.6 9.3-.7 18.5-2.2 27.9-2 4.5.1 9.6.8 14-1.5 5.7 1.8 11.3.1 17 0 9.5-.1 18.9 1.3 28.4 1.1 72.5-2.1 145-.9 217.5-.8 17.4 0 34.9.1 52.3.9 11.1.5 22.2 0 33.2 1 13.8 1.3 27.6.8 41.4.6 6.1-.1 12.1 1 18.1 1.2 2.1.1 4.2.1 6.2-1.3 1.7-1.2 3.7-.9 5.6.4 3.8 2.7 7.6 3.1 11.7-.1 1.9-1.5 4.6-3.2 7.1.4 2 2.8 8.5 2.2 10.8-.6 2.3-2.7 5.2-2.6 7.4.4 2.9 3.9 7.6 3.8 10.6-.1 2.3-3 6.2-2.5 7.9 1 1.6 3.3 7.4 4 9.6 1.2 1.3-1.7.8-5.2 3.7-5 3.3.2 4.8 3 5.1 6.2.1.5.9.9 1.4 1.3.1 2.3.2 4.7.2 7l-.4 5z" class="stp72"/>
|
||||||
|
<path fill="#bcbdbf" d="M1328.1 971.9v-9.8c1.7-4.6.3-9.4 1-14 .6-.6 1.3-1.2 2.1-1.1 3.7.5 6-.5 7.7-4.2 1.2-2.7 6-2.8 7-.2 1.7 4.4 5 5.1 8.8 5.6.5.1.8.5 1.1.9.1 5.6.2 11.3.4 16.9-.6 2.5.6 5.4-1.4 7.7-7.9 1.6-15.8.7-23.7.4-1.4 0-2.5-.8-3-2.2z"/>
|
||||||
|
<path fill="#8e9093" d="M1355.8 949.1c-1.8 0-3.7-.2-5.5 0-2.7.2-4.5-.4-4.3-3.7.1-2.2-1.1-3.4-3.3-3.4-1.9 0-3.6.6-3.6 2.6.1 5-2.4 4.9-6 3.7-1.2-.4-2.6-.1-3.9-.2-.1-6.1-.1-12.3-.3-18.4-.1-3.7 1.4-5.7 5.2-5.7 5.2 0 10.3 0 15.4-.1 3.3 0 5.1 1.3 5.6 4.9 1 6.8 1 13.5.7 20.3z"/>
|
||||||
|
<path fill="#64676c" d="M1602.1 972.1c.6-7.8 1.2-15.5 1.7-23.3.6-8.7-.7-17.3-1-25.9-.2-4.9 1.8-7.3 6.3-7.7 5.1-.3 10.3-.2 15.5-.2 2.7 0 3.8 2 4.2 4.2 1.8 12.9 1.6 25.9.5 38.8-.6 6.7-.7 13.5-3.5 19.8-5.7-2.7-12-2.2-18-3.4-2.1-.3-4.3-.4-5.7-2.3z"/>
|
||||||
|
<path fill="#8d9094" d="M1602.1 972.1c6.8 1 13.6 2 20.4 2.8 2 .2 3.7.3 3.4 3-7.4 3.7-15.4 2.6-22.9 1.8-3.8-.4-1.7-4.9-.9-7.6z"/>
|
||||||
|
<path fill="#727477" d="M1328.1 971.9c3 2.1 6.4.9 9.6 1.1 5.7.4 11.5-.5 17.1.8-.1 3.8 1 7.6-.8 11.2-3.8-2.6-8.1-2.4-12.4-2.6-4.5-.2-9.3 1.3-13.5-1.3v-9.2z"/>
|
||||||
|
<path d="M1328.1 981.1c6.8 0 13.6-.1 20.4.1 2.4.1 5.8-.5 5.5 3.8-.6 3.3-3.3 3.4-5.7 3.6-4.9.3-9.9.4-14.8.4-6.4 0-7.2-1.3-5.4-7.9z" class="stp42"/>
|
||||||
|
<path fill="#6b6e71" d="M669 976h-9c-.1-2.5.7-5.2-2-6.9 2.2-.4 2.8.9 3.2 2.8.5 2.4 2.6 2.1 4.5 2.1 2-.1 2.6-1.1 2-3-1-.5-1.5.5-2.2.7-1.1.3-2.6.8-2.9-.7-.3-1.5 1.2-1.9 2.3-1.9h37.2c-.4 2.6-2.8 1.2-3.5 2.7 3.9 2.1 4.8 2 7.6-1.5 1.6-2 9.2-1.8 10.7.3 2.6 3.6 5.8 3.5 8.5-.5 1.2-1.7 10.6-1.7 11.3.3 1.4 3.9 5 3.3 6.3 1.8 4.5-5.3 10-2.4 15.3-3.3-.5 2.5-2.4 3.9-2.4 6.3 0 1.5 2.2 4.9-1.2 4.5-3.2-.3-8.2 3.6-9.8-3-.5-2.1-6.1-1.6-7.7.7-2.9 4-9.3 3.6-11.2-.7-1.2-2.7-6.2-2.6-8.9.2-.2.3-.7.6-.8.4-4.4-4.1-6.8-.9-9.2 2.5-2.5-5.6-3.8-6.1-10-3.9.4-3.8-1.6-5-5-5.1-6-.2-11.9.4-17.9-.7-3.7-.6-5.9 1.8-5.2 5.9z"/>
|
||||||
|
<path d="M815.1 973.1c-.3 2.2-.1 4.2 1.7 7h-11.7l-1.2-1.2c-1.4-1.8-1.5-4.2-2.8-5.9-.7-1.8-2.8.1-4-1.6 5.4-1.7 10.7-3 16.1-2.2 2.5.2 1.6 2.4 1.9 3.9zm-30-4h1.5c2.6 0 5.7-.8 7.7.3 2.3 1.3.2 4.7.9 7 .2.6.6 1.1.9 1.6.5.1.9.5 1 1-3.6 2-7.4.6-11.2.9-.9.1-1.7-.6-1.3-1.6 1.2-3-.5-6.2.5-9.2z" style="fill:#717477"/>
|
||||||
|
<path d="m797 979-1-1c-.8-4.1 2.4-4.3 5-5 4.9.1 2.5 3.7 2.8 5.9-2.2 1.6-4.5 1.4-6.8.1z" class="stp41"/>
|
||||||
|
<path d="M707 980c.3-.6.7-1.2.8-1.8.2-2.1.7-4.1 2.9-4.8 2.5-.8 3.3 1.4 4.6 2.8.4.4 1.1.5 1.7.8.2 2-.5 3.1-2.7 3-2.4-.1-4.8 0-7.3 0z" class="stp70"/>
|
||||||
|
<path d="M618.5 980c-2.6.3-4.5.1-4.5-3.4 0-3.7 2.1-4.4 5-4.5 3-.1 4 1.3 4.1 4.2.2 3.6-1.8 4-4.6 3.7zm17.9 0c-1.3-.2-3.3.4-3.1-1.9.2-1.7.9-3.8 3.1-3.8 2 0 3.3 1.5 3.5 3.5.2 2.4-1.8 2.1-3.5 2.2z" class="stp64"/>
|
||||||
|
<path d="M862.8 974.7c-.6 2-1.1 4.3-4.2 4.4-3.3 0-4.4-2.3-4.4-4.8 0-3.5 3.1-1.9 4.9-2.2 1.8-.3 3.9-.6 3.7 2.6zm16.5-3.1c1.2-.2 3.5-1.2 3.2 1.9-.3 2.5-1.2 4.8-4.6 4.5-2.3-.2-3.8-1-3.8-3.5-.1-3.3 2.2-3.3 5.2-2.9z" class="stp5"/>
|
||||||
|
<path d="M896.8 971.6c1.2.7 4.7-.6 5 2.8.2 2.4-1.8 3.7-4.3 3.7-3 0-3.8-2.1-4.3-4.5s1.2-2.3 3.6-2z" class="stp43"/>
|
||||||
|
<path d="M958.4 970c2-.1 3.7 0 3.6 2.7-.1 2.6-1.5 3.4-3.8 3.4s-4-.6-4-3.2c0-3 2.2-2.8 4.2-2.9zm18.4.3c1.3.6 3.9-1.8 3.7 1.5-.2 2.4-1.2 4.5-4.4 4.1-2.3-.3-4-1.4-3.7-3.7.3-2.9 2.6-2.3 4.4-1.9zm72.2-1.4c1.7.3 4.2-.6 4.4 2 .1 2-1.7 3-3.8 3.1-2.2 0-4.2-.8-4.3-3.1-.1-2.8 2.3-1.6 3.7-2zm-32.2 2.6c-.4 2.1-1.7 3.2-3.7 3.4-2 .2-3.8-.2-3.9-2.7-.1-2.2 1.5-2.3 3-2.2 1.6.2 3.8-1 4.6 1.5zm46.2-2.5c1.7 0 3.3-.2 4.9-.1 1.2.1 2.8-.6 3.6.9.5 1.1-1.8 1-1.3 2.9.3 1.6-2.1.8-3.2.7-2.5-.3-3.6-2.2-4-4.4zm-64.2 2c-.6 4.2-3.9 3.3-6.3 3.6-.7.1-1.3-.9-1.3-1.8-.1-1 .5-1.4 1.3-1.8 2.1-1 4.2-.4 6.3 0z" class="stp72"/>
|
||||||
|
<path d="M901 968h13c-4.3 1.5-8.6 1.6-13 0z" class="stp43"/>
|
||||||
|
<path d="M1228.3 964c1.3.3 3.8-.6 3.3 1.7-.3 1.2-1.6 3.5-4 3.3-2.1-.1-3-1.7-3-3.3 0-2.9 2.5-1 3.7-1.7z" class="stp69"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" id="Layer19" x="0" y="0" style="opacity:1;z-index:1" viewBox="0 0 1920 1920">
|
||||||
|
<style>
|
||||||
|
.sts6{fill:#d7d6d6}.sts12{fill:#57595d}.sts13{fill:#818488}.sts14{fill:#c7c7c7}.sts18{fill:#85878a}.sts22{fill:#bdbebe}.sts26{fill:#c4c4c4}.sts31{fill:#a7a9ad}.sts41{fill:#b6b8bb}.sts43{fill:#8e9091}.sts47{fill:#919396}.sts48{fill:#b2b4b6}.sts94{fill:#aaaaac}
|
||||||
|
</style>
|
||||||
|
<g id="Group_2">
|
||||||
|
<path fill="#d2d1d1" d="M859.9 1262.9c1.3-5.1 4.2-9.5 7.9-13.1 5.3-5.1 11.5-7.9 19.4-5.9 30.5 7.7 61.7 13 90.7 25.9 22 9.8 44 19.6 64.8 32 1.3.8 2.5 1.6 3.3 3-.6 1-1.6 1.3-2.5 1.3-11.7.2-19 7.6-25.6 15.9-4.4 5.6-7.9 11.8-10.6 18.4-.5 1.4-1.1 2.8-2.2 3.9-2 1.1-4 .7-5.7-.4-13.6-8.6-29.2-13.2-42.7-21.7-15.9-10.1-33.4-17.3-48.7-28.4-4.9-3.5-9.8-6.7-14.4-10.7-7.1-6.2-15.9-9.6-23.9-14.4-3.2-1.8-6.6-3.6-9.8-5.8z"/>
|
||||||
|
<path fill="#b8b8b9" d="M859.9 1262.9c3-.6 4.8 1.7 7.1 3 4.7 2.8 9.6 5.4 14.4 8 14.2 7.6 25.7 19.3 39.9 26.9 9.2 5 18.8 9.4 27.5 15.2 16.1 10.8 34.8 16.4 51 26.8 1.6 1 3.4 1.2 5.3 1.1 1.9 2.1.8 4.4.3 6.7-1 4.9-1.4 9.9-.5 14.8.8 4.2 2.2 8 5.4 11 1 .9 2 1.8 1.9 3.3-12.8-2.1-24.1-8.4-35.6-13.7-36.5-16.8-69.4-39.1-99.5-65.5-3.7-3.3-7.6-6.4-11.5-9.5-9.4-7.4-10.5-16.7-5.7-28.1z"/>
|
||||||
|
<path fill="#515458" d="M1012.2 1379.8c-9.6-6.7-9.9-16.4-8.7-26.6.4-3.1 1-6.2 1.6-9.2.4-1.2.8-2.5 1.2-3.8 6 1.4 9.6-1.6 12.2-6.6.9-1.7 1.8-4.1 4.6-3.8 1.3 2.2-.2 3.8-1.2 5.5-1.6 2.8-3.1 5.5-4.2 8.5-.4 1-.4 2.1.9 2.4s2-.5 1.6-1.7c-.9-2.4.6-3.1 2.2-4.3 3.5-2.7 3.3-7.2 4.8-10.9.8-2 .9-4.8 1.4-7.2 4.5-7.1 11.3-10.5 19.2-12 2.4-.5 4.9.2 7 2 6.7 6.5 7.4 14.7 6.1 23.2-2 13-7.6 24.3-16.7 33.8-.8-1.3-.9-2.5-.2-3.7 3-5.9 2.7-6.6-3.6-8.8-2.8-1-5.9-1.3-8.6-2.6-5.9-2.8-10.9-.6-16 2.2-1.4.7-1.6 2-1.9 3.3-2.2 10.2 3.8 17.7 14.2 17.7 1.2 0 2.8-.5 2.9 1.6-6.2 2.7-12.5 3-18.8 1z"/>
|
||||||
|
<path fill="#7c8088" d="M1030.9 1378.8c-1-1.1-2-.6-3.2-.3-6.8 1.3-12.2-1.9-14.1-8.5-.6-2.2-1.1-4.5-1.5-6.8-.4-2.8.8-5.5 1.2-8.3 5 .8 8-5.5 13.4-3.6 5 1.8 10.2 2.9 15.2 4.6 6.7 2.2 7 3.6 3.5 9.5-.6 1-2.7 1.9-1.3 3.7-3.4 4.5-7.8 7.8-13.2 9.7z"/>
|
||||||
|
<path fill="#8a8d92" d="M1054.7 1312.1c-11.1-2.4-19.1 2.7-25.8 10.8-1.2 3.1-2.3 6.1-5.9 7.2-2.9 1.8-4 5-5.9 7.6-3.7 5.1-5.6 5.6-11 2.6 5.4-13.1 12.7-24.6 25.1-32.2 4.6-2.8 9.6-3.2 14.8-3.2 3.4 1.8 6.7 3.8 8.7 7.2z"/>
|
||||||
|
<path fill="#090a0b" d="M1023.1 1330c2-2.4 3.9-4.8 5.9-7.2-.8 3.7 1.6 8.1-2.4 11.2-.4.3-1 1.3-.8 1.6 3.1 5.8-2.8 4.8-5.1 7.2-.2 1.3 2.9 1.7 1.9 3.5-.7 1.2-2.1 1.6-3.5 1.5-2.6-.2-4.2-1.2-2.8-4.1 2.2-4.5 4.5-9.1 6.8-13.7z"/>
|
||||||
|
</g>
|
||||||
|
<g id="Group_1">
|
||||||
|
<path d="M826.9 1098.1c-9.7-.5-19.3 1.4-29 1.8-6.3-2.3-12.5.2-18.7.6-13.4.7-26.8 2.6-40.2 3.6-11.9.9-23.8 2.1-35.6 3.2-9.8.9-19.5 1.8-29.2 2.7-12.4 1.2-24.8 2.2-37.2 3.4-24.1 2.3-48.3 4.4-72.4 6.6-14 1.3-28.1 2.6-42.2 3.7-16.7 1.3-33.4 2.6-50.1 3.4-13.8.7-27.5 1.3-41.3 2.3-6.5.5-13-.8-19.4-.5-1.5.1-3.2-.6-3.3-2.3-.1-1.6 1.5-2.2 2.7-2.5 6-1.5 11.6-4.1 17.7-5.3 5.1-1 8.8-3.8 11.4-8.1 1.1-1.8 2.1-3.2 4.5-3.4 4.8-.5 8.2-4.1 8.8-8.8.7-5.9.9-6.2 7-6.2 1 0 2 .1 3-.2 1.2-.3 2.1-1.2 2.2-2.4.1-1.4-1.1-1.4-2-1.6-1.9-.4-3.5-1.1-4.4-2.9 5.5-2.2 11.7-1.2 17.2-3.4.4-2.5-3.6-4.7-1-6.8 2.2-1.8 5.7-1.4 8.1 0 9.3 5.4 18.8 2.2 28.1.9 19.3-2.7 38.6-5.7 57.9-8.7 18.3-2.8 36.6-5.6 54.9-8.6 3-.5 6.3.2 9.1-2-.9-2.5-4-5.2-1.5-7.6 2.1-2.1 5.6-1 8 .4 11.5 6.6 23.4 3.6 35.3 1.8 18.6-2.9 37.2-6.6 55.9-8.5 20.8-2.2 40.3-9 60.3-14 10.4-2.6 20.7-6.1 31-8.8 9.9-2.6 19.8-5.4 29.8-7.6 1.8-.4 3.6-.6 5-2 2.1-2 4.8-2 7.4-2.3 2-.2 4-.4 5.9-1.1 3.3-1.2 4.5-3.1 2.9-6.5-4.1-8.8-9.9-16-18.1-21.3-11.9-7.7-25-13.1-38.1-18.2-5-1.9-9.8-4-14.6-6.4-1.6-.8-3.7-1.7-3.1-3.9.5-2 2.7-1.5 4.3-1.4 5.9 1.2 11.9 2.3 17.8 3.7 16.6 4 33 8.8 49.2 14.2 2.8 1 5.7 1.9 8.6 2.4 1.3.2 2.8.4 2.6-1.8-.5-3.8 2.1-3.5 4.5-3.3 4.3.4 8.2 2.6 12.6 2.5 10 3.1 19.4 7.9 29.2 11.4 22.3 9.7 44.8 18.9 67.2 28.3 28.1 11.8 55.6 24.8 83.9 36.2 2.2.9 4.2 1.9 6.1 3.4 4.7 4.8 10.8 7 16.6 10 13.7 7.2 25.3 17.1 35.9 28.3 1.8 2.4 4.8 4.1 4.3 7.7-1.7 2-3.9 1.5-6 .9-4.2-1.2-8.2-2.8-11.9-5.1-5.4-3.4-10.9-6.5-16.7-9-2.1-.9-4.1-1.4-5.9.7-2.2 2.6-5.1 2.9-8.2 2.9-9.3 0-18.7-.2-28 0-14.8.3-29.6 1.6-44 5.1-2.3.6-4.3 1.6-6.2 3.1-.7.4-1.4.7-2.3.7-2-.6-3.9-.1-5.9 0-6.7.3-6.7.3-7.7 7.2-.2 1.5.1 3.5-2.4 3.5-1.3-1.5-1.2-3.3-1.3-5.1-.3-5.3-.7-5.7-6.2-5.5-1.3 0-2.6.2-3.9.2-10.5-1.1-20.9.1-31.4.6-6.1.3-12.3 0-18.2.1 15.4 6.7 30.3 14.8 44.1 24.7 1.4 1 2.6 2.9 4.8 1.8 3.8 5 8.2 9.4 10.5 14.1 0-.2-.6-1.6 1.4-2.2.1 4.5.6 8.7 3.1 12.8 2.2 3.7.8 8.2 1.3 12.3-5.4-.8-10.6-2.3-14.8-6-13.8-12.1-28.6-22.9-45.3-30.8-11.5-5.3-22.8-10.9-35.4-13.2-4.2-.8-7.8-2.8-11.2-5.3-6.7-4.8-14.1-6.2-22.2-5.5-13.1 1.1-26.2 1.9-39.3 3.3-2.2.1-4.2-.1-6.3-.4z" class="sts6"/>
|
||||||
|
<path fill="#d4d4d3" d="M1276.1 735.9c5.1 7.2 6.4 14.4 2.3 22.8-3.4 7-4 15-5.1 22.7-2.5 17.5-7.5 34.2-12.8 51-9.9 31.6-19.4 63.4-28.8 95.2-3.4 11.4-3 11.5 8.3 15.5 18.4 6.4 36.5 13.5 52.6 24.5 9.6 6.6 17.2 15.6 20.3 27.5-2.3 1.5-4.5.2-6.6-.5-16.7-5.7-33.2-11.9-49.8-17.6-23.4-8.1-46.8-16.3-70.1-24.5-20.4-7.2-40.7-14.6-61.2-21.4-7.2-3.2-14.8-5.1-22-8-.7-.3-1.4-.6-2.1-.8-8.2-2.7-16.3-5.5-24.4-8.5-1.9-.7-4.3-.9-4.7-3.7 2.8-.3 3.8-2.4 4.8-4.5 1.9-3.6 4.4-6.2 9-5.6 2.3.3 4.1-.9 6.1-1.9 9.6-4.6 16.9-12 23.6-20.1 3.9-4.8 7.8-9.5 12.1-13.8 2.9-2.9 2-4.3-.9-5.7-2.4-1.2-4.8-2.5-6.2-4.8-.8-1.2-1.8-2.5-1-4.1.9-1.6 2.5-1.6 4-1.3 3.4.6 6.9 1.2 10.2 2.3 3.1 1 5.4.6 7.5-1.9 9.8-11.3 19.7-22.5 29.6-33.6 1.6-1.8 1.3-2.9-.7-3.8-3-1.3-5.2-3.5-7.3-5.9-2.1-2.4-1.5-4 1.7-4.2 3.2-.2 6.4-.3 9.3 1 5.7 2.5 9.6-.3 12.9-4.3 12.3-14.6 23.4-30.1 34.8-45.3 2-2.6 3.8-5.4 5.8-8 6.6-8.7 6-18.7 5.9-28.7 0-1.9-.6-4 .9-5.8 2.7 3.5 1.3 7.7 1.5 11.5.3 5.8.5 6.4 6.2 7.7 9.1 2 18.1 4.2 27.1 6.3 2.2.4 4.6.8 7.2.3z"/>
|
||||||
|
<path fill="#85888b" d="M1102 921.1c.4.2.7.5 1.1.7 6.6 4.7 14.7 5.6 22.1 8.2 10.8 2.1 20.7 6.9 31.1 10.2 16.3 5.3 32.4 11.5 48.6 17.2 34.9 12.3 69.8 24.6 104.7 36.8 1.1.4 2.2.6 3.3.9 12.1 4.3 24.3 8.4 36.4 12.9 20.2 7.5 40.9 13.4 60.8 21.6 4.1 3.6 9.6 4.3 14.4 6.5 10.4 4.7 20.5 10.2 31.3 14.2 5.9 2.2 12 3.9 18.4 2.4 2.6.7 2.8 3.1 3.3 5.1 1.2 4.6 2.7 8.8 7.9 10.5.8.2 1.2 1.1 1.2 2-.1.9-.4 1.6-.9 2.3-3.7 4.7-3.6 4.6 1.1 8.1 5.7 4.2 12.2 7.5 17.1 12.9 4.7 5 4.2 8.4-2 11-9.5 3.9-19.2 6.2-29.6 5.1-10.5-1.1-20.8.9-31 3.5-9 2.4-18.3 3.1-27.5 3.6-2.3-1.7-.8-3.6-.3-5.4.9-3.4 3.3-6.4 3.6-10.5-8.5 4.8-17.9 8-23.5 16.7-2.9.4-5.7 0-8.3-1.3-1.2-1.3-1.1-2.8-.6-4.2 2.8-6.9 5-14.1 9.8-20.1 3.6-3.3 8-3.9 12.6-3.2 23.5 3.7 47.3 5.2 70.8 9.4 4.3.8 8.7.3 13 .2 1.5-.1 3.3-.2 3.7-1.9.4-1.7-1-2.7-2.2-3.6-2.7-2-5.6-3.6-8.6-5.2-15.6-8.2-31.7-15.6-47.1-24.1-7.7-4.2-15.2-8.4-21.5-15.1-6.1-6.4-14.3-10.8-22.2-15.2-14.5-8-29.7-14.5-45.1-20.2-29.5-11-58.9-22.3-88.7-32.5-19.2-6.6-38.6-12.6-57.9-19-27.5-9-55.2-17.8-83-25.8-20.7-5.9-41.5-11.2-62.1-17.3-31.6-9.4-63.1-19.2-94.8-28.2-25.2-7.1-50.3-14.3-75.3-21.9-27.9-8.5-55.6-17.2-83.4-25.9-23-7.2-46-14.8-69.4-20.4-.8-.2-1.6-.4-3.3-.4 6.9 4.4 13.8 7 20.5 9.9 31.2 13.4 62.5 26.5 93.4 40.6 22.1 10.1 43.9 20.9 65.8 31.4 16.4 7.8 32.4 16.3 48.2 25.2 11.9 6.6 23.4 14 34.9 21.5 4.6 3 9.5 5.5 14.5 7.8 19.1 8.7 37.3 19.2 56.3 28 18.3 8.4 36.8 16.3 55.8 23.2 9.7 3.5 19.3 7.5 28.6 11.9 13.7 6.5 28.1 11.3 42.1 17.2 2.9 1.2 5.6.2 8.3.4 1.2 1.8.2 3.4-.4 5.1-1.7 4.4-2.9 9-5.3 13.1-2 1-3.6-.2-5.2-1-15.4-7.2-30.8-14.2-46.1-21.7-20.6-10.2-42-18.7-62.7-28.5-26.2-12.4-52.9-23.6-79.5-35-22.9-9.9-46.1-19.2-69-29.2-1.7-.8-4.1-.9-3.8-3.7 4-1.9 7.4.3 11.7 1.9-7.4-2.9-13.1-7.2-19-11-11.7-7.4-23.9-13.9-35.7-21.1-19.7-12.1-39.5-24.1-60-35-30.6-16.3-62.5-29.8-94.2-43.8-10.2-4.5-20.4-9.1-30.2-14.5-2-1.1-5.5-2.2-4.4-5.1.9-2.3 4.1-1.3 6.4-.9 17.1 3.1 33.6 8.5 50.2 13.5 32.8 9.7 65.3 19.9 98.4 28.4 26.1 6.7 52.4 13 78.4 20 20 5.4 39.7 11.3 59.5 17.4 35.5 11 71.1 21.6 106.6 32.5 2.3.5 4.9 2.3 7.9.9z"/>
|
||||||
|
<path fill="#797d81" d="M632.9 756.2c10 11.2 24.2 13 37.4 17 77.7 23.7 154.3 50.5 231 77.2 23.3 8.1 46.4 16.5 69.6 24.8-1.4 3.3-4.1 2-6.3 1.6-8.6-1.4-16.6-5-24.9-7.3-31.2-8.8-62.2-18.8-93.6-26.8-19.3-5-38.9-9-58.4-13.3-35.2-7.7-69.6-18.2-104.5-26.6-4.3-1-8.7-2.2-14.3-2.5 5.2 4.1 10.2 6.7 15.2 9 27 12.5 54.4 24.3 81 37.7 28.5 14.3 55.1 31.8 82.2 48.4 3.2 2 6.3 4.4 9.2 6.9 1.2 1.1 2.7 2.4 1.8 4.3-1 2.1-3 1.7-4.8 1.4-2.1-.4-4.1-1.4-6.3-1.6-12.3-3.4-23.6-9.1-35.2-14-37.9-15.9-75.9-31.8-114-47.3-22.5-9.2-45.4-17.6-67-28.7-21.2-10.9-41.5-23.3-60-38.5-7.7-6.4-14.2-14-20.2-22-1.2-1.6-3-3.3-1.8-5.8 2.8-1 5.2.3 7.7 1 18.9 5.8 37.8 11.7 56.6 17.8 3 1 6.1 1.7 9.2 2.4 1.2.3 2.8 1.1 3.8 0 1.3-1.4-.7-2.2-1-3.4-.9-3.1-2-6.2-4.3-8.6 4.3-3.3 7.5.5 11.4 1.3-.2-1.4-2.8-3.5.5-4.4z"/>
|
||||||
|
<path fill="#adb0b4" d="M455.9 581.1c-3.3-15.2-6.6-30.4-9.8-45.6-2.9-13.8-5.7-27.6-8.5-41.4-2.6-12.7.2-15.5 12.9-12 10.5 2.8 21 6 31.5 9 6.2 8.2 10.4 17.4 13.6 27.1 3.9 11.5 9.4 22.3 15.4 33 8.7 15.7 16.3 31.9 23.3 48.5 9.4 22.2 21 43.5 33.1 64.4 4 6.9 6.8 14.4 9.7 21.9 1.2 3.3 2.9 6.2 5.4 8.9 4.2 4.5 5.1 10.8 7.5 16.2 2.7 6.1 5.3 12.2 10.2 16.9 3 2.9 4.9 6.3 5.2 10.5.4 6 4.5 10.7 5.9 16.3-3.2 2.4-5.3-.4-7.4-1.8-9.6-6.5-17.6-14.8-25.3-23.3-9.3-10.2-18.6-20.5-27.5-31-14.7-17.5-29.6-34.8-43.2-53.1-15.2-20.5-31.1-40.3-48.1-59.3-1.4-1.7-2.2-3.7-3.9-5.2z"/>
|
||||||
|
<path fill="#666a6f" d="M1697 1236.9c.9.8 1.2 1.8 1.2 2.9-.5 2.1.4 3.6 1.8 5 1.9 3.4 3 7.1 3.1 11.1-2.1 1.9-3.8.6-5.2-.8-12-12.1-27.2-19.3-42-27.2-10.5-5.6-19.4-13.2-28-21.2-2.1-2-6.1-2.7-5.7-6.9 2.4-3.4 6.3-2.6 9.5-3 4.4-.7 8.8-1.3 13.1-2.7 2.5-.8 3.8-1.6 1.6-4.4-4.4-5.6-8.7-11.3-12.6-17.3-1.9-2.9-4-3.6-7.1-2-3.7 1.8-8.8 1.2-10.6 6.3-.4 1-1.8 1.2-2.6.5-5.1-4.2-10.8-1.2-16.6-1.9.8 5.7 6.2 9.1 6.1 14.7-.9 1.3-2.1 2.2-3.8 2.3-3.5-2.8-3.6-7.3-5.8-10.8-1.5-2.5-1.9-6.1-5.3-6.7-4.2-.8-8.6-.8-12.8.1-2 .4-2.2 2.7-3 4.3-1.5 3.3-.9 7.3-3.9 10-2.3-.2-1.2-2.8-2.6-3.8-1.9-.1-2.9 3.6-5.4 1.4-.4-3.9 1.8-7 3.1-10.3 1-2.7.5-3.9-2.5-4.3-4.1-.5-8.2-1-12.3-1.8-3.2-.7-4.9.8-6 3.7-1.4 4.1-2.8 8.2-4 12.3-.5 1.7-.7 4.2-3.6 3.8-2.5-2.1-5.2-2.2-8.4-2-11.5.7-22.7 3.5-34.2 3.9-3.6.1-6.6-.2-8.6-3.6-1.2-6.3.7-12.2 2.6-18.2 2.2-6.1 3.4-12.5 5.8-18.5.9-2.4 1.4-5.2 3.7-6.9 2.9.1 3.9-2 4.9-4.1 5.4-11.5 13.5-20.3 24.6-26.6 3.4-1.9 6.1-4.4 7.6-8.2 1.6-4.1 4.8-6.7 8.9-8.1 5.2-1.9 10.6-2.9 16.1-3 3.4 0 6-.4 5.3-4.8-.1-.7.5-1.2 1.3-.9 19.8 9.1 37 22 53.3 36.3 16.5 14.5 29.7 31.7 40.6 50.7-.1 1.6.8 3.3-.4 4.9-3.2.3-4-2.5-5.2-4.4-3.1-4.6-5.7-9.4-8.9-13.9-.9-1.3-1.2-3.9-3.7-3.2-1.8.5-3.7 6.1-2.9 7.8.4.9 1.1 1.7 1.7 2.5 3.7 5.4 7.7 10.5 11.6 15.6.9 1.2 1.9 3.1 3.9 2.5 1.6-.5 1.6-2.3 2-3.8.2-.8.4-1.6 1-2.2 1-.4 1.6.2 2 .9 7.2 12.5 16.9 23.1 25.2 34.7 3.4 4.8 6.3 9.8 8.9 15 .9 1.6 1.5 3.3 3.2 4.3z"/>
|
||||||
|
<path d="M1561.1 1187c.6-.2 1.3-.3 1.8-.7 1.5-1 1.6-4.5 4-3.3 2.1 1 .7 3.9 1 6 1.5 2.1.4 4.2.2 6.2-.6 4.6-.2 5.2 4.6 5.2 6.8.1 13.6.1 20.4 0 6.4-.1 6.6-.4 6.2-6.7-.1-.7.2-1.3.6-1.8.6-1.3 1.5-2 2.9-2 2.1.5 2.8 2.3 3.6 3.9 1.5 3.6 4.2 4.8 7.9 4.7 2.9-.1 6-.9 8.6 1.3 2.3 4.1 6.4 6.3 9.6 9.4 10.3 10 22.8 16.8 35.3 23.7 6.3 3.5 13.2 6.2 18.9 10.9 3.8 3.2 7.6 6.4 11.3 9.7 1.5 1.4 2.9 2.8 5.2 2.3 2.5 7.4-3.7 15-11.1 18.2-7.2 3.2-14.8 4.8-22.7 4.9-11.5.2-22.9 0-34.3-1.2-16.8-1.8-32-8.6-47.3-15.1-5.8-2.5-11.6-5.1-17.5-7.4-20.6-8.3-40.1-18.7-59.7-29-7.8-4.1-16-7.5-23.5-12.2-1.9-1.2-4.5.4-5.8-2 0-6.8.1-13.6 1.3-20.3.3-1.5.1-3.5 2.4-3.8 2.3 2.5 4.9 2.6 8.3 2.4 12.4-.6 24.5-3.2 36.8-4.4 3.3-.3 4.9 1.4 5.9 4.1.9 4.1 3.7 5.9 7.7 6.2 3.6.3 7.3 2.8 10.7 1.6 3.8-1.2 3-5.9 4.6-8.9.5-.8 1-1.6 2.1-1.9z" class="sts12"/>
|
||||||
|
<path d="M1564.8 1089.1c-.1 6.7-.1 6.6-8 7-5.4.3-10.8 1.3-15.9 3.5-3 1.3-5.6 3.5-6.4 6.6-1.1 4.4-4.1 6.9-7.5 8.7-11.7 6.3-19.9 15.6-25.3 27.6-.7 1.6-1.4 3.5-3.4 4.1-1.1.3-1.2-.8-1.4-1.6-.2-.2-.6-.5-.6-.8-.1-8.3-5.9-11-12.6-12.9-3.8-1.1-7.5-2.5-11.5-2.9-5.1-.6-8.6 1.4-10.8 6-2.9 6-4.9 12.3-7.1 18.6-.8 2.3-1.2 4.9-3.3 6.6-1.7.9-3.6 1-5.3.6-12.7-3-25.4-6-37.4-11.3-.8-.6-1.1-1.6-1.4-2.5-1.8-4.7-2.9-4.8-6.7-1.1-3.8 1-7.2-.2-10.4-1.9-.7-.4-1.3-1.2-2-1.4-7-1.9-13.8-3.8-20.1-8.1-3.9-2.7-11.9 1.3-14.3 5.2-3.1 1.1-5.4-.4-7.8-2.1-3.7-2.5-7.1-5.4-12.2-4.3-2.2.5-3.9-1.4-5.2-3.3-3.7-5.4-4.3-5.6-10.4-3.8-3.7 1.1-5.8-.8-6.7-4.1-.7-2.4-1.7-4.3-4-5.4-1.3-.6-2.6-.9-3.5.5-1.3 1.8-2.5 3.7-5.2 2.5-2.6-1.2-4.3-3-4.5-6.1-.1-2-.4-4-2.3-5.2-1.9-1.2-3.6-1.9-4.4 1.2-.7 2.7-2.4 4.5-5.4 3.9-3.3-.7-4.4-3.2-4.5-6.3-.1-1.5.5-3 .2-4.5-.4-2-1.9-3.2-3.8-3.6-2.3-.5-2.1 1.5-2.6 2.8-.6 1.6-1.2 3.1-2.8 3.9-4.8-1.1-7-4.2-6.5-9.1.2-2.3.1-4.4-2.8-4.9-3-1-3.8.8-4.3 3.2-.6 2.9-1.2 6.2-5.4 5.5-3.5-.6-5.4-3.9-5-8 .1-.8.3-1.6.5-2.4 1.1-5.7-1.2-7.8-7.1-6.5-1.8.4-3.5 0-3.5-2.1-.1-1.8-1.6-1.2-2.3-1.9-2.8-3.4-7.4-4.3-10.3-7.7-.4-5.5.5-10.6 4.3-14.8 19.4 9.9 40.6 15.3 60.9 22.8 2.5.9 5.2 1.4 6.4 4.2 1.2 3.7 3.1 1.2 4.8.4 5.1-.4 9.7.6 12.9 4.9 1.4 3.8 4.7 4.7 10 2.8 7.3-.5 14.6-.6 21.5 2.5 1.9.8 3.9.7 5.9.7 2.5.1 5 .5 6.2 3.2-.7 2.8-3.7 3.1-5.4 4.7-1.2 1.2-2.4 2.4-.2 3.4 4.9 2.3 10.1 3.6 15.3 5-1.1-3.3-4.3-2.9-6.5-4.3-1.3-.8-3.6-.9-3.4-3 .1-1.9 2-2.6 3.6-3 3.7-.8 6.8-3.6 10.9-3 4.5-.4 8.9-.7 13.2 1.4 1.8.9 3.3 1.6 3.4 3.8-.2 4-2.4 7.4-3.5 11.2-.6 2.1-1 3.8 1.5 4.9 4.8 2.1 10.1.7 15.1 2 1.9.5 3.9.5 5.6 1.8 1.3.8.9 2.8 2.3 4 2.2-3.2 4.4-6.2 8.8-4.7 7.5-2.2 14.9-4.3 22.9-4 4.8.1 9.5-1.3 13.7-4 6.8-4.2 14.1-5.1 22-4.2 11.3 1.2 22.1-.8 31.7-7.5 2.9-2 3.1-4.2.8-6.6-2.5-2.7-5.1-5.2-7.8-7.7-3.2-2.8-5.5-6.3-5.2-10.8.2-2.8-1.1-4.8-2.7-6.7-1.8-3.3-3.2-6.8-4.8-10.2-.6-1.2-2-2.8.5-3.8 25 9.1 50 18.3 74.2 29.4 1.3.9 2.8 2 4.3 3z" class="sts13"/>
|
||||||
|
<path d="M489 725v-1c2.1-1.4 4.2-.3 6.2.2 8.6 2.3 17 5.5 25.8 7.5 3.3.8 5.1 2.9 5.2 6.3.1 1.3.1 2.7.7 3.9 5.4 12.7 16.2 20.8 25.7 29.9 5.5 5.2 12 9.5 17.9 14.3 1.1.9 2.8 1.9 2.4 3.5-.4 1.8-2.6 1-3.8 1.6-4.2 2.1-7.5.8-10.6-2.4-1.7-1.7-3.7-2.7-6.3-2-1.7.5-3.3-.1-4.8-1-2.1-1.2-3 .1-3.7 1.8-2 3.3-5.4 2.6-8.4 2.9-7.3.2-14.6-.4-21.7-2.5-17-.4-33.9-.7-50.9-1.4-13.6-.5-27.3-.2-40.9-.8-26.7-1.2-53.5-1.2-80.2-2.2-15.3-.6-30.6.4-45.8-1.6-9.6-1.2-18.1-5.2-26.6-9.5-1.3-.7-2.6-1.8-2.2-3.6.4-1.8 2.1-1.9 3.6-2.1 8.4-1.2 16.8-2.3 25.3-1.8 8.7.6 17.1-1.1 25.7-1.5 6.1-.3 12.2-.8 18.3-1.3 21.3-1.8 42.7-2.9 64-4.3 18.7-1.3 37.4-2.3 56-4.2 5.7-.6 11.6.7 17-1.9 1.9-5.3 2.2-5.3 6.8-2.4 5.9 3.7 13 5 19 8.6 2.1 1.3 4.5 2.2 6.7 3.5-8.6-5-16.6-10.9-24.7-16.7-6.4-4.6-6.6-10.2-1.1-16 1.8-1.5 3.6-2.6 5.4-3.8z" class="sts14"/>
|
||||||
|
<path fill="#cbcbcb" d="M459 1085c1.9-.3 2.9 2.3 5 1.6 1.6-.6 4.3-1.4 4.1 1.3-.2 2.3-1 5.5-4.2 6.1-1.6.3-3.3-.2-4.9-.4-4.1-.6-5.4.7-4 4.4.8 2 1.8 3.9-1.6 4.3-.8.1-1 .6-1 1.4.3 5-3.2 6.1-6.8 5.2-3.3-.8-3.4 1-4.4 2.9-2.2 4.1-5.6 7.5-10.3 8.2-7.6 1.1-14.3 5.1-21.9 5.9.1 1.8 1.4 2.1 2.1 2 16-.2 32-.2 48-.9 16.4-.7 32.8-1.7 49.1-3 20.6-1.7 41.1-4 61.7-5.8 13.2-1.2 26.4-1.9 39.6-3.1 12.3-1.1 24.6-2.7 37-3.8 9.2-.9 18.5-1.3 27.7-2.2 13-1.2 26-2.8 39-3.7 11.6-.8 23.1-2.1 34.6-3.2 13.8-1.4 27.7-1.9 41.5-3.7 2.9-.4 6.4-1.7 8.7 1.7-12.7 1.1-25.8.5-38 3.6-13.9 3.5-27.9 1.2-41.7 3.4-12.4 2-25 2.8-37.5 4-8.4.8-16.8 1.4-25.2 2.2-13.5 1.2-27 2.6-40.5 3.8-11.9 1.1-23.7 2.1-35.6 3.2-14.2 1.3-28.3 2.6-42.5 3.8-9.7.8-19.5 1.5-29.2 2.1-20.2 1.3-40.3 2.7-60.5 3.9-6 .4-11.9.4-17.9.9-15 1.2-30.2 1.2-45.2 2.3-21.6 1.7-43.4 2.4-65 4.7-8.5.9-17.2 1.8-25.9 1.2-1.5-.1-3 .3-4.2-.9-1.7-2.1-4.2-1-6.3-1.7-6.2-1.9-11.3-5.6-15.9-9.9-4-3.7-7.6-7.9-11.1-12-1-1.2-2.2-2.6-1.6-4.4 16.7-.6 33.3-2.2 49.9-4.7 18.3-2.7 36.7-4.9 55.1-7.3 13.6-1.8 27.1-3.9 40.7-5.6 10.1-1.3 20.3-2.2 30.5-3.4 9.4-1.5 19.1-2.6 28.6-4.4z"/>
|
||||||
|
<path fill="#555456" d="M526.1 742.9c-.5-.8-1.9-.9-1.5-2.3 1.8-5.8-1.4-7.2-6.4-8.4-9.8-2.3-19.4-5.5-29.1-8.3-2.8-1.7-3.9-4.4-4.5-7.4-2.1-10.2-4.3-20.4-6.4-30.6.6-2.5 2-.8 2.6-.2 12.4 9.4 25.8 17.2 38.5 26 12.8 8.8 26.1 16.6 39.8 23.9 4 2.1 7.7 4.6 11.8 6.5 1.5.7 2.6 1.2 3.5-1 1.2-2.9 2.8-1.5 4.1.1 1.7 2.2 2 5.3 4.7 6.9 2.6 1.5 5.4 2.6 8 4.2 2.4 1.4 4.7 2.9 7.8 4.1-14.2-10.6-28.2-20.8-41.4-32-18.2-15.4-36.2-30.8-52.2-48.6-6.6-7.3-14.9-13.3-22.2-20-5-4.6-10.2-9-14.1-14.7-5.1-19.9-8.7-40-13-60.1.9-1 1.4-.2 1.9.4 9.6 11.9 20.5 22.8 29.9 34.8 8.7 11.1 16.8 22.7 25.5 33.8 21.9 27.9 44.6 55.1 68.8 81 6.8 7.3 13.9 14.4 22.1 20.2 2.2 1.5 4.3 3.2 7 3.6 3.8 0 7.5.6 10.1 3.8 2 1.8 6.5 1.9 4.2 6.7-.5 1 .9 1.9 2 2.5 1.8 1 2 2.4 1.1 4.2-1 2.1-2.5 1-3.8.7-13.5-3-26.3-7.8-39.5-11.9-12-3.7-24.1-7.4-36.1-11.1-8.4-.6-16.2-2.7-23.2-6.8z"/>
|
||||||
|
<path fill="#c4c4c6" d="M621.1 758.9c-3.3-1.5-7-1.7-10.1-3.8-3.5-5.7-6.7-11.4-7.1-18.3-.1-2.5-1.4-4.9-3.3-6.6-8.8-7.7-11.7-18.6-15.7-28.8-1-2.5-1.8-4.9-4.2-6.6-4.1-2.9-4.7-7.9-6.3-12.2-6.2-16.4-16.2-30.8-23.7-46.4-7.4-15.2-16-29.9-21.7-45.9-2.7-7.6-7.2-14.5-10.5-21.8-7.7-16.5-18.6-31.4-24-49.1-2.6-8.5-5.5-17.1-11.6-24-1.1-1.2-.8-2.8-.9-4.3 7.2.3 11.3 4.9 14.4 10.7 8.8 16.6 17.7 33.2 26.5 49.8 23.5 44.4 47.1 88.8 70.5 133.2 1.4 2.7 2.5 2.8 4.8 1.2 7.4-5.3 15.2-10 21.7-16.5 3.8-3.8 8.2-4.2 12.9-3 5.1 1.3 10.2 2.9 15.2 4.7 6.4 2.2 7.5 4.6 4.2 10.4-9.6 17.1-19.5 34.1-29.4 51-1.5 2.6-1.7 4.6-.4 7.3 2.9 5.8 6.3 11.2 10.5 16.2-2.4 2.6 1.8 3.8 1.2 6.3-4.4-.3-8.1-4.2-13-3.5z"/>
|
||||||
|
<path d="M847 905c2.6.7 5.1 1.4 7.7 1.9.9.2 2.1.4 2.7-.7.6-1.1-.4-1.9-1.2-2.5-3.2-2.6-6.4-5.4-9.9-7.5-32.1-19.5-63.5-40.1-97.7-55.9-21.7-10-43.6-19.7-65.3-29.8-5.3-2.4-10.2-5.7-15.2-8.5-1-.6-2.2-1.2-1.6-2.6.6-1.4 1.8-.9 3-.8 13.2 1.8 25.9 5.7 38.7 9 28.4 7.3 56.6 15.5 85.3 21.5 35.7 7.4 71 16.4 105.8 27.1 20.1 6.2 40.3 12.3 60.6 18.1 3.5 1 7.2 3 11 .8 13.5 3.6 26.3 8.9 39.5 13.3 20.6 7 41 14.4 61.5 21.6 9.7 4.5 19.9 7.6 30.1 11-1.1 2.2-2.7 1.8-4.6 1.2-13-4-26.1-7.9-39.1-11.7-36.5-10.7-72.6-22.4-109.2-32.9-23.6-6.8-47.3-13.3-71.1-19-40.8-9.7-81-21.9-121.2-33.8-16.7-4.9-33.5-9.5-50.3-14.1-3.7-1-7.5-2-12.7-1.3 8.4 5.8 16.7 9.5 24.9 13.3 15.7 7.2 31.7 13.9 47.4 20.9 11.8 5.3 23.8 10.4 35.3 16.3 15.3 7.8 30.6 15.5 45.3 24.3 17 10.2 33.9 20.8 51.2 30.7 14.1 8 27.8 16.7 41.5 25.5-4.5-.6-8.8-2.3-13.4-2.2-1.5 1.4-3.1.7-4.7 0-23.7-10.1-47.4-20.4-71.5-29.5-.3-.1-.6-.3-.9-.5-1-1-2.3-1.5-1.9-3.2z" class="sts18"/>
|
||||||
|
<path fill="#bababb" d="M1318 1200.9c-8.3-.2-15.9-3.2-23.5-6-23.8-8.9-47.5-18.4-69.5-31.5-18-10.7-35.1-22.9-52.4-34.7-2.9-2-5.5-4.6-5.7-8.4-.3-5-3.4-6.8-7.8-7.2-5.2-3.6-8-9.1-11.4-14.2-.5-.7-.2-1.6.4-2.3 2.7-1 4.8.5 7.1 1.4 48 20.1 95.6 41.3 143.3 62.3 15.1 6.6 29.7 14.3 44.8 20.8 1.5.6 3.1 1.3 4 2.9-1.7 3.5-4.2 1.4-6.2.7-7.4-2.8-14.8-5.7-22.2-8.4-6-1.6-6-1.3-6.5 4.6-.9 7.6 1.7 14 5.6 20z"/>
|
||||||
|
<path fill="#9ea0a4" d="M1267.9 1104.9c.6-1.3 1.2-2.7 1.9-4 .8-1.4-1.4-5.1 2.7-4.1 3.5.8 7 2 6.3 6.8-.3 2.1-1.2 4.1 0 6.2 1 1.7 2.2 2.3 4.1 2.2 1.9-.1 2.4-1.6 2.9-3 .6-1.6-.7-5 2.5-4 2.8.9 6.9 1.4 6.6 6.1-.2 2.8.1 5.1 3.1 6.7 1.9 1 2.9 1.2 3.8-.9.6-1.4.4-4 2.8-3.2 2.8 1 6.3 1.9 7.3 5.4 1.8 6.3 1.7 6.4 7.8 3.4 1.9-.9 8.2 2.5 9.2 5.4 1.2 3.5 2.9 4.8 6.7 3.3 3-1.2 5.3 1.4 7.5 2.7 3.2 1.9 6.1 4.6 10 5.1 4-.1 6.7 3 10.1 4.3 1.9 1 3.7 2 5.6 3 15.7 8 30.7 17.2 46.2 25.7 9.5 5.2 19 10.4 28.3 15.8 1.6.9 3.3 1.7 4.3 3.3.3 9.8 6.4 14.4 15.1 16.9 6.4 1.9 12.3 5.8 19.4 5.2 1.4-2.5 3.1-1.5 4.9-.5 18.4 10.2 37.4 19.6 56.2 29 22.1 11.1 45.1 20.2 68.1 29.2 7.7 3 15.8 4.7 23.8 7.1-11.3-.1-22.3-2.5-33.3-4.8-16-3.5-31.9-7.3-47.7-11.9-.8-.2-1.5-.7-2.2-1-4.2-2.8-9.2-3.6-13.8-5.2-12.9-4.6-25-10.9-37.2-17-13.9-6.9-27.5-14.2-41.3-21.2-19.5-9.8-38.7-20.2-58.2-29.8-1.8-.9-4.3-1.3-4.4-4.1 3-2.1 6.1-.9 9.1-.1 4.1 1.2 8.1 3 12.7 3.1-4.9-4-10.7-6.8-16.3-9.6-24.9-12.8-49.7-25.6-74.8-37.8-19.6-9.5-39.1-19.1-58.8-28.6-1.6-.8-3.5-1.3-3.9-3.5.4-1.7 2-.9 2.9-1.6z"/>
|
||||||
|
<path fill="#c1c1c0" d="M826.9 1098.1c3.7-2.4 8.1-1.2 12-1.8 10-1.4 20.2-1.1 30.2-2.4 7.1-.9 13.8-.2 20.4 2.2 1.2.4 2.6.9 3.5 1.7 6.8 6.1 15.2 7.7 23.7 9.3 3 .6 6 2 8.8 3.3 16.6 7.6 33.2 15.2 47.6 26.7 4.1 3.3 8.7 6.3 12.1 10.2 4.4 5 11.2 4.6 15.9 8.5.3 0 .6.1.8.2.1 2.8-2 3-4 3.3-7.3.8-13.9-1.9-20.4-4.8-5.6-1.8-11.2-3.8-16.7-5.6-1.8-.6-3.8-1-4.9-2.9-6.9-3.7-14.7-4.9-22.1-6.9-24-6.5-48.2-11.9-71.7-20.1-13.1-4.7-25.5-10.5-35.2-20.9z"/>
|
||||||
|
<path d="M803.1 949.9c-1.1.1-2.2.2-4.5.5 4.3 3.3 8.5 4.8 12.5 6.5 15.4 6.2 30.8 12.1 44.9 21.1 9.2 5.9 15.1 14.2 19.3 24 1.5 3.3-1.2 4.5-3.4 5.5-4.8 2.2-10 1.6-15 2.6-13.2-5.7-26.5-11.3-39.7-17.2-13.8-6.1-27.6-12.4-40.5-20.2-8-4.8-15.8-9.9-18.8-19.5.7-5 4.2-6.8 8.6-7.5 5.2-.7 10.4-1.9 15.7-.3 1.5.5 3.3.1 4.9.1 3.9.5 7.9 1 11.8 1.8 1.6.4 3.8.2 4.2 2.6z" class="sts22"/>
|
||||||
|
<path fill="#a2a4a8" d="M787.1 947c-5.9.4-11.6-1.2-17.7-.3-5.2.7-8.6 2.6-11.5 6.5-36.3-14.9-71.6-31.9-105.1-52.6-37.8-23.3-72-51.2-105.1-80.6-1-.9-1.8-1.9-2.7-2.9 2.3-1.6 3.8.4 5.2 1.5 8.9 6.7 18.2 12.9 26.2 20.7 2.2 2.1 5.4 2.6 7.7 4.6 1.4 1.2 3 2.2 4.3 3.4 1.4 1.2 2.2 2.7 2.9 4.5.6 1.6 1.5-.9 2.8-.3 1.6.8 3.2 1.7 4.7 2.8 13.5 9.2 27.5 17.6 42 25.2 18.4 9.6 37.2 18.5 56.2 27 28 12.5 56.2 24.3 84.4 36.4 2.1.9 5.1.9 5.7 4.1z"/>
|
||||||
|
<path fill="#3f3b3b" d="M787.1 947c-20.8-9-41.6-17.8-62.3-26.9-38.7-17-77.7-33.6-113.6-56.1-5.5-3.5-10.9-7.1-16.3-10.7-1.2-.8-2.8-2.3-2.2 1 .1.5 0 1.1-.6.9-.8-.3-2-.9-2-1.3.9-6.4-4.8-7.7-8.3-9.7-5-2.9-8.6-7.2-13.3-10.3-8-5.3-14.7-12.4-23.4-16.8-9.4-8.7-18.8-17.3-28.2-26 2.2-1.9 2.9-2.1 5.5.1 11.4 9.7 23.9 18.1 35.6 27.4 3.7 2.9 7.6 5.3 11.7 8.3.4-4.5 0-8.6.1-12.7-.1-3.2-.3-6.5.9-9.6 1-3.3 1.6-6.8 3.2-9.9 2.3-4.3 4.6-5.2 9.3-3.8 8.1 2.5 10.4 5.2 9.9 11.7-1.1 3.8-1.9 7.7-3 11.5-1.3 4.4.1 9-1.5 13.4-1.5 8.9 2.2 14.5 10 19.1 30.5 18 62 33.8 94.2 48.3 36 16.2 72.3 31.6 108.5 47.4 5.5 2.4 11.1 4.5 16.5 7 1.7.8 4.7 1.1 3.1 4.4-5.9-1.3-11.8-2.7-17.7-4-5.2-1.8-10.8-1.4-16.1-2.7z"/>
|
||||||
|
<path fill="#b1b3b6" d="M468.9 641.2c6.5 5.9 12.9 11.8 19.4 17.8 5.4 5 10.5 10.1 16.6 14.2 3 2 4.3 5.8 6.9 8.4 26.1 25.7 53.9 49.4 83.7 70.7 2.3 1.7 5.2 2.9 5.9 6.5-7.7-5.6-19.1-5.5-23.3-16.3-.4-1.1-1-2.6-2.3-2.1-2.1.9.9 3-.9 4.6-6.7-2.4-12.8-6.5-19.2-9.9-12.2-6.5-24.2-13.4-35.5-21.3-13.6-9.5-28.1-17.6-41.1-28-.2-.1-.6.1-.9.2-2.4-11.1-4.7-22.1-7.1-33.2-.9-3.8-2.2-7.6-2.2-11.6z"/>
|
||||||
|
<path d="M1148 1096.9c2.5 6.2 7.9 10.4 11 16.2-7.9 4.7-16.5 4.8-25 3.2-16.7-3.2-32.1-10.3-47.9-16.3-8.3-3.2-16.6-6.6-25-9.9-2.2-.8-4.4-1.2-6.8-1.2-9.1.1-18.3 0-27.4 0-1.8 0-3.7-.6-5.1 1.2-2.6 1.2-5.2 2-7.8-.2 6.3-6 14.7-5.7 22.3-6.8 19.4-3 39-2.3 58.6-2.2 2.2 0 4.7 0 5.6-2.3 1.4-3.8 3.8-2.9 6.4-1.8 6.5 2.9 12.8 6.2 18.8 10.2 3.8 2.5 8.2 3.6 12.4 5 1.6.6 2.9.2 4-1.1 3.6.3 5.4 2.5 5.9 6z" class="sts26"/>
|
||||||
|
<path fill="#65686b" d="M1396.9 1183c16.1 8.3 32.1 16.7 48.2 25 21.6 11.1 43.3 22 64.9 33.1 12.7 6.5 26 11.9 39.3 17 1 .4 2.8 0 2.4 2.1-8-2.4-15.9-4.8-23.9-7.2-3.9.1-7.3-1.8-10.8-3.1-6.9-2.7-13.9-5.4-20.7-8.4-11.5-4.1-22.3-9.7-33-15.5-17.6-9.1-34.9-18.8-53-26.9-14.9-7.1-29.4-14.7-44.2-21.9-47.5-23.2-95.1-46.2-143.3-67.8-2.1-.9-4.4-1.6-5.7-3.8-.9-2.6-.9-5.3 0-7.9 1.6-2.1 3.4-.7 4.9 0 19.4 8.8 38.7 17.8 57.9 26.9 29.5 14 58.6 28.8 88.1 42.6 8.7 4.1 17 9.2 25.7 13.3 1.4.6 2.6 1.2 3.2 2.5z"/>
|
||||||
|
<path fill="#0f0e0d" d="M956 1145.9c7.3 2.4 14.5 4.9 21.8 7.3 1.3 3.6 3 6.9 4.5 10.4 2-.3 2.9-2.4 4.8-2.5 4.8-.1 8.6 2 11.6 5.7 2.2 2.7 4.2 5.5 6.8 8.2 1.4-2 .1-3.4-.1-4.9-.2-1.4-.4-2.8 1.2-3.4 1.2-.5 2.3.3 3 1.2 2.7 3.4 4.7 7.2 5.7 11.5.3 1.2.1 3 2 2.9 1.3 0 2-1.2 2.4-2.3 1.8-4.9.1-9.1-2.7-13-2.4-3.4-5.5-4.9-9.9-3.8-4.8 1.3-8.7-1.3-12.4-4.1.8-1.2 2.4-.2 3.3-1.1 1.5-.3 3.3 0 4-2.1 6.6-9 16.8-6.8 22.7-1.4 7 6.5 10.6 14.3 9.4 24-1.2 9.3-7.4 14.1-16.6 12.6-2.4-.4-3.1.5-4 2.4-4.2 8.4-12.5 10.6-20.5 5.7-7.1-4.3-10.5-11.2-12.7-19-10.2 9.4-20.2 8.2-27.8-3.3-3.7-5.5-5.7-11.6-4.9-18.4.6-5.6 3.2-10 8.4-12.6z"/>
|
||||||
|
<path fill="#444040" d="M1148 1096.9c-2.2-1.8-3.4-4.6-6-5.8-1.7-2-3.4-4-5.2-6.1 2.2-3.7 4.3-.1 6.5.1 22.6 9.8 45.3 19.3 67.8 29.3 29.8 13.2 59.6 26.6 89.2 40.2 27.7 12.7 55.1 26.1 82.9 38.5 15.5 7.7 31.3 14.7 47.1 21.8 2.1.9 5.1 1.2 4.8 4.7-21.8-8.2-43.6-16.6-65.1-25.6-7.6-3.6-15.6-6-23-10-6.8-2.9-13.7-5.6-20.4-8.8-25.2-12.2-50.9-23.5-76.7-34.7-32.1-13.9-64.2-27.8-96.2-41.6-1.9-.8-3.8-1.3-5.7-2z"/>
|
||||||
|
<path fill="#c3c3c3" d="M1276.1 735.9c-.7 3-2.9 2.1-4.8 1.7-10.8-2.5-21.5-5.2-32.3-7.5-3.6-.8-5.4-2.1-5.1-6.2.4-4.6.1-9.3 0-13.9.7-8.4 1.4-16.8 2.2-25.2.4-4 2.2-5.2 6.3-3.8 5.4 1.8 8.4 5.7 11.1 10.2 8.6 14.2 14.8 29.9 22.6 44.7z"/>
|
||||||
|
<path d="M1496.9 1240.2c10.3 4.3 20.7 8.5 31.1 12.8-1.6 4.7-1.7 9.7-1.9 14.6-.2 3.7-.8 5.1-5 3.8-9.7-3.2-19.6-6.1-29.4-9-1.9-.6-3.8-.9-5.8-1.4-2.6.8-5.6.1-7.9 2.2-1.4-1.1-1.2-3.3-2.9-4.1-.9-.6-2.1-.4-3-1-.2-2.8-2.8-2.7-4.4-3-4.2-.8-5.3-3-4.7-6.9.5-3.4.7-6.8 1.1-10.2 1.1-8.8 1.1-8.9 9.9-5.6 6 2.3 11.8 5 17.8 7.2 1.6.6 3.2 2 5.1.6z" class="sts31"/>
|
||||||
|
<path fill="#b7b8b8" d="M254.1 1110c7.8 9.9 15.6 19.7 27.6 24.9 2.7 1.2 5.9.7 8.4 2.5 0 0-.1.3-.2.4l-.9.3c-7.2.2-13.6-2.8-19.9-5.7-10.4-4.8-20.3-10.6-29.9-16.9-15.4-10.2-24.4-25.2-31.8-41.4-2.2-4.8-4.2-9.8-6.2-14.7-.5-1.2-1.7-2.6-.5-3.7 1.4-1.2 2.8.3 3.9 1.1 2.2 1.5 4.2 3.2 6.1 5.1 15.5 15 28.9 32 43.4 48.1z"/>
|
||||||
|
<path fill="#0e0d0d" d="M1496.2 1272.8c5.5 4.8 8 10.8 7.8 18.1-.2 6.9-4.3 12.3-11.1 14.3-2.3.7-3.9 1.4-5.4 3.6-3.5 5.1-8.8 6.9-14.8 6-12-1.8-21.1-16.3-17.6-28 1.2-4 3.4-7.5 7.7-9 .3-.2.7-.3.9-.2 4.2 2.9 8.1 5.4 13.7 1.9 2.4-1.5 5.8 1.7 8.1 3.9 2.7 2.6 4.6 5.8 4.9 9.7.7-4.5-1.2-8-4.5-10.9-1.8-1.6-3.2-3.3-2.9-5.9.4-4.8 4.9-6.9 10.7-4.9.8.4 1.5 1.2 2.5 1.4z"/>
|
||||||
|
<path fill="#aeb0b4" d="M570.8 815.3v14c-4.1-2.8-8.2-5.6-12.2-8.6-12.5-9.5-24.9-19.2-37.4-28.8-1.1-.9-2.4-3.2-4.4-.9-1.4-.6-2.3-1.8-3-3 7.5-.7 14.9 1.5 22.5 1 11.7 7 21.8 16.1 33.1 23.7.7.7 1.2 1.6 1.4 2.6z"/>
|
||||||
|
<path fill="#7d8289" d="M1346.9 1184c8.1 2.3 15.7 5.9 23 10-6.5-1.3-12.3-4.6-18.5-6.8-2.8-1-4.3-.6-6 1.8-3.5 4.8-7.4 9.2-13.5 11-10.3.5-14.2-3.4-14.4-14.2 0-3.6-.1-7.3 1.4-10.8 7.2 2.7 14.4 5.5 21.6 8.1 2.1.7 4 2.8 6.4.9z"/>
|
||||||
|
<path fill="#6d6d6f" d="M996.8 1130.8c-.4 1.2-.7 2.5-1.3 4.4-2.5-6.6-10.2-8.9-10.3-16.4-.7-.5-1.2-1.2-1.3-2-.8-7.9-.8-15.8 0-23.6.1-.8.6-1.5 1.3-2.1 3.1-1.9 6.5-.8 9.7-1.1 2.2-.2 2.1 1.5 2.2 3 0 3 .1 5.9.2 8.9 2.7 4 .6 8.5 1.6 12.7-.1 4.4-.3 8.8-.8 13.2-.5 1.1-.9 2-1.3 3z"/>
|
||||||
|
<path fill="#313335" d="M1496.2 1272.8c-3.2-1.3-6.4.5-9.7-.3-1.9-.5-1.7 1.7-2.1 2.7-.8 1.9-.9 3.7 1.2 5.2 4.3 3 6.9 7.1 6.2 12.7-.1.8-.2 1.7-1.2 2.1-1.6-.7-1.5-2.3-1.8-3.6-1.4-5.3-5.3-8.6-10-11-1.5-.8-2.8 0-3.6.9-3.8 4.1-6.6 1.9-9.5-1.1-.9-.9-2-1.7-3.1-2.5.2-.2.4-.5.7-.6 8.2-3.4 8.3-4.2 1.4-10.8-.2-.2-.4-.5.2.3 2.4-3 4.7-5.8 7-8.6 1-.2 1.9-1.5 2.9-.1.7 1.5-.4 2.5-1.3 3.4-1.5 1.8-2 3.7.2 5 2.7 1.6 2.5-1.5 3.6-2.7.2-.2.4-.5.8-.6 1-6.4 4.8-2.7 7.7-2.2-1.7 3.5-1.8 6.1 3 7.2 2.9.6 5.6 2 7.4 4.6z"/>
|
||||||
|
<path d="M1435.1 1219.6c-1-2.3-3.3-2.6-5.2-3.4-15.8-7.2-31.7-14.1-47.2-22.1 3.6-2.5 6.8 0 9.8 1.2 10.6 4.1 21 8.8 31.1 13-3.3-1.9-6.5-4.8-10.3-6.8-1.3-.7-2.7-1.4-2.3-3.4 6.7 2.2 12.6 5.8 18.8 9 11.5 5.8 22.9 11.9 34.4 17.9-2.6 2.1-5 .2-7.4-.5-3-.8-5.8-1.9-8.6-3.3-.7.1-.4 1.3-.3.6 0-.2.1-.4.3-.3 3.5 1.7 7.9 2 10 6.1 0 .1-.1.3-.2.4-.2.2-.5.2-.8 0-7.6-2.7-15.3-4.5-22.1-8.4z" class="sts31"/>
|
||||||
|
<path fill="#6b6d71" d="M489 725c-1.6 1.7-3.2 3.3-4.7 5.1-5.1 5.8-4.3 10 2.4 14.7 8.9 6.1 17.7 12.2 26.4 18.8-4.1-1.7-8.5-2.9-12.3-5.2-6.4-3.9-14.2-4.6-20.2-9.6-2.5-2.1-.6 3.9-3.5 3-9.9-13.9-6.7-22.5 9.9-26.7.7 0 1.4 0 2-.1z"/>
|
||||||
|
<path fill="#37383a" d="M998 1128c-2-4.3-1.2-8.7 0-13-.4-1.8.4-3.2 1.2-4.6 3.5-5.7 7.3-11.3 10.8-17 .7-1.1 1.5-2.2 2.9-2.4.3-.3.7-.6 1-.9 2.6.1 5.2.1 7.8.2-7.8 12.5-15.8 25.1-23.7 37.7z"/>
|
||||||
|
<path d="M1697 1236.9c-1.9 1.9-2.4-.3-2.8-1.2-8.1-17.3-21.3-31-32.1-46.5-1.6-2.3-2.7-4.9-4.1-7.3-.3-.2-.4-.3-.3-.6 0-.2.1-.3.2-.3.3-1.7-.5-3.5.8-5 11.9 18.1 25.1 35.4 35.6 54.5 1.1 2 1.8 4.3 2.7 6.4z" class="sts12"/>
|
||||||
|
<path fill="#494a4c" d="M1319 1175c1 1.5.7 3 .4 4.7-.7 3.9-.8 7.9.3 11.8 1.8 6.2 3.8 7.6 10.6 7.6.6 0 1.1.6 1.7.8-4.5 2.1-9.2 2.3-13.9 1-6.6-5.3-9.7-17.7-6.6-25.9.5-1.4 1-2.4 2.8-1.5 1.4.7 3.1 1 4.7 1.5z"/>
|
||||||
|
<path d="M1473.9 1053.1c-1.5 2.7-4 1.9-6.2 1.7-9.5-1.1-18.1-5.3-26.6-9.2-8.1-3.8-16.1-7.9-24.6-10.9-2.6-.9-5.5-1.8-6.5-4.9 10.5 3.2 20.8 6.8 31 11.1 8 4 16 8 25.1 9l7.8 2.4c.4.2.5.3.4.6-.1.1-.2.2-.4.2z" class="sts18"/>
|
||||||
|
<path d="M1456.9 1228c-1.5-4.1-6.6-2.6-8.7-5.8-.4-.6-1.5-.7-1.4-2.3 6 1 11.3 4.7 17.3 5 10 4.9 19.9 9.8 29.9 14.6.9.4 1.9.5 2.9.7-.7 2.9-2.5 1.4-3.9.9-7.6-2.8-15.3-5.4-22.7-8.6-4-1.7-5.9-1.8-5.4 3.2.1.7-.5 1.5-.8 2.2 1.4-6-2.3-8.4-7.2-9.9z" class="sts41"/>
|
||||||
|
<path fill="#cecdcd" d="M1473.9 1053.1c0-.3-.1-.6-.1-.9 5.4-1.8 8.8 1.3 12.2 4.7.1 4.9 3.8 8.5 4.9 13-1.7 1.5-3.3 1.4-4.9 0-6.1-1.4-8.8-5.6-9.9-11.4-.3-1.9-.6-3.9-2.2-5.4z"/>
|
||||||
|
<path d="M1466 1049.8c-1.7 2.2-3.6.5-5.4.3-6-.8-10.9-4.6-16.6-6.2-1.4-.4-2.5-1.6-3-3.1 8.5 2.5 16.9 5.5 25 9z" class="sts13"/>
|
||||||
|
<path d="M1700 1244.8c-2.9-.8-3.3-2-1.8-5 1 1.5 1.6 3.2 1.8 5z" class="sts12"/>
|
||||||
|
<path d="M820.9 953.9c-.1-3.1-3-2.8-4.7-3.6-37.3-16.3-74.8-32.2-112.1-48.7-36.2-16-71.9-33.1-105.9-53.5-8.2-4.9-12.3-10.5-10.8-19.9 1.1-2.7 2.7-1.1 4-.3 7.1 4.3 14 9 21.5 12.6 1 .5 2.2 1.2 2.5 2.3.9 2.8 2.2 4.5 5.4 2.8.5-.3 1.3.2 1.9.5 13.8 9 29.5 13.9 43.8 21.9 6.5 3.6 14 6 20.8 9.3 14.7 7.3 30 13.4 45.2 19.5 29.1 11.8 57.6 25.2 87.2 35.6 3 1 5.9 2.2 8.7 3.7 7.6 3.9 15.5 6.9 23.4 10 14.2 5.6 28.2 11.8 42.3 17.7 2 .8 4.7 1 4.9 4.1-4.6.5-8.7-2.1-13.1-2.6-1.2-.1-2.4-.8-3.2.2-.8 1 .3 1.8 1 2.5 1.9 2.2.8 2.7-1.5 2.9-2.7.2-5.3-.6-7.8-1.5-17.6-5.8-35.5-11-53.5-15.5z" class="sts22"/>
|
||||||
|
<path d="M1085 1047.1c-17.6-7.8-35.2-15.6-52.9-23.2-33.6-14.4-67.2-28.6-100.8-42.8-1.2-.5-2.3-1.3-3.4-2 3.1-2.7 6.4-1.1 9.4-.2 3.8 1.1 5.6 0 6.3-3.6.7-.7 1.6-.7 2.3-.3 3.1 2.2 5 1.4 6.3-2.1.6-1.5 2-2.9 4-2.1 2.1.8 3.3 2.6 2.6 4.8-.6 2-.8 3.5 1.1 4.8 2 1.4 3.8 2.2 5.1-.9.8-2 2.1-4.2 4.8-3.4 2.8.9 3.4 3.4 3.2 6.1-.1 1.2-.4 2.3.1 3.5.4 1 1.2 1.6 2.2 1.9 1.2.3 1.9-.4 2.3-1.4 1.1-2.6 2.2-5.1 5.8-4.1 3.2.9 2.8 3.7 2.9 6.2.2 3.7-1.9 5-5.1 5.1-.1 0-.2.2-.2.4 0 .3.2.8.5.7 6.9-2 18.9 2 23.3 8 1.5 2.1 2.8 3.2 5.2 1.6 1-.7 2.3-.5 3.4.1 6.5 3.7 14.2 5 19.7 10.5 1 1 2.2 1.4 3.7 1.2 2.1-.2 4.3.2 5.7 1.4 5.8 5.1 13.6 5.7 20.2 9.2 5.3 2.8 11.2 5 16.9 7 8.5 3.1 16.3 7.6 24.6 10.9 1.9.8 4.1 1.6 4.6 4.2-.3 2.8.1 5.7-1.2 8.3-1.6 1.5-3.1.4-4.5-.3-6.2-3.2-12.5-5.7-18.1-9.5z" class="sts43"/>
|
||||||
|
<path fill="#7e8082" d="M944 975c0 1.3.1 2.7 0 4-.2 2.3-1.3 3.2-3.7 2.2-4-1.6-8.1-2.6-12.5-2.1-8.8-2.5-17-6.7-25.6-10-1.1-.4-2.2-.8-3.2-1.1-9.4-5.4-19.6-8.8-29.5-13-12.7-5.4-25.4-10.6-38.1-15.9-1.2-.5-2.3-1.3-3.4-2-.3-1.5.9-1.9 1.7-1.5 4.7 2.3 5.2-.6 5.4-4.1 0-.5.3-.9.6-1.3 1.1-1 2.2-.3 3.1.2 2.5 1.5 4.6 1 6.5-1 3-.8 4 1.2 5.2 3.4 1.7 3 3.5 5.3 7.4 2.2 2.7-2.2 4.9-.8 6.2 2.3 2.3 5.5 2.4 5.6 7.6 2.7 2.8-1.5 4.8-.4 5.2 2.3.7 4 3.2 5.5 6.5 6.7 4.4 1.6 8.6 3.7 12.9 5.3 1.5.6 2.8 1.1 3.1-1.4.2-1.9 1.7-2.9 3.6-2.5 1.9.3 3 1.8 2.9 3.6-.1 4.5 2.6 6.1 6.3 7 1.8.4 3.5 1 5.1 2 3.2 1.9 6 3.3 8.6-1.3 1.4-2.5 4.7-1.2 4.8 1.2.3 7.2 4.7 9.2 10.6 10 1.4.1 2.4.8 2.7 2.1z"/>
|
||||||
|
<path fill="#fefefe" d="M985.1 1091.1c0 9.2 0 18.5.1 27.7-.2 1.1-.4 2.2-.6 3.6-16.2-12.9-34.1-22.3-52.8-30.3.4-1.3 1.2-1.1 1.8-1.1 15.5.6 30.9-1.2 46.4-1 1.7.1 3.6-.6 5.1 1.1z"/>
|
||||||
|
<path d="M1085 1047.1c7.4 3.2 14.7 6.4 22.1 9.7 1.7-1 3.2 0 4.7.6 23.6 9.7 46.7 20.3 70 30.6 2.1.9 4.4 1.8 5.1 4.4.1 3.5-1.9 4.8-5 4.6-3.1-.2-6.4-.3-9.2-1.7-9.5-4.5-19.9-5.9-29.8-9.3-2.1.3-3.6-2.9-6-1.1-8.6-8.3-17-16.8-27.3-22.9-6.7-4-13.6-7.6-20.4-11.4-1.7-.8-3.3-1.8-4.2-3.5z" class="sts26"/>
|
||||||
|
<path fill="#fdfdfd" d="m1013 1090.9-15 24c-2.4-4.2-.5-8.7-.9-13 1.6-2.4.5-5.2.8-7.8.2-1.1 0-2.4.5-3.4.9-1.3 13-1.2 14.6.2z"/>
|
||||||
|
<path d="M1125.1 930c-6.8-.5-13.2-2.7-19.5-5.3-1.3-.5-2.2-1.5-2.5-2.9 7.2 2.8 15.1 4.2 22 8.2z" class="sts18"/>
|
||||||
|
<path d="M1292 1085c-.1-2.4-1.9-2.8-3.7-3.4-15.4-5.3-30.8-10.4-46-16.2-5.7-2.2-12.7-2.4-16.4-8.6-2-3.1.3-5.8 1.1-8.5 1.8-6.4 1.3-8.1-4.8-10.9-3.3-1.5-6.7-2.8-10.2-4-4.4-1.5-8.1-1.1-10.9 3.1-.7 1.1-1.6 2.1-3.1 2.3-2.2 1.7-4.4 2.6-7.3 1.3-13.2-5.9-27-10.2-40.2-16.3-10.4-4.8-20.8-9.7-31.6-13.4-19.3-6.7-38-14.6-56.4-23.5-14.5-7-29.1-13.6-43-21.8-7.2-4.2-15.5-6.7-22.8-10.8-7.5-4.2-14.6-9-21.9-13.5-20.5-12.9-41.7-24.5-63.7-34.7-15-7-29.7-14.8-44.8-21.8-26.7-12.4-53.4-24.5-80.6-35.9-17.9-7.5-35.6-15.7-53.3-23.6-2.2-1-4.5-2-6.1-4.7 4.9-.8 9.2.8 13.3 1.9 30.8 8.7 61.3 18.6 91.9 28.1 39.6 12.4 79.2 24.8 119.2 35.8 26.6 7.2 52.9 15.3 79.2 23.4 21.9 6.7 44 12.7 66.1 18.7 29.1 8 58.1 16.6 86.8 25.9 19.6 6.4 39.4 12 58.8 18.8 31.8 11.1 63.5 22.5 95.1 34.3 18.5 6.9 36.9 14.1 54.4 23.5 8.8 4.7 18.1 9.5 24.8 16.4 12.5 12.9 28.7 18.5 43.8 26.4 10.9 5.8 21.8 11.5 32.6 17.3 1 .5 1.8 1.4 2.7 2.2 1 1 2.5 2 1.9 3.8-.7 1.9-2.6 2.7-4.4 2.7-6.8.2-13.6.5-20.3-1.1-12.3-2.8-24.9-2.9-37.4-4.8-8.7-1.3-17.4-1.9-26.1-3.5-5-.9-9.5-.8-13.7 2.4-4.8-2-8.1 2.5-12.4 2.6 1.7 1.3 4.6-.3 4.9 2.4.2 2.4 0 5.3-3.4 6-1.1-3.2-6.8-5.5-11.5-4.9-1.5.2-3.1 1.8-4.5-.1-.5-2.5 1.7-3.3 3-4.7 3.2-3.8 3.2-7.9-.2-10.4-4.7-3.5-9.8-3-12.7 1.4 1.9.3 2.9-1.5 4.4-1.9 2.7-.7 4.9-.1 6.8 1.9 1.9 2.1 2.2 4.4.9 6.9-2.1 4.2-11.3 8.2-16.2 6.9-.7-1.9-2.6-2.4-4.1-2.4-10.1-.2-19.6-5.5-29.9-3.6-.4-2.1 1.4-2.8 2.5-3.9 5.3-5.4 11.5-10 16.7-15.7-3.1 1.5-5.4 4.1-8.2 6.1-1.2.9-2.1 2.1-3.3 3-1.2 1.1-2.5 2.5-4.3 1.6-1.6-.8-1.5-2.5-1.6-3.9-.2-3.5-.2-7 0-10.5.2-3.4-1.3-5.1-4.4-6.2-6.9-2.3-13.5-5.2-20.3-7.1-.5.8-.4 1.1-.1 1.3 6.9 3.8 7 2.5 3.5 10.9-1.8 4.4-3.8 8.8-5.5 13.3-.8 2-1 3.8-3.1 3.7z" class="sts47"/>
|
||||||
|
<path d="M849 907c20 7.3 39.4 15.7 59 23.9 5.9 2.5 11.6 5.7 17.9 7.1l24 10.8c21.8 9.7 44.3 17.7 65.9 28 11.4 5.4 23.2 9.8 34.7 15 14 6.2 27.8 13.1 41.9 19.1 14.2 6 28.1 12.5 42.1 18.9 11.1 5.1 22.1 10.4 33.1 15.6 8.1 3.8 16.1 7.8 24.1 11.7.7 1 .8 2.2.5 3.3-1.6 5.4-1.1 11.3-3.3 16.6-1.9-.2-3.4-1.5-5.5-1.5-2.5 0-5-1.7-3.8-4.9 1.2-3.2-1-4.6-2.8-6.1-1.6-1.4-3.3-1.5-4.2 1-1 2.8-2.4 5.5-6.1 3.7-2.9-1.4-4.1-3.8-1.9-6.9.5-.7-.2-1.6.1-2.4 1-1.2 2.4-1.6 3.9-1.5.9.1 1.6-.2 1.8-1.2.1-.9-.2-1.6-1-2-.9-.4-1.5.2-2 .9-.6.9-1 2.1-2.3 2.4-3.2-.6-5.8-2.2-8.4-4-.3-.4-.6-.8-.7-1.2-.6-4.6-3-4.6-6.2-2.5-3-.2-5.6-1.4-8-3.1-1.6-3-3.9-3.9-7.1-2.9-3.7-1.1-6.3.2-7.9 4.1-.3.8-.8 1.4-1.7 1.5-1.8-2.1-4.4-3.2-6.4-5.1-.2-1-.3-2-.2-3 .8-4.8-.2-6.7-4.9-6.9-4.2-.2-7.3-1.4-9.9-4.8-1.5-1.9-3.8-2.7-6.3-1.8-3.4 1.2-5.8 0-7.4-3.1-1.8-3.4-4.4-4.2-7.8-2.5-3.2 1.6-6 .4-6.6-2.8-.6-3.1-2.5-4-4.8-5.1-18.1-8.6-36.3-16.6-54.6-24.7-30.7-13.6-61.8-26.5-92.9-39.3-23.1-9.5-46-19.4-69.2-28.7-11-4.4-21.9-8.8-32.7-13.7-1.3-1.3-3.2-1.5-4.8-2.2-1.6-.8-3.9-1.1-3.7-3.8 4.4-1.9 7.8 1.8 12 2.2.5-1.3-1.4-2.7 0-4 1.3-1.2 2.8-.7 4.3-.3 6.8 1.7 13.4 3.6 19.8 6.2z" class="sts48"/>
|
||||||
|
<path d="M1486 1069.9h4.9c2.7 2.2 4.6 4.3 3.3 8.4-.9 2.9 1.4 5.7 3.5 7.9 3 3.1 6.1 6.1 9.1 9.2 3.3 3.5 2.8 5.5-1.1 8.2-10.9 7.6-22.8 9.4-35.8 7.5-5.6-.8-11.3.3-16.2 3.5-4 2.6-8.2 4.6-12.9 4.7-9.3.2-18.2 1.9-27.1 4.4-.1-1.6-1.4-2.5-2-3.7-.7-1.6-1.5-3.3 1.1-4.2 10.3-2.2 20.9-2.2 31.2-5.1 9.6-2.7 19.8-3.8 30-2.7 10.7 1.2 20.6-1.8 30.1-6.3 2.8-1.3 2.4-3.7.4-5.8-2.9-3.2-6.1-6-9.9-8.3-4.2-2.6-8.3-5.4-12.4-8.2-2.5-1.8-4.8-3.7 0-5.8 1.7-.5 3-2 3.8-3.7z" class="sts18"/>
|
||||||
|
<path fill="#47494c" d="M1188.1 1077.1c1.4-6.6 1.5-13.5 3.8-20 1.2-6.3 4.4-12 6.2-18.1 5.8-8.8 7.2-9.3 17.1-5.8 3.1 1.1 6.2 2.4 9.2 3.9 5.4 2.6 6.3 4.8 4.5 10.3-1 3.2-2.5 6.2-2.8 9.5-2.3 4.8-3.7 9.7-4 15-.4 8.4-2 16.7-3.8 24.8 0 3.1 0 6.2-.1 9.3 1.6 2.2 1.5 4.4-.1 6.4s-3.8 1.7-6 1.1c-6.3-1.7-12.2-4.2-18-7.2-6-3.1-7.2-8.6-7.1-14.8-.7-2.9-.5-5.8-.4-8.7 0-1.9-.4-4.1 1.5-5.7z"/>
|
||||||
|
<path fill="#c7c9cb" d="M1412.8 1115.9c-1.1 1.4-1.6 2.9.3 4 1.9 1.1 1.8 2.4.7 3.9-2.2-1.2-4-1.2-5.1 1.6-.6 1.7-.8 4.4-3.8 3.3-2.7-1-.4-3.2-.8-4.7-.7-2.6-2.8-3.3-4.9-4.2-1.7-.8-3.8-1.1-5-2.8-1.6-2.8.5-4.5 2.3-5.7 5.8-3.8 11.9-7.3 17.8-11.1 1.6-1 3-1.5 4.5-.2 1.8 1.4 0 2.7-.5 3.9-1.9 3.9-3.7 8-5.5 12z"/>
|
||||||
|
<path fill="#caccce" d="M1383.9 1104c1.3-1.9 3.2-4.3 2.4-6.2-.9-2-3.5.7-5.5.1-.5-.1-.9-.3-1.4-.4 0-2.4 1.5-3.1 3.4-3.6 2.8-.9 5.8-1.4 8.4-3 2.1-1.3 3.5-.7 3.6 2-4.3 7.3-7.8 14.8-10.1 23 .1 2.1-.2 3.9-2.7 4.2-2.7-.6-3.5-1.9-2.3-4.6 1.6-3.8 2.9-7.7 4.2-11.5z"/>
|
||||||
|
<path d="m1382 1120.2 2.7-4.2c3.1.3 6.2.7 9.4 1 3.2.3 5.8 2 8.7 3 2 .7 2.9 2.1 1.2 4.1-5.1-1.1-10.3-2.3-15.6-2-2.3 0-4.6-.1-6.4-1.9z" class="sts18"/>
|
||||||
|
<path fill="#a1a4a7" d="M849 907c-7.8-1.9-15.5-3.8-23.3-5.7-.8 2.8 2.7 2.9 2.8 5.3-5.7.9-10.1-3.8-15.5-3.7-2 1.5-3.9.3-5.6-.5-17.3-7.3-34.7-14.5-52-21.8-18.7-7.9-37.3-15.8-56-23.8-26-11.2-51.8-22.6-77-35.4-7.6-3.9-14.8-8.4-22.3-12.2-3-1.5-6.4-2.9-8-6.3.3-5.9-7.9-12.9-13.5-11.5-2.1.6-3.2 2.4-3.9 4.3-1 3-1.8 6-2.7 9-1.3 1.4-2.8 1-4 .1-8.4-6.1-17.1-11.6-24.7-18.7.4-1.2 1.1-3.5 2.1-2.7 4.8 3.6 12.2-.2 16.1 5.7 1.4 2.1 3.1 3.3 5.5.9 1.5-1.5 3.5.6 5.5-.7-16.8-14.3-36-26.1-46.4-46.5 7.7 2.2 15.5 3.9 22.9 7.2 5.5 10.5 13.5 18.9 22.4 26.4 20.7 17.3 43.8 31.1 68.2 42.6 14.2 6.7 29.1 12.2 43.6 18.5 26.5 11.5 53.7 21.2 80.2 32.9 19.3 8.5 38.8 16.3 58.2 24.6 8.4 3.6 16.7 7.3 25.5 10 .6.7 1.2 1.4 1.9 2z"/>
|
||||||
|
<path fill="#909da9" d="M1622.9 1199.9c-1 0-2-.1-3 .1-8.7 1.7-14.7-1.1-17.1-10-2.7-5.1-5.5-10.1-8.5-15.6 5-.9 9.9.2 14.4-1.3 1-.3 2 .2 2.7.9 2.1 2.2 4.2 4.9 4.7-1 .1-1.1 1.6-1.1 2.4-1.4 1.9-.6 3.8-1.1 5.7-1.7 7.9-2.3 7.8-2.2 12.7 4.7 3.8 5.4 7.8 10.7 12 15.8 1.9 2.3 1.5 3-1.1 4-7.2 2.8-14.8 3.3-22.3 4.5-.8.3-1.8.2-2.6 1z"/>
|
||||||
|
<path fill="#8d9aa8" d="M1599.9 1192c3.2 9.8 3.2 9.9-7.6 9.9-7.6 0-15.2-.1-22.8 0-3.3.1-4.1-1.5-3.5-4.3.6-2.9 1.3-5.8 1.9-8.7 1.3-3.9 2.5-7.8 3.8-11.7.4-1.1.6-2.3 1.3-3.2 2.5-3 18-.9 19.7 2.6 2.5 5.2 4.9 10.3 7.2 15.4z"/>
|
||||||
|
<path fill="#9aa2aa" d="M1561.1 1187c-1.1 3.3-2.3 6.5-3.2 9.8-.8 2.9-2.5 3.6-5.2 2.9-3.8-1-7.6-2.1-11.5-2.7-4.3-.7-6.9-2.1-5.2-7 2.2-6.2 4.5-12.4 6.6-18.7.8-2.6 1.9-3.2 4.7-2.6 5.3 1.1 10.8 1.7 16.2 2.2 3.1.3 3.1 1.7 2.2 3.9-1.5 4.2-3.1 8.2-4.6 12.2z"/>
|
||||||
|
<path fill="#424549" d="M1450.9 1158.9c2.6-8.2 5.1-16.5 8.8-24.3 3.7-7.8 7.2-9.5 15.6-7.3 4.9 1.3 9.8 3 14.6 4.8 5 1.9 8.1 3.4 7 12.8-3.9 7.2-5.5 15.2-7.9 22.9-.2.8-.7 1.4-1 2.2-1.2 1-2.4 1.2-3.8.5-1.9-2.2-.6-4.5 0-6.6 1.8-6.1 3.9-12 5.9-18.1 1.7-5.4 1.2-6.5-4.1-8.8-4-1.7-8.1-3-12.4-4-5.2-1.2-7.2-.2-9.5 4.8-2.9 6.6-5.2 13.3-7.1 20.3-.7 2.6-1.1 5.2-2.1 7.7-.4.7-.9 1.2-1.7 1.4-1.7-.7-2.8-2-3.8-3.4-.5-1.9.3-3.4 1.5-4.9z"/>
|
||||||
|
<path fill="#272728" d="M1450.1 1164.1c2 0 2.7 1.2 2.9 2.9 1.8 1.8 1.2 4.1.8 6.1-1 6.2-1.5 12.5-1.3 18.9-.4 8.9.4 10.1 8.7 13.1 3.3 1.2 6.4 2.6 9.8 3.6 1.9.6 3.8 1.2 5.7-.1 1.7-4.5.4-9.2 1-13.8.9-7.3 2.6-14.4 3.9-21.6.3-1.5.8-2.8 2.4-3.3h3.9c-1.6 5.9-2.9 11.8-3 17.9-1.5 3.8-1.6 7.9-1.8 11.9-.3 4.4-.2 8.8-1.1 13.2-1.3 2.3-3.3 1.7-5.3 1.1-7.8-2.3-15.4-5.1-22.8-8.5-6.4-2.9-7-8.7-7.2-14.6-1.7-3.1-1.6-6.4-1.1-9.7.6-4.3 1.2-8.5 1.8-12.8.4-1.6.8-3.4 2.7-4.3z"/>
|
||||||
|
<path fill="#8d9ca9" d="M1657.9 1181c0 .3.1.6.2.9 0 .7-.1 1.3-.1 2-.1 2.6-.8 5.5-3.2 6.2-2.2.7-3.4-2.2-4.7-3.8-4.8-6.1-9.3-12.5-13.9-18.7-1-1.3-1.8-2.6-.4-3.9 2.2-2.1 3-5.1 5.2-7.7 6.6 7.9 10.4 17.4 16.9 25z"/>
|
||||||
|
<path fill="#bbbdbf" d="M1218.1 1096.8c-.3-8.5 1.1-16.8 3.8-24.8 3.9 1.4 7.9 2.7 9.9 6.9.3 2.6-1.2 4.8-1.3 7.3-.1 2 .4 3.9 2.5 4.3 2.3.4 2.4-1.8 2.8-3.3.3-1.5.7-2.9 1.2-4.3.5-4.2 3.3-2 4.7-1.3 2.1 1 5.8 1 4.7 5.1-.6 2.2-1.4 4.4-1.6 6.7-.3 3.5 2.2 5.3 5.1 5.7 2.8.4 2.9-2.2 3.3-4.4.5-3 .4-7.2 5.6-4.7 3.5 1.8 4.9 4.4 2.5 8-1.5 2.3-.8 4.1 1.1 5.6.9.7 2.1 1.1 2.5 2.3 6.4 4.5 13.9 6.8 20.8 10.6 13.7 7.4 28 13.5 42 20.5 16.5 8.3 33.1 16.3 49.5 24.7 14.1 7.1 27.8 14.8 41.7 22.3 1.2.6 3.5 1 2.6 2.9-.8 1.9-2.8.9-4.4.6-6.8-1.2-12.9-5.5-20.2-4.5-14.3-7.1-28.6-14.1-42.9-21.1-43.6-21.3-87.3-42.5-131.4-62.8-1.6-.7-3-1.5-4.5-2.3z"/>
|
||||||
|
<path fill="#67696c" d="M1450.1 1164.1c-2 8.9-3.3 17.8-3.3 27-26.3-14.7-52.5-29.4-78.8-44.1-.7-1.8.9-3 1.4-4.6.5-1.6 1-3.2-.6-4.5-.9-.8-2.1-1.3-3.2-.9-1.8.7-1.2 2.5-1.4 3.9-.2 1.1-.2 2.3-1.2 3.1-3.6-1.1-6.7-3.2-9.9-5.1-.4-4.3 1.7-6.5 5.8-5.8 3.4.5 6.3-2.9 9.9-.8 1.7 1 3.5 1.3 4.7 3.3 1.6 2.7 4.6 3.8 7.3 3.1 3.1-.8 5.9.4 7.4 1.8 3.5 3.2 7.7 3.4 11.7 4.6 3.2-.8 5.4 1.3 7.8 2.7 11.6 3.9 23.4 7.5 35.3 10.5 2.7.7 5.2.7 7.9.7-.3 1.7-.5 3.4-.8 5.1z"/>
|
||||||
|
<path fill="#cecfd1" d="M1292 1085c3.1-7.2 6.1-14.3 9.2-21.5.8-1.8.2-2.4-1.4-2.8-1.3-.4-2.4-1.2-3.7-1.5-1.8-.5-2.6-1.5-1.9-3.3.7-1.8 2-1.4 3.3-.9 7.8 2.8 15.6 5.7 23.4 8.5 2 .7 2 2.4 2 4.1 0 4.5 0 9 .1 13.5 0 .8.1 1.9.6 2.2 1.1.8 1.8-.4 2.4-1 3.1-2.8 6.2-5.5 9.3-8.3.9-.8 1.7-1.6 2.6-2.3 1.3-1 3-1.2 4.1.1 1.2 1.5-.7 2.3-1.5 3.1-6.8 6.1-13.7 12.1-20.6 18.1-6.1 3.9-9.5 2.9-9.9-2.9.8-2.3 2.5-1.7 4.1-1.3 3.2.8 4.6-1 4.1-3.8-.7-4.5-.9-9-.7-13.4.2-6.2-4.9-4.6-8-5.8-3.3-1.3-3.6 1.8-4.7 3.8-2.8 5-3.6 11.1-7.8 15.5-1.6 4-3.3 3.5-5-.1z"/>
|
||||||
|
<path d="M1297.2 1085.1c1.9-6.6 5.2-12.5 7.7-18.8 1-2.4 2.1-3.2 4.8-2.1 2.1.9 4.3 2.7 6.9.9 1.6-1.1 1.3.7 1.4 1.4.7 6.6 1.4 13.1 1.8 19.7.2 3.7-2.5 5.6-5.9 4.1-1.4-.6-2.5-1.5-3.9-.2-3.2-4.4-7.9-4.8-12.8-5z" class="sts47"/>
|
||||||
|
<path fill="#cbccce" d="M1353.9 1099c4.8-.7 9.2-2.5 13.2-5.2 2.5-1.7 4.1-4.3 1.9-7.2-2.2-2.9-5-3.8-8.1-1.1-1.4 1.2-2.9 3.7-4.8 1.1-1.8-2.6.8-3.7 2.6-4.8 4.1-2.6 11.9-1.3 14.6 2.2 3 4 1.8 8.7-3.3 12.9-.8.6-1.3 1.4-2 2.2-4.5 1.5-9 3-13.4 4.6v1.1c3.3 1.2 6.6 2.5 9.9 3.7 1.5.6 2.7 1.2 1.7 3.3-.8 1.8-1.9 2-3.5 1.4-4.8-1.7-9.8-3.3-14.6-5.1-3.4-1.3-3.1-3.6-.6-5.5 1.9-1.6 3.8-3.5 6.4-3.6z"/>
|
||||||
|
<path fill="#6d6863" d="M1237.1 1082.9c1.8 3-.3 5.6-.9 8.3-.2 1.2-1.8 1.7-3.3 1.2-2.5-.9-3.9-2.8-3.7-5.2.3-2.9.3-6 2.7-8.2 1.3.2 4.7-2.5 2.9 2.2-.5 1 1.3 1.3 2.3 1.7z"/>
|
||||||
|
<path d="M1407.7 1147.7c-3 .3-5.3-1.7-7.8-2.7-.1-2.9 1.3-4.4 4.2-3.9 3.8.6 4.3 3.4 3.6 6.6z" class="sts14"/>
|
||||||
|
<path d="M1265 1106c-2.6-.3-4-2.3-5.3-4.2-1.9-2.6 1-3.6 1.9-5.4 1.5-3-1.4-4.4-2.6-6.4 3.6.1 5 2.4 3.9 5.3-1.9 5.4.4 8 5.1 9.6-.7 1.3-1.9 1-3 1.1zm90.4 19.2c-.2 1-.7 1.6-1.7 1.1-1.9-1.1-4.9-1.1-5.5-3.6-.4-1.8 1.6-1.7 2.8-1.6 2.6.1 3.7 1.9 4.4 4.1zm-17.5-5.5c-1.9-.8-3.2-1.3-4.5-2-1-.6-3-.8-1.8-2.7 1-1.5 2.4-.6 3.5 0 1.5.9 2.7 1.9 2.8 4.7zm-17.5-7.4c-2-1.1-4-2.1-6.2-3.2 4.3-1.4 5.6-.7 6.2 3.2z" class="sts47"/>
|
||||||
|
<path fill="#5c5f62" d="M543.2 786.2c8.2 4.1 14.7 10.6 22.3 15.5 2 1.3 3.5 3.7 6.5 3.1-1.6 3.3-.6 7-1.2 10.4-10.4-7.5-20.8-15.1-31.2-22.6-1.3-1-2.7-1.9-3.3-3.6 2.6.1 5.7 1 6.9-2.8z"/>
|
||||||
|
<path d="M422.1 1098.3c5-1 8.2-3.7 12.5-3.4 1.9.1 3.6.5 5.2 1.4.8.5 2 .8 1.8 2-.2 1.1-1.3 1.6-2.3 1.5-5.5-.1-11 1.2-17.2-1.5z" class="sts6"/>
|
||||||
|
<path d="M1363 1144c0-1.2-.2-2.3 0-3.4.3-1.8-1.1-4.4 1.2-5.2 2.2-.8 4.4.5 6.3 1.8 2.3 1.6.4 3.6.3 5.4-.1 2-2.2 2.7-2.9 4.4-1.7-.9-3.6-1.4-4.9-3z" class="sts13"/>
|
||||||
|
<path fill="#64666b" d="M998 1158.1c-.6 1.1-1.8 1-2.8 1.2-2 3.1-5.8 1-8.2 2.7-2.3.8-3.5 2.9-5.3 5.4-1-4.4-2.3-7.9-4.4-11-.8-1.2-.1-2.2.5-3.2 6.7 1.9 12.8 6.2 20.2 4.9z"/>
|
||||||
|
<path fill="#bebfc2" d="M592 803c13.6 8.4 27.5 16 41.9 22.9 17.7 8.4 35.4 16.8 53.5 24.4 19.8 8.3 39.5 17.2 59.3 25.6 15.6 6.6 31.4 12.6 47 19.3 6.4 2.8 12.7 5.8 19.3 7.8 2.2 3.2 6.9 1.7 9 5-2.5 2.2-5.1 0-8.2.4 9.8 8.6 21.6 13.7 31.3 21.7-2.2 4-3.2 4-9.1-.2-2.3-1.3-5.3-.9-7.4-1.9-5.6-2.9-11.6-4.6-17.1-7.3-3-1.5-6.4-2.4-8.9-3.9-6-3.8-13.6-3.7-19-8.5-.9-.8-2-1.3-3.2-1.2-3.4.2-6.2-1.1-8.6-3.3-1.3-1.2-2.7-1.9-4.5-2-1.7 0-3.3-.6-4.8-1.4-17.6-9-36.5-15-54.4-23.1-26.9-12.1-54.4-22.7-80.5-36.5-12.1-6.4-23.8-13.4-35.5-20.5-2.3-1.4-4.6-3-3.3-6.3.8-3.7 1.4-7.5 3.2-11z"/>
|
||||||
|
<path fill="#686a6d" d="M588.9 814c-.3 2.7 1.5 3.7 3.4 4.9 26.8 16.6 54.7 31 83.8 43 16.6 6.9 32.8 14.6 49.5 21.1 6.4 2.5 12.9 5 19.1 7.7 5.3 2.3 11.6 3.1 16.3 7.3 1.8 1.6 4.6 3.3 7.8 2.1 1.7-.7 2.4 1 3.4 2.1 2.3 2.4 5 4.5 8.7 3 1.9-.8 2.6.2 3.5 1.6 2.1 3.2 5 4.8 8.8 3.5 1.8-.7 2.7 0 3.7 1.4 2.3 3.4 5.1 5.5 9.4 3.5 1.8-.8 2.7.1 3.5 1.7 2.2 4.2 5.4 6.1 10 3.8 2.3-1.1 2.4.4 3 1.8 1.7 3.8 5.6 4.9 9.5 3.5 3.2-1.1 2.2 2.6 3.6 3.7v3c0 6.5-.3 6.7-6 3.8-.9-.5-1.5-.4-2 .5-22.3-8.7-44.7-17.3-66.6-26.8-9.6-4.2-19.1-8.7-29.3-11.8-4.5-1.4-8.9-4.4-13.5-6.1-6.7-2.5-13.7-4.8-19.9-8-7.7-4-15.7-7-23.5-10.8-12.6-6.2-25.3-12.3-38.1-18.2-3.3-1.5-6.1-4.8-10.5-3.4-.8.3-1.1-1-1.6-1.6-2.6-3.9-2.8-3.7-6.5-1.2-2.1 1.4-3.2-.9-3.1-2.3.2-3.5-2.1-4.5-4.5-5.7-7.2-3.6-14-7.8-20.6-12.3-1-.7-1.8-1.6-3-.5 1.7-4.7-.1-9.7 1.7-14.3z"/>
|
||||||
|
<path fill="#b5b6ba" d="M574 804c.1-.3.1-.7.2-1 2.3-9.6 6.5-10.8 14.2-4.2 1.8 1.6 1.8 3.3 1.2 5.4-1 3.5-1.8 7-2.7 10.5-4.8 1.5-7.2-2.6-10.6-4.4-2.6-1.3-3.5-3.5-2.3-6.3z"/>
|
||||||
|
<path fill="#acaeb2" d="M585.8 826.2v12.9c-11.8-4.4-13.6-7.3-13.6-21.8.3-.7 1-1 1.5-.7 4.7 2.4 9.7 4.4 12.1 9.6z"/>
|
||||||
|
<path fill="#636466" d="M585.8 826.2c-4.2-3.5-8.3-7.1-13.6-8.9 1.9-4.3-.4-9.1 1.7-13.3-.3 2.5.8 4 2.9 5.2 3.3 1.9 6.1 4.6 9.9 5.4-1 3.9-1 7.7-.9 11.6z"/>
|
||||||
|
<path d="M1187.8 1092.2c.2 8.5 4.7 13.4 12.6 15.8 3.3 1 6.5 2.6 9.7 3.8 7.2 2.6 7.8 2.1 8-5.6 11.9 4.2 23.2 9.9 34.7 15.3 23.7 11.1 47.1 22.8 70.8 33.7 29.5 13.6 58.4 28.4 87.4 43 4.6 3.1 9.3 6.2 13.9 9.4 1.1.7 3.5 1 2.4 2.9-.8 1.4-2.4-.1-3.5-.5-12.3-5.1-24.3-11.1-37.1-15.1-1.3-.4-2.5-.8-3.9-.6-17.7-8.1-35.4-16.1-53.1-24.4-60.8-28.7-122.4-55.8-184.2-82.2-.9-.4-1.7-1-2.6-1.4 10.2 1.1 20.2 3.2 29.4 7.7 3.4 1.7 7.1 1.2 10.6 2 2.6.6 3.1-1.8 3.1-4 .7-.6 1.3-.6 1.8.2z" class="sts41"/>
|
||||||
|
<path fill="#2c2d2f" d="M987.1 1162c2.1-2.7 5.5-1.8 8.2-2.7 2.6 1.2 5.9.4 8 3.2.8 1 2.2.4 3.2-.3 3-2 5.7-.8 8.3.8 5.4 3.3 8.8 13 6.2 17.9-1 1.9-2.3 4.2-4.7 3.8-2-.3-1.9-2.9-2.2-4.6-.9-5.2-3.5-9.2-7.1-13.3-1.5 2.9.7 4.3.9 6.2.2 1.5.7 3.2-.9 4.1-1.5.8-2.3-.9-3.1-1.8-1.9-2.1-3.9-4.1-5.3-6.5-2.7-4.5-6.7-6.4-11.5-6.8z"/>
|
||||||
|
<path fill="#3a3c3e" d="M968 1171.6c.4 2.3-.8 4.4-3.1 5.8-2.5 1.4-4.9.5-6.9-1.1-4.1-3.3-6-7.8-5.9-13 0-2.4 1.2-4.6 3.4-5.7 2.3-1.2 4.6-.3 6.5 1.2 3.8 3.1 6.1 7.1 6 12.8z"/>
|
||||||
|
<path fill="#404244" d="M1001 1185.9c.5 2.8-.6 5.2-3.3 6.5-2.9 1.4-5.1-.4-7.1-2.2-3.6-3.1-5.6-7-5.6-11.8 0-2.7 1.1-5.1 3.6-6.1 2.4-.9 4.8-.4 6.9 1.6 3.4 3.3 5.9 6.9 5.5 12z"/>
|
||||||
|
<path fill="#fafafa" d="M1478.1 1263.1c-.2 2.1.7 4.7-2.5 5.6-3.1.9-3.1-2.2-4.5-3.5s-.8-2.6.5-3.8c1.2-1.1 2.2-2.3 3.3-3.5 4.6-.4 2.4 3.4 3.2 5.2z"/>
|
||||||
|
<path fill="#2f3031" d="M1478 1300.5c0 5.9-2.2 8.4-7.3 8.5-5.4.1-11.7-7.4-11.7-14 0-4.4 3.4-8.3 7.2-8 4.2.4 13 6.8 11.8 13.5z"/>
|
||||||
|
<path fill="#cdcecf" d="M845.2 930.1c-6.2-1.2-10.2-6.2-15.4-9.1-2.1-1.2-4.6-2.1-6.2-3.3-4-3.1-9-5.6-12.1-10.6 4.2-.9 7.3 1.2 10.6.9 24.9 10.1 49.9 19.9 74.6 30.5 18.9 8.1 38.2 15.3 57 23.6 28.1 12.3 56.7 23.4 84.4 36.8 11.9 5.8 24.2 10.9 36.3 16.4 1.6.7 4.4.9 2.3 4-1 1.5.6 2.3 1.8 2.9 1.2.5 2.1 1.1 3.5-.2 2.6-2.6 8.3-.8 9.2 2.9.7 2.9 3.5 4 4.9 3.1 4.9-3 7.5-.1 10 3.2 1.1 1.4 2.6 2.9 4 2.6 5.7-1.2 9.3 2.2 13.8 5.9-5.1-.4-3.9 3.3-4.7 5.7 1.2 2.4 2.8 4.4 5.8 4.7.3-.6.8-1.1 1-1.7 1.7-9.6 1.3-8.1 9.2-4.2 1.6 2.8 3.6 4.6 7 2.9 2.6 1 5.3 2 7.9 3 1.7 2.5 3.5 4.9 7.1 4 2.9.8 5.7 2 7.9 4.1.3.3.5.7.5 1.2.3 1.7 3.5 3.6-.9 4.9-1.6.5.5 2.4 1.5 3.4 1.3 1.3 2.8 1.9 4.2.2.3-.3.3-1 .6-1.3 1.2-1.6-.2-5.3 3.6-4.7 4.2.7 5.8 4.5 7.9 7.5.1.2 0 .8-.1.9-2.9.6-3.2 1.7-.8 3.6 2.4 1.9 4.2.9 6-2 .2 2.4.3 3.8.4 5.3-.1 1.9-.2 3.7-.3 5.6-1.5 1.9-3.1.5-4.4-.1-23.7-10.8-47.6-21.3-71.6-31.7-1.5-.7-3.1-1.2-3.7-3.1-9.4-4.9-18.9-9.6-28.9-13.1-3.1-1.1-5.8-4-8.8-4.4-7.9-.9-13.4-7.7-21.7-7.6-3 .1-4.1-4.6-7.6-5-1.7-.2-3.1-1.8-5.1-.4-1.6 1.1-2.8-.5-3.7-1.6-5.3-6.4-13.8-6.9-20.3-11.1-.2-.2-.8-.3-.9-.1-5.1 5.2-5.5-.3-8.2-2.9-4.4-4.3-10.8-5.6-16.5-7.9-1.5-.6-1.9.8-2.5 1.7-1.6 2.3-3.2 1.2-4.4-.3-.7-.8-1-2.3-.8-3.2.4-1.5 2-1 3-.6 1.9.7 3.6.8 3.4-1.7-.2-2.3 1.8-5.6-2.1-6.7-2.9-.8-3.3 1.3-3.7 3.3-.3 1.5-.3 3.9-2.7 3.2-2.2-.7-5.2-1-5.1-4.5.1-1.5.6-3 .5-4.4-.1-1.7-.9-3.6-2.8-3.6-1.4 0-2.8 1.2-2.9 2.9-.5 5.8-3.8 3.6-6.5 2.2-2.4-1.2-2.9-3.7-1.8-5.8.8-1.5.2-2.9-1-4-1.3-1.2-2.4-.8-3.2.6-.2.3-.4.5-.6.8-2.2 3.4-5.2 3.9-8.9 1.5-1.7-1.7-4-1.5-6.1-1.9-7-1.5-7.6-2-7.5-9.4 0-1.3-.7-1.8-1.6-2.2-1.4-.6-2.5.3-2.6 1.5-.6 6.2-4.3 3.8-7 2.3-2.5-1.4-5-2.7-7.7-3.3-4.2-1-7.6-2.4-6.6-7.9.3-1.6-.8-3-2.6-2.9-1.6.1-2.4 1.2-1.8 2.8 1.2 3.1-1.2 2.8-2.5 2.3-6.8-2.7-13.5-5.6-20.2-8.5-2.1-.9-1.7-3-1.8-4.8-.1-1.3-.6-2.3-1.8-2.7-1.5-.5-2.2.5-2.6 1.7-.7 2-2.1 2.5-3.9 1.7-2-.9-4.7-1.2-4.7-4.4 0-1.7 0-3.4-2.1-4-1.9-.5-2.3.9-3.3 2.2-1.8 2.3-7.5-.1-8.3-3.7-.8-2.9-1.5-4.5-4.3-3.9z"/>
|
||||||
|
<path fill="#757779" d="M1108 1047.8c25.9 11.5 51.8 23 77.8 34.4.6.3 1.3.3 1.9.4 0 3.2 0 6.3.1 9.5-.6-.1-1.2-.2-1.7-.4-10.8-5.8-22.2-10.3-33.4-15.3-15.1-6.8-30.4-13.2-45.6-19.8 0-2.8-.7-5.9.9-8.8z"/>
|
||||||
|
<path fill="#929497" d="M753.4 830.2c5.2-.6 9.4 1.2 13.7 2.4 32.3 9 64.1 19.7 95.9 30.2 29.2 9.7 58.5 18.8 87.6 28.6 42.2 14.2 84.2 28.9 126.4 43 10.4 3.5 20.5 7.7 31.2 10.2 9.5 2.3 19.2 3.3 28.8 4.9 13.9 2.3 27.3 6.8 40.8 10.8 15.1 4.4 29.8 10.1 44.8 14.7 16.3 5 32.2 11.1 48 17.5 10.5 4.2 21.2 8.2 31.2 14.1 8 4.7 16.6 8.7 25.3 12.3 5.7 2.3 11.8 5.3 17.4 8.9 8.8 5.7 18.9 8.8 28.4 13.1 23.2 10.5 46.7 20.1 70.2 29.7 11.4 4.7 22.8 9.4 33.6 15.3 2.5 1.3 4.8 2.9 7.1 4.6 1.2.9 2.4 2.1 1.7 3.8-.7 1.7-2.4 1.9-3.8 1.6-6-1.1-12.1-2.1-18-3.6-23.4-5.9-46.7-12.2-70.1-17.9-14.8-3.6-29.8-6.2-44.5-9.9-13.1-3.4-26.5-6-39.3-10.8-6.4-2.4-13.2-3.2-19.7-5.2-9.8-2.9-19.8-5.5-29.4-8.8-15.1-5.2-30.5-9.6-45.5-15-8.1-2.9-15.8-7.5-23.6-9.4-11.4-2.7-20.6-10.5-32.5-11.7-6.4-.6-11.4-6.5-17.8-8.5-6.1-1.9-11-5.9-16.4-9.2-7.1-4.5-14.8-8.1-22.4-11.8-27.4-13.3-56-23.4-84.4-34.2-22.3-8.5-44.7-17.1-66.9-26-38.7-15.5-77.6-30.6-115.8-47.1-23.6-10.2-47.4-20.1-71.1-30.2-3.6-1.6-7.4-3.1-10.9-6.4z"/>
|
||||||
|
<path fill="#595855" d="M1157.1 1054c-.9 2.9-2.7 1.4-4.4 1-2.8-.7-2.8-2.8-2.8-5 1.3-1.2 1.9-3.8 4.4-2.7 3.1 1.3 2.7 4.2 2.8 6.7z"/>
|
||||||
|
<path fill="#767473" d="M1142.1 1047c-.3 3.6-2.8 2.2-4.7 1.9-2.9-.5-2.8-2.6-2.3-4.8 2 0 .9-4 3.9-3 3 1.1 2.9 3.5 3.1 5.9z"/>
|
||||||
|
<path fill="#4e4b46" d="M1188 1064.5c-.3.9.2 3.5-1.3 2.7-1.9-1.1-5.8 0-5.7-3.8.1-1.9.8-4.4 3.2-4.3 3.1 0 4 2.4 3.8 5.4z"/>
|
||||||
|
<path fill="#585653" d="M1165.6 1059.3c-.2-.4-.3-.8-.5-1.2.3-.7.8-1.5.9-2.2.3-1.7 1.1-2.7 2.8-2.9 1.6-.2 2.5.7 3 2 .7 1.7 1.1 4.1-.2 5.1-1.8 1.5-3.8-1.2-6-.8z"/>
|
||||||
|
<path fill="#62605f" d="M1125 1050c-4.8 1.9-5.9-.6-5.8-4.7 2.6.7 6 .5 5.8 4.7z"/>
|
||||||
|
<path fill="#8d8f92" d="M1195.1 1059.1c1.2-7.3 4-14 6.9-20.8 1.2-2.9 3.5-4 6.5-3 4.6 1.5 9.2 3 13.6 4.9 3.3 1.4 4.6 3.7 3.2 7.6-2.7 7.3-4.9 14.8-7.2 22.2-11.7-1.8-14-2.9-23-10.9z"/>
|
||||||
|
<path fill="#b8babc" d="M1195.1 1059.1c3.6 1.5 8.2 1.8 9.2 6.9.3 1.3 1.9 1.4 3 1.1 4.3-1.4 7.5 1.1 10.8 3-1.7 8.2-2.4 16.4-3.3 24.7-.3.4-.7.9-1.2.8-7.9-2.7-16-5-22.4-10.7-.6-9 1.3-17.5 3.9-25.8z"/>
|
||||||
|
<path fill="#707275" d="M1191.2 1084.8c7.9 3.3 15.4 7.5 23.6 9.9l-.9 8.4c-.5.4-1.2.8-1.8.6-7.2-2.7-14.6-4.8-20.8-9.5-.1-3.1-.1-6.3-.1-9.4z"/>
|
||||||
|
<path fill="#b9bbbd" d="M1191.2 1094.2c6 2.4 11.9 4.9 17.9 7.3 1.5.6 3.1 1.1 4.7 1.6 1.3 2.1 2 4.6.3 6.4-1.5 1.6-3.8.1-5.6-.6-3.4-1.2-6.7-2.8-10.2-3.9-5.1-1.7-7.6-5.2-7.1-10.8z"/>
|
||||||
|
<path fill="#888b8f" d="M1410.4 1107.1c-.6 9.5-3.7 11.5-11.1 7.1 3.3-3.1 6.9-5.4 11.1-7.1z"/>
|
||||||
|
<path fill="#797c80" d="M1484 1170c-.4 1-.8 2-1.1 2.9-2.1 1.9-4.7 1.7-7.1 1.2-6.2-1.2-12.2-3.2-18.2-5.1-1.6-.5-3-1.4-3.6-3.2 1.7-10.4 5.2-20.2 9.3-29.9 2-4.6 5.1-6 10-4.5 5.4 1.7 10.8 3.2 16 5.6 3.1 1.4 4 3.3 2.8 6.8-2.8 8.7-6.3 17.2-8.1 26.2z"/>
|
||||||
|
<path fill="#5f6266" d="M1454.1 1165.9c9.3 3.7 18.6 7.4 28.8 7 0 6.3-2.6 12.2-3.2 18.5-.5 5.5-.8 10.9-.8 16.3 0 1.2.2 2.4-1 3.1-4.2-5.2-10.4-7.4-15.9-10.5-3.8-2.2-8.2-3.6-10.9-7.3-.8-8.8 1.1-17.4 2-26 .2-.4.6-.7 1-1.1z"/>
|
||||||
|
<path fill="#8c8f94" d="M1451 1193.1c7.9 4.3 15.8 8.6 23.7 12.8 2 1.1 3.6 2.4 3.2 5-9.1-.1-17-4.1-24.6-8.3-3.6-1.9-2.4-6.1-2.3-9.5z"/>
|
||||||
|
<path d="M1398 1152.2c.3-1.6-.7-4.4 2.1-3.9 2.9.4 6.6.9 6.8 5.1.1 2.5-.5 5.6-3.7 5.4-3.4-.4-5.7-2.6-5.2-6.6z" class="sts13"/>
|
||||||
|
<path d="M941.6 966.1c1.7.4 2.9 1.6 3.2 3.2.2 1.1-.2 2.3-1.7 2.4-.1-2.8-4 .5-3.9-2.4 0-1.4.7-2.7 2.4-3.2z" class="sts43"/>
|
||||||
|
<path fill="#6b6867" d="M1140.1 1054.7c-.4 1.5-1.2 2.2-2.6 1.8-2.1-.6-3.4-1.9-3.4-4.2 0-1.1.8-1.5 1.7-1 1.6.9 4 1 4.3 3.4z"/>
|
||||||
|
<path d="M1067 1015.8c0 1.2-.4 2.1-1.8 1.6s-3.7-.3-3.8-2.4c-.1-1.7 1.4-2.1 2.8-2 1.8.1 2.6 1.2 2.8 2.8z" class="sts48"/>
|
||||||
|
<path fill="#a7a7aa" d="M970 902c9.8 2 18.9 6.1 28.3 9.3 19 6.5 37.9 13.4 56.8 20.2 27.2 9.7 54.4 19.6 81.6 29.2 20.2 7.2 40.5 14 60.7 21.2 22.4 8 44.7 16 67 24.2 28.5 10.5 57.1 20.8 85.4 31.7 30.8 11.8 62.2 22.4 92.1 36.6 1.2.6 2.6 1 3.5 1.9 1.3 1.3 4.7 1.4 3.6 3.8-.8 1.7-3.6.8-5.6.4-19.5-4.2-38.5-10.2-57.4-16.5-22.5-7.4-45.3-14.3-67.7-22-31.7-11-63.2-22.4-94.8-33.8-27.3-9.9-54.6-19.9-81.8-29.9-38-14-76-28.3-114.1-41.9-30.3-10.8-60.5-22.2-90.6-33.7-32.1-12.3-64.3-24.4-96-37.7-11-4.6-22.3-8.7-33-14-1.7-.8-3.9-1.2-4.4-3.9 7.6 1 14.6 3.4 21.7 5.6 25.1 7.8 50 15.9 74.7 24.8 8.1 2.9 16.3 5.5 24.5 8.3 1.6.5 3.2.8 4.3 2.2-2.3 1.8-4.5.4-6.6-.3-20.8-6.6-41.3-14-62.3-19.9 24.2 14 496.4 184.9 526.8 189.1-21.2-9.8-43.4-17.4-65.4-25.7-27.6-10.4-55.1-20.9-82.8-30.9-1.2-.5-2.5-1-3.8-1.2-.5-.1-1-.3-1.4-.5-10.4-4.1-20.9-7.9-31.5-11.6-.5-.1-.9-.3-1.3-.5-3.3-1.7-6.8-2.6-10.3-3.7-.4-.1-.9-.3-1.3-.5-7.7-3-15.4-5.8-23.3-8.3-.4-.1-.9-.3-1.3-.5-2.5-1.2-5.1-2.3-7.9-2.3-2.2-.2-4.3-.8-6.2-2.2-3.2-2.3-6.9-3.3-10.8-3.8-10.2-3.2-20.4-6.5-30.2-11.1-4.3-2.5-8.8-4.3-13.8-4.9-11.9-3-23.2-7.8-34.8-12-5.4-2-11.2-3.2-16.3-6.1-2.3-2-5-2.8-8-3-4.2-.7-8.1-2.3-12-4.1-2.2-1.8-4.9-2.7-7.7-3-1.2-.1-2.3-.4-3.3-1.1-2.3-2-5.1-2.5-8-3.2-.4-.1-.9-.3-1.3-.5-2.5-1.2-5-2.2-7.8-2.3-1.2-.1-2.4-.5-3.4-1.3-6-3.5-13-4.4-19.2-7.4-1.3-.5-3.6-.6-3.6-3.2z"/>
|
||||||
|
<path d="M1234 998c8.2 1.1 15.5 4.8 23.1 7.6 28.7 10.6 57.2 21.5 85.8 32.2 14.9 5.6 29.9 11 44.3 17.8 1.4.7 3.2.9 4.3 3.4-6.3-.4-11.9-2.2-17.4-3.9-29.9-8.9-59.3-19.4-88.8-29.6-32.2-11.1-64.2-22.6-96.2-34-30.3-10.8-60.7-21.5-91-32.4-17.5-6.3-34.9-12.8-52.3-19.2-25.5-9.3-51.2-18.5-76.6-28-32.8-12.2-65.7-24.2-98-37.8-5.2-2.2-10.7-3.7-15.8-7.3 2.7-1.3 4.7-.5 6.8.1 20.7 6 41.1 13.1 61.6 19.9 1.7.6 3.5.8 5.3 1.2 11.2 2.6 21.8 7.1 32.7 10.9 2.8 1 5.5 2.1 8.3 3.1 5.3 3.6 11.5 4.7 17.3 7 2.3.9 4.9.9 6.6 3.1-2.3 1.8-4.5.4-6.6-.3-15.1-5.2-30.2-10.4-45.4-15.5-5.4-1.8-10.8-3.3-15.8-4.7 73.3 30.6 363.7 133.5 391.2 140.6-9.4-3.6-21.1-8.8-33-13.1-15.2-5.5-30.3-11.3-45.3-17.1-2.1-.8-4.9-.9-5.1-4z" class="sts94"/>
|
||||||
|
<path fill="#d4d6d7" d="M1474.9 1159.7c-.5 1.9-.2 5.6-4.1 6.1-2.6.3-4.8-1.4-4.4-4.2.3-2.9.4-6.9 4.5-7.2 2.3-.2 4.4 1.3 4 5.3z"/>
|
||||||
|
<path fill="#bfbec0" d="M1234 998c8.1 4.7 17.2 7 25.8 10.3 20.6 8 41.4 15.3 61.6 24.4.7.3 1.3.8 2.6 1.6-21.5-1.9-392.1-135.1-403.2-145.4 6.5 1.7 11.8 2.8 17 4.5 16.9 5.6 33.7 11.4 50.5 17.1 1.9.6 3.8 1 5.8 1.5.7 1.1 1.9 1 3 1 2.6 1.3 5.4 1.8 8 3 3 .9 6 1.9 9 3 .7 1.1 1.9 1 3 1 2.6 1.3 5.5 1.7 8 3 3.9 1.5 7.7 3.6 12 4 2.6 1.3 5.4 1.7 8 3 16.9 6.3 33.6 13 51 18 4.7 1.7 9.3 3.5 14 5 9.7 4.5 19.8 7.9 30 11 3.5 1.7 7.4 2.4 11 4 1.7 1.4 3.8 1.9 6 2 2.6 1.3 5.4 1.7 8 3 8.3 3.2 16.7 6 25 9 3.6 1.5 7.3 2.7 11 4 10.9 4 21.8 8.1 32.9 12z"/>
|
||||||
|
<path d="M1234 998c-11.4-2.8-22.4-6.9-33-12 7.3.8 13.6 4.5 20.4 6.8 4.3 1.5 9 2.1 12.6 5.2zm-44-16c-8.7-2-17.1-4.8-25-9 8.7 2 17 5 25 9zm-80-29c-5.1-.6-9.7-2.4-14-5 5 .7 9.6 2.5 14 5zm91 33c-4.1-.1-7.7-1.7-11-4 3.9.7 7.8 1.5 11 4zm-50-18c-3.9-.7-7.8-1.5-11-4 3.9.7 7.8 1.4 11 4zm-137-49c-3.4.2-6.2-1.4-9-3 3.3 0 6.5.7 9 3zm31 11c-2.9-.4-5.8-.9-8-3 2.9.3 5.8.8 8 3zm-20-7c-2.9-.3-5.8-.9-8-3 2.9.3 5.8.8 8 3zm-20-7c-2.9-.3-5.8-.9-8-3 2.9.3 5.8.9 8 3zm160 57c-2.9-.3-5.8-.9-8-3 2.9.3 5.7.9 8 3z" class="sts94"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" id="Layer22" x="0" y="0" style="opacity:1;z-index:1" viewBox="0 0 1920 1920">
|
||||||
|
<style>
|
||||||
|
.stv10{fill:#7c8085}.stv11{fill:#83878c}.stv14{fill:#d3d3d3}.stv16{fill:#7e8183}.stv17{fill:#63676d}.stv18{fill:#717477}.stv19{fill:#6e7174}.stv21{fill:#c5c5c7}.stv25{fill:#b1b3b5}.stv36{fill:#898b8e}
|
||||||
|
</style>
|
||||||
|
<g id="Group_2">
|
||||||
|
<path id="8" fill="#cfcece" d="M1176 1183c13.3-9.2 29.7-5.4 37.4 8.7 8 14.5 17.2 28.5 22.1 44.5 5.8 19.2 10.4 38.7 10.5 58.9-.5.3-1 .2-1.4-.2-.3-.4-.6-.8-.8-1.3-5.6-14.5-16.3-21.8-31.7-23.3-10-1-19.1.8-27.7 5.8-1.3.8-2.7 1.3-4.3 1.2-2.8-.3-4.2-2.1-4.4-4.6-1.3-13.9-4.3-27.5-4.3-41.6 0-13.6 1.5-26.8 4.4-40 .5-2.9.7-5.5.2-8.1z"/>
|
||||||
|
<path fill="#d4d4d3" d="M671.1 1294c-.1-15.6 4.2-30.4 7.6-45.4 5.2-23.1 17.2-43 30-62.4 6.7-10.2 22.1-12.2 32.4-5.3-1 6.2.3 12.2 1.1 18.3 1.4 11.5 2.1 22.9 1.3 34.6-.8 12.1-4 23.9-4 36 0 2.1-.7 3.9-2.5 5.2-2.7 1.6-4.7-.5-6.9-1.5-11.6-5.5-23.4-7-35.6-2.4-10.4 3.8-17.8 10.6-21.2 21.4-.2.5-.4.9-.8 1.4-.4.4-.9.4-1.4.1z"/>
|
||||||
|
<path fill="#bebebe" d="M736 1275.2c3.8-4.6 1.8-10.3 2.7-15.4 1-5.3 2.5-10.7 2.6-16.2.2-12.8 2.8-25.5.1-38.3-1.3-6.3-1.7-12.8-2.3-19.2-.2-2-.3-4.1 2-5.2 9 4.7 11.4 13.2 12.9 22.3 2.3 13.5 5 27.1 5.7 40.8.5 8.8-.7 17.6-1.8 26.3-1.4 11.5-3.2 23-6.2 34.2-.3 1.2-.3 2.7-1.7 3.5-1.3-1.1-1.3-2.6-1.3-4.1.2-7.8-2.5-14.5-7.1-20.6-1.5-3-5.5-4.2-5.6-8.1z"/>
|
||||||
|
<path fill="#bfbfbf" d="M1176 1183c3.4.6 2.4 3 1.9 5.1-3.8 15.8-5.6 31.8-5 48.1.3 9.9 2.4 19.6 3.5 29.4.2 2 .7 3.9.5 5.9-.2 3.1 1.1 4.7 4.2 4.7-.4 3.9-4.1 5.3-6 8.1-4.5 5.6-6.9 12-6.9 19.3 0 1.9.3 4-1.4 5.6-3.5-7.6-4-15.9-5.4-24.1-2-11.8-3.2-23.7-3.2-35.6 0-12.7 2.3-25.4 5-37.8 1-4.5 1.7-9.1 2.8-13.6 1.6-6.3 4.5-11.5 10-15.1z"/>
|
||||||
|
<path fill="#6a6f78" d="M732.3 1330.2c-14 8.9-34.8 7.2-47.5-3.9-4.4-6.4-4.7-6.7.7-13.3 2.9-3.5 2.8-8.4 6.4-11.4 2.9-.2 3.8 4 4.4 3.8 3-1.3 4.3.3 5.6 2.4.5.9 1 1.2 1.8.5.4-.3 1.1-.8 1.3-.6 2.9 3.7 7.3 2.1 11 3.2.9.2 2 1.5 2.7.9 3.1-3.2 6.5-.8 9.8-.9 4.9 1.4 9.8 10 8.4 14.4-.9 2.3-4.2 2.3-4.6 4.9z"/>
|
||||||
|
<path fill="#6b7079" d="M1231.6 1327.9c-11.3 9.2-24 11.4-37.8 7.2-2.7-2-6.2-2.6-9.1-4.3-3.8-2.2-5.3-5-4.1-9.4 1.3-4.5 1.3-9.9 7.9-10.3 3.4 1.1 7.5-1.7 10.7 1.7.5.5 1.5-.3 2.2-.8s1.7-1.6 2-1.3c3.8 3.4 6.9-2.1 10.5-.8.5.2 1.2.1 1.3-.3 1.4-3.7 5-2.9 7.7-3.8 5.7 4.4 9 10.5 10.9 17.3.5 2-2.2 2.9-2.2 4.8z"/>
|
||||||
|
<path fill="#4b4d50" d="M1188.8 1312c-3.4-.1-5.1 1.9-5.8 4.9-.5 1.9-.4 4-1.2 5.7-1.6 3.7.4 5.6 3.1 7.2 3 1.8 6.2 2.9 9.4 4.2 1.7.7-.3.7-.5 1.1-14.1-3.4-22.6-12.6-26.9-26.1-.5-9.7.8-18.9 8-26.2 3.1.1 6.2.4 9.2 1.1.4 3-2.1 4.3-3.7 6-4.8 5.4-4.7 8.5.4 13.4 2.1 2 3.7 4.5 7 5 1.9.3 2.6 2 1 3.7z"/>
|
||||||
|
<path fill="#4b4c4f" d="M732.3 1330.2c-1.3-1-.3-1.8.5-2.3 1.8-1.4 4.2-2.3 2.6-5.4-2-3.9-.6-10.2-7.5-10.7-1-1.9-.1-3.8 1.4-4.1 3.5-.8 5-3.6 7.2-5.7 4.6-4.3 4.8-7.8.7-12.4-1.9-2.1-4.1-3.9-6.4-5.6-1.4-1-3.3-1.8-2.9-4.2 1.2-.9 2.6-.6 3.6.2 3.2 2.6 6.8 2.4 10.6 1.8 6.5 7.6 8.9 16.3 7.9 26.2-2.5 10.1-9.3 16.8-17.7 22.2z"/>
|
||||||
|
<path fill="#414346" d="m1231.6 1327.9-.9-.3c4.2-4.9.4-8.7-1.8-12.6-1.8-3.1-4-6-5.9-9-2.2-1.4-.3-2.4.5-3 5.6-4 8.6-9.8 11.2-16 5 .1 6.6 4.9 10.2 7.1.1.3.2.6.1.9.8 4 .8 8 0 12-1.2 9-7.2 15-13.4 20.9z"/>
|
||||||
|
<path fill="#44464a" d="M692 1302c-1.6 5.2-4 10.1-7.6 14.3-2.3 2.7-3.3 5.4.3 7.9.8.5 1 1.3 0 2-7.3-5.2-11-12.6-12.9-21.1-.4-3.7-.7-7.5.1-11.2 0-.3 0-.6.1-.9 2.9-4.3 7.2-7.3 10.8-10.8.8-.8 2-1.1 3.2-.4-3.3 6.8.2 11.9 4.5 16.8.9.9 2.1 1.8 1.5 3.4z"/>
|
||||||
|
<path d="M1245 1307v-12c.3 0 .6.1.9.1-.1 3.9 1.1 8-.9 11.9z" class="stv10"/>
|
||||||
|
<path d="M672 1293.9c0 3.7-.1 7.5-.1 11.2-1.7-3.6-.7-7.4-.8-11.1.3 0 .6-.1.9-.1z" class="stv11"/>
|
||||||
|
<path d="M1244.8 1294.1c-4.9-.1-6-5.5-9.9-7-1.5.4-2.5-.5-3.6-1.2-13.2-9.8-27.3-9.5-41.8-3.3-1.8.8-3.3 2.3-5.6 1.5-3.3 1.4-6.3.9-9.1-1.2 2.1-2.2 4.2-4.4 6.3-6.7 6.7-4.1 14-6.6 21.8-7.7 14.9-2.1 32 5.7 39.5 18.7 1.3 2 2.8 4.1 2.4 6.9z" class="stv10"/>
|
||||||
|
<path d="M686.1 1282c-5.5 1.9-7.8 7.7-12.8 10.2-.4.2-.8.5-1.2.8 2.3-12.1 10.5-18.8 21.2-22.9 15-5.8 29.3-3 42.7 5.1 2 2.2 4.1 4.4 6.1 6.6-3 2.8-6.1 2.8-9.3.3-1.4-1.1-2.9-2.2-4.8-2.1-5.1.3-9.6-2.2-14.5-2.9-7.7-1-14.8.4-21.8 3.4-1.8.8-3.4 2.3-5.6 1.5z" class="stv11"/>
|
||||||
|
<path fill="#0a0b0c" d="M686.1 1282c13.6-8.6 27.6-8.6 41.9-2 2.9 3.2 7 4.8 9.9 8.2 2.8 3.4 5.9 6.5 2.4 11.1-2.6 3.4-4.1 8-9.2 8.7-2.5.3-2.5 2.2-3.2 3.8-1.7.6-3.2.2-4.8-.7-.5-.3-1.6-.5-1.7-.4-3.1 6.5-5.4 1.3-7.9-.5-2.2.3-.6 4-3.2 3.5-1.9-.3-2.2-2.3-3.1-3.6-1-1.5-2.3-4-3.1.1-.2.9-.7 1.7-1.6 1.6-1.1-.2-1.5-1.2-1.5-2.3-.1-1.8-.6-3.3-2.6-3.8-2.2-.6-1.4 2.4-3.3 2.5-1.1-1.9.5-5.5-3-6.3-2.5-2.8-5-5.4-7-8.7-2.6-4-2.9-7.7 1-11.2z"/>
|
||||||
|
<path fill="#0a0b0d" d="M1184 1284c14.8-8.8 29.8-10.4 45.1-1.6 2.1 1.2 3.9 3.1 5.8 4.6-.5 6.9-4.7 11.7-9.6 16-.9.8-3.2.8-2.4 3-.2 1.2.6 2.6-1 3.8-2.3-3.3-4.2-4-5.4.8-.4 1.9-1.4 4.1-3.4 1-1.7-2.6-2.3-1-3.3.5-3 4.2-3.4 4.1-6.2-1.5-1.1 1.4-1.9 2.7-2.9 3.8-.4.4-1.2.6-1.7.8-2.1-5.5-7.4-.1-10.3-3-.1-.8-.3-1.6-.4-2.4-4.9 1.1-6.2-3.9-9.3-5.7-3.2-1.8-4.4-8.2-2.6-11.4 2-3.6 5.7-5.4 7.6-8.7z"/>
|
||||||
|
</g>
|
||||||
|
<g id="Group_1">
|
||||||
|
<path id="7" d="M1036.1 918.9c4.2 9.2 5.3 19.1 6.8 28.9 1 6.7 1.9 13.4 2.2 20.2.1 4.1 1.7 6.8 6.7 6 9.4-1.5 19-.9 28.4-2.9 11-2.3 22.3-2.9 33.5-4.1 11.7-1.3 23.4-2.5 35.1-3.8 10.7-1.1 21.4-2.3 32.1-3.2 10.5-.9 21.1-1.7 31.6-2.3 5.3-.3 10.9-2.9 16.6-4 22.2-4.5 44.4-9.2 66.6-13.7 2.9-.6 4.6-1.6 4.3-4.8-.2-2 0-4.3 2.3-5 2.5-.8 3.6 1.3 4.5 3.1 1.7 3.5 4 3.7 7.7 2.9 36-7.6 72-14.8 108-22.2 3-.6 5.8-.8 5.7-5.2-.1-2.9 2.6-4.7 4.6-2.1 4.7 5.9 10.6 3.8 15.9 2.8 16.9-3.4 33.6-7.5 50.3-11.3.5 1.5-.7 2.4-1.4 3.5 7.3.2 14.4-1.1 21.5-2.4l1.5-.3c2.4-.1 5.7-1.2 6.5 1.8.8 3.1-2.5 3.9-4.8 4.7-4 1.5-8 2.8-12.4 4.7 9.4-1.3 18.2.8 27.1.8 9.2 0 18.6.4 27.9.7 2.1 0 5.2-.6 5.7 1.7.5 2.6-2.7 3.4-4.7 4.4-7.5 3.5-15.5 5.9-23 9.4-16.9 7-34.2 12.9-51.5 18.5-22.4 7.2-45 14-67.5 20.9-28.1 8.6-56.2 17-84.3 25.7-5.8 1.8-11.5 5-17.1 6.2-7.9 1.8-15.6 4.1-23.3 6.5-20.5 6.2-41 12.5-61.4 18.8-7.1 2.2-14.4 3.7-21.3 6.9-2.8 1.3-3.9 2.7-3.6 5.6.9 8.1 1.9 16.1 2.6 24.2 1.2 14.8 4.3 29.6 1.5 44.6-.8 4.3-1.9 9.3-7 9.8-5 .5-7.2-4.1-8.9-8.1-4.3-10.1-6-21-8-31.7-1.9-10.1-3.5-20.2-5-30.4-.6-3.6-2.7-1.7-4-1.2-11.9 4.5-23.8 9.2-35.8 13.9-13.5 5.3-26.9 10.6-40.4 15.9-.7.3-1.4.8-2.1 1.3-3.1 3.5-7.7 3.9-11.6 5.8-6.6 2.1-12.8 4.8-18.7 8.5-2.4 1.3-5 2-7.4 3.4-1.8-.9-3.3 0-5.1.6-9.2 3.1-15.3 8.8-17 18.6-1.7-.6-2.2-2-2.2-3.6-.2-9-1.5-17.8-2.7-26.7-1.7-12.4-1.7-25.1-2.6-37.6-1.2-15.9-2.2-31.9-3.6-47.8-1.3-15.1-2.3-30.2-3.4-45.3-1.1-13.8-1.6-27.6-2.6-41.3-.1-1.2-.3-2.3-.1-3.5.3-1.7.9-3.5 2.9-3.5 2.4-.1 2.2 2 2.3 3.6 1.5 19.2 2.2 38.4 3.3 57.6.2 3.1.5 6.2.6 9.3-1-13.6-1.5-27.2-2.3-40.8-.3-4.6-1.4-8.9.5-13z" class="stv14"/>
|
||||||
|
<path fill="#d6d6d6" d="M870 1108c-.3-.4-.8-.8-.8-1.2-.2-11.3-10.3-11.6-17.1-15.5-.5-.3-1.6.2-2.4.4-2.5-1.8-5.7-2.1-8.3-3.6-3.4-3.2-7.9-4.2-11.8-6.3-2.7-1.4-3.1.6-3.1 2.6-.1 5.3 0 10.6.1 15.9-.2.5-.5.9-1.1 1-3.1-.4-2.7-3-2.8-5-.2-4.1 0-8.3-.1-12.4 0-1.8 0-3.7-1.7-5-1.5-1.1-3.2-2.4-5-1.8-2 .6-1.2 2.8-1.4 4.3-.5 3.8 1.2 8-1.6 11.5-1.9-5.1-.7-10.5-.9-15.8-.1-3-.7-4.6-3.9-5.9-24.3-9.4-48.5-19.1-72.6-28.8-3.3-1.3-3.9-.8-4.6 2.7-3.7 18.7-6.7 37.5-12.7 55.7-1 3-2.4 5.8-4.1 8.5-1.7 2.7-3.7 4.7-7.2 4-3.4-.6-5.1-3.3-5.7-6.2-2.1-10.2-1.7-20.6-.7-30.8 1.4-14 3.6-27.9 5.5-41.8.5-3.4-1.5-4.7-4.3-5.7-5.6-1.9-11.2-4-16.8-6-7.8-4.1-16.5-6-24.8-8.7-22.8-7.4-45.6-14.3-68.5-21.4-38.5-12-77-23.9-115.5-36-28.4-8.9-57-17.1-84.4-28.8-2.6-1.1-5.3-2.1-7.4-4-.9-.8-1.7-1.7-1.3-3 .4-1 1.5-1.2 2.5-1.4 2-.3 4-.3 6-.2 16.4.5 32.5-2.1 48.8-2.6 5-.2 9.9 1 15 .7 3.2-.2 6.3-.4 9.4-1.3 2.4-.7 4.7-2.7 7.2.3.9 1.1 2.2-.1 3-.9 3.8-3.7 8.3-4.8 13.4-3.7 2.1.5 3.9-.5 5.8-1.1 22.4 4.7 44.7 9.3 67 14.1 15.7 3.3 31.5 6.5 47.1 10.1 3.6.8 4.7-.6 6-3.2.9-1.8 2.5-3.6 4.6-3.2 2.4.5 2.6 3 2.2 5-.7 4.2 2.4 4.5 5 5.1 19.4 4.1 38.9 8.1 58.3 12.2 6.2 1.3 12.8 1.7 18.3 4.2 8.3 3.9 16.8 1.2 25.1 2.5 14.2 2.3 28.6 3.4 42.9 4.9l32.1 3.3c12.5 1.3 25.3 1.5 37.4 4.4 9.7 2.3 19.5 1.4 29 3.5 3 .7 4.5-.3 5-4 2.2-14.4 3.6-28.9 7.8-43 .5-1.7.7-3.6 2-5 1.9 2.8 1 5.8.8 8.7-1.3 14.2-2.4 28.4-3.3 42 .8-8.6 1.3-17.8 2-27.1.5-6.1 1.5-12.2 1.5-18.3 0-8.3 1.8-16.5 2.1-24.8 0-1.2.3-2.5 1.7-2.7 1.7-.2 2.2 1.3 2.5 2.6.6 2.6.5 5.3.2 8-3 33.6-6.2 67.2-9.7 100.8-1.7 16.2-3.1 32.4-4.5 48.6-.8 9.2-.5 18.5-3.3 27.6-1.3 4.1-1 8.8-1.5 13.3-.2 3-.4 5.6-2.4 7.7z"/>
|
||||||
|
<path d="M868.9 1141.8c.1-.9.1-1.9.2-2.8.2-7.7 2.3-15.3 2-23 .5-4.3 0-8.7 1-13 .8-2.7 1.5-5.4 1.8-8.2.5-1.8 1.1-3.6 2.7-4.8 2.5-1.8 3.9-4.4 5.4-7 1.2-2.1 1.7-4.4-.2-6.4s-2-4.1-.5-6.3c2-2.9 2.2-6.2 2.2-9.5 0-8.8-.1-17.6 0-26.4 0-3.8-.1-7.6-1.5-11.2 0-.5 0-1 .1-1.5 2.1-2.9.1-6.3 1-9.4.1-.5.3-1 .6-1.5.9-2.1-.4-4.3.6-6.4 1-2 2.3-4 4.8-3.6 2.3.3 2.2 2.7 2.3 4.4.7 12.8.2 25.5 0 38.2-.1 7.3-1.6 14.7 1.2 22.1 1.9 5 0 10.6-.3 15.8-.6 8.8.4 17.6.6 26.3-1.5 5.3-1.5 11.6-8.3 13.7-2.5-1.7-1.7-4.1-1.4-6.3.9-6.8.4-13.6.4-20.4 0-.8-.1-1.7-1.1-2.4-2.3 1.6-2.8 3.9-2.4 6.5 1.3 8 1.1 16.2 2.8 24.2-.9 4.6-4.8 7.5-6.5 11.3 2.6-4.1 5.5-8.2 8.9-12 1-1.1 2.2-2.3 3.8-1.2 1.5 1 2.3 2.9 1.2 4.4-5.5 6.8-8.4 15.4-14.5 21.9 4.6-3.4 8.7-7.5 13.8-10.2 0-.6-.1-.6-.6-.3-1.7.9-3.8 3-5.4 1.4-1.7-1.7.7-3.5 1.7-5.1 2.1-3.2 4-6.6 7.1-8.9 2.7-2.2-.3-5 .7-7.4.2-.7.5-1.4 1.1-1.8 4.3 1.8 7 5.2 9.3 9.1 4.2 7.4 9.6 14.2 16.3 19.2 6.9 5.2 15.4 6.5 23.3 1.3 8.2-5.4 17.6-8.6 25.3-14.8 7.3-5.9 13.5-12.3 15.4-22 .7-3.6 3.4-6.6 4.5-9.9 2.1-6.4 4.6-12.8 6-19.4 1.6-7.6 2.2-15.4 3.9-22.9.2-1 .5-2 .4-3-1.2-13.7 1.3-27.6-1-41.2-1.2-7.2-1.2-14.5-2.9-21.7-1.4-5.6.5-11.6-.8-17.3-2.1-9.5-1-19.4-4.4-28.8-3.2-8.9-3.7-18.6-7-27.5-2.6-6.8-3.7-14.1-7.4-20.6-2.1-3.7-2.5-8.2-4.1-12.2-3-7.2-9.7-9.8-15.4-13.5-1.4-.9-3-.1-4 1.1-7.8 9.2-16.9 17.1-22.5 28.3-5 10-9.4 20.7-16.3 29.7-5.2 6.7-10 13.7-15 20.6-2.5 3.5-4.5 3.4-7.3.1-.1-.5-.1-1 0-1.5 1-3.6.1-7.2.1-10.8.2-11.7 2-23.2 3.2-34.7 1.6-15.4 2.5-30.8 4.7-46.1.3-2 .2-4 1.6-5.6.4-.4.9-.7 1.4-.7 1.6.8 2.7 1.8 4-1 7.1-16.1 14.6-32.1 23.5-47.4 4.7-8.2 9.5-16.4 15.2-24 2.6-3.4 5.8-6 10.1-6.8 2.7-.5 3.4-2.4 3.7-4.6.8-6.4 1.9-12.8 1.8-19.3 0-2.3-.3-4.6 1.6-6.7 2.5 1.8 2.1 4.3 2 6.5-.2 7.2.6 14.3 1.9 21.3.4 2 .8 4 2.7 5.2 3.7 2.4 5.2 6.3 7.5 9.8 10.5 15.5 15.6 33.4 21.9 50.6 3.2 8.7 7 17.3 8.9 26.5 1 5.1 4 9.5 5.9 14.3 3 7.4 5 15.2 8.6 22.3.9 1.8 1.7 3.6 4.2 3.5.5.3.8.7 1.1 1.2 2.3 12.6 2.5 25.5 3.6 38.2 1.8 21.7 3.5 43.4 5.4 65.1 1.6 18.5 3.3 37.1 4.7 55.6.7 9.2 1.7 18.3 2.8 27.5 1.2 10.1 2.5 20.4 2.4 30.7l1.2 9.9c.9 3.3.2 6.8.4 10.2-.3 1.1-.9 1.3-1.7.6-1.3-1.4-1.9-3.3-1.8-5 .4-5.3-1.1-10.2-2.6-15.1-.6-1.8-.1-3.6 0-5.4-.4 5.6.7 11.3-2.6 16.4-1.7 1.6-2.2-.1-3-1-3.6-4.1-7-8.4-11-12.1 5.6 6.8 8.5 15.2 14.1 22 1.2 1.7.8 3.2-.5 4.6-1.2.7-1.9-.2-2.4-1-2.9-4.5-7.3-7.7-10.5-11.4.2.1.4.7.8 1.3 1.5 2.3 2.8 4.2 5.6 5.9 4 2.4 7.7 6.8 8.5 12.3-1.2 1.5-2.3 3.1-4.3 3.4-2.2-1.2-2.8-3.6-3.9-5.5-1.2-2.1-2.8-3.7-4.5-5.3-1-.9-2.3-1.9-3.5-.8-1 .8-.3 2.2.2 3.3.5 1.4 1.4 2.7 2 4.2-.4-2.1-3.2-4.4-.6-6 2.7-1.6 4.2 1.4 5.3 3.2 3.6 6.1 7.4 12.2 8.6 19.4 0 .7-.2 1.3-.2 1.9-.4 4-2.4 5.1-5.8 3.5-3.9-2.5-5.3-7.1-8.3-10.3-.9-.9-1.3-2.5-2.9-.9-4.8 4.9-9.9 9.3-11.7 16.4-1.2 4.8-4.9 8.3-7.8 12.1-2.8 3.6-3.9 7.3-3.3 11.6 1 7.1 1 14.2 3 21.2 2.1 7.4 1.3 14.5-3.4 20.9-1.9 2.7-4.1 4.8-7.2 6-5.5 2-10.7 4.6-16.1 6.9-4.4 1.9-8.7 1.9-13-.2-3.8-1.8-7.4-3.8-11-5.9-8.1-4.6-16.4-6.2-25.3-2.3-4.7 2.1-9.6 3.9-14.6 5.1-7.9 1.9-12-.8-13.7-8.8-1-4.9-.4-9.6 1-14.3 1.9-6.6 2-13.1.3-19.7-2.2-8.6-4.4-10.1-13.5-8.4-3 .6-5.6.5-7.8-1.8-1.5-2.2 0-3.7 1.1-5.3 2.8-4.1 6.5-7.3 10.4-11.6-6.7 1.7-10.9 5.6-15 9.6-2.4.3-3.8-.3-2.9-3.1-2.6 2.1-3.2 4.9-2.9 8.3.2 2.9.8 6.3-2.8 8.1 0-10.8.6-21.5 1.8-32.2 3.1-2.5 1.6-5.2.2-7.8.3-5 .7-10 1.1-15.1.3-3.4.2-6.2.4-8.9z" class="stv16"/>
|
||||||
|
<path d="M968.8 1449.9c-9.2 6.8-18.4 6.8-28.8 0 6.2-4.8 7-8 3.8-15.4-8-18.3-18.1-35.5-29.3-52-8.1-12-14.2-24.8-16-39.3-.3-2.4-2.2-4.6-1-7.2 2-1.6 3-3.7 3.5-6.3 1.2-6.3 2.3-12.7 3.7-19.1.9-4.2-1.1-7.5-5.7-9.7-3.8-1.8-4.8 1.6-6.7 3.5-.6.6-1 1.3-1.5 2-1.8 1.7-2.9 3.9-4.3 5.9-1 1.5-1.8 3.2-4 3.2-3.4-1-4.6-3.6-4.8-6.8-.1-2-.3-4-.7-5.9-.6-3.6-1.8-6.1-5.7-7.9-6.3-2.8-9.5-10.3-8.1-17.7 2.1-11.3 7.4-21.3 14.1-30.5 1-1.3 2.2-2.7 4.2-1.7.9.8 1.4 1.9 1.4 3.1.2 11.6 2 23.1 1.4 34.8-2.8 4.3-3.6 8.9-2.4 13.9.7 2.7 0 5.4.8 8.1 4.7-3.1 6.9-8.3 10.6-12.2 4.4-7.3 9.2-14.2 15.6-19.9 3.5-3.2 7.3-5.8 11.8-7.1 4.8-1.5 9.7-1.7 13.8 1.6 9.1 7.1 20.3 6.5 30.8 8.4 3.3.6 6.6-.7 9.6-2.1 11-5.1 21.2-4.1 30.5 4.2 4.7 4.2 10.8 6.6 13.8 12.7-.6 3.6.4 6.5 3.1 9.2 3.3 3.4 5.2 8 9.2 10.9.2 2.9-.3 5.5-3.2 7-2.9-.3-3.2-3-4.5-4.8-1.6-2.3-3-4.8-4.8-7-.4-.5.1.1-.3-.4-4.7-5.7-8.8-5.5-13 .5-.7 1.1-.8 2.2-.6 3.3 1.1 7.2 2.5 14.4 3.9 21.6.5 2.5 1.5 4 4.4 3.1.9-.3 2-.4 2.9.2.5.8.6 1.7.2 2.4-5 8.4-5.6 18.4-9.6 27.2-6.5 14.1-14.5 27.3-23.7 39.7-7.3 9.8-13.4 20.2-18 31.5-3.1 7.4-2.4 9.9 3.6 15z" class="stv17"/>
|
||||||
|
<path d="M1024 900c-1.2 3.2-2.3 1.4-3-.2-1.9-3.9-3.8-7.8-5.4-11.8-5.9-15.6-12-31.2-17.3-47-4.3-12.9-8.6-25.7-13.7-38.2-3.7-9.1-8.2-18.5-14.6-25.8-4.7-5.3-6.2-10.3-7.3-16.7-1.1-6.4.1-12.9-1.3-19.3-.1 8.9-.8 17.8-2.3 26.6-.5 2.7-1.1 4-4.6 4.3-5.8.5-9.4 5.4-12.2 9.9-7.2 11.7-14.7 23.4-20.8 35.7-6 12.1-12.4 24.2-17.1 37.4-1.8-1.5-2-3.3-2.4-5-1.6-1.8-1.6-4-1.1-6 .7-2.9.7-5.8.6-8.8-.1-2.7 0-5.3 1-7.8 2.1-7.9 2.7-16 3-24.1 2.3-19.2 5.1-38.4 12-56.7 1-2.6.6-5.2 1.3-7.7.1-2.2.8-4.2 2-6.1 4.4-3.8 5.9-9.5 8.5-14.4 4.2-8.2 9.5-15.5 15.8-22.1 1.4-1.4 2.7-3.3 5-2.3 2.2.9 2 3.2 2.1 5.2.1 2.1-.3 4.3.7 6.3 2.1 4.2 6.3 6.8 8.6 11 1.4 2.5 3 4.8 2.5 6.8-2.7-7.8 3.7-12.9 8-18.9.9-2.1.5-4.3.6-6.4.1-1.8-.3-4 1.7-4.8 2-.8 3.4 1 4.6 2.3 5.2 6.2 10.6 12.4 14.3 19.7 12 23.3 18.9 48.1 22.1 74 2.6 20.9 4.7 41.9 6.3 63 .9 11.4 1.7 22.8 2.8 34.2.7 3.8-2 7.6.1 11.3.2 1 .1 1.7-.5 2.4z" class="stv18"/>
|
||||||
|
<path d="M1019.3 1291c-4.9-5.9-11.5-9.8-17.4-14.5-7.6-6.1-16.2-6.4-24.7-2.5-6.3 2.9-12.6 3.9-19.2 1.8-1.9-.6-3.9-.7-5.9-.8-5-.4-9.7-1.3-14-4.2-10.9-7.2-18.9-6-28.4 3-6.3 6-11.2 13.1-15.7 20.4-3.3-.9-4.7-3.8-6.6-6.1-1.3-1.7-2.8-3.2-4.2-4.8-.2-12.8-.9-25.5-2.1-38.2-1.5-2 .2-3.5 1-5 2.5-4.6 3-9.5 2.5-14.5-.1-1.3-.2-2.8-1.8-3.2-1.3-.3-2.2.6-3 1.4-3 3-5.1 6.6-7.1 10.2-2.3 4.2-4.7 8.4-6.4 13-.5 1.4-.8 3.4-3.2 3.1-.3-15 .8-30 2-45 1.2-3.2 2.5-6.3 1.2-9.9-.5-1.6-.6-3.4.9-4.6 1.3-1.1 2.9-5.4 4.5-.1.1.4 1.5.4 2.2.6 2.7 3.9 1.5 7.3-1 10.6 1.6-.9 2.5-2.8 4.2-3.6 2.8 1.8 5.6 2.1 8.9 1 7.2-2.3 11.2.8 13.3 7.9 2.5 8.5 2.1 16.7-.5 24.9-1.5 4.8-1 9.6.4 14.2 1.1 3.8 3.8 5.6 7.9 5.1 6.4-.8 12.2-3.3 17.9-5.8 10.3-4.4 19.4-1.8 28.3 3.6l1.2.9c7.7 4.7 15.3 7.8 24.1 2.2 3.9-2.4 8.7-3.4 12.8-5.5 6.2-3.3 11.9-13.2 8.9-23.4-2.1-7.2-1.9-14.8-3.5-22-1.9-8.8 4.4-14 8.6-20.1 1.2-1.8 2.9-3.4 3-5.6.5-7.1 7.2-10 10-15.5.6-1.1 2-1 3.2-1 4.6 3.2 6.9 8.4 10 12.8.6.8 1.1 1.9.3 2.8-.9 1.1-2.1.3-3.2.1-1.9-.3-3.2-3.4-5.2-1.6-1.5 1.3-.2 3.8-.4 5.8-.2 1.5-.1 3 0 4.5.2 1.8-.5 4.6 3.1 2.6 1.2-.6 2.3.8 3.3 1.8 4.1 3.9 7 8.6 10.3 13.2-3.4-5.3-7.3-10.3-11.6-14.9-2.6-2.7-3.8-5.8-4.3-9.3-.1-.9-.8-2 .2-2.8 1.1-.9 2.2-.2 3.2.4 6.3 3.5 12.2 7.4 13.1 15.6-.7-5.2-4.2-9.1-6.3-13.5-.8-1.7-2.5-3.2-1.3-5.4 2.2-2.7 1.8 1.7 3.7 1 1.4-1.6-.6-4.3 1.3-6 .6.2 1 1.1 1.5 1.2.8.2.4-.7.3-1.1-.3-2.5 1.1-5.3-2.9-6.7-1.6-.6-2.8-3.8-1.8-6.4 1.4-.9 1.7-3.2 3.9-3 .9-2.7-2.9-4.2-1.9-7-.3-1.4 1.9-2.8-.2-4.2-.9-3 .9-5.9.2-8.9 3.1-6.8.8-14.5 3.2-21.6 2.3.8 2 2.3 1.7 3.2-1 3.8-.5 7.6 1.2 10.9 2.6 5.3-.5 11.5 2.8 16.6.9.8.5 1.9.5 2.9-.9 3.7.3 7.4.4 11.1-.2 1.4-1 3.1-.6 4.3 1.7 5.2 1.5 10.4 1.6 15.7.5 28.3 2.5 56.7 2.1 85-1.5 0-1.7-1.2-2.1-2.2-.2-1.7-.2-3.3-.2-5 .9-12.3-1.4-24.4-3.4-36.7-4.7 2.1-9.9 3.1-15 4.4-1.2.3-2.4.8-2.5 2.1-.6 5.4-3 10.4-1.7 16.2 3.4 15.8 2.9 31.7-.4 47.5-.4 3.1-1.4 6-5.2 6.6z" class="stv19"/>
|
||||||
|
<path fill="#cdcdcd" d="M494.1 911c-.8 4-3.5 3.2-6.2 2.5-5-1.4-9.1.1-12.6 3.8-3.5 3.7-4 3.6-5.8-1.5-6.9 4.5-14.7 3.7-22.1 3-7.8-.7-15.6-.2-23.2.5-12.2 1.1-24.5 1.8-36.7 1.7h-4c1.6 3.5 4.8 4.1 7.3 5.3 25.8 11.6 52.8 19.6 79.8 27.8 19.5 5.9 38.9 12.3 58.3 18.3 25.5 7.9 51.1 15.6 76.5 23.7 25.1 8 50.4 15.2 75.3 24 1.6.6 3.9.5 4.2 3-10.7-2.3-20.9-6.3-31.4-9.5-16.5-4.9-32.9-10.3-49.4-15.5-34.1-10.7-68.2-21.5-102.4-32-29.3-9.1-58.8-17.9-87.7-28-33.1-11.6-65.8-24.3-99-35.5-6-2-12.1-3.5-18-5.9-6.9-2.8-11.4-7.4-12.5-14.8-3.1-21-6.7-41.9-6.5-63.3 0-1.3 0-2.7.4-3.9.5-1.4 1.5-3 3-3 1.6 0 1.6 1.9 2 3.1 4.3 13.1 9.2 26 13.8 39 2.8 8 8.2 12.4 15.8 15.2 16.1 5.9 32.8 9.3 49.4 13.1 21.8 5 43.6 10.2 65.3 15.3 16.1 3.8 32.1 7.8 48.2 11.3 4.1.9 9 1.9 12-3.1.8-1.3 2.4-2.2 3.9-1.3 2.8 1.4 2.1 4.2 2.3 6.7z"/>
|
||||||
|
<path d="M975.8 671.3c3.3 3 4.4 7.3 6.4 11.1 1.4 2.7 2.5 3.7 6.1 3 43.8-8.8 87.7-17.4 131.6-26 6.5-1.3 13.1-2.1 19.6-3.5 2.3-.5 3.3.5 4.3 2.5-.2-3.5 2-4.4 4.6-5 5.2-1.1 10.3-2.3 15.6-3.2 4.6-.8 7.8 1.4 8.9 5.9 1 4.1 1.8 7.8-3.7 10.2-8.1 3.5-16.6 6-24.8 8.8-40.9 14.2-82 28.2-122.9 42.4-5.3 1.8-10.7 3.8-16 5.7-1.7.6-3.5 1.1-4.4 3-4-2.1-4.3-6.7-6.4-10-4.1-6.6-7.3-13.7-11.7-20.2-2.1-3.1-1.5-4 2.1-4.7-1.1-1.3-2.8-.9-4.2-1.3-6.8-2.1-10.6-10.8-7.4-17.1.3-1.2 1.2-1.5 2.3-1.6z" class="stv21"/>
|
||||||
|
<path d="M972.9 705.9c-6.4 5.6-9.1 12.7-7.8 21.1.1.6-.1 1.3-.9 1.6-1.3 0-1.8-1.3-1.6-2 1.7-7.6-3.7-11.7-7.8-16.5-1.1-1.2-2.5-2.2-2.8-4-.2-6.2-.7-12.3.9-18.5 1.6-6.1-.1-12.4-1.7-18.5.3-26.3.5-52.6 1.2-78.8.2-5.6.5-11.3.6-16.9.4-29.5.2-58.9 1.4-88.3.6-14.8-.4-29.6 1.7-44.3.2-1.8.5-3.6 1.1-5.3 1.1-3 3.5-4.4 6.7-4.2 3 .1 5 1.6 5.7 4.6.5 2.6 1.4 5.2 1.5 7.8.5 13.1.9 26.3 1 39.4.5 36.6.3 73.2 1.4 109.8.7 25.1.6 50.2.6 75.3-.4 6.2.1 12.5.3 18.7 0 6.2-.5 12.7-1.5 19zm-49 19.2c-6.6-3.6-13.8-5.7-20.9-8.1-45.6-16-91.3-31.9-136.9-47.8-2.8-1-5.6-2-8.3-3.2-5.2-2.4-6-4.7-4.1-10.5 1.7-5.1 4.1-6.6 9.2-5.6 4.7.9 9.4 1.9 14.2 2.7 3.2.5 5.7 1.6 5.3 5.7 1.2-3.3 3.4-3.5 6.2-2.9l145.2 28.8c2.8.5 5.5 1.1 8.2 1.7.3.4.5 1 .3 1.4-5.8 11.9-10.4 24.4-16.5 36.1-.5.8-1.1 1.4-1.9 1.7z" class="stv21"/>
|
||||||
|
<path fill="#cbcbcb" d="M1542.9 927.1c6.1-4.5 13.6-6 20.1-9.5 2.3-1.2 4.6-2.4 8-4.5-22.3.3-43.3-1-64.4-2-.1-.4-.1-.8-.2-1.3 4.7-1.7 9.5-3.5 14.2-5.2 1.4-.5 2.8-1 4.2-1.6.7-.3 1.6-1.2 1.5-1.7 0-1.3-1.4-1.3-2.3-1.2-4.9.6-9.9 1-14.7 2.2-4.5 1.1-8.9.6-13.6.8.1-2.4 2.5-3.1 3.1-4.9 27.6-6.2 55.3-12.2 82.9-18.6 10.8-2.5 21.6-5.2 31.8-9.7 6.1-2.6 9.8-7.1 12.2-13 5.1-12.7 9.4-25.6 13.8-38.5.5-1.5.5-3.9 2.4-3.8 2.1 0 2.4 2.2 2.9 4.1 2 7 .1 13.9-.6 20.8-1.4 14.3-3.7 28.6-5.6 42.8-.9 7-4.2 12.6-10.7 15.8-9.5 4.6-19.9 6.5-29.7 10-16.7 6-33.5 11.9-50.2 17.8-1.5.4-3.3.8-5.1 1.2z"/>
|
||||||
|
<path fill="#54575a" d="M1048.9 1251c0 1.7 0 3.3.1 4.9-3.2-.4-3-3.3-3.6-5.3-2-6.7-5.4-12.5-9.1-18.2-1.1-1.6-2.2-3.3-4.3-4.3-2.3 5.3-1.9 9.9 1.5 14.2 5.5 7 9.6 14.8 13.1 22.9 4 9.1 3.1 18.5 2.5 27.9-1.2 16.6-4.4 32.9-9 48.8-7.5 26-17.8 50.9-34.2 72.7-10.3 13.8-22.1 26.3-37.1 35.3-5.9-1.2-8.3-5.9-6-12.5 4.4-12.8 11.5-24.2 19.3-35.1 12.3-17.1 24.1-34.5 28.7-55.6 1-4.6 4-8.3 5.2-12.8.5-3.1 2.4-5.6 3.2-8.6 1.1-3.9 3.1-.9 4.6.2 3.1.4 3.4-1.8 3.7-4 .2-1.6-.8-3.2.3-4.7 2.2-2 2.6-4.6 2.8-7.3-2.8-6-.2-12 .3-18 4.3-4.8 5.7-11.5 10.9-15.8 2.9-2.4 1.4-6.2.1-9.4-3-7.3-7.1-13.9-12-20-5.9-7.3-6.5-15.4-4.2-24 .9-3.6 3.1-4.4 6.2-2.4 1.3.8 2.3 1.9 3.2 3.1 6.6 8.5 11.9 17.5 13.8 28z"/>
|
||||||
|
<path fill="#54575b" d="M863 1250c4.2-7.7 7.1-16.1 12.5-23.1 2.2-2.9 4.2-7.6 7.9-6.5 3.9 1.2 2.3 6.2 2.7 9.7.6 5.7-2.9 10-5 14.8-9.5 10.6-15.7 22.9-16.9 37.2-.4 5.3 5.8 11.8 11 12.3 1.3.1 1.8.5 1.9 1.7.3 4 2.4 7.6 2 11.7-.4 3.4 1.2 5.7 4.1 7.2 2 3 1.1 6.8 2.3 9.8.7-3.1 1.3-6.3 2.9-9.3 1.4-2 2.8-2.4 4 .2.8 1.7 1.1 3.5 1 5.3-.2 5.6.3 10.9 4.7 15.1 3.2 18 9.4 34.5 20.2 49.6 10.8 15.1 19.7 31.5 27.1 48.7 1.2 2.8 2.2 5.6 1.7 8.7-.6 4-2.2 7-6.9 6.8-3.3-1.2-5.9-3.6-8.6-5.8-24.5-20.9-41.4-47.1-52.4-77.2-8.4-22.9-14.5-46.4-16.1-70.8-.9-9.1-.7-18.2-.2-27.3.3-4.9 4.5-8.7 6.6-13.1 2.2-4.6 5.1-9 8.3-13 3.7-4.7 3.2-9.8 2.4-16.2-6 7-9.7 14.1-12.5 21.7-.8 2.3-1.3 4.8-2.8 6.9-.4.6-1.1 1.4-2 .6-.6-.5-.2-1.2 0-1.8.1-1.4.1-2.7.1-3.9z"/>
|
||||||
|
<path d="M903.9 827.9c-1.7 2.2-.6 4.7-.9 7-.8 5-1.1 10-2 15-1.8 7.2-2.2 14.6-2.9 22-1.6 15.7-2.7 31.5-4.8 47.2-.9 6.2-.8 12.5-1.2 18.8-1.4 3.2.6 6.8-1 10 .7 17.2-2.6 34.2-4.7 51.2-.5 4.2-1.3 8.6-2.3 12.8-1.7 2.8 1.1 6.2-1 9v1c-.1 21.3-3.8 42.3-6.5 63.4-.3 2.1 1.9 3.6.5 5.6l-2 4c-1.7 2.4-.9 5.5-1.9 8.1l-1.2 12.9c-.8.9.7 3.1-1.7 3.1-.1-3.7-.1-7.3-.2-11 2-9.4 1.8-19 4.2-28.4 1.7-6.6 1.2-14 1.7-21 1-14 2.2-27.9 3.8-41.8 1.4-11.5 2.1-23.1 3.2-34.6 1.2-11.7 2.6-23.3 3.7-35 .9-9.4 1.7-18.8 2.2-28.2.3-6.1 2.2-12.1.1-18.3-3.9 24.6-4.6 49.5-7.5 74.2-1.3-9 .4-17.8.9-26.7.4-8.7 2-17.4 1.6-26.2 1.7-16.1 3.4-32.3 4.9-48.4 1.9-20.5 4.3-40.8 8.2-61 4.3-22.5 10.5-44.5 18.2-66 .9-2.6 1.7-5.4 3.6-7.5.8 1.9 2.1 3.5 1 5.9-6.2 13.7-8.3 28.4-10.8 43-.9 5-1.4 10.1-2.1 15.2-1.6 8.1-1.6 16.5-3.1 24.7z" class="stv25"/>
|
||||||
|
<path fill="#b0b2b4" d="M1044.9 1118c-1.6-2.8-1.4-5.9-1.6-9-.4-4.9.8-10.2-2.7-14.7-.9-1.1-2.8-3.5.6-4.7.9-.3.7-1.3.5-2.2-3.7-22.4-4.8-45.1-6.7-67.6-1.8-21-4-41.9-5.8-62.8-1.2-14.7-2.1-29.4-3.2-44.1-.3-4.3-1.3-8.5-1-12.9-1.9-5.5-.5-11.2-.2-16.7.4-6.7.2-13.3-.4-19.9-2.4-23.5-3.6-47.1-7.8-70.4-2.7-14.7-4.9-29.5-10-43.6-.8-2.1-.6-3.9 1.4-5.3 5.8 14.2 9.4 28.9 13 43.7 7.3 30 10.5 60.5 12.2 91.2.8 13.3 2 26.5 3 39.8.2 17.2 1.6 34.4 2.7 51.6.2 2.5 0 5.1 0 8.9-3.6-5-2.3-9.5-2.5-13.4-.6-11.8-1.8-23.6-1.8-35.4 0-8.4-1.8-16.6-1.6-25 0-1.1.7-3.2-1.3-3.1-1.6.1-1.6 1.9-1.5 3.2.9 12.5 2.2 25.1 2.8 37.6.5 9.8 1.6 19.5 2.2 29.2 1 16.4 2.8 32.7 3.8 49 .8 12.4 2 24.7 2.3 37.1.2 11.6 1.7 23.1 3.5 34.6.6 4.1.6 8.2.6 12.4 0 1.9-.1 3.6.9 5.3-.2 2.7-.6 5-1.4 7.2z"/>
|
||||||
|
<path fill="#616163" d="M812.9 1093c0-5.3 0-10.6-.2-16-.1-2.6.6-3.1 3.2-2.2 7.9 2.8 8 2.7 8.1 11 0 4 0 8 .2 12 0 1.4-.6 3.2 1.9 3.2.2 3.5-2.5 6.5-1.9 10.1 1 5.2.3 10.5.7 15.7.1 1.4-1 3.9 1.2 4.1 2 .1.8-2.4 1.3-3.6.2-.5.3-.9.5-1.4 2.6 2.8 2 6.3 1.4 9.4-1.6 7.2-2.4 14.4-2.7 21.7 0 1.5-.3 3-1.5 4.1-4.1-.1-8.7-1.3-12.1.2-4.2 1.8-.3 7.6-2.7 10.9-3.3-6.1-2.3-12.8-1.1-18.9 1.4-7.3 1.5-14.4 1.5-21.7 0-3.4-.5-7.1 2.7-9.7 1.4-9.7-.6-19.3-.5-28.9z"/>
|
||||||
|
<path fill="#626264" d="M1094.1 1079c3.7-2.2 7.7-3.4 11.7-4.8-.3 8.4-.7 16.8-.8 25.3-.1 8.4 0 16.8 0 24.4.3-.3-.8-2.3.8-3.1 1.8 1.5 1.7 3.5 1.7 5.5.1 2.8.3 5.7 0 8.5-1.2 10.2 2.8 20.1 2 30.3-.2 2.4.4 5.1-1.8 7-1.3-1.9-1-4.2-.8-6.2.4-4.1-1.4-5.1-5.1-4.7-2.9.2-5.9 0-8.8-.1-1.4-1-1.7-2.5-1.6-4 0-6.7-1.1-13.2-1.8-19.8-.2-2-.3-4 1.4-5.5 2.8.2 2.5-1.9 2.6-3.7l.3-16.2c1-4-1.9-7.5-1.6-11.4-.1-5.2 0-10.3 0-15.5.2-2.1 0-4.3 1.8-6z"/>
|
||||||
|
<path fill="#9a9ca0" d="M1007.9 744.2c-2 3.7.5 6.8 1.4 10 6.5 23 10.8 46.4 12.8 70.3 1.3 15.8 3.6 31.6 4.7 47.4.5 7.5-.5 15.2-1.2 22.7l-.6 5.4h-1v-2c-2.4-3.5.9-7.5-1-11-1.7-18.8-2.7-37.6-4.8-56.3-1.3-11.3-1.8-22.8-3.3-34.1-1.8-13.4-3.2-27-7.2-40-4.4-14.5-8.9-28.9-16.5-42.1-4.4-7.7-10.2-14.2-16.3-21.2-2.1 4.5.6 9-2 12.8 0-10.9.1-21.7.2-32.6 0-1.7-.7-3.7.8-5.2 0 1.4.8 2.3 1.9 3.1-4.7 6.7-1.9 15.4 5.8 17.4 2.6.7 4.7 1.4 5 4.4-1.7.7-2.3-2.6-3.6-1.2-1.3 1.3.4 2.7 1.2 3.8 6.5 9.6 11.7 19.9 16.7 30.3.5 2.4 2.4 4.3 2.2 6.9.1 2.2 0 4.4 2 6 .9 1.7 1.9 3.5 2.8 5.2z"/>
|
||||||
|
<path fill="#151516" d="M825 1161c-.2-10.1 1.4-19.9 3-29.8.3-1.7-.1-3.6-.1-5.4.2-2.3.2-4.7.8-6.9.8-3 3-4.9 6.3-4.7 3.2.2 5.5 2.2 5.7 5.3.6 11.4 1.5 22.9-.9 34.2-.8 3.8-.5 7.9-.8 11.9-.2 2.3-.2 4.7-.7 6.9-.7 3.1-2.8 5-6 5s-5.1-1.9-6.2-4.9c-1.4-3.6-1-7.6-1.1-11.6z"/>
|
||||||
|
<path fill="#171819" d="M1091.1 1131.8c.2 9.8 2.3 19.5 2 29.3-.4 3.8-.6 7.6-1.1 11.4-.4 3.3-2.4 5.5-5.9 5.6-3.7.2-5.8-2-6.5-5.5-.1-.3-.2-.7-.2-1-.1-16.7-3.5-33.3-1.5-50.1.4-3.7 1.8-6.5 5.9-6.7 3.8-.2 6 1.9 6.5 5.5.4 3.9.5 7.7.8 11.5z"/>
|
||||||
|
<path fill="#131415" d="M1107.8 1172.1c-.3-7.4.8-14.7-1.3-22.2-1.8-6.4-.4-13.8-.4-20.7 0-2.8-.2-5.6-.2-8.4.4-3.7 2.3-5.9 6.1-5.9 4.1.1 5.8 2.7 6.3 6.4 0 .2.1.3.1.5.7 15.2 4.1 30.2 2.6 45.5-.2 1.7-.3 3.3-.6 4.9-.5 3.5-2.4 6-6.2 5.9-3.8.1-6.2-1.9-6.4-6z"/>
|
||||||
|
<path fill="#121213" d="M813.1 1121.9c-2.1 6.8-.1 13.8-1 20.7-1.3 9.8-3.2 19.6-2 29.6-1.4 3-2.8 6.2-7.1 5.4-4.6-.8-5.7-4.4-5.7-8.2-.2-11.1-2-22.2 1.9-33.1 1.1-3 .4-6.6.5-9.9.1-1.8.2-3.7.4-5.5.6-3.8 2.5-6.8 6.7-6.6 4.6.2 6.3 3.4 6.3 7.6z"/>
|
||||||
|
<path d="M923.9 725.1c6-13.1 11-26.6 18-39.2 2.2-6.1 5.5-11.5 9.2-16.8 1.4 0 2.3 1.1 2.3 2.2.1 6 3.2 12.1.5 18-2.5 5.5-.8 11.3-2 16.8-2-2.5-.7-5.5-1.1-8.2-.2-1.1.2-2.6-1-3.1-1.5-.7-2.2.8-3.2 1.7-9.6 9.3-15.6 21-21.3 32.7-.9 1.9-1.5 4.3-4.5 3.7 1.1-2.6 2.1-5.2 3.1-7.8z" class="stv25"/>
|
||||||
|
<path d="M1049.1 1293.1c0-.5-.2-1-.1-1.5 2.1-19.1-6-34.7-17.1-49.1-4.1-5.4-2.5-10.7-1.6-16.1.4-2.4 2.1-.6 2.8.2 5.5 5.5 9.1 12.1 12 19.2 1.4 3.3 1.8 7 3.9 10.1.3.7.6 1.3.9 2 .5 11.8.2 23.5-.8 35.2z" class="stv17"/>
|
||||||
|
<path d="M862.9 1253.8c1.3 2.9 1.3 0 1.4-.4 2.7-8.6 6.2-16.8 11.6-24.1.3-.4.4-.9.8-1.3 1.4-1.3 2.4-4 4.5-3.3 1.9.6.7 3.2.9 5 .8 6-.5 11.2-4.7 16-5.8 6.5-7.9 15.6-13.8 22.2-.7.8-.4 2.6-.4 3.9-.1 8.1-.1 16.3-.1 24.4-1.5-14.2-1.8-28.3-.2-42.4z" class="stv19"/>
|
||||||
|
<path fill="#3a3b3d" d="M1093 1102c1.5 3.2 4.3 6.3 1.1 10-8.2-7.2-17.2-13.5-25.9-20.1 1.1-3.4 4.3-3.1 6.8-3.9 4.9.7 7.9 4.5 11.4 7.3 2.4 1.9 6 2.9 6.6 6.7z"/>
|
||||||
|
<path fill="#353536" d="M824.1 1111c-2.4-3.9-.4-7 1.9-10.1.2-.2.3-.5.3-.8 4.2-5.5 9.5-9.4 15.9-12 3.2-.3 6.2-.2 7.5 3.6-8.6 6.5-17.1 12.9-25.6 19.3z"/>
|
||||||
|
<path d="M870.2 1119c.6-1 1.2-2.1 1.7-3.1 1.6 1.8.5 3.9 0 5.6-1.8 5.7-.4 11.9-2.9 17.5-.2-6.7.5-13.3 1.2-20z" class="stv36"/>
|
||||||
|
<path d="M867.1 1165c3.6 1.3 3.1 4.3 2.6 7.1-.3 1.4-1.4 2.4-2.8.7.1-2.6.1-5.2.2-7.8z" class="stv19"/>
|
||||||
|
<path d="M1046.8 1153c-.7-3.6-2.9-7.1-.9-11 .7.1.7.7.9 1.2v9.8z" class="stv16"/>
|
||||||
|
<path d="m1046.8 1143.2-.9-1.2v-3c.1-3.7.1-7.3.1-11 2 5 .8 10.1.8 15.2z" class="stv14"/>
|
||||||
|
<path d="M1005.1 738.9c-.2.5-.6 1.7-.9 1-1.1-2.1-2.8-4.4-1.1-7 .7 2 1.3 4 2 6z" class="stv18"/>
|
||||||
|
<path d="M868.9 1141.8c1.5 2.9.1 5.5-.7 8.2 0-2.8-.5-5.6.7-8.2z" class="stv36"/>
|
||||||
|
<path fill="#fdfdfd" d="M1093 1102c-6-4.7-12-9.4-18-14 5.6-4.6 12.3-7 19.1-8.9-.1 6.3-.1 12.6-.2 18.9 0 1.3.7 2.9-.9 4z"/>
|
||||||
|
<path fill="#fcfcfc" d="m842.1 1088.2-15.9 12c-2.6-6.5-.8-13.2-1.1-19.8 0-.9 1.1-1.5 1.8-1.1 4.9 2.6 10.5 3.8 14.8 7.5.4.2.3.9.4 1.4z"/>
|
||||||
|
<path d="M884 1012c.6-14.6 3.1-29 4.4-43.5.5-5.3 1.1-10.5 1.7-15.8.2-1.6-.5-3.4 1-4.7 1.2 4.4 3.7 3.7 5.4.8 6.3-10.5 14.5-19.6 21-29.9.7-1.1.8-2.5 1.5-3.7 6-11.1 10.2-23.1 19.5-32.4 3.8-3.8 7.3-7.9 10.8-12.1 2.6-3.2 5.1-5.2 9-1.4 1.8 1.8 4.5 2.7 6.8 4.2 6.1 4 8.3 10.5 10.1 17.1.4 1.4.3 2.9 1 4.3 6.7 13.6 10.4 28.1 13.1 42.9.5 2.9 1.8 5.7 2.5 8.6 1.2 4.9 2.8 9.6 1.7 15-.8 4 1.5 8.5 2 12.9.8 7 .5 14 1.4 21 1.6 12.4 3.7 24.9 2.9 37.7-.3 5.7-1.2 11.8-.2 18 1.1 6.2-1.1 13-2.4 19.4-1.7 8.4-4.1 16.7-6.2 25-.2.9-.3 2.2-.9 2.7-4.2 3.7-5 8.9-6.2 13.8-1.9 7.8-7.8 12.6-13.3 17.6-4.7 4.3-10.3 7-16.1 9.6-4.4 2-8.6 4.9-12.7 7.6-6.4 4.1-12.6 1.3-18.6 0-3.6-.8-7-3.3-9.1-7.1-3.5-6.3-10.5-9.8-12.9-17.4-.8-2.4-4.5-5-7-7.3-2.1-1.9-.9-4.7-1.9-6.8-2.1-4.9-.4-10.2-1.6-15.2-1.2-5.4 1.5-10.7 0-16.1-.7-2.5 1.8-4.4.9-7.5-3.8-13.9-1.5-28.1-1.2-42.1.2-7.3-1-14.5-.4-21.7.1-1.3 1.2-4.1-1.3-3.9-2 .2-3.8 2.2-3.4 4.8.1 2.1 1.7 4.3-1.3 5.6zm97.1 221.6c-.8 5.6-2.5 10.8-8.3 13.5-6.2 2.8-11.1-.3-15.2-4.3-3.2-3.2-6.1-6.7-8-11.2-3.3-7.7-.1-11.8 3.5-15.1 3.6-3.3 12.5-4.3 16.8-1.5 6.6 4.2 10.3 10.5 11.2 18.6zm-104.2-142.7c-3.8-2.1-1.6-4.9-1.2-7.8 1.3-9.8 2.2-19.7 3.3-29.5 1.2-10.6 2.6-21.2 4-31.7 2.1 4.5 2.1 9.2 2.1 14.1-.1 8.5-.1 16.9 0 25.4 0 3.7 0 7.3-3 10.1-1.2 1.2-1.6 2.7.6 3.4 2 .7 2.6 2.1 2.3 3.9-.9 5.2-3.3 9.5-8.1 12.1z" class="stv36"/>
|
||||||
|
<path fill="#c2c3c5" d="M892.1 1108.2c3.6 1.4 1 4.6 1.9 6.8v1.9c-1.7 2.5 1.4 5.6-1.1 8-3.8 3.6-6.6 8.1-9.5 12.7 2.9.2 4.1-2 6-2.8 1.1-.4 2.2-1.3 3-.1.6.9-.3 2-1.2 2.4-6.3 3.4-11.2 8.7-17.1 12.8-1.3-3.9-1.3-4.4 1.8-5.4 1.4-.4 1.8-1.2 2.3-2.2 2.9-6 6.5-11.6 10.7-16.7 1.3-1.6.8-3-.3-3.9-1.6-1.3-2 .6-2.8 1.5-4.1 4.3-7.3 9.3-11 14 .5-5.5 4.4-9.2 7.2-13.5.9-1.1 1.4-2.5 2.8-3 5-2.6 4.6-8.5 7.3-12.5z"/>
|
||||||
|
<path fill="#b8babd" d="M1033 1171c2.5 5.8 6.1 11 8.1 17 .6 1.7 1.3 3.3-.2 5.6-.4-10.7-7.8-15.2-15.5-19.1-.7 9 7.3 13.2 11.4 19.7 2 3.2 4.4 6.1 4.9 10-4.8-6-8.8-12.8-14.7-17.6-1.8.4 0 3.6-2.4 2.9-1.4-.4-2.4-1.7-2.4-3.5v-13.5c0-3 1.6-2.3 3.2-1.4 2 1.1 4 2.4 7 4.2-2.5-7-7.7-10.9-10.4-16.3 1.4-3 2.2-.2 2.8.5 2.7 3.8 5.4 7.7 8.2 11.5z"/>
|
||||||
|
<path d="M884.8 1120.8c-.4 1.5-1.4 2.5-2.8 3-3.1-8.7-1.7-18.1-3.8-26.9-.3-1.3.5-3 1.2-4.2.9-1.7 2.2-3.9 4.4-3.3 2.1.5 1.2 2.8 1.2 4.4-.3 7.8.9 15.6-.9 23.3-.3 1.2-.5 2.6.7 3.7z" class="stv36"/>
|
||||||
|
<path fill="#bbbcbf" d="M877 1198c0 3.8-4.5 4.1-5.8 7.1.7-4.8 4.2-9 2.6-14.1 2.8-6.7 9.3-8.2 15-10.8.6-.3 1.4-.2 1.6.6.3.9-.5 1.5-1 2.1-3.5 3.9-7.1 7.8-10.7 11.7-.7 1-1.8 1.9-1.7 3.4z"/>
|
||||||
|
<path fill="#c1c3c5" d="M872.1 1179.9c0-3.8-.1-6.6 0-9.4.2-3.4 1.6-6 5.3-6.8 3.7-.8 6.7-2.8 9-5.8.8-1.1 2-2.5 1.3-4.1-.7-1.7-2.5.9-3.6-.9.3-.6.5-1.5 1-1.9 1.7-1.4 3.5-4.2 5.8-2.5 2.2 1.5 1.2 4.3 0 6.3-3.2 5.4-6.2 11.2-13.2 12.6-2.5.5-3 2.1-2.9 4.3.2 2.6.4 5.4-2.7 8.2z"/>
|
||||||
|
<path d="M1034.9 1153c.4 1.4.8 2.9 1.3 4.3.2.6.5 1.4 1 1.7 3.9 2.2 3.9 2.2 3.8 7.7v3.8c-2.5-1-2.6-2.9-3.1-4.5-3.3-8-5.3-16.7-12.7-23.2-1.2 4.6 2.7 6.5 3 9.8-4.1-2.2-6-5.9-7.1-10.2-.2-1 0-2.1.8-2.7 1.4-1 2.6 0 3.6.7 4.7 3.1 6.8 8 9.4 12.6zm2.1-23.1c.6 1.1 1.2 2.3 1.7 3.4.7 1.5.6 1.4-1.2 2.5-.6.4-.5 1.9-.7 3-6-7.4-9.4-16.4-15.5-23.7-.3-.4 0-1.2 0-2.9 6.4 5.8 11.7 11.1 15.7 17.7z" style="fill:#b7b9bb"/>
|
||||||
|
<path fill="#bcbec0" d="M872.4 1189.1c1.1-6.2 5.9-10.3 8.6-15.5.8-1.5 3.3-2.1 1.4-4.8-.6-.9 1.3-2.6 2.9-2.7 1.7-.1 3.6-.6 6 .8-6.9 7.1-14 13.8-18.9 22.2z"/>
|
||||||
|
<path fill="#babcbe" d="M1036.9 1143.1c1.1 2.1 2.3 4.2 3.1 6.4.7 1.8-.3 1.4-1.2.6-2.4-4.6-5.3-8.8-8.8-12.5-1.8.6.7 2.2-1 2.9-3.5-3.7-4.4-8.9-7.5-12.9 6.6 3.7 10.8 9.8 15.4 15.5z"/>
|
||||||
|
<path fill="#c9c9c8" d="M955 1155c1.5 0 2.7.7 2.8 2.2.1 6.8.1 13.6 0 20.3 0 1.6-1 2.9-3 1.4-.3-8-.8-15.9.2-23.9z"/>
|
||||||
|
<path d="M877.3 1159.6c-.3-2.9-.8-5.3.4-7.6.5-.8 1.2-1.8 2.3-1.5 1.3.3 1.1 1.6.9 2.4-.4 2.3-.5 4.9-3.6 6.7zm77.7-4.6c-.1 8-.2 16-.2 23.9-1.2-8-1.7-16 .2-23.9z" class="stv36"/>
|
||||||
|
<path d="M867.6 1176.3c.7.5 1.2.6 1.2.8.1 2.1 2.1 4 .7 6.2-.4.7-1.5.6-1.7.1-1.2-2.3-1-4.6-.2-7.1z" class="stv19"/>
|
||||||
|
<path d="M901 850c-.2-5.1.4-10.1 2-15 .8 5.1-1.4 10-1 15h-1zm-18 171c.3-3-.8-6.2 1-9-1.4 2.9 3.2 6.4-1 9zm9.8 103.9c.6-2.6-.5-5.5 1.1-8 .3 1.6.5 3.2.8 4.9.4 1.6.3 3-1.9 3.1zm-19.7-21.9c.8-2.7-2-6.2 1.9-8.1.1 2.9-.5 5.6-1.9 8.1zM891 948c.4-3.3-.9-6.8 1-10-.8 3.3 1.9 6.9-1 10z" class="stv36"/>
|
||||||
|
<path fill="#8a99a9" d="M952 1334.4c-.4 4.5.7 9.7-.8 14.8-.4 1.3-.5 2.8-2.3 2.6-8-1-16.6-.3-23.1-6.5-.7-.7-1.1-1.1-2-.2-1.2 1.3-2.5.3-3.7-.2-20.2-8.2-14.5-2.8-12.8-26.2.1-2 .6-3.9.8-5.9.2-1.9.1-4.9 1.9-5 2.2-.2 5.8 1.2 6.2 3.3.6 3.4 1.7 1.3 3.2 1.5 1.6.2 6.1-2.1 5.2 3.2-.2 1.3 1.6 1.4 2.3 1 5-3.1 9.9-.1 14.8.3 10.5.9 10.5 1.3 10.5 12-.2 1.7-.2 3.2-.2 5.3z"/>
|
||||||
|
<path fill="#9da6ae" d="M958.1 1335c0-4.5.1-9 0-13.5-.1-2.4.7-3.4 3.3-3.7 8.5-.8 17.1-1.7 25.3-4.6 2.2-.8 4.5-1.4 6.3.9.5.7 1.5.9 2.2.2.2-.2.3-1 .2-1.3-4.1-5.6 3-4.4 3.8-4.6 2.8-.9 2.6 2.1 2.8 3.9.8 7.6 1.4 15.2 2.4 22.7.3 2.5-.3 3.8-2.3 4.8-12.3 5.9-25.1 10.2-38.7 12.1-4.2.6-5.7-.8-5.4-5.1.3-3.8 0-7.8.1-11.8z"/>
|
||||||
|
<path fill="#889bad" d="M1023.1 1327.8c-1.5-.5-.7-2.5-2.4-3.5-.9 3.6-.3 8-4.7 9.7-1.2.5-2.5.9-3.7 1.4-2.5 1.1-3.8.2-4.2-2.3-1.5-8.4-3-16.9-4.7-25.3-.3-1.6.2-2.5 1.5-3.3.8-.5 1.7-1.1 2.5-1.7 4.8-3.4 9-2.7 12.7 2.2.5 5.7 2.9 11.1 3.7 16.7.2 2.1 1 4.2-.7 6.1z"/>
|
||||||
|
<path fill="#7f96ae" d="M898 1336.1c-5.5-1.8-5.9-6.3-6-11.1 0-3 .1-5.9-.7-8.9-.8-2.7-1.4-.3-2.1-.1-2.2-3.7-.5-6.9.9-10.3.1-.2.1-.3.2-.5 4.8-8.1 11.5-8.2 16.2 0 .4.8.5 1.9.3 2.9-1.5 8.1-3.2 16.2-4.8 24.4-.5 2.2-1.6 3.6-4 3.6z"/>
|
||||||
|
<path fill="#c4c5c7" d="M1032 1291c.4 6.3-1.9 12.4-1.2 18.7-1.9 2.2-2.5.1-3.2-1-2.7-4.2-5.5-8.3-9.2-11.8-2.8-2.6-.3-4 .9-5.8 2-1.7 3.5-3.8 4.7-6.1.7-3.3 2.7-3.1 4.6-1.3 2 1.9 3.8 4.1 3.4 7.3z"/>
|
||||||
|
<path fill="#d1d1d1" d="M883.1 1283.2c1.8-.8 2.6.5 3.5 1.7 2.4 3.1 4.9 6.1 7.3 9.1-3.1 4-6.2 8-9.4 11.9-.6.8-1.2 2.3-2.6.9-1-3.2.5-6.6-.9-9.8-1.6-4.9-1.7-9.6 2.1-13.8z"/>
|
||||||
|
<path fill="#c6c6c7" d="M1023.1 1327.8c-.2-5.6-1.9-11-3.4-16.3-.6-2.2-1.6-4.4.3-6.5 3.4 3.5 5.1 8.1 7.9 12 2.1 7.1.9 9.8-4.8 10.8z"/>
|
||||||
|
<path fill="#c9c9ca" d="M890 1305.7c.6 3.5-.7 6.8-.9 10.3-1.1 3.7-2.2 7.5-3.2 11.2-2.5-3.9-3.5-7.9-2.8-12.2 2.7-2.8 3.5-7 6.9-9.3z"/>
|
||||||
|
<path d="M881 1297.1c1.6 3.2.5 6.5.9 9.8-1.8-3.1-.6-6.5-.9-9.8z" class="stv19"/>
|
||||||
|
<path d="M903.9 827.9c.5-8.4.7-16.8 3.1-24.9-.4 8.4-.8 16.8-3.1 24.9z" class="stv36"/>
|
||||||
|
<path d="M1023 887c2 3.5.5 7.3 1 11-2.7-.5-2.2-2.7-1.7-4.2.8-2.3.6-4.5.7-6.8z" class="stv16"/>
|
||||||
|
<path d="M1032 1291c-1.3-2.1-2.6-4.1-3.8-6.2-1.5-2.4-2.8-1.3-4.2.2-1.4-1.2-.8-2.6-.5-4.1 3.5-14.9 2.9-29.9-.1-44.8-1.2-6.1 1.1-11.6 2.3-17 .8-3.4 6.6-2.7 10.2-3.8 2.7-.8 5.4-1.1 7.6-3.1 1.4-1.4 3.8-1.6 3.3 1-2.1 9.9 4 19.1 2.3 29-.5 2.9-.1 6-.1 9-4-9.1-7.6-18.3-14-26.2-.3-.4-.5-.9-.9-1.2-1.7-1.5-2.9-4.3-5.6-3.4-2.5.9-2.3 3.7-2.5 6-.7 7.7.9 14.5 6.1 20.8 5.3 6.4 9.4 13.6 12.2 21.6 1.4 4.2.7 7.8-2.8 10.2-3 2.1-4.5 4.8-5.3 8-.6 2-1.6 3.7-4.2 4z" class="stv17"/>
|
||||||
|
<path fill="#adacaf" d="M976 1232.6c0 4.6-2.6 7.4-6.7 7.4-5.2-.1-11.2-6.1-11.3-11.4-.1-4 3.4-7.6 7.5-7.6 5.7-.1 10.6 5.3 10.5 11.6z"/>
|
||||||
|
<path d="M983.2 1342.6c-1.6-2.2-1.7-4.6-.4-6.5 1-1.5 2.9.5 1.8 2.7-.6 1.2.7 2.7-1.4 3.8zm.9-19.5c-.1-2.2-.4-4.4 1.4-7.6.6 3.6.8 5.7-1.4 7.6zm1.4 3c.6 2.7-.3 4.4-1.9 6.1-.6-2.3-.8-4.3 1.9-6.1z" class="stv17"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" id="Layer1" x="0" y="0" style="opacity:1;z-index:1" viewBox="0 0 1920 1920">
|
||||||
|
<style>
|
||||||
|
.sta6{fill:#d4d4d4}.sta17{fill:#565558}.sta20{fill:#7c7f83}.sta21{fill:#bbbcbd}.sta35{fill:#575b60}.sta36{fill:#f9f9f9}.sta42{fill:#c2c4c6}.sta46{fill:#acaeb0}.sta78{fill:#bdbfc1}
|
||||||
|
</style>
|
||||||
|
<g id="Group_2">
|
||||||
|
<path fill="#d1d1d1" d="M974.2 1312.2c4.1-5.9 9.4-10.8 14.7-15.4 11.3-9.9 23-19.4 35-28.7 16.2-12.6 34.5-21.8 53.2-30.2 4.8-2.2 9.6-4.6 14.4-6.9 13.2-6.3 26.2 1.6 32.5 13-6.3 5-11 11.5-16.4 17.3-9.2 10-17 21.2-25.4 31.9-9.3 11.7-20.5 21.7-31.8 31.4-3.9 3.3-8 6.4-11.4 10.4-2.1 2.4-4.8 3.6-8 2.7-1.5-.6-2.2-2-3-3.3-8.3-13.2-19.3-22.3-35.2-24.5-4.4-.6-8.6.4-12.8 1.7-2 .5-3.8 1.9-5.8.6z"/>
|
||||||
|
<path fill="#bababb" d="M1030.9 1337c3.6.1 5.9-1.6 8.4-4.3 4.5-4.8 9.6-9.1 14.8-13.2 5.7-4.4 10.3-9.8 15.5-14.7 14.8-13.7 24.6-31.4 38.1-46.2 3.8-4.2 7.6-8.3 11.4-12.5 1.3-1.4 2.6-2.6 4.7-2.3 5.1 8.6 5.1 17-.2 25.7-17.3 28-34.8 55.9-59.9 77.8-11.4 10-21.8 21.5-35.6 28.4-.7-1.5.2-2.6 1-3.6 6.6-8.9 6.4-18.4 3.1-28.4-.8-1.9-2.7-4-1.3-6.7z"/>
|
||||||
|
<path fill="#646a72" d="M1030.9 1337c3.2 8.1 6.1 16 4.3 25-1.1 5.5-4.1 9.7-7.2 14-5.5 4.2-12.3 5.5-18.8 6.7-4.3.8-8.8-1.1-13-2.7-11.5-4.6-21-11.5-26.3-23.1-.5-3.7 1.3-5.9 4.7-7.1 2.3-.8 4.6-1.9 6.7-3.1 5.2-2.9 10.4-2.8 15.6-.1 2.9 1.6 5.8 1 8.6-.2 1.4-.6 2.7-1.4 4.2-1.5 1.5-.1 3.2-.1 3.6 1.8.3 1.6-.9 2.4-2.2 2.9-1.6.7-3.7.5-5.4 2.8 3.7-1.2 7.8-4.1 8.3 2.4.1 1.1.5.1.6 0 4.2-1.9 7.6 1.1 11.3 1.9-.5-9.7-5.2-17.4-11.7-24.4-2.1-2.2-5.2-3.8-5.5-7.4 1.8-1.4 3.1-.1 4.3.9 1.4 1.1 2.8 2.4 3.9 3.8 3.1 3.8 7.1 5 11.9 4.2.8 1.2 1.4 2.2 2.1 3.2z"/>
|
||||||
|
<path fill="#494b4e" d="M996.9 1348c-5.2-2.8-10.4-3-15.5.2-1.4.9-2.9 1.9-4.4 2.2-3.9.7-5.9 3.1-7 6.6-7.6-12.5-9.1-25.1-.8-37.9 6.8-3.5 13.8-6.1 21.5-3.4 1.1 1.6.3 3.3 0 4.8-1 5.6-.3 10.6 2.7 15.7 1.4 2.4 1.8 5 4.7 6.8 2.6 1.6.7 3.7-1.2 5z"/>
|
||||||
|
<path fill="#82868c" d="M990.8 1317.1c-5.3-2.7-10.4-1-15.5.7-2.1.7-4 1.2-6.2 1.2.3-3.3 3.6-4.4 5-6.9 3.7-.3 6.7-2.8 10.4-3.3 13.1-1.8 23.7 3.3 33.2 11.4 4.5 3.9 8.8 8.1 11.2 13.8-4.5 3.4-7.9 1.1-11.3-2-2.8-2.5-4.5-6.3-8.7-7-6.2-2.2-12.7-3.9-18.1-7.9z"/>
|
||||||
|
<path fill="#040505" d="M990.8 1317.1c6.3 1.9 12.6 4 18 7.9 4.5 5.1 9.9 9.4 13.2 15.5 3.1 5.8 5.9 11.5 5 18.5-5.8-4-10.8-4.2-15.5-.7-.2-.3-.4-.5-.5-.8-.5-1.9 4-2.3 1.6-4.8-2.2-2.4-3.5.4-5.1 1-1.3.5-3 1.1-3.7 0-.9-1.6.9-2.5 2-3.4 1.4-1.1 3.1-1 4.8-1.2 1.4-.2 2.3-1.1 1.9-2.4-.3-1-1.8-1-2.6-.7-2.2.8-4.2 2-6.4 2.7-2.2.7-4.6 1.1-6.6-.7 1.2-2.6 2.3-5-2.2-5.7-1.8-.3-3.6-1.5-1.8-3.9.3-.4.4-1.3.4-1.3-5.5-1.7-2.2-7.2-4.3-10.3-1-1.4.4-7.6 1.8-9.7z"/>
|
||||||
|
</g>
|
||||||
|
<g id="Group_1">
|
||||||
|
<path d="M1265.9 1015.9c6.7 0 13.3.1 20 .1 3.6 1.3 7.4-.3 11 .9 6.5 1.7 10.9-2.7 15.8-5.5 1.3-.7 2.6-1.4 4-1.9 3.7-1.2 5 .7 3.9 3.7-1.6 4.4.4 4.8 3.9 4.7 7.4-.1 14.9 0 22.4 0 3.6 1.3 7.4-.3 11 .9 7 0 14 .1 21 .1 3.2 1.3 6.8-.3 10 .9 6.7 0 13.3.1 20 .1 3.6 1.3 7.4-.3 11 .9 6.7 0 13.3.1 20 .1 3.6 1.3 7.4-.3 11 .9 2.8 0 5.6 0 8.4.1 3.8.1 7.5.4 10.6-2.9 1.1-1.2 3.2-1.7 4.9-2.1 2.3-.4 4.5-.2 4.1 3.1-.4 3.2 1.2 3.9 4.1 3.9 7-.1 13.9 0 20.9 0 .4.5.3.9-.1 1.4-.7.7-1.8.8-2.6 2.1 2.8 2 6.2 1.7 9.3 2.1 3.3.5 6.7.6 9.5 2.6 1.8 1.2 3 .4 4.5-.5 3.9-2.6 8.2-3.6 12.8-3 5.1.7 10.3.9 15.3 1.9 2.1.4 4.8.7 4.6 3.5-.2 2.7-3 3-5.1 3.1-4.8.2-9.5 1.2-15.3 1.7.4 0 1.3.7 1.1.1-.1-.2 0-.3.4-.3 1.4 0 2.7.4 3.8 1 15.8 8.1 33.1 11.2 50.4 14.3 1 .2 2 .3 2.8.8.7.4 1.5.9 1.5 1.8 0 1-.9 1.4-1.6 1.6-3.8 1.3-7.8 1.8-11.7 2.2-8.4.9-16.8 2.3-25.3 2-1.8-.1.3 1.1-.3 1.6-18.8 1.1-37.5 1.7-56.2 3.4-7.9.7-15.8.3-23.7.9-3.6 1.2-7.4-.4-11 .9-5.3 0-10.7.1-16 .1-3.6 1.2-7.4-.4-11 .9-4.3 0-8.7.1-13 .1-4.9.9-9.8.1-14.7.4-1.8.1-3.6-.5-5.3.5-7 0-14 .1-21 .1-5.3 1.2-10.7-.4-16 .9-6.7 0-13.3.1-20 .1-5.3 1.2-10.7-.4-16 .9-7 0-14 .1-21 .1-5.3 1.2-10.7-.4-16 .9-7 0-14 .1-21 .1-4.9 1.2-10.1-.5-15 .9-4.3-.3-8.6.1-12.7 1.4-2.5.8-4.9.8-7.2-.4-5.3-.9-10.7-.8-16 0-6.7 0-13.3.1-20 .1-4.9 1.2-10.1-.5-15 .9-6.3 0-12.7.1-19 .1-4.6 1.2-9.4-.4-14 .9-3.7.3-7.4-.8-11 1-8.1.6-16.3 1-24.3 1-8.2 0-14.3 2.9-19.1 8.7-4.9 5.9-10.4 10.3-17.7 13.2-6.4 2.5-10.6 8.4-14.8 13.7-4.7 5.8-9.6 11.2-16 15.4-6.4 4.1-10.8 10.7-16 16.3-1.8 2 .6 1.9 1.1 2.8-1.2 2-3.4 2.6-5.2 3.5-3.6 1.9-7.7 3.3-7.8 8.4-1.8-1.9-1.4-5-3.9-6.5-.9-.9-1.7-1.9-2.2-3.2-.7-3-.6-5.9 0-8.9 7.5-24.8 24.7-42.5 44.6-58.8-23.8 2.3-47 4.3-70.1 6.9-10.1 2-10 2-10.1 12.3 0 2.8.6 5.7-1.2 8.2-3-.2-2.4-2.7-2.5-4.4-.3-3.5-.1-7-.1-10.5 0-2.9-1-4.2-4.2-3.9-5.3.6-10.6 1.2-15.9 1.7-2.9.5-5.8.5-8.7 1.2-3.5-1.9-7-1-10.6-.3-4.7.9-9.5 1.5-14.2 2.2-1.5-3.4-4-4.2-7.6-3.9-7.5.6-14.7 2.9-22.3 2.4-1-.1-2.1.2-3-.1-8.3-2.8-13.9 2.2-19.6 6.8-4.7 3.8-9.2 7.6-14.8 10-2.7 1.2-5.5 1.9-7.3-1.5-.4-4.3 3.1-6.6 5.1-9.7 5.8-6 10-13.2 15.4-19.5 3.9-4.5 8.7-8.3 11.3-13.8 6-6.3 13.1-11.2 20.1-16.3 26-19.1 51.5-38.8 77.7-57.5 14.3-10.2 28.6-20.5 43-30.7 1.2-.9 2.5-1.6 4-2 2-.4 3.8-1.1 5.6-2.2 2.1-1.3 4.1-2.3 5.8.7 1 1.8 2.7.6 4 .1 3.1-1.2 5.9-3.1 8.8-4.7 11-6.2 22.1-12.2 33.4-17.9 2.3-1.5 4.8-2.7 7.5-3 3.3.5 3.1 2.5 1.9 4.7-1 1.8-2.8 2.8-4.4 4-8.9 6.6-17.5 13.6-25.6 21.3-7.2 6.9-9.3 16.2-12.8 25-.9 2.3.3 3.8 2.7 4.3 1.7.4 3.7-.1 5.1 1.5 4.9 3.4 10.6 1 15.9 1.8 17.6 2.7 35.3 4.8 53 7 14.6 1.8 29.2 3.3 43.8 5.3 6.7.9 13.6.7 19.9 3.5 1.1.5 2.6.3 3.9.3h26.4c3.6 1.3 7.4-.3 11 .9 6.7 0 13.3.1 20 .1 3.5 1.4 7.3-.2 10.8.9z" class="sta6"/>
|
||||||
|
<path fill="#8d8f92" d="M639.1 1056c5.9-5.2 13-8.6 19.5-12.7 17.3-10.7 34.8-21 52.2-31.5 2.2-3.2 6-4 9.1-5.9 34.5-21.4 69.4-42 104.1-63.1 2.2-1.3 4.2-3.4 7.2-3 1.2 1.6 2.5 1.7 4.3 1 10.6-4.3 21-9.3 31.6-13.6 9.2-3.8 18.2-8.1 27.6-11.4 8.8-3.1 17-7.5 25.6-11.1 20.4-8.7 41-16.7 63.2-19.8 2.7-.4 5.3-.5 8-.3 3.2.3 6.7.6 8 4 1.4 3.6.4 7.4-1.9 10.4-10.2 13-21.9 24.6-35.1 34.4-8 6-14.6 13.6-22.8 19.4-8.1 5.8-16.2 11.8-23.8 18.1-14.1 11.7-29.7 21.2-44.7 31.7-13.7 9.5-27.4 18.9-41.1 28.3-8.8 6-17.6 12-25.7 18.9-.6.5-1.2 1.2-2 1.6-10.7 4.9-19.5 12.7-29.2 19.1-8.3 5.5-17.2 10-25.5 15.4-4.8 3.1-10.7 4.6-14.6 9.3-1.9.6-2.8-1.6-4.6-1.6-1.5 4.7 2 9.4 0 14.1-.3.4-.8.9-1.2.7-3.4-2.1-5.8-.4-8 2.1-.4.5-1.1.7-1.8.8-3.2-1-3.5-5.1-6.7-6.5-1.8 2.9.5 6.9-2.6 9.3-2.2.5-4.5.2-6.6 1.3-5-2-9.4.1-13.9 1.9-2.3-.8-4.1.6-6.1 1.5-28.4 13.2-55.4 29.1-82.3 44.9-8 4.7-16.2 9.2-24.3 13.9-6.7 3.8-13.7 6-21.4 5.6-9.4-.5-13-6.4-9.2-15 2-4.6 5.5-7.8 9.4-10.8 7.5-5.8 15.8-10.5 23.8-15.5 4.1-2.5 7.5-5.6 9.6-9.8 1.7-3.4 1-4.6-2.8-4.8-5-.2-9.9-.4-14.7 1.9-3.1 1.5-6.3 1.3-7.3-3.1.5-1.5 1.9-2.3 3-3.2 6.2-4.9 7.1-11.5 6-18.8-.1-1.5 1-2 2.1-2.4 14.8-6.2 26.5-17 39.8-25.6 7-4.5 13.6-9.6 20.5-14.3 2.4-1.5 4.9-2.8 5.3-5.8z"/>
|
||||||
|
<path fill="#d6d6d5" d="M831.1 940.3c-33.4 20.1-66.8 40.3-100.2 60.4-6.5 3.9-12.8 8.4-19.9 11.2-2.5-3.1-4.4-6.8-7.9-9-3-4-6.2-7.8-9.7-11.4-2.6-2.6-5.1-3.4-8.4-1.6-2.8 1.5-5.9 2.6-9.1 2.3-11-1.1-20.2 3.7-29 9.2-9.3 5.8-17 13.3-23.7 21.9-1.7 2.2-3.4 4.6-5.7 6.3-1.5 1.2-3.1 2.8-5.3 1.4 4-19.3 17.6-31.2 32.4-42.3 8.9-6.7 18.5-12.3 27.8-18.2 2.3-1.5 3.2-2.3 1-4.8-8.3-9.5-16.9-18.8-25.8-27.7-13-13.1-26.1-26-38.5-39.6-7.7-8.5-16-16.4-24-24.7-19.8-20.7-39.9-41.2-56.8-64.5-5.4-7.5-11.5-14.6-18.5-20.8-5.1-4.5-5.9-10.3-4.1-16.4 4.5-15.3 9.2-30.5 13.9-45.7 1.4-4.5 3.7-8.5 6.1-12.5 1.9-3 4.8-4.6 7.9-4.3 3.4.3 3.1 3.9 3.5 6.4 2 12.8 5.1 25.3 6.2 38.2.8 9.1 7.4 14.4 14 19.1 15.8 11.3 32.1 21.9 47.9 33.2 7.8 5.6 15.8 10.9 24 16 5.6 3.5 11.7 8.3 19 3 .6-.4 1.7-.2 2.4-.4 1.8-.6 3.7-1.4 5 .4 1.4 1.9.1 3.8-1.1 5-4.5 4.5-1.1 6.2 2.5 8.4 17.2 10.5 34.2 21 51.3 31.7 2.4 1.5 4.2 1.8 6.8.5 2.9-1.5 6.2-2.4 9.4-3.2 3.2-.8 4.4.7 3.1 3.8-.5 1.2-.9 2.8-1.9 3.5-5.2 4.1-1.2 5.5 1.9 7.4 13 8.3 26.3 16.2 39.3 24.5 5.6 3.6 12.5 5.3 19 7.2 8.1 2.4 15.5 6.4 23.4 9.3 10.2 3.6 20.1 7.9 30.1 11.8-1.6 3.5-4.6 4.9-8.3 5z"/>
|
||||||
|
<path fill="#818386" d="M831.1 940.3c2.7-1.7 5.3-3.5 8-5.2 26.3-15.9 52.7-31.7 79-47.6 27.6-16.6 55.2-33.3 82.9-49.8 2.9-1.7 5.4-4.2 9.1-4.4 3.5.6 6.6-.8 9.6-2.1 15.6-6.8 31.7-12.1 48-17 9.7-2.9 19-7.2 29.1-8.8 4-.6 7.2-.1 9.9 3 1.6 1.7 3.3 3.3 5.2 4.7 3.4 2.4 3.6 5 1.2 8.5-6.7 9.6-14.7 18.1-22.2 27-11.2 13.2-24.2 24.7-35.5 37.8-5.5 6.4-12.1 11.8-18.2 17.8-3.6 3.6-6.7 7.6-10.8 12.4 5.4-1.9 8-7.5 13.6-5.9.4 3.7-2.9 4.6-4.9 6-8.5 5.9-16.7 12.1-25 18.2-20.6 15.2-41.5 29.9-62.2 45.1-15.3 11.2-30.4 22.7-45.4 34.2-24.6 19-49.2 38-73.2 57.8-2.8 2.3-5.2 5.2-9.2 5.6-2.3-.7-2.6-2.8-3.4-4.6-2.4-5.1-4.6-10.3-8.4-14.6-2.4-2.8-5-3.6-8.3-1.5-.7.4-1.5.8-2.2 1.2-10.7 6.2-10.8 6.6-6.6 18.5.3.8.5 1.6.3 2.4-4 4.8-9.9 7.2-14.7 10.8-9 6.7-18.8 12.4-28.3 18.4-1.3.8-2.5 1.7-4.2 1.2-6.2-2.2-11-8.3-11.2-14.3.5-3.7 3.6-5.6 6.3-6.5 7.9-2.6 13.8-8.9 21.9-11.4 4.2-1.3 6.8-5.7 10.8-7.8 10.7-5.3 19.8-13.2 29.9-19.6 8.7-5.5 16.7-12.5 25.2-18.5 16.9-11.9 34.4-23.1 51-35.4 11-8.1 23.1-14.7 33.6-23.8 6.9-6 14.6-11.3 22.3-16.5 4.1-2.7 8.3-5.7 11.6-9.3 10-10.8 23.2-17.8 33-28.8 6-6.7 13.4-12.1 18.4-19.7 1.7-2.5 2.7-6 1.6-9-1-2.5-3.9-3-6.8-3.2-8.9-.6-17.4 1.8-25.9 3.7-14.4 3.3-28.2 8.7-41.6 14.7-15.1 6.8-30.3 13.3-45.5 19.6-15 6.2-29.6 13.1-44.7 19.1-3.7 1.8-3.1-.3-3.1-2.4z"/>
|
||||||
|
<path fill="#62676d" d="M388 1326c2.5-23.4 9.5-45.6 18.3-67.3 8.1-20.2 17.5-39.8 30.8-57.2 5.4-7.1 10.8-14.2 17-20.5 2.5 1.7.7 3.2-.2 4.6-1.9 3-4 6-5.9 10.1 6.1-2.7 10.9-5.8 15.7-8.6 8.8-5.2 18.3-5.6 27.9-5.8 2.4-.1 4.2 1.3 5.3 3.2 3.1 5.2 7.9 7.9 13.3 9.9 7.9 3 15.5 6.3 24.3 6.8 9.6.5 17.2 5.5 22.6 13.7 3 4.6 6.1 9.1 9.7 13.3 4.1 4.7 7.5 5.6 13.3 3.3 4.7-1.8 10-2.9 13-7.8 2.2.1 2.5 2 2.9 3.5 1.6 5.2 3.1 10.4 3.2 15.8-.4 2.8-2.3 4.3-4.6 5.4-16.5 8-34.3 12.3-51.6 18-.5.2-1 0-1.5-.1-.9-.6-.7-1.4-.2-2.1.6-1 1.6-1.6 2.6-2.3 11.5-8.8 10-6.6 4.6-19.3-3.8-8.9-4-8.8-13.2-6.2-10.8 3.1-10.6 3-5.4 12.8 2.8 5.3 6.6 10.4 6.2 17-3.1.6-5.1 3.6-8.4 3.6-2.5-7-4.9-14.1-8.2-20.8-3.2-6.5-3.2-5.9-10.3-5.3-7.7.6-11.3 4.1-12.1 11.6-.5 4.3-1.6 8.5-2.8 12.7-1 3.6.4 4.7 3.9 4.9 4 .2 7.8-2.1 11.8-.2 1.3 1.8.4 2.8-1.4 3.2-7.6 2-13.4 6.7-19.1 12-13.5 12.7-29.1 22.6-45.5 31.2-12.7 6.6-25.4 13.2-36.1 23-.6.6-1.4 1-1.9 1.6-6.2 7.7-6.9 14.2 4.2 16.8 8.7 2.1 17.5 2 26.2.5 7.2-1.2 14.3-2.9 21.5-4.5 1.9-.4 3.9-1 5.8.1.5.4.6.8.2 1.3-9.5 3.3-19.3 5.2-29.1 7.1-7.8 1.5-15.5 1.8-23.4 1.9-11.8.1-20.2-5.7-23.6-16.8-.4-8.2-.5-16.2.2-24.1z"/>
|
||||||
|
<path fill="#76797d" d="M1039.9 911c-3.7.3-6.6 2.1-9 4.7-1.7 1.8-3.5 3.1-6.5 1.7 2.7-4.5 6.3-8.2 9.8-11.8 7.7-8.2 16.1-15.8 23.8-24 16.9-18 34.4-35.5 49.9-54.8 6.9-8.5 6.6-8.1-.4-16.2-4.2-4.8-8.7-4.8-13.7-3.4-6.2 1.7-12.4 3.3-18.5 5.7-8.2 3.2-16.6 5.6-25.1 8.1-11.9 3.5-23.2 9-34.9 13.2-1.9.7-3.8 1.7-5.2-.8 8.2-5 16.3-10.2 24.6-15.1 15.6-9.2 31.3-18.2 47-27.3 14.3-8.3 28.5-16.7 43.2-24.3 17.4-9 34.7-18.1 52.1-27 3.2-1.7 5.3-4.3 7.8-6.7.8-1.2 1-3.6 3.3-2.8 2.8 1 1.3 4 2.1 6.1 4-1 7.2-5 11.8-3.5-1.4 3.2-1.9 6.7-2.9 10.1-.3 1-1.6 2.1-.3 3.1 1.1.8 2.3.2 3.3-.4 4.2-2.5 8.5-4.5 12.7-6.9 10.5-6 21.2-11.7 31.8-17.6 1.4-.8 2.9-1.8 4.7-1.1 1.4 1.8 1 3.8.6 5.8-2.6 13.4-8.5 25.3-17.2 35.6-6.4 7.6-12.6 15.4-19.9 22.4-8 7.6-16.2 14.7-25.2 21.1-15.6 11-30.7 22.8-46.6 33.5-20.5 13.9-39.8 29.5-60.3 43.4-12.7 10-26.1 19.2-39.7 27.9-1 .5-1.9 1.3-3.1 1.3z"/>
|
||||||
|
<path fill="#c4c5c6" d="M1201.9 732.9c-3.8.6-7.2 2.3-10.4 4.3-.9.6-1.8 2-3 1-1-.8-.5-2.1-.1-3.2.5-1.5.9-3.3-.3-4.2-1.8-1.3-1.9 1.7-3.3 1.9-6.1-5.5-12.1-11.1-18.3-16.6-8.5-7.4-17.1-14.6-25.6-21.9-8.1-6.8-16.2-13.6-24.2-20.5-4.4-3.8-8.8-7.5-12.9-11.6-3.9-3.9-3.5-5.9 1-9.1 4.7-3.3 9.9-5.3 15.4-6.6 4.8-1.1 8.7 2 12.4 4.1 21.9 12.2 45.4 21.2 67.7 32.6 3.9 2 4.3-1.2 5.1-3.2 3.6-9.5 6.9-19 10.3-28.5 11.7-32.1 23.4-64.1 35-96.2 9.5-26 18.8-52.1 28.3-78.1 2.2-6.2 5.6-11.3 12.8-12.3 2.5 2.3 2.2 5 1 7.8-3.6 7.8-5.4 16-6.9 24.4-1.8 9.5-5.1 18.5-8.7 27.5-5.7 14.2-11.3 28.4-14.4 43.5-2.7 13.6-8.3 26.3-12.3 39.5-5.7 18.4-15.3 35.5-18.1 54.8-6.4 10.9-6.6 24.1-12.5 35-4 7.3-7.1 14.3-7.4 22.7-.1 3.5-1.9 7-4.3 10-1.6 2.2-3.6 3.4-6.3 2.9z"/>
|
||||||
|
<path fill="#abaeb2" d="M1207 730.1c3.4-5.3 5.4-11 5-17.4-.2-3.8 1-6.9 3.6-10 5.4-6.4 7.1-14.6 8.6-22.5 1.2-6.2 5.5-11.2 6.5-16.9 2.7-15.7 9.6-29.9 14.6-44.8 6.3-18.8 13.4-37.4 17.8-56.9 3.1-14.1 8.7-27.5 14.4-40.8 4.2-9.8 6.7-20.1 8.5-30.5.9-5.6 2.3-11 4.9-16.1 1.5-3.1 2.3-6.1 1.1-9.4 6.7-3.9 13.4-7.8 20.8-10 9.6-2.9 12-.1 11.1 8.2-1.2 11.1-2.8 22.3-4.3 33.4-1.8 13.2-3.6 26.4-5.7 39.6-1.1 7.3-.9 14.8-2.9 22-.7.5-.4-2.7-1.6-.5-2 3.7-4.2 7.2-6.3 10.8-9.1 14.6-16 30.3-23.7 45.6-15.9 31.5-32.8 62.5-51 92.8-4.6 7.6-9.3 15-16 21-1.5 1.4-2.7 3.7-5.4 2.4z"/>
|
||||||
|
<path fill="#c7c7c8" d="M1289.7 690.8c.7.8 1.5 1.5 2.2 2.3 9.3 10 9.3 13.3.1 24-2 2.3-3.7 4.7-5.6 7.8 3.4-4.8 8.1-7.3 11.2-11.3.7-.9 1.9-1.4 3.1-.7-1.1 3.5.1 4.7 3.7 4.2 2.8-.3 5.6-.1 8.5-.2 7.2-.9 14.5-.1 21.7-.4 1.8-.1 3.6.5 5.3-.5 12.3 0 24.6-.1 36.9-.1 7.6-.9 15.1-.1 22.7-.4 1.8-.1 3.6.5 5.3-.5 12.7 0 25.3-.1 37.9-.1 11.6-.7 23.3-.5 34.9-.1 8.7-1.2 17.4-2.1 26.2-1.7 1.5.1 2.9.5 4.4.9 3 .9 3.1 2.7 1.2 4.8-5.9 6.8-13.4 10.9-22.2 12.1-16.3 2.2-32.7 4.2-49 6-13.1 1.5-26.2 2.6-39.3 4.1-15.7 1.8-31.4 3.9-47.1 5.8-9.5 1.1-19 2-28.5 3.1-14.9 1.7-29.8 3.5-44.7 5.2-.6.1-1.2.6-1.8.9-3.8 1.7-7.7 1.6-11.6.6-4.5-2.4-7.2-1.4-8.7 3.2-.9 2.9-2.7 4.6-6 3.5-4.6-1.5-6.5-4.3-4.9-7.5 2.2-4.4 5.3-8.4 7.9-12.6 4.8-7.7 8-16 10.8-24.5 1.1-3.2.7-6.8 1.3-10.2-1-4.9 1.1-7.8 5.5-9.7 4.6-1.9 8.6-5 13.1-7 2-.7 3.5-1.9 5.5-1z"/>
|
||||||
|
<path fill="#cbcbcb" d="M1557.9 1063.8c-.7-1.1-2.1-.7-3.1-1.6 13.8-1.6 27.5-2.5 41.1-5.8-21-3.9-41.7-8.9-60.8-17.9 4.4-1.1 9.5-2.6 14.9-2.5 2.3.1 5.9 0 6.1-1.9.3-3.4-3.7-2.3-5.4-2.4-7.2-.4-14.2-3.3-21.6-.9-3 1-4.9 4-7.3 4.5-1.9.4-3.7-3.6-6.8-3.7-3.6-.2-7.2-1.1-10.8-1.4-2.5-.2-5.8.1-5.6-3.2.2-2.9 3.5-1.4 5.4-1.8 3-1 6.1-.2 9.1-.5 6.2 3.2 12.8 1.7 19.2 1.3.9-.1 1.3-.9 2.1-1.2 4.2.2 8.4-.5 12.5.4l5 .1c6.9 2 13.9-.2 20.8.4 2.5.2 5 0 7.5 0 5.9.2 11.8-.5 17.6.4 10 0 20 .1 29.9.1 4.9 1.1 9.8.2 14.7.5 1.8.1 3.6-.4 5.3.4h32.1c5.3-1.2 10.7.4 16-.9 4.7.6 9.2-.8 13.8-1.3 3.1-.3 5.6-2.2 7.4-5.2 9.7-15.8 19.6-31.4 29.4-47.1.8-1.3 1.5-2.5 3.5-3.3-.7 5.4-3.3 9.7-5.2 14.2-9.6 22.5-22.3 43-39 60.9-7.2 7.8-16.5 11.6-27.2 12.9-8.3 1-16.6.3-24.8.9-3.9 1.2-8.1-.4-12 .9-16 .9-32 1.3-47.9 3-5.2.6-10.5 0-15.8.8-6.5.9-13.3.7-20.1.9z"/>
|
||||||
|
<path fill="#7f8286" d="M639.1 1056c2.5 3-.7 4.2-2.1 5.3-4.2 3.3-8.6 6.2-13 9.1-14.5 9.5-28.1 20.4-43 29.4-2.9 1.8-6.2 2.2-9 4.1-5.8 6.2-8.4 13.8-9 22.2 1.8 3.5 4.5 3.5 7.5 1.7 5.4-3.2 11.4-1.5 17.1-1.6 2.2 0 3.5 1.7 2.2 4.3-2.2 4.3-4.7 8.3-9 11-9 5.7-18.2 10.9-26.7 17.3-4 3.1-7.5 6.5-9.2 11.5-2.3 6.7.6 11.1 7.7 11.6 7.7.6 14.8-1.4 21.5-5.1 28.3-15.4 55.2-33.3 84.1-47.6 8.5-4.2 16.7-8.7 25.2-12.8 1-.5 3.2-2.9 4.4.3.8 2.4-.3 5.4 1.8 7.4.6-.2.8-.4.8-.8-.1-3.7 1.1-6.7 5.2-7.2 2.9-.3 6.5 2.9 7 6.7.7 5.2.2 10.3-3.1 14.7-2.3.5-3.4 2.9-5.5 3.7-4.1-3.5-6.3-2.5-9.3 4.2-3 .7-5.2 2.3-7 4.8-2.3-.5-1.9-2.4-2.2-4-.9-5.6-2.5-10.9-4.3-16.3.1 3.9 1.4 7.6 2.2 11.3.3 1.5.7 2.9.8 4.4.2 1.3.5 2.8-1 3.6-1.2.6-2.3-.1-3.2-.8-3.4-2.4-6.8-4.8-10.4-6.9-2-1.2-4-2.6-6.3-.5-6.4 2.8-11.9 6.9-18 11.1 2.5 1.6 3.7.1 5.1-.5 4.4-1.8 6.7 0 6.1 5-6.3 2.9-13.2 4-19.8 4.9-15.8 2.2-29.2 9.5-43.1 16.4-8 4-16.1 8-25.3 8.8-3.9.3-7.7 0-11.3-1-6.1-1.7-9.1-6.3-8.8-12.8.4-7.9-1.8-13.8-9.6-17.8-12.7-6.6-13-14.3-1.9-23.3 6.6-5.4 13.2-10.7 19.7-16.2 2.6-2.2 4.8-4.6 6.5-7.5 19-11.6 38.1-23.1 57.1-34.6 9.8-5.9 19.5-11.7 29.1-17.5z"/>
|
||||||
|
<path d="M1289.7 690.8c-5.9 3.1-11.6 6.5-17.7 9.1-4.6 1.9-6.1 4.7-5.1 9.2.1 2.5-1.7 3.9-3.4 4.8-4.1 2.2-7.6 5.6-12.6 6.2-15.5 8.6-31 17.2-46.5 25.7-1.4.8-2.9 1.6-4.5 2.1-1.3.5-2.7.2-3.5-1.1-.7-1.2-.4-2.3.5-3.1 1.7-1.7 2.2-3.4 1.5-5.8-.9-2.8 2.6-3 3.5-4.9 1.7-.9 3.4-1.9 5.1-2.8 6.4-3.1 10.3-8.8 14.1-14.4 11.7-17.2 21.7-35.5 31.7-53.8 12.4-22.5 24.5-45.1 35.3-68.3 6.4-13.9 15.1-26.4 22.6-41.2.1 2.8.2 4.2.3 5.7-2.4 16.9-4.8 33.9-7.3 50.8-.9 3.4-2.5 6.5-4.5 9.4-5.8 8.3-11.2 16.9-17.8 24.7-2.8 3.3-4.1 7.6-6.5 11.2-13.6 20.2-27.8 39.9-43.4 58.5-4.7 5.6-9.5 11.2-14.2 16.7 5.1-4.3 10.9-7.9 13.1-14.8.3-1 1.4-2.1 2.2-1.5 3.1 2.6 4.6-.3 6.2-1.7 11.3-10.5 23.1-20.5 33.1-32.4 6.6-7.8 14.4-14.7 21.4-22.3.9-1 2.1-2.3 3.4-1.5 1.5.8.9 2.6.4 4-1.3 8.4-2.8 16.9-3.9 25.3-.4 2.5-1.8 4.4-3.5 6.2z" class="sta17"/>
|
||||||
|
<path fill="#9c9fa3" d="M464 1357.8c0-.3.1-.5.1-.8 2.2-2.5 5.3-3.4 8.2-4.5 11.3-4.3 21.5-10.7 31.8-16.7 27.6-15.9 53.2-34.8 78.3-54.4 3.8-3 7.4-6.2 11.3-9.1 2-1.4 3.5-3.6 6.4-3.5 1.7 2.3 3.7 2.3 6 .9 5.2-3.2 10.3-6.6 15.2-10.2 5.2-3.9 5.3-10 7.1-15.4 4.4-6.2 10.8-10.4 16.3-15.4 11.8-10.8 23.8-21.2 35.2-32.4 4.4-4.3 8.8-8.7 13.8-12.2 4.3-3.3 9-6.1 12.6-10.3 2.4-2.8 4.7-5.6 8.9-5.6 1.8 0 2.3-1.7 2.8-3.1.9-2.6 3-4.3 5-6.1.9-.8 2-1.7 3.1-.9 4.6 3 4.3-.7 4.8-3.4.6-3.8 2.4-6.5 6.5-7.1.8-.1 1.5.5 2.1 1.1 1.2 1.5 2.5 2.7 3.2-.3.5-2.1-.1-4.2.8-6.3 1.7-2.4 3.4-4.8 6.5-5.5 1.1.1 1.9.8 2 1.8.3 4 2.8 3.5 5.4 2.8.6.8.7 1.7.6 2.7-.5 2.5-2.5 3.8-4.3 5.3-7.7 5.8-15.1 12-22.5 18.2-26.7 22.2-53.8 43.8-80.4 67.7 4.1-1.4 7.2-2.7 10.2-4.1 1.6-.8 3.2-2 5.1-1 .7 2.4-1.2 3.2-2.6 4.3-17.2 14-34.4 27.9-51.6 41.8-13.5 11-27.4 21.5-41.8 31.4 7.7-5.1 15.3-10.3 22.9-15.5 1.2-.8 2.4-1.8 4.1-1 .3.4.3.8-.1 1.2-3.7 1.6-3.5 4.8-3 8 1.1 3.3-.4 6.8.8 10.2-.2 3.8-3.7 4.1-6 5.8-3.3 2.4-8.1 2.8-10 7.2-2.5 2.1-5.6 3.5-7.2 6.7-.3.6-1 1.3-1.5 1.2-7.2-1.6-10.9 5.4-16.8 6.8-3.4 1.4-5.9 4.8-10 4.6-.1-4.7.1-9.4-.4-14-.4-3.2-2.9-2.3-5-1.3-8.1 3.9-16.1 7.8-24.2 11.6-15.5 7.2-31 14.3-47.4 19.1-.7-.2-1.5-.3-2.3-.3z"/>
|
||||||
|
<path fill="#6f7378" d="M593 1224c.1 1.6-.1 3.2-1.6 3.9-5.8 2.7-11.3 6.4-18.1 6-4.3-.2-6.7-3.5-9-6.5-3.6-4.7-6.8-9.8-10.4-14.5-5.2-6.9-12.7-10.6-21-10.7-9.3 0-16.8-4.6-25-7.3-5.4-1.8-9.6-5.1-12.4-10.1-1.2-2.1-2.9-2.1-5.3-2.3-15.1-1.2-27.2 5.7-39.2 13.3-1.2.8-3 2.6-4.4 1.2-1.4-1.4.4-3 1.2-4.4 1.9-3.1 3.9-6.1 6-9.1.8-1 .5-1.8.2-2.7 1.7-1.8 3.3-3.6 5-5.3 2.8-3 5.7-5.9 8.6-8.7 15.2-12.9 31.4-24.4 48.3-34.8 1.5 3.1-.9 4.6-2.7 6.2-7 5.9-14.6 11-21.7 16.8-4 3.4-7.9 6.9-11.7 12.4 6.4-.3 11.5-1.9 16.6-2.4 6.6-.7 13.3-.8 19.9.1 6.6.8 11.8 4.1 14.9 9.7 4.9 8.7 12 13.3 21.9 14.4 4.4.5 8.8 1.7 13.2 2.9 5.5 1.5 11 1 16.5-.5-.1 9.2 5.6 16.3 8.6 24.4 1.1 2.7 3.3 5 1.6 8z"/>
|
||||||
|
<path d="M582.9 1191.9c-8.3 5.9-16.5.8-24.8-.2-3.4-.4-6.8-1.4-10.2-2-6.6-1.3-12.2-4.6-15.3-10.8-5.1-9.9-13.4-13.3-24.2-13.1-8 .2-15.8 1-23.6 2.7-1.1.2-2.3.4-3.4.4-2.7.2-3.9-.4-1.9-3.2 4.5-6.3 10.5-11.1 16.5-15.7l17.4-13.2c1.6-1.2 2.3-2.8 2.6-4.6 10.9-7 21.8-14.1 32.7-21.1 1.5-1 2.9-2 4.4-3-.7 6.7-6.9 8.9-10.9 12.8-6.3 6.2-14.7 10.2-20 17.6-3.3 4.6-2.8 8.3 1.6 11.7 3 2.3 6 4.7 9.7 6 3.5 1.2 7.1 10.4 6.5 15.6-1 8 2.4 12.1 10.1 13.4 12.3 2.1 22.6-3.2 33-8.2 7.6-3.6 15-7.8 22.5-11.6 4.8-2.5 10.3-2.3 15.4-3.6 8.6-2.2 17.2-4.7 26.1-5.7 1-.3 1.6.2 2.1.9 3 4.2 5.5 8.8 7.7 13.4.6 1.3 1.2 2.8 0 4.2-7.9 2.5-15.5 6.1-23.4 8.6-7 2.2-14.4 1.8-21.7 2-6-4.9-11.7-2.7-17.6.6-3.8 2-7.2 4.7-11.3 6.1z" class="sta20"/>
|
||||||
|
<path d="M597.1 1292c0-.4-.1-.8-.1-1.1 0-2.4 2.2-3.2 3.7-4.3 37.9-28.5 74.3-58.8 111.7-88 28.4-22.2 56.7-44.7 85.4-66.5 1.3-1 2.5-2.3 4.4-1.3.4 4.4 2.7 5.3 6.9 2.8 1.4-.8 2.8-1.7 3.9-2.9-1.7 1.6-3.7 2.8-5.7 3.9-1.2.6-2.2 1.6-3.7.8-1.7-.9-.6-2.3-.6-3.5 0-1.7 0-3.3 1.3-4.6 4-3.6 8.7-6.3 13-9.6 1.3-1 2.7-1.9 4.5-1.1.4.3.6.7.7 1.2-.4 1.2-.4 2.5-.6 3.9.3-.8.2-1.5.3-2.2.9-2.2.1-4.9 1.9-6.9 16.3-12.7 32.8-25 49.4-37.3 4.1-1.7 6.5-6.4 11.5-6.3-.6 3.1-2.8 5.2-4.8 7.3-7 7.2-13.2 15.2-18.9 23.4-.9 1.3-1.7 2.5-3.4 2.4-1.6 2.6-4.1 4.4-6.5 6.1-31.8 23.1-63.4 46.4-94.8 70-29.8 22.4-59 45.5-89.6 66.9-8.4 7.5-18.1 13.2-27.4 19.4-14.1 9.4-28.4 18.4-42.5 27.5z" class="sta21"/>
|
||||||
|
<path fill="#151515" d="M1020.8 1143.1c.2 3.3.4 6.5.6 9.8-4.4 3.7-7.2 8.2-7.8 14-.2 2.1-.4 4.4 1.8 5.3 2.4.9 3.5-1.4 4.4-3.1 1.9-3.4 2.5-7.2 2.6-11.1 0-1.1-.4-2.3.6-3.3 3.5 1.4 3 4.4 3.1 7.3-1.5 6.3-3.2 12.6-7.8 17.5-3.7 4-7.9 6.2-13.3 3.5-2.8-1.3-2.5.8-3 2.2-2.4 7.6-5.8 14.4-14.1 17.3-3.7 1.3-6.4 0-9-2.4-.6-.6-1.1-1.3-1.4-2.1-1.2-2.9-1.6-7.2-3.8-8.4-3.1-1.8-4.4 3.6-7.5 4.4-8.4 2.2-12.7.9-15.3-8.1-.7-4.3-.7-8.7 0-13 1.3-8.6 5.1-15.7 13-20.1 2.2-.8 4.5-.3 6.7-.3 1.3 0 1-.6 1-1.4.5-1.2 1.4-2 2.6-2 2.9-.1 4.6-1.3 5.3-4.1.3-1.3 1.4-2.4 3-2 1.3.3 1.3 1.8 1.5 2.9.2 2-.2 3.9-.4 5.9-.7 5.3 1.9 7.8 7.2 7.1 1.7-.2 3.3-.2 5 .1 1.1.2 2.4.6 3-.9.5-1.6-.5-2.4-1.7-3.2-5.1-3.4-6.3-14.3-2.3-19.5 5.3 1.4 7.8 5.2 8.3 13.8 2.1-3.8 4.5-6.6 8.2-7.7 3.3-.9 6.8-1.9 9.5 1.6z"/>
|
||||||
|
<path fill="#bebebe" d="M1039.1 1150.1c-1.6-.4-3 1.7-5-.1 6.1-7.2 11.5-15.3 19.3-20.2 8.2-5.1 13.2-12.8 19.4-19.5 4.5-4.9 9.1-9.3 15.8-11.4 3.3-1 6.6-2.8 8.7-6.2 2.4-3.9 6.2-6.9 9.7-9.9 3.1-2.6 6.6-4 11-3.7 7.8.4 15.5-1.6 23.3-.9 1.6.1 3.4-.6 4.7 1-9.3 15.3-23.8 24.7-39 33-21.9 12-44.7 22.4-65.5 36.3-.9.3-1.6 1-2.4 1.6z"/>
|
||||||
|
<path fill="#c8c8c7" d="M612.1 1031c5.9-1.2 8.2-6.4 11.5-10.4 10.4-12.7 22.8-22.5 38.4-28.1 2.7-1 5.3-1.7 8.2-1.5 5.7.4 11.3-.1 16.3-3.2 1.5-.9 3.2-1.2 4.6.1 4.6 4.1 8.7 8.6 12.2 13.7.2.2-.3.9-.4 1.4-25.3 10.2-50.8 19.9-74.8 33-1.5.8-3 1.5-4.5 2.2-7.8 3.8-11.1 1.8-11.5-7.2z"/>
|
||||||
|
<path d="M1061 996c-1.5 0-3 .1-4.5 0-4.9-.4-5.8-2-4.5-6.8 4.2-15.6 13.6-27.4 26.4-36.9 4.9-3.6 9.9-7.2 14.6-11.1 1.2-1 5.8-2.7.8-5.2.2-2.4 2.3-2.6 3.8-3.2 3.6-1.5 7.3-2.9 11.1-4.1 2.7-.7 5.5-1 8.2-1.3 2.9-.3 5.2.6 6 3.7 1 9.1-3.3 15.7-9.4 22-14.8 15.2-32.1 27.2-49.1 39.6-1.2.9-2.7 1.6-3.4 3.3z" class="sta21"/>
|
||||||
|
<path fill="#afb1b5" d="M1297 659.1c-.1-1.1-.2-2.3-.3-3.9-3.8 2.9-6.2 6.4-9.2 9.5-16.6 17.2-32.5 35-50.9 50.3-2.6 2.1-4 2.8-4.1-2.2-2.2 10.1-10.7 13.8-17.4 20.5.1-3.7 1.7-5.3 3.3-7 20.6-22.9 39.3-47.3 55.8-73.3 9.5-15 20.9-28.6 29.7-44.1-1.8 13.2-3.6 26.3-5.6 39.5-.6 3.6.9 7.3-1.3 10.7z"/>
|
||||||
|
<path d="M852.8 1110.7c1.4 2.8 3.4 2.6 5.8 1.5 5.3-2.4 10-5.8 14.3-9.7 3.9-3.4 8.2-6.1 12.8-8.4.9-.4 1.7-1.1 2.8-.7 7.8 3.4 15.5 1 23.3.1 3.7-.4 7.5-.8 11.2-.9 3.5-.1 5 1.7 3.8 5.3-9.5.1-18.4 2-26.3 7.9-11.8 8.8-24 16.9-36.8 24.2-4.6 2.6-9.5 4.6-14.9 5.1-3.3.6-6.6.6-9.9 0l-8.1-.3c-1-2.1.9-2.4 1.9-3.3 5.4-4.6 10.7-9.4 14.1-15.8 1.7-2.2 2.9-4.7 6-5z" class="sta21"/>
|
||||||
|
<path fill="#0f0e0d" d="M543.4 1342.3c3.2-1.8 6.3-3.6 9.5-5.5 1.8-.1 3.5-.5 5.2-1.4 1.3-.8 3-1.8 4.5-.1 1.5 1.6 1.8 3.6.9 5.6-.8 2.1-2.7 3.4-4 5.1-3.7 4.8-4.2 10.6-1.1 14.4 1.2-.2 1.3-1.2 1.1-1.9-2.5-7.7 3.5-10.6 8-14.3 1.8-1.4 4.1-1.9 6.2-1 3.7 1.6 5.9.1 8-2.8 1.2-1.7 2.7-3.5 5.3-2.4 3.5 1.6 4.1 5.3 6.1 8 .7 4 .7 8 0 12-2.8 6.5-5 13.2-11.7 17.1-5.8 3.4-15.5 2.8-18.3-3.7-1-2.3-2.2-2.6-4.9-1.9-12.6 3.3-17.7-7.3-17.1-16.2.3-3.9 1.1-7.4 2.3-11z"/>
|
||||||
|
<path fill="#403b3c" d="M1108.7 929.8c-4.8 2.4-10.2 3.2-14.8 6.1l-6.9 3c-1.3-4 2.4-4.7 4.4-6.1 13.7-10 27.3-20.2 40.8-30.3 16.6-12.4 33.1-25.1 49.3-38 9.2-7.2 18-14.7 26.4-22.8 10.8-10.3 21.8-20.5 30.9-32.5.7-.9 1.6-1.7 2.7-2.1 1.7-.5 3.1-.7 2.3 1.9-5.6 7.7-10.7 15.8-16.9 23.1-15.4 19.4-34.3 35.1-53.6 50.4-18.9 14.9-38.3 29.3-57.8 43.4-2.1 1.5-4.5 2.7-6.8 3.9z"/>
|
||||||
|
<path fill="#a7a9ad" d="M1241.7 807.9c-10 12.4-21.1 23.8-32.8 34.6-8.7 8-17.2 16-26.9 22.7.2-6.5 4.8-10.3 9.1-13.9 5.9-4.9 10-11.5 16.1-16.2 1.1-.8 1.3-2.3 1.6-3.6.6-1.9.7-4 1.4-5.8 1-2.5 2.5-4 5.2-1.7.6-2.5.1-5.6 3.1-6.9 2-.9 2.4 1 3.3 2.4-.6-4.2.6-7.5 3.7-10.4 3.4-3.2 6.7-6.4 9.8-9.9 1.1-1.2 2.1-3.1 3.9-2.5 2.2.7.9 2.8 1.2 4.3.1.4-.1.9.4 1.5-3-7.8 2.1-12.1 6.3-17.5 5.6-7.2 10.6-14.8 15.9-22.3 1.2-1.8 3-3.2 1.9-5.7-.1-.5 0-.9.4-1.2 3.9.1 7.9.2 11.8.2-6.3 12-13 23.8-21.3 34.7-2.5 1-2.7 4.7-4.7 5.2-2.4.7-2.1 2-2.6 3.6-1.3 3.6-3.8 6.2-6.8 8.4z"/>
|
||||||
|
<path fill="#a2a5a8" d="M1108.7 929.8c12.5-9.3 25-18.6 37.5-28 23.3-17.7 46.6-35.2 67.3-56 4.6-4.5 8.1-10.1 13.5-13.8-3.9 7.3-9.9 13.1-15.2 19.4-11.6 13.7-24.2 26.4-37.4 38.5-16.2 14.8-33.2 28.7-51.3 41.2-4.4-4.7-9.5-1.4-14.4-1.3z"/>
|
||||||
|
<path fill="#434040" d="M852.8 1110.7c-1.6 1.7-3.2 3.5-4.9 5.2-7.6 7.8-17.1 13.2-25.8 19.6-25.5 18.7-50.8 37.5-76.6 55.8-7.8 5.6-15.8 11-23.6 16.7-16.8 11.5-33.6 23-50.3 34.6-1.5 1.1-3.1 1.8-4.7 2.5 2.5-3.9 6.7-5.9 10.2-8.5 53.9-40.6 107.3-81.7 162-121.2 6.2-4.5 12.5-8.9 18.7-13.4-.6 3.5-4.1 5.3-5 8.7z"/>
|
||||||
|
<path fill="#666668" d="M995.1 1135.9c-2.3 5.1-.5 10.4-.8 15.7 0 1 .9 1.4 1.7 1.5 5.6.9 5.6 4 3 8.4-3.7-1.4-7.7-2.7-11.7.1-.7.5-2 .6-2.2-.2-.5-3.7-5.2-6.2-2.4-10.9 1-1.7.7-4.5 0-6.7-.4 0-1 0-1 .1-.6 5.8-5.5 6.4-9.6 7.9-.2.5-.5.6-.8.1-.4-3.5.2-5.5 4.3-7.3 5.1-2.2 7.6-7.5 6.4-13.6-.8-3.7-.2-7.4-.7-11.1.7-2.6-.4-5.5 1.5-7.9.1-5.6.3-11.3.1-16.9-.1-2.9.7-4.2 3.8-4.2 2.6 0 5.3-.5 7.9-.8 2.9 3.3 1.6 7.1 1.4 10.8-1.6 11.1-.4 22.2-.6 33.3.2.6 0 1.1-.3 1.7z"/>
|
||||||
|
<path fill="#a5a7ab" d="M722 1208c5-5.4 11.4-9.1 17.2-13.4 35.2-25.8 70.5-51.4 105.7-77.1.9-.7 2-1.1 3-1.7-3.4 7.3-9.2 12.5-15.5 17.1-.7.5-1.3.9-1.5 1.8-12 7-23 15.5-34.5 23.3-24 16.2-47.9 32.5-71.8 48.8-.7.6-1.5 1.3-2.6 1.2z"/>
|
||||||
|
<path fill="#2e2f30" d="M587 1338c-.9.4-2.1.6-2.6 1.2-3.2 4.4-6.2 8.8-12.7 4.8-.9-.6-2.3.1-3.2.9-4.1 3.7-10.5 6-7.6 13.7.4 1.2 1 3.9-1.4 4-2.1.1-4.2-1.4-4.4-3.9-.5-5.4 0-10.6 4.3-14.7 1-.9 1.9-1.8 2.8-2.8 1.4-1.7.9-3.5-.2-5.1-1.3-2-2.8-.4-3.8.3-1.9 1.5-3.5 1.7-5.4.3 4.2-2.5 8.4-5.1 12.7-7.4 1-.5 2.4-2.8 3.8.3.7 1.6 1.7-.4 2.1-1.3 1.6-3.1 3.7-5.4 7.5-5.4 1.3 1 1.2 1.9.2 3.2-2.3 2.7-3.4 6.1-4.9 9.6 4.4.9 9.1-.9 12.8 2.3z"/>
|
||||||
|
<path fill="#414346" d="M982.1 1119.8c1.3 3.7 1.6 7.4-.1 11.2-8.2-9.4-16.4-18.8-24.7-28.2-1.9-2.2-3.1-5-5.6-6.7 2-3.8 5.5-1.4 8.2-2.1 4.1 1.4 5.6 5.4 8.3 8.2 4.3 4.3 8.1 9.1 11.9 13.8 1.1 1.1 2.2 2.1 2 3.8z"/>
|
||||||
|
<path d="M1300.8 712.8c-3.9 3.5-7.8 7-11.7 10.4-1.3 1.2-2.2 3-4.7 3 2.2-5.3 6.2-9.2 9.5-13.6 5.9-7.9 5.6-11-1.6-17.8-.2-.2-3.4-.7-.3-1.8 9.6 5.5 11.7 10.1 8.8 19.8z" class="sta17"/>
|
||||||
|
<path d="M1241.7 807.9c2.2-4.6 7.7-7.5 6.2-14 1.1 1 1.1 4.2 3.2 1.3 1.3-1.8 2.7-3.6 4.1-5.4 0 0 .4 0 .4.1.1.3.1.6.2 1-3.9 6.1-7.9 12.1-11.9 18.2 0-1.9-1.2-1.4-2.2-1.2z" class="sta35"/>
|
||||||
|
<path d="M1534 1025.1c-4 3.9-14.2 3.9-20 0 1.3-.9 2.6-.7 4-.1h15.1c.3-.5.6-.4.9.1z" class="sta6"/>
|
||||||
|
<path d="M1477.9 714.8c-11.6 0-23.3.1-34.9.1 1.7-1.6 3.8-.9 5.7-.8 9.7.4 19.5-1.1 29.2.7z" class="sta36"/>
|
||||||
|
<path d="M1580 1026c-7.2.4-14.4-.7-21.6.9-2.2.5-4.5-.4-6.4-1.8h27.9c.3.2.5.4.4.6-.1.1-.2.3-.3.3z" class="sta6"/>
|
||||||
|
<path d="M1405 715.1c-4.8 1.9-9.8.6-14.7.9-4.4.2-8.9 0-13.4 0 4.1-1.9 8.4-.7 12.7-.8 5.2-.3 10.3-.2 15.4-.1zm-65 1c-5.1 2-10.4.6-15.6.9-3.8.2-7.6 0-11.4 0 4.4-2 9.1-.6 13.6-.9 4.5-.3 9-.1 13.4 0zM388 1326c0 8 0 16-.1 24-1.4-8.1-1.5-16 .1-24zm1018.9-255c6.6-2 13.3-.6 20-.9-6.6 2-13.3.4-20 .9zm241-44.1c-6.7-.3-13.4 1.1-20-.9 6.6.5 13.4-1.2 20 .9zm-67.9-.9c0-.3-.1-.6-.1-.9 6 .5 12.1-1.2 18 .9-6-.1-11.9 0-17.9 0zM467.7 1167c-2.5 3.2-5.3 6.2-8.6 8.7 1.9-3.9 4.8-6.7 8.6-8.7zm757.2-91c5.3-1.5 10.7-1.6 16 0h-16zm109-3c5.2-1.9 10.7-.6 16-.9-5.2 1.9-10.6.4-16 .9zm36-1c5.2-1.9 10.7-.6 16-.9-5.2 1.9-10.7.4-16 .9zm-73 2c5.2-1.9 10.7-.6 16-.9-5.2 1.9-10.7.4-16 .9zm-107 3c4.9-2 10-.5 15-.9-4.9 2-10 .4-15 .9zm71-2c4.9-2 10-.5 15-.9-4.9 2-10 .4-15 .9zm273.1-49.9c-.3-.1-.7-.1-1-.1 4.7-1.5 9.3-1.5 13.9 0-4.3 0-8.6 0-12.9.1zm-562.7 126.7c.3 0 .5 0 .8-.1.8.9 2.5.8 3.2 3.2-4-2-7.6-2.5-11.3-2.1 2.2-1.7 4.9-.4 7.3-1zm546.6-126.9c-1.3.1-2.7.1-4 .1-3.3 0-6.6-.1-9.9-.1 0-.3-.1-.6-.1-.9 4.7.4 9.4-1 14 .9zm-361 53.1c4.6-1.9 9.3-.6 14-.9-4.5 1.9-9.3.5-14 .9zM951 1173c-.3 4.3-.5 8.7 0 13-1.6-4.4-1.7-8.7 0-13zm690.9-114c3.9-1.8 8-.6 12-.9-3.9 1.9-8 .5-12 .9zM593.1 1358c.5-4 .4-8 0-12 1.6 4 1.6 8 0 12zm857.8-336.1c-3.7-.3-7.5 1-11-.9 3.7.4 7.5-1.1 11 .9zm16 47.1c3.6-1.9 7.3-.6 11-.9-3.5 1.9-7.3.4-11 .9zm-109-50.1c-3.7-.3-7.5 1-11-.9 3.7.5 7.5-1.1 11 .9zm62 2c-3.7-.3-7.5 1-11-.9 3.7.4 7.5-1.1 11 .9zm-123-4c-3.7-.3-7.5 1-11-.9 3.7.4 7.5-1.1 11 .9zm-31-1c-3.7-.3-7.5 1-11-.9 3.7.4 7.5-1.1 11 .9zm174 54.1c3.5-1.9 7.3-.6 11-.9-3.5 1.9-7.3.4-11 .9zm-205-55.1c-3.7-.3-7.5 1-11-.9 3.7.4 7.5-1.1 11 .9zM839 1135.1h9.9c-3.2 1.4-6.6 1.4-9.9 0zm549.9-115.2c-3.3-.3-6.8 1-10-.9 3.3.4 6.8-1 10 .9zM595 1310.2c-1.5-3.3-.7-6.8-.8-10.2 1.8 3.2.5 6.8.8 10.2z" class="sta36"/>
|
||||||
|
<path d="M1209.9 831.7c0 1.9-.6 3.8-2.1 4.8-6.8 4.5-10.6 12-17.3 16.8-3.8 2.8-6.7 7.1-8.5 11.9-9.6 8.4-19.8 16.2-30.1 23.8-20.3 15.3-40.8 30.4-61.1 45.7-1.5 1.1-3.8 1.7-3.8 4.2-7.9 4.3-15.8 8.7-23.8 13-7 3.8-13.7 8-21 11-1.8.7-3.2 1.4-3.2-1.5-.1-3.2-1.6-1.9-3.2-1-2.1 1.2-4.2 2.8-6.9 2.5-.3-2.8 2.2-3.5 3.8-4.7 8.8-6.7 18.1-13 26.7-19.9 22.7-17.1 46.7-32.5 69.3-49.6 7.9-6 15.9-11.9 24-17.6 9.8-6.9 19.1-14.5 29-21.2 3-2 5.4-5.3 8.8-7.2 4.1-2.4 6.7-6.9 11.5-8.3 1.3-.4 1.4-1.7 2-2.7 2.4-3.6 3.4-3.6 5.9 0z" class="sta21"/>
|
||||||
|
<path fill="#fefefe" d="M995.1 1135.9c0-.3 0-.6-.2-.8-.7-11.4-.6-22.9-.1-34.3 0-3.6-.1-7.2-.1-10.8 12-1.2 24-2.6 36-3.7 12.1-1.2 24.3-2.2 36.6-3.2-.6 2.7-2.9 3.4-4.5 4.7-11.9 10.2-23.2 20.8-31.6 34.2-3.5 5.7-6.5 11.5-8.4 17.9-.4 1.3-.8 2.5-2.1 3.3-7.4-2.9-11.1-1.3-18.3 8.5-.9-6.3-.8-12.7-7.3-15.8z"/>
|
||||||
|
<path fill="#888a8c" d="M1060 939c-9 8.2-19.5 14.3-28.9 21.9-.8.6-1.4 1.3-2.1 2-16.7 11.8-33.4 23.5-49.9 35.5-24.7 18-49.2 36.2-73.8 54.4-6.9 5.1-13.5 10.7-20.3 16-3.7 2.4-7.3 4.7-10.9 7.1-1.5-1.9-3.1-3.6-5.2-5-.2-1.6 1-2.4 2.1-3.2 10.5-8 20.9-16 31.2-24.1 5.3-4.2 10.9-8.1 16.5-11.8 5.1-3.4 9.3-8.5 15.6-10.3 1.5-.4 2-2.2 3-3.2 5-4.6 9.3-10.5 17-10.9 1.5-.1 2-1.1 2.3-2.2 1.8-5.6 6.9-7.8 11.2-10.9 1.1-.8 2.3-1 3.7-.2 3.9 2.4 2.2-.8 2.2-2.3-.1-1 .3-1.8 1-2.5 2.7-1.5 3.9-4.1 5.2-6.7 1.5-.7 3.3 4.8 4.7-.2 1.4-1.8 2.9-3.2 5.4-3.1 2.3 1.3 3.6.1 3.9-3.8 2.1-1.8 3.6-4 5.3-6.1 2.8.6 1.5 3.3 2.8 5.1 1.3-1.8.5-4.2 1.7-5.9 1.5-1.5 3-3.2 5.4-3.2.9.5 1 1.8 2.1 2.1 1.3-1.8.2-4.2 1.5-6 1.6-1.4 2.9-3.2 5.4-3.1 1.2.7 1.1 2.3 2.2 3.3 2.1-1.7.8-4.2 1.4-6.2 1.3-1.8 2.9-3.2 5.3-3.1 1.1.8 1.1 2.4 2.4 3.2 2.5-2 .4-4.9 1.4-7.2 5.1-4.1 10-8.5 16.3-10.9 1.3 1 .7 3.3 2.5 4.1 2-2.2.4-4.8 1-7.1 1.2-2 2.8-3.4 5.4-3.1 1.8 2.5 2.3 5.4 4 7.6z"/>
|
||||||
|
<path fill="#fdfdfd" d="M982.1 1119.8c-7.3-8.6-14.7-17.2-22.1-25.8 6.5-2.1 13.3-1.4 19.9-2.8 2.1-.4 2.1 1.6 2.1 3.1v12.9c0 1.6-.5 3.3.8 4.8-.2 2.6 1.1 5.4-.7 7.8z"/>
|
||||||
|
<path fill="#3c3d3f" d="M1023 1154.7c1.3 6.3.3 12.2-3.7 17.3-2.9 3.6-5.3 3.1-6.8-1.1-2-5.7 3-15.8 8.9-18 .6.6 1.1 1.2 1.6 1.8z"/>
|
||||||
|
<path d="M678 1150.1c0-4.9 3.2-5.4 7-5.1 3.3-.7 5.3-4.3 9-4 1.4-1.7 1.8-4.7 5.1-4 1.6 1.7 1.1 3.8 1.2 5.7.1 2.3.9 3.2 3 1.6 3-2.3 6.7-3.5 9.2-7.3-2.8-.8-4.1 1.4-5.9 2.1-1.2.5-2.4 1.7-3.6.5-1.1-1-.9-2.4-.6-3.8.4-1.8 1.1-3.5 1.6-5.2 1.6-5.5-.5-10.4-1.9-15.5 1.5-2.9 3.7-2.4 6-1.1 1.2.4 2.2.6 3-.7 2.1-3.2 3.8-1.6 5.2.6 2.1 3.2 3.9 6.5 5.6 9.9.8 1.5 1.1 3.4 3.4 4.5-1-4.4-3.4-7.8-5.3-11.4-1-1.8-2.7-3.5-1.9-5.9.5-.7 1-1.3 1.5-2 2.4-3.6 5.2-4.4 8.4-1 1.7 1.3 1.3 3.3 1.3 5 .1 3.7 1.6 4.4 4.6 2.4 3.4-2.3 6.4-2.5 8.9 2.4.4-3.5-3.2-7 1.5-8.8 8.5-4.7 16.5-10.1 24.7-15.3 7.5-4.8 14.3-10.6 22.2-14.7 3.5 2 3.9 5.7 4.9 9 .3 2.7-1 4.5-3.1 5.8-13 8.1-25.5 16.8-38.8 24.4-11.3 6.4-21.5 14.5-32.7 21.1-4.7 2.8-9.3 5.8-14.3 8.2-5.4 2.6-10.7 5.3-15.5 9-2.9 2.2-6.4 3.6-9.9 4.6-1.5.4-3.3 1.3-4.4-.8-.9-3.6-1.6-7 .6-10.2z" class="sta20"/>
|
||||||
|
<path fill="#b3b2b4" d="M666.7 1105.9c-1.4 4.8-5.1 6.4-7.9 8.4-26.9 19.4-53.6 39.2-82.1 56.1-4.6 2.7-9.2 6.1-15.2 5.6-2.4-.2-4.2-.7-5.3-2.9-1.2-2.5-.2-4.5 1.5-6.3 5.2-5.3 11.9-8.5 18.1-12.2 14.2-8.3 28.2-16.9 42.9-24.3 14.4-7.2 27.8-16.4 42.7-22.5 1.5-.6 3-1.1 5.3-1.9z"/>
|
||||||
|
<path d="M744.2 1109c-2.4 2.4-1 4.8 0 7.2.6 1.4.9 2.7-.8 3.3-1.5.5-2-.7-2.4-1.8-1.2-4.2-3.5-3.3-6.2-1.6-1.6 1-3.2 3.4-5.1 2.3-2.2-1.3-1.7-4.1-1.7-6.4 0-1.3-.1-2.7-.1-4 .8-4.3-1.2-8.5-1-12.8.1-1.4-1.2-3.1.8-3.9 2.1-.9 2.3 1.4 3.3 2.2.6.5 1.2 1.1 1.9 1.6 2.1 3.7 4.4 7.3 6.1 11.1 1.2 2.6 5.1-1 5.2 2.8z" class="sta42"/>
|
||||||
|
<path fill="#c5c6c9" d="M701.9 1115.1c6.7 7.6 2.8 15.8.8 24.2 3.2-.6 4.9-2.7 7.2-3.8 1.1-.6 2.1-2 3.4-.4 1 1.3 1.3 3-.1 4-3.8 2.7-7.7 5.3-11.6 7.8-1.9 1.2-2.3-.5-2.4-1.9-.1-2.7 0-5.3 0-8 2.2-4.2 3.1-8.7 2.7-13.4-.3-4.3-4.4-7.6-7.3-6.2-2.6 1.2-3.5 3.4-2.5 6.2.4 1.1 1 2.3-.5 3-1.7.8-2.3-.4-3.1-1.5-1.9-2.7-1.8-5.5-.4-8.3 4.2-3.2 8.7-5.4 13.8-1.7z"/>
|
||||||
|
<path fill="#c6c7ca" d="M718 1111c2.4 4.5 4.9 9 7.2 13.6.9 1.9 3.5 4.5.3 5.8-2.6 1.1-2.7-2.6-3.7-4.2-2.3-3.8-4.4-7.7-6.5-11.6-.5-.9-.8-2-1.9-2.1-1.5-.2-1.2 1.2-1.4 2.1-.3 1.1-.7 2.4-2.2 2.2-1.3-.2-1.7-1.4-1.8-2.7 1.5-2.6 1.1-5.4 1.2-8.2 0-1.3-.1-2.8 1.4-3.3s1.8 1.1 2.5 1.9c1.6 2.1 3.2 4.3 4.9 6.5z"/>
|
||||||
|
<path fill="#ccc" d="M563 1126c-1.4-.1-2.3-.8-1.8-2.2 1.7-5.3 3.4-10.6 5.5-15.8.8-2 3-3.5 5.3-4.2 1.3.2 2.3.8 2 2.2-1.4 6.9-1 14.8-8.8 18.7-.7.5-1.4.9-2.2 1.3z"/>
|
||||||
|
<path d="M1039.9 911c4-4.6 9.6-6.9 14.4-10.3 9.3-6.5 18.6-12.9 27.7-19.7 3.5-1 6.5-3.1 9.6-4.9 1.3-.8 2.8-1.3 4.2-.2 1.5 1.2.3 2.6-.1 3.9 2.8-.8 5.1-3.2 8.3-2 .6 2.9-1.9 3.6-3.5 4.8-9.6 7.2-19.3 14.1-28.9 21.3-17.9 12.8-35.5 25.9-53.5 38.5-17.9 12.5-35.2 25.7-53 38.4-18.2 13-35.4 27.1-53.3 40.4-2.8 2.1-5.5 4.3-7.4 7.3-.5.8-1.1 1.7-2 2.1-9.4 4.4-17.2 11.2-25.2 17.7-3.5 2.8-7.2 5.4-10.6 8.3-3.9 3.2-9.3 4.8-12.1 9.7-5.9-.8-7.2 3.9-9.6 7.6-1 1.6-2.4 3.2-3.4 4.9-3.6-2.1-4.6 1.4-6.5 3-2.7 1.9-3.7 4.5-3.7 7.7 0 1.7.4 3.8-2 4.6-2.8-2.1-.5-5.6-2.3-8.3-2.8 2.5-.3 5.7-1.4 8.3-.5 1-.9 1.9-2.2 2-2.1-6.2-4.8-12.3-3.4-19.2 7.3-4 13-10.1 19.7-15.1 14.7-11 28.2-23.5 43.3-34 11.1-7.8 21.2-16.9 32-25.2 10-7.6 20.2-14.9 30.4-22.3 9.8-7.2 19.5-14.3 29.3-21.4 13.7-10 27.6-19.7 41.1-29.9 7.9-6 16.6-11.1 24.1-18z" class="sta46"/>
|
||||||
|
<path fill="#414345" d="m820 1077 3.9 19.2c2.2 2.1 1.3 4.9 1.7 7.4.8 3.2 1.6 6.3-.7 9.2-1.4 2.1-1.4 4.7-2 7-1.9.1-1.2-1.1-1.1-2v-.6c-1.9-3-1.1-6.4-1.2-9.7.7-8.7-1.5-16.9-3.8-25.2-2.2-6.3-4.4-12.6-7.8-18.3-2.8-4.7-4.7-5.1-9.3-2.3-9.5 5.7-9.6 5.9-4.5 15.9 3 5.8 5.1 11.9 7 18.1 2.4 7.2 2.8 14.6 3.3 22.1.4 3.4 1.8 6.8-.7 10-.1.1-.2.2-.3.4-.5 2.1-2.3 4.9-.4 6.3 1.8 1.3 3.7-1.3 5.5-2.4 2.2-1.3 4.3-2.8 6.7-3.9-3.6 4.1-8.2 6.9-13 9.5-2 1.1-2.7-.3-2.5-2.1.2-1.4.5-2.9.8-4.3-1.7-2.8-1.1-5.9-1.2-8.9-.1-4.2.2-8.5-.8-12.7-.3-4.5-1.7-8.7-2.8-13-1.2-2.8-1.1-5.8-2-8.7-1.3-3-2.7-6-4-9-1.3-2.9-2.3-5.8-3.9-8.6-1.9-3.3-.6-5.8 1.9-7.8 2.9-2.2 5.8-4.4 9-6.2 6.3-3.7 8.5-3 12.7 3 4.1 5.6 6.1 12 9.5 17.6z"/>
|
||||||
|
<path fill="#54575a" d="M599.9 1269.2c-18.6 14.8-37.2 29.6-56.7 43-23.9 16.5-48.4 32.2-75.3 43.6-1.2.5-2.5.8-3.8 1.2-9.8.7-19 4.2-28.7 5.4-10.2 1.2-20.5 2.1-30.1-2.4-6.9-3.2-6.4-12.1.4-18.1 10.9-9.4 23.3-16.4 35.8-23.2 11.9-6.4 23.7-12.9 34.4-21.6 6.2-5 11.9-10.5 18.1-15.4 4.3-3.4 8.8-7.3 15.1-7.1.3 0 .6-1 .9-1.6 5.6-3.3 11.5-4.7 17.9-3.1 2-2.7 4.3-4.8 8-3.9 1.7-.1 3.4-.9 5.1 0 17.2-6.2 35.3-10.2 52-18.1 2.3-1.1 4.7-1.9 5-4.9 1.5 0 1.9 1.1 2.2 2.2 1.9 7.4 1.7 14.9.8 22.4 0 .7-.6 1.2-1.1 1.6z"/>
|
||||||
|
<path fill="#949faa" d="M461.3 1275.8c-7.9.7-15.2-.8-22.6-1.8-2.7-.4-3-1.4-1.9-3.6 4.4-8.4 8.7-16.8 13.1-25.2.7-1.3 1.4-2.1 3.1-1.7 13 3.2 26.2 3.3 39.5 1.7 2.5-.3 3 1.2 2.3 3.1-3.1 7.7-5.4 15.7-7.9 23.6-.7 2.2-2.3 3.2-4.5 3.1-7.2-.3-14.3 1.7-21.1.8z"/>
|
||||||
|
<path fill="#94a0ac" d="M528 1269.9c-6 1-12 2.1-17.9 3.1-4.6.3-9.3.6-13.9 1-3.4.3-4.6-1.1-3.8-4.4 1.8-7.2 3.6-14.5 5.2-21.8.6-2.7 1.8-4 4.6-4.2 2.1-.1 4.2-.7 6.4-1.1 8.4-1.8 8.7-1.9 12.1 5.8 3 7 7.1 13.7 7.3 21.6z"/>
|
||||||
|
<path fill="#37393c" d="M599.9 1269.2c0-8.8 1.2-17.6-1.8-26.2-1.1-6.5-1.8-13-5-18.9-2.3-7.8-6-14.9-9.6-22.1-1.7-3.3-2-6.6-.5-9.9 5.6-5.7 12.8-8.6 20-11.6 3.4-1.4 5.7 1.8 8.2 3.6 5.2 3.6 7 9.5 9.5 14.8 1.7 3.6 3 7.4 4.6 11 3.1 9.1 5.4 18.4 5.2 28.1 0 2.2-.2 4.3-1.4 6.2-.3 8.8-4.1 15.5-11.8 19.9-4.3 2.4-8.4 5.3-12.7 7.9-3.1 1.7-4.7.8-4.7-2.8z"/>
|
||||||
|
<path fill="#929eaa" d="M445.6 1242.7c-.2.5-.5 1.1-.8 1.7-4.1 7.8-8.2 15.6-12.3 23.3-1.5 2.8-2.9 3.5-6.2 1.7-4.8-2.6-7.2-6.6-9.6-11-.9-1.6 0-2.9.4-4.3 2.6-8 7.3-15.2 9.3-23.5.4-1.8 2.2-4.1 4.2-1.1 3.4 4.9 8 8.3 13.3 10.9 1 .5 2.1.9 1.7 2.3z"/>
|
||||||
|
<path fill="#859aae" d="M541.1 1266c-1.7.6-3.4 2-5.1 0-2.8-8.2-6.5-15.9-11.4-23.1-1.8-2.7-1.4-4 1.8-4.9 4.9-1.4 9.7-3.2 14.6-4.7 2.3-.7 4.2-.2 5.3 2.3 2.3 5.3 4.9 10.5 7.3 15.8 1.2 2.6.3 4.7-2 6.5-3.7 2.5-7.1 5.3-10.5 8.1z"/>
|
||||||
|
<path fill="#9b9ea2" d="M1104 878c-3.6.5-6.7 2.6-10.1 3.8-.7-2.4 2-3.2 1.6-5.3-2.3-1-3.7.7-5.3 1.7-2.5 1.7-4.9 3.7-8.3 2.7 5.7-5.6 12.8-9.4 19.2-13.9 10-7.1 19.6-14.8 29.5-22 9.9-7.3 20.4-13.7 30.2-21 20.8-15.4 43-29.1 60.2-48.8 8.4-9.6 17.2-19 22.9-30.6 3.8-7.7 6.6-15.9 6.9-24.7 3.7-2.2 7.3-4.4 11-6.5 2-1.2 4.1-2.2 5-4.5 0 6.1-1.6 11.8-3.7 17.4-3.8 10.3-9.4 19.6-15.7 28.6-.9 1.3-2.7 3.4-1 4.3 2.2 1.1 3.7 4.4 6.8 3.3 2.1-.7 2.8-2.5 2.2-4.9-.2-.9.3-3.6 1.4-2.8 2.8 1.9 6.3-5 8.2 1l-.3.2c-5.2 4.5-8.2 10.7-12.5 16-1.1 1.4-2.1 3.4-4.2 3-1.8-.4-2.1-2.4-2.7-3.9-.3-.8-.5-1.6-.8-2.3-1.1-2.2-1.7-5-4.8-4.8-2.8.1-5.6 3.9-5.6 7.2 0 1 .3 2 .1 3-8.9 11.9-20.4 21.3-31.6 30.9-26.5 22.6-55 42.5-83 63.1-3.9 2.9-7.7 5.8-11.7 8.4-1.1.7-2.2 2-3.9 1.4z"/>
|
||||||
|
<path fill="#c2c4c7" d="M678 1150.1v10.9c-.6 5-2.5 6.2-7.3 4.9-1.4-2.1-1.5-4 .5-5.7 3.5-2.9 1.8-5.2-1-7.2-5.5-4-11.3-7.5-16.9-11.4-.1-.2-.2-.4-.4-.6.5-4.2 3-3.3 5.3-1.9 5 3.1 9.9 6.4 15.2 10-.4-6.3-2.2-11.7-3.7-17.2-.5-1.8-1.5-3.9 1-4.6 2.8-.8 2.6 2.2 3 3.6 1.6 6.4 2.9 12.8 4.3 19.2z"/>
|
||||||
|
<path fill="#c3c5c8" d="M657 1174c-2.4-6.5-6-12.4-10-18-1.6-4.6-4-5.5-7.9-2.2-1.4 1.2-3.3 2-4.7-.3-1.2-2.1.5-2.9 2-3.8 4.3-2.8 8.7-5.6 13-8.3 1.2-.8 2.3-1.3 3.7-.4l-.1-.1c2.7 1.6 3.1 3.6.3 5.2-3.9 2.2-2.9 4.5-1 7.6 3.6 6 8 11.7 9.4 18.9-1.9 3.3-2.7 3.6-4.7 1.4z"/>
|
||||||
|
<path d="M694 1141c-3.2.9-4.8 5.4-9 4-.6-3 2.5-7.2 6-7.7 2.8-.5 3 1.6 3 3.7z" class="sta42"/>
|
||||||
|
<path fill="#717477" d="M657 1174c2.5 1.6 3.5.2 4-2 1.3-5.2 5.5-6.3 10-7 4.2 2 5.4-1.3 7-4 15.2-6.4 29.2-14.9 43.1-23.5 19.3-11.9 38.5-24 57.8-35.9 4.8-2.9 8.8-7.1 14.1-9.3 1.6-.7 2.1-2.5 2-4.3 1.6 2.5 2.4 5.3 2.8 8.2-.5 1.9-2 3-3.5 4.1-1.4 1-2.4 2.1-2.1 4.2.7 4-2.4 5.3-5.1 4.9-4.3-.7-5.5 1.3-6.3 4.8-1 4.6-2.4 5.4-7.3 4.8-3-.3-3.3 3.3-5.6 4.3-3.4-2.3-4.9-.7-5.4 2.8-1.7 2.3-3.3 4.9-6.6 5.3-2.9-1.7-5-1.8-4.9 2.5 0 1.2-.2 2.3-1.1 3.1l-6 5.1c-2-.5-1.7-4.8-4.4-3.4-2.5 1.3-.7 4.1-.5 6.2.2 1.4 1 2.8-.3 4.1-3.5-.6-6.4 1.6-6.9 5.3-.2 1.8.2 3.7-.9 5.3-.8 1.1-1.7 2.2-3.2 1.6-4.2-1.7-7.5-.3-8.8 4.2-.9 3.1-1.6 4.8-5.7 4.1-3.1-.5-5 3.3-7 5.7-3.5 4.2-8.2 6.8-12.5 9.8-.8-3.2-1.3-6.6-2.8-9.6-.8-1.3-.8-3.7-3.1-3.2-1.9.4-1.7 2.6-1.8 4.2 0 1 0 2-.1 3-.8 5-4.3 6.7-8 3.2-3.4-3.1-4.7-1.5-6 1.5-1.8 4-4 6.9-9.1 5.2-1.4-.5-2.7.1-3.4 1.4-3.1 5.6-8.7 8.1-13.7 11.1-5.3 3.1-11.2 4.8-16.8 7.4-1.7.8-3.5 1.1-5.2-.2-4.1-8.4-7.2-17.4-12.8-25.1 14.1.6 27.2-3.5 40.1-8.8 2-.8 3.9-1.4 6-1.1z"/>
|
||||||
|
<path fill="#babbbe" d="M801 1109c1.3 4.2 1.2 8.6 1 13-1.9 4.2-5.8 6.5-9.2 9-18.2 13.7-36.1 27.9-53.8 42.3-21 17.2-42.7 33.4-63.4 51-2.8 2.4-5.4 5.6-9.6 5.8-6 1.3-10.9 5.9-18.2 6.2 3-4.4 6.8-6.8 10.1-9.6 17.5-14.9 35.2-29.6 52.9-44.3 14.5-12 29.2-23.8 43.8-35.8.9-.7 1.5-1.8 2.2-2.6 4.8-5.6 11.1-9.3 16.7-14 3-2.5 6.4-4.6 8.9-7.7 1.5-1.9 3.3-3.9 6.1-3.8 2.1-.1 2.9-1.7 3.7-3.3 2.1-3.3 3.8-7 8.8-6.2z"/>
|
||||||
|
<path fill="#606367" d="M623.9 1209.1c12.2-3.1 23.3-8.2 33.1-16.2.9-.7.7-1.8 1.1-2.7 1.1-2.3 2.7-3.8 5.5-2.2 3.4 2 5.2.5 6.5-2.6.7-1.7 1.3-3.4 2.3-4.9 1.4-2.1 3.4-3.1 5.1-.4 1.4 2.2 3.1 3.8 5.5 3 2.5-.9 2-3.5 2-5.7v-1.5c.2 0 .4-.1.5-.1 2.5 2.7 4.7 2.4 6.6-.9 1.4 3.2 3.9 6.2 1.8 10.1-6.7 6.2-13.2 12.4-20 18.5-15 13.6-30 27-45 40.5 1.1-12-1.7-23.5-5-34.9z"/>
|
||||||
|
<path fill="#63666a" d="M666.1 1230.1c23.9-19.1 47.7-38.3 71.7-57.4 21.3-17 42.8-33.8 64.2-50.7-.1 3.1-.2 6.2-.2 9.3-7.6 4.1-14 10-20.7 15.2-42.5 32.8-84.6 66.1-126.6 99.6-19 15.1-38.3 29.8-57.5 44.7-8.6 5.6-17.3 11.1-25.9 16.7-1.3.8-2.4 2.2-5 1.9 7.7-5.8 15-11.2 22.2-16.6 22.9-17.3 45-35.7 67.3-53.8 3.5-2.9 7-6 10.5-8.9z"/>
|
||||||
|
<path fill="#a1a3a6" d="M789.2 1119.9c-2.3-1.1-3.4.7-4.5 2-6.1 7.5-14.8 12-21.9 18.2-1.7 1.5-3.8 2.6-5.7 3.9 0-1.1-.1-2.2-.1-3.2-1.6-3.2-2.8-6.3-.9-9.8 1.9-1.6 3.9-3.2 5.8-4.9 2.3 1.1 2.1 3.6 3 5.5.3.7.5 1.7 1.6 1.5.9-.2 1-1.1 1.3-1.9.8-2.7-1.6-5.5.4-8.2.2-2.8 2.8-3.9 4.4-5.8.4-.5.9-.6 1.6-.1 3.3 1.9 6.4.2 5.6-3.4-.7-3.3 1.6-3.6 3-4.8 1.1-1 2.1-3.7 4.3-.4.7 1 5.2-1.2 4.5-2.7-2.5-4.9 1.5-5.5 3.8-7.5.9-.8 1.8-1.4 2.7-2.1 1.9 4.1 2.7 8.4 3.1 12.8-3.7 1.2-6.2 3.6-7.9 7-1.4-.7-.7-2.9-2.4-3.5-2.9 2.1-.2 5.1-1.7 7.4z"/>
|
||||||
|
<path fill="#363a3d" d="M739 1149c-.5-2.1-1-4.2-1.5-6.2-.7-2.8-.6-5.7 2.6-6.5 3-.8 2.8 2.6 3.7 4.3.2.4.2 1 .3 1.4-.1 2.1-.2 4.2-.2 6.3 0 1.8-.6 3.6-2.3 3.9-2.2.6-2-1.8-2.6-3.2z"/>
|
||||||
|
<path fill="#383c40" d="M756 1131c.3 3.3.6 6.5.9 9.8-1.2 1.1-1.5 3.6-3.3 3.3-2-.3-1.7-2.9-2.5-4.5-.4-.9-.7-1.8-1.1-2.7 0-1.3-.1-2.6-.1-3.9 0-1.9-.3-4.2 2.1-4.9 2.3-.6 3 1.5 4 2.9z"/>
|
||||||
|
<path fill="#707275" d="M824.9 1112.8c.1-3.1.3-6.1-.6-9.1 9.3-8.3 19.6-15.4 29.5-22.9 3.4-2.6 6.9-5.2 10.5-7.7 1.4-1 2.6-2.8 4.8-2.1 3.4-.1 5 1.6 5 5-16.4 12.3-32.8 24.6-49.2 36.8z"/>
|
||||||
|
<path d="M821.9 1106.9c0 3.4-.1 6.9-.1 10.3-5.8 1.1-9.1 6.1-14 8.7-1 .5-1.9 1.3-2.9 1.9.2-3.4.1-6.7-.8-10 4.7-1.8 8-5.6 12.2-8.3 1.8-1.1 3.2-3 5.6-2.6zm-.1 10.9c.4.7.7 1.4 1.1 2-.1 2-.7 3.7-3.3 5.4.9-2.9 1.5-5.2 2.2-7.4z" style="fill:#6c6f72"/>
|
||||||
|
<path fill="#3c3d3e" d="M981.1 1167.9c-3.6 5.8-4.1 12.6-9.1 17.2-1.5 1.4-2.9 3.1-5 2.6-2.4-.6-2.9-3-3-5.2-.4-5.8 1.2-11.2 4.3-16 2.5-3.8 5.9-3.5 7.5.7 1.5 3.7 3.3.1 5.3.7z"/>
|
||||||
|
<path fill="#434548" d="M1000.9 1178.1c-1.2 4.4-1.5 9.4-5.6 13.1-2.5 2.3-4.3 2.2-5.7-1-2.1-4.9 1.5-15.9 6.1-18.3 2.5-1.3 5.3 1.8 5.2 6.2z"/>
|
||||||
|
<path fill="#313132" d="M575 1362.3c.2-5.9 2-11 7.4-14.2 3.7-2.2 6.7-1.2 7.5 3 1.1 6-.6 11.5-4 16.5-2 3-5.1 3.1-8 2.1-3.5-1.3-2.9-4.6-2.9-7.4z"/>
|
||||||
|
<path d="M1233.8 774.1c-.7-2.4-1.9-4.8-.2-7.1 1.8-2.4 4.1-4.9 7.1-4.9 3.2 0 4 3.4 5.2 6 .9 2 .9 4.5 3 6.5 4.4-5.9 8.7-11.7 12.9-17.5.9-1.2 1.6-2.1 3.1-1.1 2.3 1.1 3.2 2.1 1.2 4.8-5.9 8.1-12.8 15.7-17.1 24.8-.6 1.3-2.2 1.6-3.3 2.4-5.7 4.5-4.8 10.8-5.4 16.8-.2-2.4-.3-4.8-.5-7.2-.4-.2-.8-.5-1.2-.7-4.8 8.6-16.5 11.9-16.3 24.1-2.1.2-1.9-6.5-4.9-1.4-1.2 2 .3 4.7-1.7 6.5-1.6-.1-1-2.8-2.6-2.4-1.5.4-2.1 2-2.2 3.6-.2 1.5-.6 2.9-1 4.3-2.7-2.6-4.5-2.5-5.3 1.6-.3 1.4.3 4.6-3.4 2.1-1.6-1.1-2.8 1.4-3.2 3.4-.3 1.6-.2 3.8-2.8 1.8-.9-.7-1.6-.1-2.1.6-1.9 2.1-2.6 4.8-6.5 5.5-2.1.4-4.5 4.1-7.2 6.2-4.4 3.3-9.2 6.2-13.2 9.9-5.7 5.3-12.9 8.2-18.5 13.8-2.9 2.9-7.2 5.2-10.8 7.7-6.8 4.6-13.2 9.7-19.9 14.5-10.4 7.4-20.8 14.7-31.3 22.1-8.5 6-17 12.1-25.6 18.1-4.3-.7-3.4-4.4-4.2-7.2-2-5.6-.9-7.2 4.7-6.6 2 .2 2.7-.7 3.1-2.3.5-2.1.6-4.3 2.8-5.5 4.4 2.7 6.8 1.3 7.8-3.7.3-1.3 1.4-2.5 3-1.9 3.4 1.3 4.7-.8 5.4-3.3.7-2.5 2-3.7 4.7-2.9.6.2 1.8.2 1.9-.2 1.5-6 9.1-4.9 11.3-9.9.3-.6-.2-.3.3-.4 5-1.2 7.8-5.6 12-8 .8-.5 2.3-.1 2.8-.9 2.4-4.8 8.1-5.3 11.2-9.4 2.2-2.9 6.2-4.2 9.3-6.3 11.5-7.9 22.7-16.2 33.7-24.6 15.9-12.1 32-23.8 46.5-37.6 6.5-6.2 11.9-13.5 18.5-19.6 1.7-1.5 1.7-3.4 1.3-5.5-.4-2-1.7-4.1-.3-6.2 3.7-.4 2.5 3.7 4.7 5.1 2.8-3.1 6.2-5.9 3.9-10.8-.8-1.7-.7-4.6-3.4-4.1-2.5.5-4.2 2.6-4.3 5.4-.1 1.4.8 3-.5 4.3-2.5.4-2.6-1.1-2.5-2.7z" class="sta35"/>
|
||||||
|
<path d="M994.8 1100.8c0 11.4 0 22.9.1 34.3-.9-.4-1-1.3-.9-2.1.4-10.7-.7-21.5.8-32.2z" class="sta6"/>
|
||||||
|
<path fill="#cacbcc" d="M1067 917.9c-2 1.3-1.9 3.3-1.8 5.3.1 2.1-1.2 3.2-2.8 4.2-2.1 1.3-2.4-.6-3.2-1.7-1.6-1.9-2.7-.7-3.1.8-.4 1.7-.2 3.6-.3 5.3-1.6 1-3.1 2-4.7 3-4-2.6-2.6 2.4-4.3 3.1-5 4-10 8.1-15.8 11-1.1 0-1.5-1.3-2.5-1.4-.9 1.7.2 4.1-1.7 5.5l-4.8 3c-4.6-3.4-2.3 2.8-4.3 3-1.7 1.1-2.8 3.2-5.1 3.3-1.5 0-1.5-2.1-2.9-2.3-1.6 1.8.9 4.3-1.1 5.9-1.6 1.1-2.7 3-4.9 3.2-1.9 0-1.8-2.1-2.9-2.9-1.3.9-.5 2.8-1.8 3.7-.2 3.2-1.7 5.2-4.8 6-1.9-.5-1.5-2.9-3-3.9-1.3 2.5 1.3 5.7-1.4 7.9l-4.8 3c-2.2-.3-1.7-2.9-3.2-3.8-1.2 1.1-.6 2.9-1.8 3.8.2 3.6-1.1 6.1-4.8 7-2-1.1-1.8-3.4-3.3-5.9-.7 3.5-.8 5.9 1.9 7.8 3.7 1.3 1.7 3.4.5 5-1.4 1.8-2.6.7-3.2-1-.9-2.5-2.2-.8-3-.2-4.2 3.5-10.2 5.3-11 11.9-.2 1.2-1.5 3-2.8 2-3-2.7-4.5.1-6.2 1.4-4 3.3-9.2 5.3-11.3 10.7-.4 1-1.4 2-2.8 1.7-1.1-.3-2.2-.2-2.8.6-3.4 5.6-10.2 6.6-14.6 11.1-3.5 3.6-8.4 6.1-12.6 9.1-12 8.7-23.4 18-35.1 27-13.9 10.4-27.8 20.9-41.7 31.4-.9.7-1.7 1.6-3 1.4-.1-2.5-.3-5-.4-7.5.4-.7.7-1.4 1.1-2.2 1.3 0 2.7-.6 4 0 2-1.7 1.1-4 1.1-6-.1-3.7 1.3-6 4.8-6.9 1.8.9 1.5 3.2 3.4 4.4 2.4-1.4.7-4.7 2.7-6.3.2-1.8-.3-3.8 1.7-4.9 2.6-1.3 3.2-3.3 3.5-6.1.2-2.2.5-5 4.6-2.5 3.2 1.9 5.4-1.5 6.1-4.4.7-3 .6-5.1 4.9-3.4 2.6 1 5.3-1.5 6.1-4.4.6-2.3 1.4-3.7 3.9-3.6 2.7.1 4.2-2.1 5.9-3.5 7.5-6.4 15.2-12.2 24-17 3.6-2 6-6.7 9.7-9.5 15.3-11.6 30.3-23.8 45.7-35.3 14.6-10.9 29.6-21.3 44.4-31.9l69.6-49.8c2.8-.8 4.5-3.3 7.1-4.4 1-.4 1.9-.5 2.7.3.7.7.5 1.8-.1 2.3-5 4.7-8 10.9-12.4 16.1-.2.3-.8.3-1.3.5z"/>
|
||||||
|
<path fill="#2a313b" d="M989.9 979.9c-.2-2.1-.4-4.2-.5-6.4-.1-1.5-.1-3.4 1.5-3.8 2-.5 2 1.5 2.4 2.8.3 1.1.7 2.2 1 3.3.2 1 .5 1.9.5 2.9-.1 2-.3 4.5-2.4 4.8-2 .4-1.5-2.4-2.5-3.6z"/>
|
||||||
|
<path fill="#232d3b" d="M1046.9 938c0-.7-.1-1.3 0-2 .2-1.7-1-4.2 1.4-4.7 2.1-.4 1.7 2.5 2.8 3.6.2.6.4 1.3.5 1.9.5 2.8.7 7-1.8 7.4-2.9.4-2.4-3.8-2.9-6.2z"/>
|
||||||
|
<path fill="#26303d" d="M1026.9 953c0-1-.2-2-.1-3 .2-1.8-1.2-4.6 1.4-5.1 2.2-.4 1.7 2.8 2.9 4.1 1.1 3.4 1.6 6.7-1.5 9.6-2.3-1.4-2.4-3.5-2.7-5.6z"/>
|
||||||
|
<path fill="#222a36" d="M1008.8 965.9c-.2-1.9-1.2-3.7-.7-5.7.3-1.3.2-3 1.9-3 1.6 0 1.8 1.6 2 2.9.1.8 0 1.7.7 2.2.2 1.1.5 2.3.4 3.3-.2 1.8.5 4.7-1.9 4.8-2.4.1-1.9-2.8-2.4-4.5z"/>
|
||||||
|
<path fill="#242c37" d="M999.1 969.9c0-.2-.1-.3-.1-.5.1-2.1-1.3-5.4 1.4-5.9 2.3-.4 2.1 3 2.8 4.8.1.3.3.5.5.8 0 1.6.1 3.3.1 4.9 0 1.6-.7 3.2-2.4 3.2-1.6 0-1.5-1.9-1.6-3.1-.1-1.4.5-3-.7-4.2z"/>
|
||||||
|
<path fill="#252e3b" d="M1017.9 958.9v-2c0-2-1.3-5.1 1.1-5.7 2.9-.7 1.8 3.3 3.2 4.7.2.6.4 1.2.5 1.9.4 2.5 0 6.1-2.1 6.4-2.8.3-2.2-3.3-2.7-5.3z"/>
|
||||||
|
<path fill="#1f2836" d="M980.1 982.9c0-.2-.1-.3 0-.5.2-2.2-1.4-5.6 1.4-6.1 2.9-.5 2.1 3.3 2.9 5.2.2.5.5.9.7 1.3 0 1.9-.2 4.1-2.4 4.3-3.1.4-.7-3.3-2.6-4.2z"/>
|
||||||
|
<path fill="#232d3c" d="M973.8 991.8c-2.3 1.4-3.1.4-3.2-2-.1-2.5-1.9-5.3 1.1-7.2 1.2-.7 1.7.8 2 1.5.7 1.8 1 3.8 1.5 5.7-.4.7-.9 1.4-1.4 2z"/>
|
||||||
|
<path d="M1067 917.9c4.2-6.3 7.8-13 14.1-18.3-4.9-1.1-6.3 4.1-10.1 3.5 10.4-7.7 20.9-15.5 31.3-23.2.6-.5 1.1-1.2 1.7-1.8 14.3-10.4 28.6-20.8 42.8-31.3 17.9-13.3 36-26.4 53.1-40.8 11.9-10 23.1-20.7 33.9-31.8 1.1.7.7 2.5 2.2 2.9l-.1-.1c0 .2-.1.4-.1.5 4 8-.7 12.7-5.7 18.3-18.7 20.5-40.6 37.2-62.9 53.5-8.7 6.4-16.8 13.9-26.1 19.3-4.3 2.5-6.8 8-12.8 8.1-1.8 0-1.6 4-4 4.6-3.4.9-5.2 3.9-7.8 5.7-3.2 2.2-7.2 3.1-9 7-.3.5-1.7 1.1-2.2.9-3.4-1.9-3.5.6-4.5 2.8-1.1 2.2-2.4 5-5.9 2.7-1.5-1-1.9.3-2.3 1.5-1 3.5-1.4 7.8-6.9 4.4-1.3-.8-1.7.9-2 2-1.4 5.3-1.6 5.4-6.8 4-1-.3-1.6.2-1.9 1-.2.6-.3 1.3-.3 2 .4 3-1.5 4.9-3.8 5.9-2.8 1.2-1.7-3.1-3.9-3.3z" class="sta78"/>
|
||||||
|
<path fill="#474642" d="M840.9 1079.1v1.5c.1 2.6.5 6.4-2.3 6.7-2.8.2-3.4-3.5-3.7-6.2.2-2.2 1.5-3.6 3.5-4.2 2.1-.8 1.5 1.7 2.5 2.2z"/>
|
||||||
|
<path fill="#42423e" d="M829 1094c-1.3 1.2-2.6 2.4-4 0-.4-1.8-.7-3.6-1.1-5.3-.7-3.1 1.8-4.7 3.7-4.9 2.5-.4 1.3 2.4 1.5 3.8.2 2.1-.1 4.2-.1 6.4z"/>
|
||||||
|
<path fill="#7f8285" d="M800.9 1095.1c-2.3-8-5.7-15.5-9.7-22.7-1.8-3.3-1.1-5.7 1.8-7.7 2.3-1.6 4.6-3.2 7-4.7 4.9-2.9 6.7-2.5 9.6 2.5 3.4 5.9 5.8 12.2 8.1 18.6-2.1 2-3.3 5.2-7 4.8-1-.8-1-2.5-2.8-2.6-1.3 1.7.3 3.1.4 4.6-1.2 3.7-4.3 5.5-7.4 7.2z"/>
|
||||||
|
<path fill="#b4b6b8" d="M811 1086c2.6-1.1 3.5-4.5 6.7-4.8 2.5 8.4 5.1 16.8 4.2 25.7-4.7 3.5-9.4 7.1-14 10.7-1.3 1-2.3 1.9-3.7.3-.2-7.7-1.3-15.3-3.3-22.8 1.7-3.1 4.8-4.5 7.2-6.8.2-1.8 1.4-2.3 2.9-2.3z"/>
|
||||||
|
<path fill="#5c5f63" d="M604 1264.9c.6-13.4-1.7-26.3-5.9-39 3.5-1.8 6.9-3.6 10.3-5.5 1.2-.6 2.3-1.3 3.3-2.2 3-2.1 6-4.3 8.3-7.2 4.9 13.3 7.3 26.9 5.1 41.1-1.7-1.9-3-1-4.5.4-4.2 4-8.8 7.4-13.2 11.2-.9.8-1.8 1.9-3.4 1.2z"/>
|
||||||
|
<path fill="#71757a" d="M620 1210.9c-.3 5-5 5.7-8 8-1.6-1.5-1.2-3.8-2.2-5.5-.7-1.1-1.2-2.8-2.8-2.3-1.9.6-1.4 2.3-1.2 3.8.4 2.4 2.3 4 3.2 6.2-3.6 1.7-6.4 5.3-11 4.7-2.7-8.4-6.6-16.3-10.8-24.1-2.2-4.2-1.7-7.2 2.6-9.5 4-2.1 7.7-4.5 11.7-6.6 2.9-1.5 6.1-1.6 7.9 1.7 4.2 7.7 8.7 15.1 10.6 23.6z"/>
|
||||||
|
<path fill="#8a8d92" d="M604 1264.9c5.7-4.8 11.3-9.7 17-14.4 1-.8 1.7-2.5 3.2-2 1.6.6.5 2.4.9 3.5-.2 3.2-1.8 5.7-4.5 7.4-4.5 2.9-9 5.7-13.5 8.5-1 .6-2.1 1.5-3.2.6-1.3-1-.3-2.3.1-3.6z"/>
|
||||||
|
<path d="M671 1165c-3.4 2.3-7.6 3.4-10 7-3.7-7-7.1-14.1-11.7-20.5-2-2.8-.5-3.9 1.7-5.3 1.9-1.1 5-2.2 2-5.3 7.5 2.9 13.7 8.1 20.1 12.7 2.5 1.8 3.1 5.2-.3 6.9-2.4 1.3-2.1 2.7-1.8 4.5z" class="sta20"/>
|
||||||
|
<path fill="#3a3e41" d="M768 1123c.4 3.2 1.5 6.4.8 9.7-.3 1.4-1.1 2.6-2.4 2.8-1.7.4-2.1-1.2-2.5-2.4-.7-2.3-1.4-4.7-2.1-7 .1-.7.2-1.3.2-2 0-1.7.2-3.4 2.2-4 2.7-1 2.6 1.8 3.8 2.9z"/>
|
||||||
|
<path fill="#2a3037" d="M718.9 1159.9c.1 3.6-2.5 4.7-4.7 5.2-2.1.4-1.5-2.3-2.2-3.6-.2-.4-.2-1-.1-1.5.2-2.6-1.3-6.6 2.8-6.6 3.7-.1 3.3 4.2 4.2 6.5z"/>
|
||||||
|
<path fill="#2c3138" d="M701.5 1161.4c1.7 0 2.4 1.1 2.7 2.2.8 2.4 2.8 4.9.9 7.5-.9 1.2-2.7 1.8-4.1 2.6-.2.1-.9-.4-1.1-.8-1.3-3.3-1.9-6.7-.1-10 .4-.8 1.3-1.2 1.7-1.5z"/>
|
||||||
|
<path fill="#2c3139" d="M692.2 1174.9c0 1-.1 2-.2 3-.1 2.3-1.8 3.3-3.5 3.6-2.5.4-2.2-1.8-2.6-3.4-.2-.8-.6-1.5-.9-2.2v-.5c.2-2.4.7-5.1 3.5-5.2 2.7-.1 3 2.7 3.7 4.7z"/>
|
||||||
|
<path fill="#282e35" d="M731.1 1151.4c.5 2.8-1 5.1-3.7 5.2-2.3 0-2.2-2.8-2.4-4.7-.1-.7-.1-1.3-.1-2 0-2.2-.2-4.8 2.8-4.8 2.6 0 3.2 2.4 3.4 4.7 0 .4-.1.9 0 1.6z"/>
|
||||||
|
<path fill="#54524b" d="M789.2 1119.9c-.8-2.3-2.2-4.6-1-7 .7-1.5 1.9-2.9 3.8-2.6 1.7.3 1 2.1 1.2 3.3.1.8 0 1.6 0 2.4-.7 2.1-1.4 4-4 3.9z"/>
|
||||||
|
<path d="M1236 777c-1.4-4.5-.7-8.3 3.7-11 1.2-.7 2.3-1.3 3.5-.1 3.2 3 3.7 10.4.9 13.9-1.2 1.5-2.6 3-4.1 4.8-2.3-2.2-1.5-5.9-4-7.6z" class="sta78"/>
|
||||||
|
<path fill="#57544f" d="M852.2 1076.2c-.2 1.8-.8 3.8-2.7 3.6-2.5-.3-2.5-3-2.7-4.8-.3-2.5 2-1.9 3.5-2 2.6 0 1.7 2 1.9 3.2z"/>
|
||||||
|
<path fill="#202c3d" d="M952.2 1001.6c-.2-2.6-1.4-5 1-6.5 1.7-1 2.2.9 2.5 2 1.2 3-1.3 3.3-3.5 4.5z"/>
|
||||||
|
<path fill="#333a49" d="M935.9 1009.9c-.2 1.7-1.6 2-2.8 2.3-1.3.4-1.2-.8-1.1-1.5 0-1.4.5-2.7 2.1-2.8 1.1 0 1.6 1 1.8 2z"/>
|
||||||
|
<path d="M913 1021.3c1 .1 1.7.7 1.7 1.5 0 1.4-.9 2.1-2.2 2.1-.9 0-1.4-.7-1.3-1.7.1-1.1.7-1.8 1.8-1.9z" class="sta46"/>
|
||||||
|
<path fill="#1b304c" d="M811 1086c-1 .8-1.9 1.5-2.9 2.3-.2-.1-.3-.1-.4-.2-2.3-1.7-2.1-3.9-1.4-6.2.1-.4 1.1-.9 1.6-.8 2.5.6 2.9 2.7 3.1 4.9z"/>
|
||||||
|
<path fill="#c2c3c6" d="M609.1 1221.2c-4.1-1.3-4.2-5.1-4.9-8.3-.4-1.9 1.1-3.1 2.7-3.6 1.8-.6 2.6.9 3.4 2.2 1.5 2.3 1.8 4.9 1.7 7.5-.7 1.1-1.6 1.9-2.9 2.2z"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" id="Layer5" x="0" y="0" style="opacity:1;z-index:1" viewBox="0 0 1920 1920">
|
||||||
|
<style>
|
||||||
|
.ste1{fill:#ccc}.ste7{fill:#d5d5d4}.ste8{fill:#8c8e91}.ste10{fill:#7c8084}.ste12{fill:#c5c6c7}.ste15{fill:#7c7f83}.ste16{fill:#c0c0c1}.ste24{fill:#c7c7c7}.ste30{fill:#abadb0}.ste40{fill:#cdcccc}.ste42{fill:#b3b5b8}.ste54{fill:#c1c3c5}.ste78{fill:#6f7274}
|
||||||
|
</style>
|
||||||
|
<g id="Group_2">
|
||||||
|
<path fill="#bcbdbd" d="M694.9 1294c-5-.1-10-.1-15-.2-3.3-1.1-6.8.4-10.1-.8-16.7.2-33.1-1.1-49-6.9-3-11.3-3.8-22.8-3.4-34.5.4-2.7-1.5-6.2 2.6-7.8 2 2.5 1.3 5.3 1.3 8.1 0 .5.1 1 .1 1.5.3 10.6.5 10.3 10.9 10.9 25.1 1.5 50.1 2.4 75.2 1.9 8.3-.2 16.6-1 24.8-2.2 8.9-1.2 17.9-1.5 26.8-1.8 20.4-.7 40.8-3 61.2-2.2 4.6.2 6.6-2.7 9.1-5.5 2.3 2.2 1.4 5 1 7.5-.3 2.4.2 4.9-.3 6.4.7-8.5.5-17.8-.3-27.2.6-4.4.8-4.5 4.7-2.5.3 12.5.4 24.9-1.8 37.3-.8 4.3-2.9 6-6.8 6.5-25.6 3.4-51.1 7.8-76.9 10.3-5.8.6-11.6.7-17.4.9-11.9 1-24.3 1-36.7.3z"/>
|
||||||
|
<path d="M620.1 1251.9c0-2.7-.1-5.4-.1-8.1-2-3.5-2.5-7 .6-10.2 6.7 1.6 13.4 1.8 20.2.9 6.6-.9 13.3.6 19.9 1.1 9.3.7 18.6 1 27.9 1.3 10.2.3 20.7-.2 30.8-2.1 10.5-2 20.9-1.4 31.3-1.1 4.3.1 8.7.3 12.9-.4 7.1-1.1 14.3.6 21.3-1.2 2.7-.7 5.7-.7 4-5.3-1.2-3.2 2.2-2.8 4.2-3 11.9 2.5 23.7 5.2 35.6 7.3 4.8.9 6 3.7 6.2 7.8-1.5.3-4.6-1.8-3.7 2.3-.7 3.7 1.4 7.7-1.6 11.1-2.4 1.9-5.2 2.2-8 2.2-10.3-.2-20.6.2-30.9-.7-11.4-1-22.9 1.3-34.4.8-12.8-.6-25.6 1-38.3 2.2-15.8 1.5-31.5.8-47.3.1-13.8-.6-27.5-1.8-41.3-2.4-3.4 0-6.8.2-9.3-2.6z" class="ste1"/>
|
||||||
|
<path fill="#d1d1d1" d="M793.1 1223.9c-3 1.1-5.6 2.2-1 5 1.3.8 1.3 2.5-.6 3-5.5 1.5-10.8 4.1-16.9 2.3-3.2-1-6.2.9-9.3.9-5.9 0-11.8.7-17.8.1-13.5-1.3-26.7 1.4-40.1 2.6-14.3 1.2-28.7.4-43.1-.3-9.7-.5-19.4-2.6-29.3-.6-4.7 1-10 1-14.1-2.9-1.8-2-1.2-4.3-.8-6.6.7-5.2 2.4-10.3 3.9-15.3 5-2 10.3-2.6 15.5-2.6 12.8-.2 25.5-.9 38.3.5 8.9 1 17.9.7 26.8 1 26.9.9 53.3 5.3 79.5 10.8 3 .4 6.3.4 9 2.1z"/>
|
||||||
|
<path fill="#7e8287" d="M624 1211.9c2.4.4 1.1 1.8.7 2.8-2.2 6.2-3.8 12.5-3.7 19.1-1.7 3.2-.7 6.7-1 10.1-1.7 2.6-.3 5.5-1 8.2-3.3 1.6-4.5-1.7-6.6-3.1-.2-.5-.6.6-.2.1 2 2.7 1.7 5.4-.2 8.1-1.4-13.4-.5-26.6 4-39.5 1.3-3.9 4.6-4.9 8-5.8z"/>
|
||||||
|
<path fill="#535456" d="M611.9 1257.1c.2-3.1.3-6.1.5-9.7 2.5 1.6 3.6 4.6 6.5 4.7.1 10.8.1 21.7 3.3 32.2.4 1.2.1 1.9-1.3 1.8-4-2.1-6-5.6-6.9-9.8-1.3-6.3-2.3-12.7-2.1-19.2z"/>
|
||||||
|
<path d="M694.9 1294h37.2c-2.4 1.6-5.1.8-7.7.8-8.1.1-16.2.1-24.2 0-1.8.1-3.7.6-5.3-.8z" class="ste1"/>
|
||||||
|
<path d="M669.9 1293c3.3.3 6.8-.9 10.1.8-3.4-.1-6.9.9-10.1-.8zm-49.8-41.1c7.6 2.1 15.5 1 23.2 1.8 10.2 1.1 20.5 1.9 30.7 2 17.5.1 35 1.3 52.5-1.5 13.8-2.2 27.9-.4 41.8-1.5 17.8-1.3 35.5 1 53.2.3 3.1-.1 5.9-.4 8.6-2.1 1.1 1.4 1.2 2.7-.2 4-1.3 4.6-4.9 7-10.8 7-7.8 0-15.6-.3-23.4.1-15.9.8-31.8 1.5-47.6 3-29.5 2.7-59 4.1-88.5 2.7-11.7-.6-23.4-1.2-35.1-2.4-3.7-.4-4.8-1.9-4.4-5.4.2-2.6 0-5.3 0-8z" style="fill:silver"/>
|
||||||
|
<path fill="#37393b" d="M829.8 1255c.1-1.3.1-2.7.2-4 1-3.1-1.1-6.7 1.2-9.6 2 4.9.8 10.1.8 15.2-.1 4.8-.7 9.5-1.4 14.3-1.3-5.4-.4-10.7-.8-15.9z"/>
|
||||||
|
</g>
|
||||||
|
<g id="Group_1">
|
||||||
|
<path d="M659.2 1078.1c2.5-5.2 6.5-8.9 11.7-11.6 6.8-3.5 14.2-5.1 21.3-7.7 1.1-.9 2.4-1.1 3.8-1.2 20.8-3 41.6-3.8 62.6-2.3-12.4-8.9-22.7-19.6-32.7-30.8-5.8-6.5-13.2-11.2-20.8-15.4-5.2-2.9-10.8-5.4-14.2-10.7-1.2-1.9-3.4-2-5.4-2-5.5 0-11 0-16.5.7-3.1.4-6.9 1.4-8.5-3 0-.9.4-1.6 1-2.2 5.6-5.1 12.7-7 19.8-8.9 8.5-2.3 17.3-2.8 26.1-3.3 3.7-.2 7.3-.3 10.7-2 4.6-1.1 9.2-1.3 13.9-1.5 12.8-.3 25.6.3 38.3.2 35.2-.4 70.5-.7 105.8.1 17.1.4 34.2.1 51.3 1.2 7.9 1.8 15.9.8 23.8.8 7.8 0 14.7 1.3 20.3 7.3 2.4 2.5 6.2 3.2 9.7 3.5 13.6 1 27.2 1.9 40.7 3.2 14.7 1.4 29.5 2.3 44 5 4 .3 8 1.4 12.1 1.4 4.7 1.5 9.9.5 14.2 3.2.3 4.1-3 4.3-5.4 4.1-11-1.2-22-.5-32.9-1-18.6-.9-37.3-1.5-55.9.8-5.3.7-10.3 2.7-15.1 5.1-6.1 3.2-9.8 8.1-11.3 15-1.1 5.4-2.1 10.7-2.7 16.2 0 6.9 0 6.9 7 7 5.8.1 11.6.7 17.2 2.2 1.5.4 3.4 1 3.6 3 .1 2.2-1.6 3.3-3.3 3.9-4.4 1.6-8.8 2.9-13.5 2.9-2.5 0-4.9.3-7.4.8-2.3.5-2.6 1.7-2.3 3.6.1.8.7 1.7.6 2.4-1.9 10 3.8 13 12.3 14.2 6 .8 10.7 4.4 13.8 9.7 3.2 5.3 2.1 7.8-3.8 9.2-4.8 1.1-5.7 3.6-2.8 7.6 1 1.3 2.3 2.5 2.9 4 4.6 10.4 13.3 12.8 23.5 12.5 4.4-.1 8.6.8 12.7 2 1.7.5 3.1 1.4 3.4 3.3.3 1.9-1.4 2.5-2.6 3.2-4.1 2.5-8.5 3.6-13.3 3.6-3.6-.1-4.6 1.2-2.2 4.4 8.4 11.2 16.6 22.4 24.9 33.6 3.9 5.3 8.4 10.3 11.7 16.1 3.2 5.8 8 6.6 13.6 6.8 6.8.2 13.6.7 20.2 2.6 2.1.6 4.5 1.2 4.7 3.8.1 2.3-2 3.2-3.8 4.1-4.7 2.3-9.8 2.9-14.9 3.5-1.2.2-3-.7-3.5 1-.4 1.3.8 2.4 1.6 3.5 4.9 5.9 9.7 11.8 14.6 17.6l39 45.9c.9 1.1 2.2 2 3.3 3 .2 1.9-1.4 2.5-2.6 3.3-11.8 7.7-23.8 15.1-36.2 22-9.7 5.4-19.5 8.3-30.1 2.6-3.8-1.3-6.6-4-9.2-6.7-18.3-18.4-39.5-33.4-59.6-49.7-19.6-15.9-39.8-31.1-58-48.6-16.3-15.6-33-30.9-49.9-45.9-14.1-12.4-27.2-25.8-41.8-37.6-3.8-3-6.9-7.1-10.5-10.4-13.1-10-24.1-22.4-36.9-32.7-4.3-3.4-8.5-5.3-14.2-4.3-4.4.9-9-.4-13.3-1.4-12.7-3-25.4-2.6-38.2-1.5-6 .5-12 .6-17.9.7-12.7.2-25.1 1.9-37.3 5.4-3.8.8-7.5 2-11.2-.4z" class="ste7"/>
|
||||||
|
<path d="M371.1 861.1c21.5-.7 43 .5 64.4.9 34.6.6 69.3 1.4 103.9 2.2 26.8.6 53.6 1.3 80.4 2 26 .7 51.9 1.3 77.9 2 25.6.7 51.3 1.3 76.9 2 19.1.5 38.3 1.1 57.4 1.6 3.3-1.3 6.7-1.7 10.3-.9 1.3.3 2.6.4 4 .3 18.8-.6 37.6.9 56.3 1.1 29.4.4 58.8 2 88.2 2 7.5 0 14.8 2.1 22.2 2.4 18.3.4 36.5.9 54.8 1.3 2.1.1 4.3-.4 6.4.7-4.2 2.3-8.6.7-12.9.9 11.4.1 22.8.6 34.1 1.6 10.4 1 20.9 1.9 31.2 3.9 2.8.5 6.8.9 6.8 4.7-.1 3.7-4 3.9-6.9 4.4-15.2 2.9-30.5 5.2-46.1 5.2-10.3 0-20.3 3.1-30.7 3.3-8 .2-15.9 1.2-23.9 1.5-16.1.5-32.1 2.4-48.2 2.8-6.2.2-12.3.8-18.4 1.3-2.3.2-4.7.2-6.9 1.4 1.8 1.2 3.7 1.7 5.6 1.9 14 2 27.5 6.4 41.5 8.7 4.5.7 8.6 2.7 12.8 4.2 5 1.9 6.2 4.8 4.1 9.8-.9 2.1-1.6 4.4-3.5 6-3 1.8-6.3 2-9.7 2-45.3 0-90.7.1-136 0-33.8-.1-67.6-.5-101.4.2-27.8.6-55.6 1.4-83.4 2-27.3.7-54.5 2.2-81.8 2.8-1.5 0-3 .2-4.5-.1-2.6-1.1-2.2-3.5-2.3-5.5-.2-4.7 0-9.3-.1-14-.1-3.8-1.6-6.8-5.5-7.1-5.4-.5-10.9-1.6-16.4-.8-6.7 1-7.2 1.4-8.8 8.1-.2 1-.4 2-.7 2.9-.1.3-.2.6-.2 1-1.7 8.7-2.7 9.2-11.5 7.6-11.3-2-22.7-3.2-34-5.1-3.1-.5-6.2-1.2-9.2-2.1-6-1.7-12.1-1.6-18.2-1.6-2.1-5.1-1.6-10.4-1.1-15.7.1-1.3 1.1-2.9-.1-3.7-1.6-1-2.7.7-3.6 1.7-4.5 4.9-9 9.7-13 14.9-3.4-.2-4.2-4.3-7.3-4.9-2.3-4-.5-8.3-.7-12.9-3.1 1.1-4.9 3.2-7.5 4.8 2.1.2 4.2-1.6 5.1.9.8 2.2 1.2 4.5-1.2 6.2-3.8-.3-7.7-.9-10-4.4-1.1-1.6-2.9-.1-4-1.2-.9-4.4-2.9-7.6-8-7.8-.9 0-1.9-.7-1.6-2 7.5-3.6 15.8-5 23.3-8.6 1.8-.8 3.9-.8 5.6-2.7-1.8-2-4.4-2.2-6.7-2.8-16.3-4.1-32.8-7.6-49-12-7.8-2.1-15-5.4-22-9.3-4.3-2.4-4.5-4.3-1.2-8-3.5 0-7 .2-10.5-.1-1.8.2-4 .7-4.5-1.9z" class="ste8"/>
|
||||||
|
<path fill="#a9acb0" d="M1461.9 891c5.5-1.8 10.9-3.9 16.4-5.5 6.2-1.8 10.9-5.5 15.3-9.8 14.3-14.2 28.5-28.5 42.9-42.6 26.4-25.9 52.7-51.9 79.4-77.4 15.6-14.8 30.6-30.2 46-45.1 22-21.3 44.1-42.5 65.9-64.1 7.5-7.4 15.6-11.4 26.6-10.6 13.6 1 27.3 0 40.9 1.1 10.2.8 20.5-.5 30.7.1 1.5.1 3 0 4.5.2 7.5 1.1 9.6 4 7.6 11.3-4.4 15.5-11.1 30.3-16.8 45.3-6 15.8-13.1 31.3-18.4 47.4-.2.6-.7 1.1-1 1.7-7.8 7.3-16.7 13-26.3 17.6-15.9 7.5-32.2 14.5-47.7 22.9-14.1 7.6-27.6 16.2-41.5 23.9-29.7 16.5-59.8 32.2-90.4 46.9-22.9 11-46 21.9-70 30.5-9.9 3.5-19.9 6.5-30.4 7.7-9.3.3-18.6-.7-27.9.9-2.1.3-4.9.9-5.8-2.4z"/>
|
||||||
|
<path d="M1013 940c-.5-2.5 1.1-4.4 2.2-6.4 1.8-3.5 1.1-6.1-2.9-7.4-17.5-5.5-35.4-9-53.4-12.3-3.8-.7-7.5-2.3-12.7-3.9 4.2-1.3 7-2.8 10-2.9 12.9-.6 25.8-2 38.7-2.3 13.7-.3 27.4-1.9 41.1-2.8 5.6-.4 11.2-.2 16.9-1 24.9-3.2 50.2-3.1 74.8-8.2 1-.2 1.9-.6 2.9-.9 1-.3 2-.7 2.2-1.8.2-1.5-1.1-1.8-2.2-2.3-4.5-1.9-9.4-2.2-14.1-2.8-11.7-1.4-23.5-1.6-35-3.4-7.4-1.1-14.9.6-22.1-2.9h15c34.8.9 69.6 1.8 104.4 2.8 16.8.5 33.6.9 50.4 1.4 37.8 1.3 75.6 2.7 113.3 4.1 1 0 1.9.4 2.9.6-1.8 2.1-4.3 1.4-7.6 1.8 13.3.9 25.5 2.7 37.8 3.8 23.7 2.2 47.3 4.8 70.7 9.5 6.1 1.2 11.8 3.5 17.1 6.7 2.8 1.7 5.1 3.9 4.8 7.5-.3 3.8-2.7 5.9-6 7.3-1.5.7-3.2 1.1-4.8 1.3-13.8 2.3-27.5 5-41.6 4.8-2.2 0-4.3.2-6.5.5-24.3 2.9-48.6 4.7-73.1 5.7-13.2.5-26.5 1.4-39.8 2.6-3.2.3-6.2-.8-9.4-.8-8.5.2-16.9 1.3-25.4 1-5.6-.2-11.3-.4-16.9-.4-3.1 0-5.5.5-7.5 2.7-1.9.8-3.9.8-5.9.8-54.9.1-109.9-.1-164.8-.3-.8 0-1.7 0-2.5-.2-5-1.2-9.9-1.3-14.9-.2-2.7.5-5.3.5-8 0-3.6-1.5-7.2-1.5-11.2-1-5.4.7-10.9 1.1-16.3-.4-.2.1-.4-.1-.6-.3z" class="ste10"/>
|
||||||
|
<path id="9" fill="#d6d5d5" d="M1013 876.8c-19.8-.5-39.5-1.1-59.3-1.6-.8 0-1.7-.1-2.5-.1-22-.4-44-.3-65.9-1.4-17.8-.9-35.6.1-53.3-1.8 8.6-6.3 18.5-10.5 27.8-15.7 32.3-17.9 64.6-35.7 97.2-53 26.7-14.2 52.6-29.9 79.6-43.5 9.8-5 19.2-10.5 29.4-14.6.2.3.3.6.3.9.1 2.1-2.6 4.2-.9 6.1 2.1 2.5 4.4 5 7.7 6.1 3.3 1.1 6.7 2.1 9.6 4.1 1.7 1.2 3.4.9 5.2 0 2.5-1.3 5.2-2.2 7.9-3.1 5.4-1.9 6.8-.3 6 5.4-1 7.3-2.4 14.3-8.3 19.5-.9.8-1.4 1.8-1.4 3.1-.7 1.3-2.2 2.1-2.1 3.9-2.7 4.5-7.5 6.9-10.6 10.7-.8.3.3.6-.2.1 1.7-1.5 3.3-1.1 4.8.3-8.7-.1-13.1 6.6-18.4 11.7-6.8 6.6-13.7 13.1-20.5 19.7-.8.7-2.2 1.4-1.4 2.8.6 1 1.8.7 2.7.6 4.3-.2 8.6.4 12.8 1.4 1.5.4 3.4.9 3.6 3 .2 2.1-1.7 2.8-3.2 3.3-3.4 1.2-6.9 2.2-10.6 2.4-5.5.2-10.9.7-16.4.9-2.1.1-3.3 1.3-4.6 2.5-7.1 7.1-14.2 14.1-21.2 21.2-.9.9-2.6 1.7-2.1 3.1.6 1.7 2.5 1.1 4 1.2 1.5.2 3.1-.3 4.3.8z"/>
|
||||||
|
<path d="M1736 955.1c-1.4 2.9 1.6 3 2.7 3.6 23.1 13.4 46.3 26.6 69.5 39.9 10.2 5.9 20.2 12.2 30.6 17.7 6.6 3.5 13.6 6 19.9 10 2.4 1.5 4.8 3 6.2 5.6-1.9 3-4.9 2.6-7.6 2.2-6.1-1-12.3-.9-18.4-.8-21.4.6-42.1-3.1-62.1-10.8-24.5-9.5-49.6-17.6-74.3-26.6-23.9-8.7-47.8-17.6-72.1-25.3-8.4-2.7-16.9-4.9-25.4-7.5-7.4-2.3-15-4.4-21.2-9.4-1.8-1.5-3.9-2.9-3.5-5.6.3-2.8 2.7-3.6 4.9-4.4 2.2-.7 4.4-1.4 6.7-1.9 4.4-.8 9-1.4 11.2-6.4-2.2 0-4.7.9-7.1.7-1.7-.1-3.6-.4-4.1-2.3-.6-2 1.2-2.9 2.6-3.7 1.3-.8 2.6-1.5 3.9-2.3 7.8-3.7 16.4-4 24.6-6.1 3.9-1 7.9-2.9 12.2-1.8.3.1.8.2 1 0 3.8-5.2 10.1-4.2 15.2-6 .4-.2.7-.7.9-1.2 1.4-6.8 2.7-7.7 9.4-7 13.4 1.3 26.8 1.9 40.3 2.7 8.1.5 16.2 1.1 24.4 1 1.7 0 3.3.1 4.6 1.5-.1 1.5 1 1.8 2.2 2.1 3.3 5.5 2.4 11.2 1.1 17-.6 2.6-2.5 3.8-4.8 4.5-4 1.3-8.2 1.6-12.3 2.2-15 2-30.2 2.9-45.2 5.1-5.1.8-10.5.7-14.4.6 8.6-1 18.6.4 28.7-.8 7.7-.9 15.6.5 23.4 1 6 .3 11.9.2 17.9-.4 6.5-.7 7.9.6 7.6 6.9-.2 2.2.2 4.1.8 6z" class="ste12"/>
|
||||||
|
<path fill="#525154" d="M1496.9 891c18.9-3.1 36.6-10 53.9-17.6 25-11 49.6-22.7 73.9-35.1 33.6-17.2 66.8-35 99.3-54.4 12.9-7.7 27.2-13.2 40.8-19.8 12.4-6 25.4-11 35-21.6 1.1-1.2 1.8-1.4 2.1.5-8 20-16 40.1-24 60.1-.9 2.3-2.1 4.5-3.1 6.8-2.6 5.2-7.1 8.2-12.1 10.7-13.5 6.7-28.1 10.4-42.2 15.3-9.9 3.4-20.3 5.7-29.9 9.5-10.8 4.3-21.6 8.8-32.6 12.5-34 11.7-68.6 21.6-103.6 30-14.5 3.5-29.3 5.8-43.7 10 9.8-1.6 19.7-1.6 29.5-2.8 3.6-.4 6.8-1.5 9.1-4.5 1.2-1.6 2.9-2.7 5.1-2.7 1.8 0 3.8.7 3.4 2.7-.8 5 2.3 3.5 4.8 3.3 14.1-1 28.1-2.9 42.2-3.5 9.2.7 18.1-1.8 27.2-2.3 1.1-.1 2.3-.5 3.4-.3 1.2.2 2.4.4 2.7 1.8.3 1.3-.5 2.2-1.6 2.8-2.3 1.3-5 2-7.6 2.3-7.6.8-12 6.2-15.9 11.6-2.3 3.2-4.7 5.9-8.3 7.5-.6.2-1.1.3-1.7.4-14.2.2-28.2-1.7-42.4-2.2-9.5-.3-18.9-.8-28.4-1.5-20.9-1.6-41.9-1.9-62.8-3.9-1.2-.1-2.3-.1-3.5-.5-3-1-3.7-3.2-1.1-5 3.2-2.3 6.8-3.9 7.5-8.6.3-1.7 2.6-1 4-1.1 7-.2 13.9.7 20.6-.4z"/>
|
||||||
|
<path fill="#9fa1a5" d="M1646.9 979.9c-37.5 10.2-75.3 19.2-113.4 27.2-23.4 4.9-46.9 9.5-70.5 13.4-23.9 3.9-47.9 7.2-72.1 9.8-38.9 4.1-77.9 5.6-117 6.3-24.7.4-49.2-.9-73.9-.6-3.3-.4-6.8 0-7.7-4.7-.3-1.6-2.7-2.2-4.3-3.1-12-6.3-25.1-9.6-38.1-13.1-4.8-1.3-9.6-2.6-14.4-3.8-1.4-.3-3.8-.6-1.5-3 2.1-.9 4.2-.8 6.4-.8 17.7 0 35.3-.6 52.9.1 48.6 1.9 97.2 1 145.8.6 28.4-.2 56.9-1.1 85.2-3.4 15.3-1.2 30.5-2.4 45.7-4.1 3.6-.4 7-.1 9.2 3.5.7 1.1 1.9 1.3 3 1.4 7.7.3 15.3.2 22.8-1.4 1.9-.4 3.9-1 4.4-3.4 1-4.3 4.5-5.5 8.3-5.9 16.7-2 33.4-4.1 50-6.4 22.2-3.1 44.7-5 66.7-9.5 3.2-.7 6.6-.8 9.8-1.6 1.9 0 3.6 0 2.7 2.5z"/>
|
||||||
|
<path d="M446.2 917c1-1.3 1.9-4.7 3.5-.8 1.8 4.4 6.6 3.3 9.3 5.8 2.5 2.8.6 6.4 1.9 9.7 1.7-2.9-.6-6.9 3.1-8.8 4.5-1.3 4.7 3.3 6.9 5 2.4-.8 4.9-.4 7.4-.4 3.6 0 7.3 0 7.2 5.3 1.7-.8 1.5-2.4 2.8-2.8 11.5-2.5 22.2 2.5 33.3 3.9 11.1 1.5 22.2 3.3 33.3 5 3.6.5 5.9-.5 5.2-4.8-.2-1.1-.1-2.3.9-3.2 3.3 5.4.9 10.7-.4 16-3.5 2.1-7.4 2.2-11.2 2.4-1.9.1-3.9-.1-5.8.5-2.5.5-5 .7-7.4.5-6-.6-11.9-.5-17.7 1.3-2.6.8-5.3.7-7.6-1.2-1.6-1.3-3.2-1.1-5-.1-4.2 2.5-8.5 3.9-12.6-.5-1.7-1.9-3.4-1-5 .8-4.5 5.2-8.3 5-12.2-.5-2.2-3.2-3.9-3.1-5.7.5-1.3 2.5-2.6 4.4-5.7 4.9-3.3.5-5.5-.1-6.2-3.8-.4-1.8-.8-4.3-3.5-4-2.8.4-3 2.8-2.9 5 .1 2.9-1.3 4.3-4.1 4.5-9.3.6-18.5 1.7-27.7 3-1.6.2-3.3.1-4.8-.8-1.4-2.9-.8-6-.8-9 1.2-1.8 3-.7 4.5-.8 1.1-.1 2.4.6 3-.8.3-.8-.2-1.6-.8-2.2-1-.9-2.1-.8-3.1-.1-1.1.7-1.9 1.9-3.3 1.9-3.2-.2-6.5-1.4-8.3 3-1 2.4-4 1.8-6.4 1.5-2.2-.3-3.9-1.7-4-3.8-.1-5-3.5-6.2-7.3-7.4-6-2-12.1-3.8-16.4-9-1.5-6.8.3-13.5.9-20.3.4-4.3 4.8-3.8 7.9-4.7-5.5-.7-11-.1-16.5-.8-1.6-.2-2.4 1-3.4 1.8-.7.3-1.5.3-1.7-.3-1.9-5-6.1-8.8-6.8-14.2-1.1-8.7-6.3-14.4-13-19.2-3.3-2.4-6.5-4.6-7.3-9-.4-2.2-2.2-2.7-4.2-2.7-3.3-.1-6.6 0-10-.1-1.9-.1-4 .3-5.5-1.5 8.7-1.6 17.5-.4 26.2-1 4-.4 8-.7 12 .1.9 1.4-.7 4 2.1 4.5 2.6.5 4.9.2 6.7-2.1.8-1.1 1.3-2.9 3.3-2.5 2.6.1 5.3.2 8 .3 4.5 1.9 9.1.4 13.7.8 1.8.2 3.5 0 5.4 0-.2.7-.1 1.2-.3 1.3-1.7 1.4-5.3.9-5.3 3.7 0 2.9 3.4 3.3 5.5 4.5 17 9.4 36.1 11.6 54.4 16.6 7 1.9 14.3 2.6 21 5.7 2.4 1.1 2.9 2.9.4 3.7-10 3.2-19.3 8.4-29.8 9.7-2.1 2.1-6.3 1.7-6.9 6.2 2-.1 2.7-2 4.1-2.5 3.2-1.3 6.3-1.5 8.6 1.4 2.4 3 .8 5.6-1.5 7.9-3.1 3-6.6 5.6-10.2 8-1.2.8-2.8 2-2.4 3.5.5 1.9 2.5 1.3 3.8 1.2 3.6-.3 7.3 1.8 11.9.2-3.3-2.1-6-1.2-8.5-1.6-1.1-.2-2.5-.3-2.9-1.6-.4-1.3.6-2.3 1.6-2.9 4.4-2.8 8.1-6.7 12.3-9.8z" class="ste15"/>
|
||||||
|
<path d="M1133 1009.1c10.9 3 21.9 5.9 32.8 8.9 8.6 2.4 17 5.5 24.8 9.9 2.2 1.2 4.6 2.1 4.4 5.8-.2 2.8 3.8.3 5.1 2.2-7-1.4-12.7 3.2-19 4.7-8.3 2-16.7 2.8-25.1 3.4-32.1 2.2-64.1 1.1-96.2.9-21.6-.2-43.1-1.2-64.7-1.9-4-1.1-8.1.3-12.1-.8h-13.9c-3.1-6.6.5-12.7 2-18.7 3.6-14.3 16-17.2 27.9-19.1 17.6-2.8 35.5-1.8 53.2-.9 11.4.6 22.9-.7 34.2 1.4 2.1.4 4.7.1 5.7-2.7 1.1-1.3 2.6-1.4 4.1-1.2 11.4 1.7 22.8 3.9 34 6.4 1 .2 2.1.7 2.8 1.7z" class="ste16"/>
|
||||||
|
<path fill="#6d7176" d="M372.8 932.8c6.2 4.2 13.1 7 20.3 9 2.8.8 4.3 2.1 4 5.2-.2 2.4-.1 4.9 3.3 4.9 2.7 0 5.9 1 5.9-3.6 0-1.5 1.3-2.6 2.8-2 2 .8 4.4 0 6.1 1.7.6.7.6 1.3 0 2 .6 3 1.9 6 0 9-1.4 1.7-3.4 1.4-5.2 1.5-2.8-.1-5.3-.5-5.4-4.2-.1-1.4-1.3-1.8-2.6-1.7-.5 0-1.1.1-1.3.6-.6 1.2.5 1.8 1.1 2.5.9 1 2.8 1.9.6 3.4-8 2.6-16.4 2.2-24.6 3.4-15.3 2.3-30.6 3.8-46 5.8-3 .4-6 .9-8.7-.8-3.6-7.1-2.5-15-3.2-22.5-.8-9.1-.1-18.3-.1-27.4 0-6-1.3-7.8-7.3-8.5-6.6-.7-13.3-1.2-19.8.5-3.2.9-6.1-.3-8.2-2.4-7.1-6.9-13.9-14-19-22.7-2.5-4.2-2-7.7 1.3-11.2 1.5-1.5 3.3-2.9 3.3-5.3 13.9-5.1 28.2-7.3 42.9-8 5.7 0 11.3.1 17 .1 2.5 0 4.4.7 4.2 3.6-.2 3.6 2.1 5.6 4.6 7.1 8.4 5.3 14.4 11.8 15.7 22.3.7 5.1 5.4 8.9 6.6 14.1.2 0 .5 0 .8-.1 2.8.1 3.3 2.2 3.8 4.3 1.5 5.7 2.8 11.5 4.2 17.1.6 1.1 2 1.4 2.9 2.3z"/>
|
||||||
|
<path fill="#b1b3b7" d="M1604.8 891.9c-13.9 1.2-27.8 2.4-41.7 3.5-1.8.2-3.6.3-5.5.4-2.3.1-3.1-.8-1.7-3 .6-1 2.4-2 .7-3.2-1.4-.9-3.8-1.3-4.6.2-4.8 9-13.8 6.7-21.2 7.7-6.6.9-13.2.9-19.8 2.2-1.4.3-3 .4-4.5-1 1.4-2.3 3.8-2.3 5.9-2.8 22.9-5 45.8-9.9 68.5-15.9 34.1-9.1 67.8-19.2 100.7-32.2 21-8.3 42.8-14 64-21.7 10.7-3.9 21.2-7.8 29.4-16.2-4.4 14-10.7 27.2-15.8 40.9-1.9 5.1-4 10.2-6 15.2-5.4 3.8-11.6 5.7-18.1 6.8-20 3.4-39.9 7.5-60.1 10-8.8 1-17.3 3.7-26.1 4.7-14.8 1.6-29.5 2.7-44.1 4.4z"/>
|
||||||
|
<path fill="#6f7379" d="M1496.9 891c-6 2.2-12.2.6-18.2 1-3.1.2-6.5-.9-5.6 4.6.5 2.8-2.6 3.9-5.2 4.3-1.8.3-3.7 1.1-3.4 2.9.3 1.9 2.5.9 3.9 1.1 17.5 1.8 35.1 2 52.6 3.2 12.3.8 24.5 1.5 36.8 2 15.4.6 30.8 1.9 46.2 2.9-.9 3.2-3.9 3.3-6.4 3.9-23.5 5.9-47.1 11.4-71.1 15.5-22.1 3.8-44.6 4.8-66.8 7.7-6.5.8-13.2 1.5-19.9 1.3-5.6.1-11.1-.7-16.6.5-.9.2-1.8.3-2.7.4-6.2.3-12.5-.7-18.7.7-2.5.4-4.9.6-7.4.3-11.2-.1-22.3-.2-33.5.1-11.9 0-23.7.5-35.6-.3-9.8-2-19.8-2.6-29.7-1.2-2.5.4-4.9-.2-7.4-.3-16.3-.2-32.5 1.6-48.8.3-.6-.2-1.1-.6-1.5-1-1.6-4.5 2.3-3.7 4.1-3.7 13.2.2 26.3 1.5 39.5-.2 7.5-.9 15.1.6 22.7 0 21.9-1.7 44-1.9 65.9-4.1 11.7-1.2 23.4-1.5 35.1-2.8 17.7-2 35.6-2.4 53.2-6.1 1.7-.3 3.2-.9 4.7-1.7 4.8-2.6 5.3-7.9.8-10.7-5.9-3.8-12.4-6.4-19.4-7.6-14.8-2.5-29.7-4.8-44.6-6.8-8.2-1.1-16.5-1.5-24.7-2.3-13.2-1.3-26.3-2.7-39.5-4-1.1-.1-2.2-.5-2.2-1.6 0-1.7 1.6-1.3 2.7-1.3 3-.1 6-.1 9-.2 1.9.1 3.9.1 5.8.2 5.3 1.2 10.8-.3 16.2.8 2.3.1 4.5.1 6.8.2 4.7 1.1 9.5-.3 14.2.8 2.3.1 4.5.2 6.8.2 4.3 1.1 8.8-.3 13.2.8 2.3.1 4.5.2 6.8.2 4 1.1 8.2-.3 12.2.8 2.3.1 4.5.2 6.8.2 3.7 1.1 7.5-.3 11.2.8 1.9.1 3.8.1 5.8.2 4.4 3.9-1.4 4-2.4 6.4 2.1 1.2 4 2.2 4.9-1.4.5-1.9 1.1-3.8 2.4-5.3 1.9-1 3.9-1.8 6.1-1.8 1.5 1.6 3.5 1.1 5.2.8 9.8-1.5 19.8-.1 29.7-.7z"/>
|
||||||
|
<path fill="#cacacb" d="M1092.1 787.1c-2.8-3.6 1.3-5.7 2.6-6.8 6.3-5 3.8-12.5 6.1-18.6.7-2-1-3.4-2.9-2-9.2 6.6-18 3.8-26.7-.7-2.9-1.5-5.7-3.8-7.6-6.4-2.1-2.9 1.8-4.9 2.4-7.5 8-6.3 17.6-10 26.4-14.9 21.9-12.1 39.1-29.6 57.2-46.1 7.1-6.5 14.3-13.2 25.2-12.1 3.3.3 4.5 1.7 4 4.8-1.5 8.8-2.6 17.7-4.2 26.5-2.1 12.1-9.5 20.2-18.3 27.6-13.9 11.8-28.1 23.3-41.8 35.3-7.7 6.6-15 13.9-22.4 20.9z"/>
|
||||||
|
<path fill="#54575b" d="M197 984.1c-12.6-4.3-25-9.1-34.9-18.6-6.7-6.4-7.6-10.5-3.8-18.5 2.6-2.8 5.9-4 9.7-4.6 8.4-1.2 16.9-1.7 25.1-4.3 3.4-1.1 6.5-2.5 9.6-4 2.7-1.4 5.4-2.8 8.5-2.3 3.9 2.9 6.7-1.3 10.1-1.6 2.2.2 2.2 1.5 1.6 3.2-.6 1.6-.6 3 1.2 3.7 1.6.7 2.4-.5 3.1-1.7.9-1.5 1.7-3.5 4-2.9 2.3.6 2 2.8 2.2 4.5.1 1.3-.1 2.7 1.5 3.3 4.4 1.3 9 1.1 13.4 2 3.2-.9 6.2-.2 9.2 1 6.9 2.7 13 6.8 19.4 10.1 1.3.7 2.6 1.4 4 2 3.2 1.2 4.7.1 4.7-3.3v-18c0-1.7 0-3.4 1.1-4.8.6-.8 1.4-.8 2 .1 1 1.7.8 3.5.8 5.4-.1 11.8-.4 23.6 2.2 35.2.3 1.3.3 2.7-.4 3.9-5.5 2.6-11.6 2.3-17.5 3.1-13.8 1.8-27.6 4.6-41.4 5.6-11.7 1-23.5 4.6-35.4 1.5z"/>
|
||||||
|
<path fill="#60646a" d="M233.1 942c-1.9-1.7-.7-4-1.1-6.1-.1-.9.1-2.1-1-2.5-1.7-.5-1.7 1-2.2 2-1.5 3-2.7 6-6.9 2.4-2.4-2.1-1-3.3 0-4.9.8-1.3.4-1.7-.9-1.8 0-2.5 2.3-3.1 3.9-4 3.2-1.8 4-4.8 3.8-8-.2-3.4-4.8-5.6-7.5-3.6-4.2 3.3-7 7.9-10.1 12.2-1.6 2.2 1.6 3.5.9 5.5-2.2-.1-4.3-.1-6.2 1.1-11.5 7.3-24.8 8.3-37.8 9.7-3.6.4-6.4 2.5-9.8 3.2 3-6.7 8-11.9 13.8-16 8-5.7 16.6-10.8 24.9-16.1 2.1-.4 2.1 1.3 2.1 2.5 0 1.6.7 2.9 1.5 4.1 3.2 5.1 5.1 5.3 9 .6 2.2-2.7 4.5-5.3 6.9-7.8 1.1-1.2 1.8-2.5.2-3.9-1.4-1.1-2.5-.2-3.5.7-1.9 1.8-3.8 3.8-5.7 5.6-1.3 1.3-2.8 2.4-4.6 2.9-1 .2-2.1.3-2.7-.6-.7-1.1.2-1.8.8-2.6.2-.3.5-.5.7-.7 5.9-4 10.7-8.8 13.3-15.6 15.4-15.3 34.4-24.1 54.8-30.2.9.3 2.3.3 1.6 1.8-.4.9-1.2 1.5-1.9 2.3-6.2 6.6-6.4 9.2-.6 16.4 4.5 5.5 9.2 10.7 13.9 16 2.1 2.4 4.9 4 8 4.6.1 6.2-.3 12.3-3 18-2 5.8-.4 11.8-.9 17.7-.1 1.3.1 2.7 0 4-.3 2.3 1.4 5.6-1.1 6.9-2.8 1.5-5.8-.5-8.4-1.9-7-3.7-13.5-8.2-21-11.1-3-1.2-5.6-1.5-8.6-.6-2.5-5.3-1.3-10.8-.9-16.2.4-5.8-4.1-10.1-9.7-8.5-2.6.7-2.1 2.9-2 4.9.5 5.8-.3 11.7-2 17.6z"/>
|
||||||
|
<path fill="#9c9ea2" d="M197 984.1c21-.9 41.8-3.6 62.6-6.6 10.4-1.5 20.9-3.7 31.5-3.5 8.2 5.3 17.6 4.4 26.7 4.5 2.7 0 4.1-1.5 4-4.5-.1-1.7-.2-3.7 1.6-4.9 16.2-1 32.2-3.6 48.2-5.4 10.5-1.2 21-2.5 31.5-3.7 1.9-1.6 4.2.5 6.1-.9 2 0 3.9-.1 5.9-.1 8.3.4 16.4-2.2 24.7-2.3 1.8 0 3.6-.5 5.4-.6 3.3-.1 6.9.8 5.2-5-.8-2.6 1.4-4.9 4.6-5.5 3.4-.6 3.4 2.1 4.6 4 1.1 1.6-1 5 2.5 4.9 3.3-.1 6.7-.2 7-5 .1-2.2 1.5-3.5 4-3.5 2.4 0 3.6 1 4.2 3.3.5 2.1 1.2 4 4.2 3.8 2.8-.1 4.6-.6 5.6-3.6 1.1-3.2 5.6-3.6 7.6-1 2.6 3.5 6.9 3.9 10.2.6 1.9-1.9 4.2-2.5 5.6-.9 4.4 5 8.9 1.9 13.3.4 2.6-.8 4.8-.2 7.2.1 4 .4 8 .1 12 .1.1.3.1.6.2.9-.2 1.2-.8 2.2-1.2 3.3-.9 2.8.2 6.7-2.8 8.2-4.1 2-8.8 3-13.5 3-11.5 0-22.9.2-34.3 1-8.6.6-17.3.9-25.9 1.2-20.9.7-41.8 2.7-62.7 4-16.1 1-32.2 2.4-48.2 4.3-.8.1-1.7-.1-2.4.8 8.7 1.7 17.5 2.5 25.8 5.5-.5 2.8-2.8 2.4-4.6 2.6-34 2.4-67.9 5.5-101.6 10.7-7.7 1.2-15.5 1.7-23.3.4-1.1-.2-2.3-.3-3.4.3-16.2-2.6-32.7-4.5-48.1-10.9z"/>
|
||||||
|
<path d="M659.2 1078.1c4.3.1 8.5-.6 12.7-1.7 11.6-3.1 23.4-4.8 35.6-4.7 10.5.1 21.1-1.2 31.7-1.7 11.1-.5 21.7 2 32.5 3.6 1.3.2 2.8.9 3.9.5 8-3 13.5 1.4 18.7 6.1 8.2 7.5 16.8 14.5 24.2 22.8 2.3 2.6 6 3.7 8.1 6.5.6.8 2.4 1.1 1.2 2.7-1.8.5-4.4-1.2-5 2.1-9-1.4-18-2.5-26.9-3.9-3.3-.5-6.6-.6-9.9-.8-7.3-1.9-14.6-3.7-22.2-4.2-3.6-.6-7.2-1.3-10.8-1.8-2-.3-4-.5-5.2-2.5-9.6-2.6-19.5-3.4-29.2-4.9-16.8-2.7-33.8-3.8-50.8-5.1-8.1-.9-11-5.4-8.6-13z" class="ste24"/>
|
||||||
|
<path fill="#616063" d="M1604.8 891.9c5.9-2 12.1-1.9 18.1-2.5 16.5-1.7 32.7-5 49.1-7.5 21.5-3.3 42.9-6.9 64.2-10.8 5.1-.9 10.1-2.2 14.3-5.3.8-.6 1.8-2 2.4.2-5.1 12.8-10.2 25.5-15.1 38.3-1.3 3.3-3.6 5.5-6.9 6.7-19.3.5-38.4-1.6-57.6-2.8-4.6-.3-9.3 0-13.9-1-3.9-.9-6.3.2-5 5 .2.8-.3 1.9-.5 2.8-15.4 2.5-30.7 1.2-46-.6-1.2-.1-2.3-.5-3-1.5 3.6-2.2 5.5-5.8 8-8.9 4.6-5.7 10-10.8 18.3-11.2 2-.1 6.3.2 5.8-2.8-.4-2.5-3.9-.1-6.1-.1-8.7.1-17.3 3-26.1 2z"/>
|
||||||
|
<path fill="#b7b7b8" d="M1057.1 1310.9c.4-.6 1.1-.8 1.7-.5 11.1 5.6 20.7.8 30-4.5 12.7-7.2 25.1-14.8 37.2-22.9 7.6-4.1 15-8.5 22.8-12.3 9.2-4.6 19-6.5 29.4-4.8 3.1.5 4.1 1.8 3.7 4.6-1.9 12.6-3.7 25.3-8.8 37.1-2.8 6.4-7 10.3-14.6 10.8-9.4.6-18.7 3.3-28.2 2.5-21.3-1.7-42.8-.8-63.8-5.8-3.4-.9-6.6-2-9.4-4.2z"/>
|
||||||
|
<path d="M661 994c2.3 3.5 5.9 2.3 8.6 1.7 6.2-1.2 12.3-.4 18.4-.7 1.4-.1 3 0 3.5 1.4 2.5 6.3 8.5 8.2 13.6 11.1 10.7 6 20 13.3 27.9 22.9 8 9.6 17.8 17.4 27.9 24.7.5.4 1.2.6 1 2.2-22-2-44.1-1.5-66.1 1.8 1-7.7.3-15.5.8-23.2.1-1.2.6-3.1-1.2-3.3-2.2-.2-1.8 2-1.9 3.3-.2 4.1 0 8.2-.1 12.4-.1 2.1.3 4.4-1.7 5.9-1.8-6.8-.7-13.8-.7-20.7 0-3.1-.7-4.2-4-4.5-12.2-1.2-23.6-4.8-33.1-13-4.8-4.1-5.4-8.2-2.3-15 2.3-2.9 3.7-6.8 8-7.5.6-.1 1.1.1 1.4.5z" class="ste24"/>
|
||||||
|
<path fill="#b6b7bb" d="M1646.9 979.9c0-1.3-.7-1.9-2-1.9-5.7 1-10.3-2.6-15.4-4-3.4-.8-6.5-2.4-9.9-3.3-4.1-1-8.3-.8-12.2 1-7.5 3.4-14.9 3.9-22.6.3-5.5-2.5-5.8-4.5-1.3-8.4 1.5-1.3 3.3-1.5 4.8-2.4-3.3-2.4-7.4-3.2-10.1-6.6-1.1-1.4-3.1-.7-4.8-.5-16.8 1.9-33.5 4.6-50.3 6.6-1.2.1-2.3.4-3.5.4-1.9.1-3.6-.4-4.6-2.3-1.1-4.9-.8-9.8-1-14.7 1-2.4 3.3-2.6 5.3-3.2 5.8-1.6 11.8-2.1 17.7-2.9 18.4-2.6 36.8-5.8 55.1-9.4 2.2-.4 4.6-1.4 6.7.5-1.2.8-2.5 1.5-3.7 2.4-1 .7-3.1.7-2.4 2.5.5 1.5 2.3 1 3.6 1.1 3.5.2 7-2.3 11.2.1-2.9 1.5-5.5 2.9-6.6 6-.4 1.1-2.1 1.2-3.5 1.2-4.8.1-9.3 1.9-13.8 3.4-3.4 1.1-3.6 3.8-.8 5.5 4.2 2.6 8 5.7 13.1 7.2 7.4 2.2 14.7 4.6 22.1 6.9 13.9 4.3 27.8 8.6 41.5 13.6 27.6 10.1 55.2 19.8 82.8 29.7 16.2 5.8 32.5 11.5 48.8 17.3 8.8 3.1 18 4 27.2 5.2 13.2 1.8 26.6-.6 39.7 1.7 2.2.4 4.7.4 6.8-.9.3 4.1-3.1 3.7-5.3 3.9-3.9.3-7.8 0-11.7 0-7-1.1-14.1.4-21.1-.8-17.4 1.4-33.3-4.5-49.3-10.3-16.2-5.9-32.5-11.6-48.8-17.3-24.5-8.7-49.1-17.5-73.6-26.2-2.5-1.1-5.3-1.5-8.1-1.4z"/>
|
||||||
|
<path fill="#423e3f" d="M659.6 993.8c-2.7 1.9-4.9 4.2-6.6 7.1-2.8 2.1-6 1.7-9.2 1.7-38.2 0-76.3-.3-114.5.1-27.3.3-54.6 1-81.9 2.1-11.7.5-23.3.8-34.9.2-3.3-.2-6.5.3-9.8 1-4.5 1-9.1-.8-13.7-1-8.4-.2-16.9-.2-25.3-.6-3-.1-3 .9-3.3 3.6-1.2 10.4 3.6 17.9 10.3 24.9 1.7 1.8 2.2 4.6 3.3 7-1.3 1.9-3.3 1.9-5.3 1.9-2.1 0-3.5.6-1.4 2.8 1.3 1.4 1.6 2.9 0 4.3-1.4 1.3-3 2.1-4.9 1.2-1.7-.8-3.3-1.7-3.9-3.6-.6-1.9-1.6-3-3.4-3.8-3-1.2-2.3-4.5-3.1-6.8 3.5-3 .6-6.6.9-9.9-2.2-5.2-1.7-10.8-2.3-16.2-.4-3.8-2-5.1-5.6-5.3-4-.2-8.2 1.1-12.1-2.1 3.3-2.7 7.1-2.8 10.6-2.8 23.1-.2 46.2-2.7 69.3-3.3 8.9-.2 18 .3 26.8-1.5 8.1-.9 16.3-.9 24.4-1.1 13.5-.4 26.9-1.6 40.4-1.3 23.9.5 47.9-1.4 71.8-1 24.3.4 48.6.1 72.9.1 2.7 0 5.3 0 8 .4 1 0 2.8-.2 2.5 1.9z"/>
|
||||||
|
<path fill="#a8aaae" d="M389 1005c7.8-.3 15.6-.6 23.4-.8 80.2-2.7 160.4-3.8 240.6-3.2-3.5 5.2-2 10.1.9 15-22.6-.9-45.2-1.8-67.7-2.7-9-.4-17.9-.5-26.9-1-22.6-1.1-45.2-1.5-67.8-2.4-24.6-.9-49.1-2-73.7-3-2.8-.1-5.6-.6-8.4-.7-2.1-.1-4.5-1-3.5 3.4.6 2.7-3.7 1.9-4.6.9-3.3-4.2-7.8-4.5-12.3-5.5z"/>
|
||||||
|
<path d="M439.2 996.1c-8.2 1.6-16.5 1-24.8 1.5-23.5 1.5-47.1 2.4-70.6 3.6-3.3.2-6.5.7-9.7 2h13.8c1.7 0 3.8 0 3.9 2.2.1 6.9 2.4 13.7 1.1 20.7-9.9-2.2-20-2.7-30.1-4-8.4-1.1-16.8-2.1-25.2-3-1.9-.2-2.5-1.1-2.6-2.9-.3-4-.9-7.9-1.3-11.9-.3-3.1-1.7-4.2-5-4.5-8.6-.8-17.2-.8-25.7-2.7 1.8-2 4.3-1.8 6.5-1.7 20.9.8 41.5-2.6 62.2-4.6 18.4-1.8 36.8-3.5 55.2-4.4 5.1-.2 10.2-2.1 15.3-.2 2.4 2.8-1.2 2.9-2 4.5 3.1 2.6 6.9 2.8 10.6 2.7 8-.1 15.8 1.5 23.8 1.1 1.7 0 3.5.1 4.6 1.6z" class="ste30"/>
|
||||||
|
<path fill="#64666a" d="M403 987c-21.1 1-42.1 2.9-63.1 4.8-25.6 2.3-51.1 6.7-77 5.3-5.9-.8-11.9-1.5-17.8-2.2 1.1-1.1 2.5-.8 3.8-.8 15 .4 29.7-2.8 44.5-4.6 14-1.8 28-3.2 42.1-4.4 13.6-1.2 27.1-3.3 40.7-3.2.6 0 1.2-.5 1.8-.8 1.4-1.5 3.3-1.5 5.1-1.7 14.9-1.5 29.9-2.2 44.8-3.1 15.3-.9 30.6-1.3 45.8-2.6 8.3-.7 16.6-.8 24.9-1 15.3-.5 30.6-1.9 45.9-1.2 2.8.1 5.6-.3 8.5-.6 2.6-.3 5.3-.6 7.8.7 2.1 2.8 2.6 5.8.9 9-1.3.9-2.8 1.2-4.3 1.1-9.7-.3-19.2 1.2-28.9 1.2-22.4 0-44.8 1.5-67.1 2.7-8.6.4-17.3.4-25.9 1.2-4.4-.2-8.9-.6-13.3.4-1.7.4-3.5.5-5.2.5-3.9-.1-7.8-.3-11.7.3-.8-.2-1.6-.4-2.3-1z"/>
|
||||||
|
<path fill="#65686d" d="M1736 955.1c-3.8.4-3.4-1.9-2.8-4.4 1.5-7.1 1.1-7.8-5.8-6.7-10.8 1.8-21.5-.2-32.3-.4-4.5-.1-8.9-.5-13.4.1-5.4.6-10.9.2-16.4-.5-4.5-.5-9.1-.1-13.8-.7 5.2-.5 10.4-.9 15.5-1.5 19.3-2.2 38.6-4.3 57.8-6.9 8.3-1.2 9.2-2.9 9-11.5-.1-3.1-.5-6.3-.8-9.4 7.9 1.6 15 4.9 21.7 9.1 3.2 2 5.6 4.5 7 8.1 2.7 7.1.9 12.6-5.6 16.5-6.2 3.8-13.2 6-20.1 8.2z"/>
|
||||||
|
<path fill="#100f0f" d="m748 1100.9 16.1 3c3.8 1.3 7.5 2.7 10.2 5.8 1.3 1.6 2.8 3.7 2.4 5.3-1.3 4.8.6 9.4.5 14-.6 3-.8 6.2-1.9 9-3.9 10.1-16.2 14.4-26.9 9.8-10.5-4.5-15.7-16.2-11.2-25.9 1.4-3 2.6-5.9 3-9.3.8-4.9 4.3-8.4 7.8-11.7z"/>
|
||||||
|
<path fill="#0f0f0e" d="M786.1 1108.2c6.7-1.2 13 1.4 19.6 1.9 4.5.3 8.8 1.3 13.3 1.6 1.9.2 3 1 4 2.4 1.3 5.4.9 10.6-2 15.4-.7 1.1-.6 2.2-.7 3.3-1.1 11.4-8.4 18.2-19.5 18.4-10.8.2-20.2-7.7-21.6-18.1-.2-1.3-.2-2.7-.3-4-.3-.6-.7-1.2-.5-1.9 1.9-6.2 5-12.1 6.5-18.4.1-.3.8-.5 1.2-.6z"/>
|
||||||
|
<path fill="#0e0e0d" d="M352 1036c1.3.2 2 .9 2.1 2.3 0 .8.1 2.3.2 2.3 5.3.1 4.6 5.8 7.6 8.1 2.4 1.8 3.8.5 5.1-.9 1.8-1.9-.6-2.3-1.6-3.1-.7-.6-2.2-.7-1.5-2 .9-1.4 2.2-3.1 3.9-2.4 2.3.9 4.2.1 6.2-.3 4.7 4.3 6.1 11.5 2.6 17.2-2.1 3.5-4.3 7-6.6 10.4-5 7.6-16.1 8.6-23.9 2.5-7.6-5.9-9-16.7-2.6-23.3 3.4-3.3 3.7-8.9 8.5-10.8z"/>
|
||||||
|
<path fill="#838e9a" d="M215.1 900.2c-.4 9.5-8.5 13-14.9 18.5 3 .5 4.6-1 6.1-2.4 2.3-2.2 4.6-4.3 6.6-6.7 1.9-2.2 3.1-2 5.1 0s2 3.2 0 5.2c-3.4 3.4-6.6 6.9-9.7 10.7-2.4 2.9-4.1 2.1-6.5 0-3.3-2.8-3.3-7-4.9-10.5 6.1-5 12.2-9.9 18.2-14.8z"/>
|
||||||
|
<path fill="#b8babd" d="M1084.1 802.1c-1.8-.1-3.5-.2-5.9-.3 3.6-4.6 7.4-8.1 11.8-10.8 5.8-.1 11.5.4 17.3 1.1 2.5.3 5.7.6 5.9 3.4.2 2.5-3 3.3-5.2 3.9-7.8 1.9-15.9 2.4-23.9 2.7z"/>
|
||||||
|
<path fill="#67686a" d="M786.1 1108.2c-1.2 7.4-4.7 14.1-7.3 21h-1.7c-.4-1.2-.9-2.5-1.3-3.7-.7-2.3-2.3-3.8-.3-7 1.5-2.5-.4-6.9-3.7-9.2-2.5-1.8-5.2-3.5-7.8-5.2 7.7 0 15 1.4 22.1 4.1z"/>
|
||||||
|
<path fill="#5c5e63" d="M691.8 1054.1c.1-6.8.2-13.6.2-20.4 0-2.2.2-3.8 3.2-3.6 2.9.2 3.5 1.3 3.3 4.1-.3 6.6-.3 13.2-.3 19.9 0 2.1 0 4-2.3 4.8-1.2-.1-2.5-.1-3.7-.2-.1-1.5-.2-3.1-.4-4.6z"/>
|
||||||
|
<path d="M363.1 860.9c-2.3 2.8-3.3 6.8-8.6 6.1-5.7-.7-6-.7-3.5-6 1.9-1 2.7-2.9 3.7-4.5 2-3.5 5.3-2.8 7.9-2.1 3 .8-.1 3.3.4 5 .1.5.1 1 .1 1.5z" class="ste40"/>
|
||||||
|
<path d="M1455.9 892.8c.6 2.7-1.7 4.8-1.4 7.7.1 1.3-1.6 2.3-3.4 1.7-1.9-.7-4.2-.9-4.8-3.1-.6-2.3 1.6-1.9 2.9-2.1 2.5-.4 3-1.7 1.8-3.8 1.6-.2 3.2-.3 4.9-.4z" class="ste10"/>
|
||||||
|
<path d="M1826.8 1035.1c7 .3 14.1-1.1 21.1.8-7-.3-14.1 1-21.1-.8z" class="ste12"/>
|
||||||
|
<path d="M1367.2 888.9c-5.4-.2-10.9 1.1-16.2-.8 5.4.1 10.8-.6 16.2.8zm21 1c-4.7-.2-9.6 1-14.2-.8 4.7.1 9.5-.5 14.2.8zm20 1c-4.4-.2-8.9 1.1-13.2-.8 4.4.1 8.8-.5 13.2.8z" class="ste10"/>
|
||||||
|
<path d="M351.1 861c-4 0-8-.1-12-.1 4-1.2 8-1.5 12 .1z" class="ste40"/>
|
||||||
|
<path d="M982.9 1042.1c4 .3 8.2-1 12.1.8-4-.2-8.1.9-12.1-.8z" class="ste7"/>
|
||||||
|
<path d="M1427.2 891.9c-4.1-.2-8.2 1-12.2-.8 4.1.1 8.2-.5 12.2.8zm18 1c-3.8-.2-7.6 1-11.2-.8 3.7.1 7.5-.5 11.2.8z" class="ste10"/>
|
||||||
|
<path fill="#3b3738" d="M1629.9 972.8c5 1.7 10 3.5 15 5.2-7.3 2.8-15 3.8-22.6 4.8-34.4 4.6-68.9 8.9-103.4 13.3-3.8.5-7.5.6-8.3 5.8-.5 2.9-3.8 3.5-6.4 3.9-7.3 1-14.6 1.4-21.9 1.3-2.5 0-4.7-.5-5.3-3.4s-2.8-1.8-4.4-1.7c-9.6.8-19.1 2-28.7 2.8-14.9 1.2-29.8 2.4-44.7 3.1-59.9 2.9-119.9 2.2-179.8 1.9-27-.1-54-.6-80.9-.9-1.8 0-3.7.1-5.5.2-12-2.2-24-4.5-36.1-6.7-1.6-.3-3.3-.3-4.9-.4-4.7-.4-9.4-.6-13.9-2.1.8-3.4 3.7-2.3 5.7-2.3 10.2-.1 20.3-.3 30.5-.3 75 0 149.9.3 224.9-.2 24.6-.2 49.2-1 73.8-2.6 19.1-1.2 38.2-2.3 57.3-4.2 6.5-.6 6.9-1.1 7.1-7.6.1-2.3-.1-4.7.2-7 .7-5 1.2-10 1.9-15 .1-3.5-.2-7.1.5-10.6 2.2-9.3 2.9-9.9 12.3-11.2 5.8-.8 11.6-.8 17.3.6 2.6.6 4.7 1.8 5.5 4.5 1.6 4.9 1 9.9 1.1 14.9 2 3.8 1.5 7.8 1.1 11.8-.8 3.6-.5 7.3-1 10.9-.5 3 1.1 3.9 3.7 3.7 2.3-.1 4.6-.5 6.9-.8 29.4-3.9 58.9-6.9 88.2-11.5 4.9-.8 9.8-1 14.8-.2z"/>
|
||||||
|
<path d="M1478.8 975.1c0 4.2-.1 8.3-.1 12.5 0 2.9-1.4 4-4.2 4.3-23.2 2.1-46.5 3.9-69.7 4.8-104.7 4.3-209.5 1.9-314.3 2.1-4.1 0-8.5-1.5-12.4 1.2-4.1.8-8-1.1-12-1-.8-3.9 2.2-3.1 4-2.9 5.7.6 11.3.1 16.9.5 6.8.5 13.2-1.2 19.7-2.5.8-.2 1.7-.3 2.3-.8 7.8-6.9 17.8-5.3 26.9-6.8 4.9-.8 9.8-2.2 14-1.5-4.2 0-6.3-1.2-6.4-3.6 5.4-1.7 10.9-.9 16.3-.8 12.3.2 24.6.1 36.9.3 7.7.1 15.5.7 23.3 0 11.1-.2 22.2-1.6 33.3 1 1.2.3 2.3.1 3.4-.3.8-.2 1.6-.5 2.4-.7.1 0 29.3.6 29.4.6 1.1.4 2.3.9 3.4.5 6.8-2.4 13.8-.2 20.8-1.3 4.7-.8 9.7-.7 14.2 1.5 1.3.6 2.5.3 3.8-.2 4.5-2 9-2.1 13.4.3 1.6.9 3 .9 4.7 0 4.6-2.5 9.3-3.8 13.9.2 1.8 1.5 3.2-.2 4.1-.8 4.4-2.9 8.9-2.5 13.3-.7 2.5 1.1 4.4 1 7-.2 4.1-1.9 8.7-2.6 12.3 1.7 1.6 1.9 2.7 1 4.1-.2 5.7-5.2 8.6-5.1 14.5.4 1.8 1.7 3.2 1.2 3.9-.7 1.4-4 4.5-4.1 8-4.4 14.4-1.2 28.9-1.2 43.3-3.3 2-.4 4-1 5.6.8z" class="ste42"/>
|
||||||
|
<path fill="#8d8e90" d="M928 979c-70.3-.9-140.7-1.8-211 0-8.3 1.4-16.7 1.9-25.1.9-2.3-2.3 0-2.7 1.5-3 3.1-.7 6.3-.2 9.4-.4 2.1-.1 4.3.5 6.6-.7-1.6-3.3-4.4-4.2-7.7-4.3-2.9-.2-6 .7-8.7-1.2-.3-2.3 1.5-2.3 2.9-2.5 4.4-.5 9 .2 13.3-1.7 1.2-.5 2.5.5 3.8 1 1.4.6 3 .8 4.4.4 12.5-3 25 .8 37.5.6 8.5-.1 17.3-1.3 26.2.3 4.5.8 10.4-.3 15.6-1.2 6.3-1.1 12.6-.6 19-.4 3.6.1 4.2 1 4 4.4 1.2-4.4 4.5-4.5 8-4.5 11.3-.2 22.7.3 34 0 2.7-.1 5.3.1 6.5 3.3.5 1.5 1.7 1.9 3.1.5 4.6-4.5 10.2-5.4 15.5-2.1 2 1.2 2.9 1.4 4.9-.3 3.2-2.6 7.3-2.2 10.9-.6 2.1 1 3.7 1.1 5.6.2 1.5-.7 3.2-1.1 4.8-1.1 11.2 0 22.3-.5 33.5.2 2.4.8 4.9.6 7.4.9 3.8.4 6.6 2 6.7 5.3-.2-1.5 2.4-1.8 3.7-3.3 1.6-1.9 3.7-2 5.9-2h21.5c2 0 4 .2 6-.5.5-.2 1-.3 1.5-.3 2.7-.3 5.3-.1 7.9.5 3.3.7 6.7.8 9.9-.5s6.2-1.1 9.2-.1c1.8.6 3.7 1.2 5.4.7 6.6-1.9 13-1 19.6 0 3.2.5 6.3-.6 9.3-1.5 2.1-.6 3.9-.8 5.2 1.4.3.5.4 1 .5 1.5.1 1.1 0 2.1-.6 3-1.2 1.4-3 1.2-4.6 1.4-1.1.2-2.5.2-2.6 1.7-.1 1.6 1.2 2.2 2.6 2.4 1.3.3 2.6.1 3.9.1 3.9.1 7.8-.5 11.7.1 1.5 1.7.5 2.6-1.1 3.3-1.2.5-2.6.4-3.9.6-17.1-.3-34.3.1-51.4-.6-16.6-.6-33.3.2-49.9-.6-14.2-.7-28.3-.1-42.3-1.3z"/>
|
||||||
|
<path fill="#b7b9bc" d="M417 986c1.6 0 3.3-.1 4.9-.1 4.3-1.2 8.8.4 13.1-.9 23.5-1.1 47-2.1 70.6-3.2 18.7-.9 37.4-1.6 56.2-1.5 1 .4 1.7 1.2 1.9 2.2 1.2 4.2 4.4 5 8.1 5.1 4.5.1 8.9.1 13.4.8 5.5 1 7.9-1 9.1-6.5.4-1.7 1.1-2.7 2.7-3.2 3.6-1 7.2-1.4 10.9-1.4h60.9c2.2 0 4.3-.1 6.4.8 1.5.9 1.2 1.8-.2 2.5-1.8.9-3.9.8-5.9.8h-38c7.6 2.2 13.9 5.1 20.9 6.3 3.6.6 7.8 1.3 10 5.2l-1 1c-.5 0-.9-.1-1.4-.1-1.3-1.6-3.1-.9-4.7-.9-37.5.1-75-.1-112.4.4-33.1.4-66.2 1.2-99.3 2.8-1.3.1-2.7 0-4 0-10.2-.4-20.4-.7-30.6-1.1-3-.1-5.9-.8-8.6-2.1-1.1-.5-2.8-.6-2.5-2.5.3-1.7 1.4-1.8 2.9-1.5 1.3.2 2.1-.8 2.6-1.9h1.9c4-1.3 8.2.3 12.1-1z"/>
|
||||||
|
<path d="M928 979c25.5 0 50.9-.2 76.4.2 22.6.4 45.1 1 67.6.9 8.3-.5 16.7-.5 25-.6 1.8 0 3.6-.2 5.4 0 2.1 0 4.2-.1 6.3.4 2.9 1 5.9.6 8.9.7h19.3c2.1 0 4.4-.4 6 1.5 1.5 2.6 4 1.8 6.3 1.9 2.4.1 4.7 0 7.2 0-.2 2.1-1.2 2-2 2-10.1-.2-19.9 3.1-29.9 3.4-6 .2-9.9 2.5-14.6 5.3-3.8 2.2-8.8 3.1-13.3 3.2-9.1.2-18.2 1-27.3-.5-1.6-.3-3.1-.4-3.3 1.7-10.7-2-21.6-2.9-32.5-4-15-1.5-30-2.7-45-3.9-4.9-.4-9.9 0-14.7-2.1-2.2-1-3.8-1.9-5.5-4-2.5-3-6.8-4.9-11.2-5-8-.1-16 0-24-.1-1.7-.1-3.6.6-5.1-1z" class="ste16"/>
|
||||||
|
<path d="M662 993c-5-1.1-9.5-3.6-14.7-4.6-6.6-1.2-13.5-3.6-19.9-7.5 1.6-1.3 3.2-.8 4.5-.8 13 0 25.9 0 38.9-.1 1.8 0 3.7.6 5.2-.9 5-2.6 10-2.5 15-.1h26c-1.5 1.9-3.6 2-5.8 2-11.5.4-23 1.3-34.1 4.8-5.4 1.7-10.6 3.6-15.1 7.2z" class="ste24"/>
|
||||||
|
<path fill="#b1b3b5" d="M1041 941h8c1.7-.9 3.4-.5 5.2-.3 16.1 1.5 32.3.6 48.4.8 3.7 0 7.2 1 10.9 1.1 1.9.1 4.1.4 4.3 2.5.3 2.5-2.1 3-4 3.6-.6.2-1.3 0-1.9.5-.6.1.1.9-.2.3-.1-.1.1-.2.4-.3 1.1-.3 2.3-.5 3.4-.3 9.1 1.2 18.2 1.7 27.4 1.6 3.8 0 3.8.2 4.6 3-1.5 1-3.1 1.1-4.8 1.1-23.1 0-46.2.3-69.3-.1-4.1-.2-8.2.3-12.3.1-2.5-.2-5-.2-7.5 0-9.5-.2-19 .5-28.5-.4-7.6-1.6-15.4-.5-23.1-.7-55 .1-110 0-164.9.1-19.3 0-38.6-.4-57.9.6-4.3.2-8.7.3-13 .3-21.2-.2-42.3 1.8-63.4 1.2-6.1-.2-12.3-1.2-18.3.8-.8.3-1.7.2-2.5.1-5.5-1-11-1.9-16.4.8-1.5.8-4 .7-5.3-.4-3.8-3.2-6.9-2-10.7 0-3 1.5-6.7 1.2-9.5-1.1-2.3-2-4-2-6.5 0-4.3 3.4-8.4 3.1-12.4-.7-2.2-2-3.4-1.7-5.3.4-4.1 4.5-8.8 4.3-12.6-.2-2-2.4-3.5-3-5.1.3-.7 1.4-1.4 3.2-3.6 2.6-1.8-3.7-2.1-7.4.2-11 1.5-.3 2.9-.8 4.3-.9 13.8-.4 27.6-.5 41.3-1.1 26.7-1.3 53.5-1.6 80.2-2.2 11.3-.2 22.6-.1 33.9-.8 30.9-2 61.9-.7 92.8-.9 51.2-.3 102.4-.1 153.6 0 4 0 7.9-.7 11.9-1 5.9 1 11.8.6 17.8.3 3.6-.6 7-.7 10.4.3z"/>
|
||||||
|
<path fill="#46484b" d="M595 947v11c2.8 3.8 1.2 8.2 1.7 12.3.5 3.2 1.9 6.5-.8 9.5-1 10.1-1.6 10.6-12.8 9.8-3.5-.2-6.9-.3-10.4-.4-7.5-.3-8.8-1.4-10.8-8.8-1-2.8-.7-5.7-.9-8.5-2.2-7.6-2.8-15.4-1.9-23.2.2-.6.6-1.1 1-1.5-.1-5.4 1.6-10.6 1-16v-.5c1.3-10.3 3.1-12.1 13.5-12.2 4.6-.1 9.3.3 13.8 1 4.4.6 6.7 3.4 6.7 7.9-.1 6.3-.1 13-.1 19.6z"/>
|
||||||
|
<path fill="#c3c4c7" d="m488.3 930.1-.3 3.9c-.1 1.1-.5 1.9-1.8 1.9-1.4.1-2.4-.6-2.2-2 .9-5.8-3.2-4.7-6.5-4.9-2.2-.1-4.6.8-6.6-1 0-3.1 2.3-4.6 4.1-6.5 3.4-3.7 6.7-7.4 10-11.1 1.1-1.2 2.5-1.9 4-1.1 1.5.8 1.1 2.4.7 3.6-1.2 3.4-.2 7-1.3 10.3-.3 1-.5 2.1.7 2.6 6.9 3-.4 2.9-.8 4.3z"/>
|
||||||
|
<path fill="#c5c6c9" d="M446.2 917c-2.7 5.9-8.8 8.1-13.4 13.1h9c1.8 0 3.4.6 3.2 2.9-.2 2.2-2 1.9-3.4 1.8-4.6-.2-9.2-.5-13.9-.8-3.4-.2-2.9-1.7-1.6-3.9 2.3-3.9 6.8-5.1 9.8-8.1 1-1 2.4-1.8 3.4-2.8 2.2-2 4.3-4.5 1.2-7.1-2.7-2.3-5.9-1.9-8.4.9-1.2 1.4-2 4.2-4.4 1.8-2-2-.3-3.9 1.3-5.5 1.9-1.8 4.3-2.4 6.8-2.4.6.3 1.2.7 1.8.8 7.7 1 8.3 1.6 8.6 9.3z"/>
|
||||||
|
<path fill="#c8c9cc" d="M464 923c-1.3 1.9-.7 4.1-1 6.2-.3 2 1.5 5.5-1.9 5.6-3.9 0-1.7-3.8-2-5.8-.4-2.2 0-4.6 0-6.9 1.5-1.9.9-4.1.7-6.1-1.2-.4-2 .2-2.9.5-1.1.4-2.5 2.1-3.5.7-1.2-1.6.5-2.5 1.8-3.4 2-1.4 4-2.9 5.9-4.5.9-.7 1.9-1.6 3.1-.9 1.2.7.9 2.2.6 3.2-1 3.8-.8 7.6-.8 11.4z"/>
|
||||||
|
<path fill="#9da0a5" d="M1148 953c-1.7-1.6-3.8-.9-5.7-.9-9.6.1-19.2-.1-28.6-2.1-.9-.2-1.8-.7-3.2-1.2 2.6-1.3 5.1-1.4 7.3-3.9-4.7-1-8.9-2.7-13.3-2.8-15.6-.3-31.2-.1-46.8-.2-1.3 0-2.7.2-3.7-1 3-.9 6-.7 9.1-.1 58.3 0 116.6 0 175 .1h1c11.9 1 23.9.3 35.8.4 14.1.1 28.2-1 42.3 0 2.6.2 5.3-.5 7.9.6h36c11.4.8 22.7.8 34.1 0 2.3 0 4.6 0 7-.1 4.5-1 9.2-.2 13.7-.5 1.8-.1 3.6.5 5.3-.5h2c5.6-1.3 11.4.4 17.1-.9 12.7-.9 25.3-1.7 38-3.6 8.6-1.3 17.5-1 26.2-2.3 13.4-2.1 26.9-3.6 40.2-6.3 17.7-3.5 35.2-7.9 52.7-12 2.4-.6 4.6-1.8 6.9-2.6.3 0 .6-.1.9-.2 16.3 1 32.6 2.8 49 2.1-2.8 2.1-6.4.8-9.4 2-.9.3-2.5-.1-2.8.4-3.6 6.2-10.3 3.2-15.4 5.1-5.5 2-11.6 2.3-17.3 3.6-3.4.7-6.6 1.9-9.9 2.9-8.3 1.5-16.6 2.9-24.8 4.4-14.1 2.7-28.2 4.8-42.5 6.7-5.7.7-11.4 1.3-16.7 3.9-2.4-3.1-6-3.4-9.5-3.6-5.8-.4-11.6-.1-17.4.5s-6.1 5.2-7.1 9.3c-1.6-.3-3.1-1.1-4.9-.9-13.6 1.5-27.3 1.3-40.8 2.9-2 .2-4 .5-6 .5-17.3-.4-34.6.8-51.9 1.2-73.3 1.9-146.6.2-219.8.8-3.7-.1-7.2.8-10-1.7z"/>
|
||||||
|
<path d="M1041 941h-23.8c-1.5 0-3 .4-4.2-.9 6.9-.4 13.8.6 20.6-.9 2.6-.7 5.2.1 7.4 1.8zm22 0c-3 0-6 .1-9.1.1-1.7 0-3.3 0-5-.1 4.8-1.6 9.4-1.5 14.1 0z" class="ste8"/>
|
||||||
|
<path fill="#888b90" d="M1638.9 933.8c-.4-3.1.8-5 4.7-4.9 1.6.1 3.2-.6 4.9-.8 1.9-.2 3.9-.3 4.3 2.2.3 2.2.8 4.8-2.3 5.7-2.1.6-4.1 1.4-6.2 2-5.1 1.7-5.5 1.4-5.4-4.2z"/>
|
||||||
|
<path fill="#c2c4c7" d="M397.3 921.7c5.9-4 5.5-13.6 15.2-15.2-5.9 9.4-11 17.7-17.1 25.3-1.4 1.8-3.6 2.1-5.9 1.4-1.4-.4-2.5-1-2.2-2.7.4-2 1.7-.8 2.7-.8 4.8-.2 6.1-2.4 4-6.8-2.1-4.3-4.5-8.5-6.6-12.8-.6-1.2-2.3-2.7-.2-3.8 1.7-.9 3.2.1 4 1.9 1.9 4.5 4 9 6.1 13.5z"/>
|
||||||
|
<path fill="#c1c3c6" d="M372.8 932.8c-1.3-.1-2.8.4-3.8-.8-.6-4.4-1.4-8.9-1-13.3.6-7.8.7-7.8-6.9-9.6 0-2-.2-4.3 3-3.7 5.9 1.1 11.9.4 17.9.7 1.2.1 2.9-.3 2.9 1.7 0 1.7-1.4 2-2.8 2.2-7.8 1.1-7.7 1.1-8 9-.3 4.6-.9 9.2-1.3 13.8z"/>
|
||||||
|
<path d="M437.9 953c-2.1-.2-5.2.8-4.8-3.4.3-3.2 2-4.8 5.2-4.5 1.3.1 2.9.5 2.2 2.2-.9 1.9 5.3 6.9-2.6 5.7z" class="ste54"/>
|
||||||
|
<path fill="#bec0c3" d="M415.1 950v-2c1.3-2.5 3.1-4.5 6.2-3.3 2.3.9 2.8 3.5 2.6 5.5-.3 2.9-2.6.7-4 .9-1.7.2-3.4-.1-4.8-1.1z"/>
|
||||||
|
<path d="M417.5 922c1.6.8 5.3-1.5 5.3 1.9.1 4-3.8 1.4-5.8 2.2-.3.1-.7.1-1 0-1.7-.4-4.7 1.2-4.6-2.1.1-3.1 3-1.5 4.7-1.9.3-.2.7-.1 1.4-.1z" class="ste54"/>
|
||||||
|
<path d="M560 947c0 .4-.1.7-.1 1.1-5.5 2.9-11 3.6-16.8.9v-.2c5.5-1.2 11.2-1.2 16.9-1.8z" class="ste8"/>
|
||||||
|
<path fill="#292b2d" d="M323.3 969.1c-.3 11.1-.3 11.2-11.9 10.8-4.3-.1-8.6-.5-12.9-.9-3.3-.3-6.1-1.5-7.4-5-3.5-13-3.1-26.3-3-39.6 0-1.8 0-3.7-.1-5.5.4-6.1.7-12.2 3-18 .9-1.1 2.2-1.7 3.5-1.8 6.8-.3 13.6-.7 20.3.6 4.6.9 6.8 3.3 6.5 8.3-.3 5.3-.1 10.6-.2 15.9-.3 11.8.6 23.5 2.2 35.2z"/>
|
||||||
|
<path d="M361 909.1c9.7.2 9.5.1 8.3 10.1-.5 4.2-.3 8.5-.4 12.8-1.6-6.2-3.5-12.3-4.7-18.5-.4-2.4-1.6-3.3-3.2-4.4zm27.2 39.7c.2 1.5-1 2.4-3.6 2.3-2.4-.1-4.7.3-4.6-3.3 0-2.9 1.1-4.5 3.9-4.6 2.8-.2 4 1.7 4.3 5.6zm20.9 10.2c-1.8 1.6-4 .7-6.1.9-.5-.3-1-.7-1.6-1-2-.8-3.7-2.1-3.1-4.3.7-2.8 3.2-1.4 5-1.6 2.6-.3 3.2 1.5 2.7 3.4-.8 3.4 1.6 2.4 3.1 2.6z" class="ste15"/>
|
||||||
|
<path d="M1325 942h-81.8c-1.4 0-3 .4-4.2-.9 10.9 0 21.9.4 32.8-.1 13.4-.7 26.8-.6 40.2-.8 4.3-.2 8.8.3 13 1.8zm70 0c-1.7 1.6-3.8.9-5.7.9-7.9.1-15.8 0-23.7 0-1.6 0-3.3.5-4.7-.9h34.1zm26-1c-6.3 2-12.7.5-19 .9 6.2-2 12.6-.4 19-.9zm19-1c-5.6 2-11.4.5-17.1.9 5.6-2 11.4-.4 17.1-.9z" class="ste10"/>
|
||||||
|
<path fill="#929093" d="M233.1 942c.9-4.9-2-10.1 1.6-14.9.3-.3-1.7-4.4-.8-7.1.3-.9 0-2.5 1-2.6 4.3-.2 8.5 1.1 12.4 2.5 2.9 1 1.8 4.1 1.3 6.2-1.3 5.9-.3 11.9-.8 17.8-4.8-.6-9.7-1.3-14.7-1.9z"/>
|
||||||
|
<path fill="#8797a8" d="M212 933c-3.6-2.2-4.2-4.3-1-7.8s5.8-7.6 9.2-11.1c1.6-1.6 3-2 4.8-.7 1.9 1.4 5.6.9 5.1 4.9-.5 4.4-.4 8.8-5.9 10.2-1.2.3-2.1 1.5-3.2 2.3-2.9 1.2-5.1 5.5-9 2.2z"/>
|
||||||
|
<path fill="#bbbcbf" d="M543 949c5.6.3 11.2-.4 16.8-.9.3 7.9.7 15.8 1 23.7-6.1.4-12.3 1-18.4 1.1-35.1.4-70.1 2.8-105.2 4.4-19.8.9-39.5 2.5-59.2 3.8-10.4-.4-20.3-3.5-31.7-5 4.8-4 9.5-2.9 13.6-3.6 8-1.3 16.1-1.7 24.2-2.3 17.5-1.4 35-2.7 52.5-3.9 5.3-.4 10.6-.7 15.9-1 11.8-.8 23.6-.1 35.3-1.4 10.6-1.2 21.2-.1 31.8-1.5 5.2-.7 10.5-.2 15.9-1.1 3.3-.6 4.9-1.5 4.5-4.9-.2-3.1 0-5.8 3-7.4z"/>
|
||||||
|
<path fill="#acaeb2" d="M1629.9 972.8c-27.7 3.6-55.3 7.2-83 10.7-9.6 1.2-19.1 2.2-28.7 3.5-3.4.5-4.8-.6-3.9-4 1-4 .1-8.3 1.5-12.3 1.5-1.5 3.3-2.1 5.3-2.3 20.8-2 41.4-5.4 62.2-7.7 2.3-.2 4.6-.8 6.6 1.1-2.7 1-5.3 2.2-7.4 4.2-1.8 1.7-1.5 2.7.6 3.7 8.2 3.8 16.2 4.5 24.7.1 4.2-2.2 9.3-1.9 14-.2 2.6 1.2 5.4 2.2 8.1 3.2z"/>
|
||||||
|
<path fill="#585b60" d="M1589.9 962c-15.2.9-30.3 3.6-45.4 5.4-9.6 1.1-19.1 2.3-28.6 3.4.1-4 .1-8 .2-12 3.4 2.3 6.9.3 10.1-.1 16.4-2 32.8-4.4 49.3-6.6 1.4-.2 3.4-.9 4.1.7 2.1 4.7 6.4 5.3 10.6 6.4.8.2 2.3.2 1.8 1.6-.1.6-1.3.8-2.1 1.2z"/>
|
||||||
|
<path fill="#f6f6f6" d="M366.7 1033.3c-6.3.7-8-2-6.7-7.9 2.3 2.8 4.4 5.2 6.7 7.9z"/>
|
||||||
|
<path d="M435 985c-4.2 2.1-8.7.6-13.1.9 4.3-1.6 8.8-.6 13.1-.9zm-18 1c-3.9 2-8.1.6-12.1.9 4-1.6 8.1-.6 12.1-.9z" class="ste30"/>
|
||||||
|
<path d="M1740 926.9c-1.5-1.1-4.2-.1-4.3-2.6 0-1.3 1.7-1.3 2.8-1.1 1.6.3 3.7.6 3.9 2.4.3 1.8-1.6 1-2.4 1.3z" class="ste12"/>
|
||||||
|
<path fill="#444548" d="M755.7 1142c-5.8 0-10.7-4.7-10.7-10.1 0-5 4-8.8 9.3-8.8 6.2-.1 11.5 4.4 11.6 9.8.1 5.2-4.2 9-10.2 9.1z"/>
|
||||||
|
<path fill="#3d3e41" d="M799.3 1143c-6.6-.1-11.2-3.9-11.3-9.4-.1-4.7 5.3-9.8 10.3-9.5 6.5.4 11.3 5.6 10.8 10.6-.5 5.8-3.1 8.4-9.8 8.3z"/>
|
||||||
|
<path fill="#2f3031" d="M354.8 1069c-5.5 0-9.5-4.1-9.6-9.8-.1-4.2 3.7-7.4 8.8-7.3 6.2.1 10.3 4.1 10.1 9.8-.2 4.8-3.4 7.4-9.3 7.3z"/>
|
||||||
|
<path d="M1148 953c72.3 0 144.6.3 216.9-.2 22.4-.2 44.9-.7 67.2-2.1 15.2-1 30.5-.8 45.5-3.6 2.4-.4 3.3.8 3.4 3-.1 3.5-.2 7.1-.3 10.7-1 4.7-4.9 4.4-8.3 4.7-7.4.6-14.9 1.5-22.3 1.8-20.7 1.1-41.4 2.8-62.2 3.3-.7 0-1.3 0-2-.1-24.3-.3-48.6 0-72.9-.1-31.1-.1-62.3 0-93.4-.1-15.5 0-30.9-.3-46.4 0-4.3.1-8.7.5-12.9-.9-1.5-.5-3-.3-4.4.2-1.3.4-2.6.8-3.9.7-8.4-.4-16.8-.9-25.2 0-3.5.4-6.3-3.4-10.1-1.6-4.9.8-9.9 1.4-14.6-1-1.7-.8-3.1-.5-4.7.2-4.8 2-9.7 2.2-14.4 0-2.3-1.1-4-.6-6.1.2-3.9 1.6-8 2-11.9-.2-2.2-3-4.7-.4-6.8.1-5.1 1.2-10.1 1.7-15-.5-1.8-.8-3.5-.9-5.3.1-4.1 2.1-8.2 1.6-12.4.4-2.8-.8-5.3-1.5-8.4.3-2.7 1.6-6.6.9-9.8.3-3.2-.6-6.2-.6-9.4-.7.8-3.7 3.8-3.5 6.2-3.2 6 .8 11.8-1.6 17.8-.4 1.8.4 3.5-.8 5.1-1.8 3.6-2.2 7.1-2.9 10.5.3 1.7 1.6 3.8 1.8 5.3 0 5.1-6.3 12.8-5.6 19.6-7.3 3.5-.9 7.3-.3 10.4-2.6 25.2.1 50.2.1 75.2.1z" class="ste16"/>
|
||||||
|
<path fill="#67696c" d="M1386 969c29.4-.8 58.6-3.1 87.9-5.3 2.4-.2 5.5.3 6.8-2.9-.6 4.8-1.3 9.5-1.9 14.3-17.2 2.2-34.4 3.1-51.7 3.8-1.9.1-3.1.5-3.4 2.7-.4 2.2-1.2 4.3-4 4.2-2.4-.1-3.2-1.7-3.8-3.9-.8-2.6-8.4-3-10.1-.5-1.2 1.7-1.6 4.1-4.3 4.4-3.1.3-3.1-2.2-4.1-4-.8-1.5-9.5-1.5-10.1.2-1.4 3.5-3.5 2.3-5.6 1.3-5.2-2.4-10.2-4.7-15.2.6-.3.3-4.1.8-6.5-1.7-2.4-2.5-7.2-1.5-10.3 1.2-1.9 1.6-3.2 2.5-5.5.8-4.5-3.5-9.3-3.6-13.9-.1-.8.7-1.9 1.3-2.7.6-3.5-3.4-8-3.2-12.1-2.5-7.9 1.3-16-1.2-24 1.8-2.2.8-5.9-2.2-9.4-1.9-2.3.2-4.6-.2-6.7 1.3-1.5 1.1-3.7 1.1-5.2.1-2.2-1.4-4.6-1.8-6.7-1.2-7.2 2.1-14.1-.2-21.2-.2-7.2 0-14.3-.1-21.5-.1-11-1.1-22 0-33-.5-2-.1-4 .2-5.9-.2-.8-4.5.5-6.6 4.8-7.9 2.1-.6 4.2-.8 6.3-.2 3.3 1.3 6 2.1 8.3-2.2 1.7-3.2 11.4-1.9 13 1.6.7 1.5 1.2 2.7 3.1 2.7 1.8 0 2.7-1.2 3.1-2.7.7-2.7 2.5-3 4.9-3 7.3.1 14.6.1 21.9 0 2.7 0 4.2.5 5 3.4.8 2.8 3.1 3.1 4.6.9 1.1-1.5.8-4.4 3.5-4.2 3.3.2 6.9-1.3 10 1 .6 1.9-1.4 5.3 3.1 5 2.8-.2 2.8-1.4 2.2-3.5-.4-2.3.8-2.8 2.8-2.7 3.4.2 6.8-.3 10.2.3.5.5.7 1.1.5 1.8-.4 1.9-1.2 4 2.1 4.1 3.3 0 2.4-2.2 2.2-4.1-.1-1.9 1.1-2.1 2.6-2.1 2.5 0 5 .1 7.5 0 2.2-.1 4 .1 4.1 2.9.1 1.2.8 1.7 2 1.8 1.3 0 2.3-.4 2.4-1.9.1-3 2.1-2.8 4.2-2.8 2 0 4 .2 6 0 3.7-.4 5 1.1 3.9 5 1.5-4.3 4.5-5 8.4-5 15.5.2 30.9.1 46.4 0 1.7 0 3.4.5 5-.5z"/>
|
||||||
|
<path fill="#b5b7bb" d="M1484.1 961.8c0-3.2-.2-6.3-.1-9.5.1-5.8 1.9-7.8 7.6-8.1 4.8-.2 9.6 0 14.4-.2 4.4-.2 6.5 1.8 6.5 6.1-.1 3.3-.3 6.6-.5 9.9-4.3 3.8-9.8 2-14.6 3.2-3 .7-6.2.3-9.3.7-1.8.1-3.4-.1-4-2.1z"/>
|
||||||
|
<path fill="#abadb1" d="M1511.7 972.2c-1.5 3.8-.7 7.9-.9 11.8-.2 2.8-1.2 4.1-4.1 4.4-7.1.6-14.2 1.6-21.3 2.3-1.4.2-3.5.5-3.1-1.9.9-4.9-.1-10 1.8-14.7 1.1-1.2 2.5-1.5 4-1.6 6.1-.6 12.1-1.3 18.2-2 1.8-.1 4.3-1.2 5.4 1.7z"/>
|
||||||
|
<path fill="#5b5e62" d="M1511.7 972.2c-5.4-1.5-10.6.8-15.9 1.1-3.9.2-7.8.7-11.8.8 0-4.1.1-8.2.1-12.4 4.3 2 8.8 0 13.1 0 4.9 0 9.8-1.1 14.8-1.7-.1 4.1-.2 8.2-.3 12.2z"/>
|
||||||
|
<path fill="#989a9f" d="M1491.4 1005.2c-2.2 0-4.3.1-6.5 0-1.5-.1-3.6.5-3.9-2-.3-2.5 1.9-2.3 3.4-2.5 6.4-.9 12.8-1.7 19.2-2.4 1.4-.1 3.7-1.3 4.1 1.1.4 2.3-1 4.1-3.5 4.6-4.2.7-8.5 1.1-12.8 1.2z"/>
|
||||||
|
<path fill="#919aa0" d="M1182 980.8c11.2-.3 22.4.9 33.6-.7 2.1-.3 4 .2 5.4 1.8-2.1 1.4-4.4 1.3-6.7.7-1.3-.3-2.6-.6-3.9-.6h-67.5c-8.6 0-17.3-.1-25.9-.1.4-3.8 3.1-4.2 6-4.2 2.9 3.4 6.9 1 11.5 2.5-3.2-3 .5-7.3-3.6-8.8-2.7-1-5.2.2-6.9 2.7-3.1.4-6.1.5-9.2 0-1.2-1.4-1.2-3-.7-4.6.4-.8 1.1-1.1 1.8-1.6 1.6-2.5 4-2.7 6-1.2 4.5 3.6 9.2 2.7 13.9.9 1.8-.7 3.7-1.2 5.3-.4 5.3 2.5 10.4 2.5 15.7 0 .9-.5 2.5-.5 3.4 0 5.4 2.7 11 1.8 16.5.9 3.2-.6 6.2 1.1 9.4.8 10.5-1.1 21.2-.7 31.7-.5 37.9 1 75.9 0 113.8.5 18.2.2 36.3 0 54.5 0-1.6 1.5-3.5.9-5.2.9-14.9.1-29.9.1-44.8.2-4 0-8.1-.4-7.5 5.8.2 1.4-1.4 1-2.3 1-1.1 0-2.2-.5-1.5-1.8 3-6.2-1.6-5-4.8-5h-4c-1.9-.1-2.6.5-2.1 2.7.5 2 1.7 4.3-3.1 3.2-3.5-.8-5.6.1-4-4.3.1-.1.1-.3 0-.5-.5-1.6-2.1-1.3-2.9-1-2.8 1.1-6.7-2.6-8.7 1.9-2.7 1.6-4.3 1.3-6-1.1-3.4-1.8-7.2-.6-10.7-.8-2.6-.2-.8 1.8-1.2 2.8-2.8 3.5-5.4 3.1-7.2-1.1-2.4-3.8-6-1.4-9-1.6-2.8-.2-1.7 2.6-1.9 4.2-.6 4.2-3.9 2-6 2.4-2.2.4-2.9-.7-2.3-2.9.9-3.1-.7-4-3.7-4-7.1.1-14.3.1-21.4 0-2.4 0-3.9.5-3.6 3.3.5 3.9-2.1 3.7-4.8 3.7-2.7.1-4.7-.4-4.2-3.7.3-2.3-.8-3.7-3.1-3.2-2.6.6-6.3-2.1-7.8 2-1.8 4.8-5 5.6-9.1 2-1-2.5-3.2-2.4-5.4-2.6-2.8-.2-3.7 1.2-4.2 3.7-.5 2.2-2.7 2.2-4.5 2.2-2.5.1-5.2 0-6.1-3.1-.9-3-3.2-3-5.6-2.7-3.1.3-2.6 2.9-3 5-.5 2.6.8 3 3.1 3.2 4.7.3 9.8-1.3 14.5 1.1z"/>
|
||||||
|
<path fill="#cdcecf" d="M1073 953c-1 4.9-5.6 3.5-8.1 3.7-4.9.4-9.3 2.4-14.1 2.7-2.4.1-4.4 1.6-6 3.9-2.4 3.8-5.5 3.8-8.4.5-2.8-3.2-6-2.1-8.3 0-2.9 2.7-6.1 2.6-9.3 2.1-5.8-1-11.5 1.6-17.4.3-1.2-.3-2.5.6-3.4 1.8-7.5 1.1-15.1.3-22.7.5-9.5.1-18.9 1.4-28.4-.4-10.5 0-21 .1-31.5 0-3.7 0-7.2.2-10.1 2.9-1.1 1-1.9.9-2.8-.4-1.6-2.6-8.8-3.5-10.8-1.6-1.3 1.3 0 3.4-2 4.7-2.6-4.4-6.5-6.5-11.5-5.6-2.2.4-6.5-1.8-5.3 3.9.3 1.3-2.1 1.2-3.3 1.6-1.8.6-3.3-1.1-3.3-2.2.2-3.8-2.2-3.2-4.4-3.2-11.8 0-23.5-.1-35.3 0-2.4 0-4.8-.5-6.2 2.8-.9 2.3-3.3.9-5.4.9 1-2.3 3.2-.5 4-2.4.1-.9-.8-1.2-1.5-1.2-6.5 0-13-.2-19.5.2-3 .2-6 .2-8.9.6-1.9.2-4.6-1.8-5.6 1.7-.1.2-2 .3-2.8 0-5-2.6-10-2.5-15.2-.3-1.2.5-2.9.9-4.2-.4-1.3-1.3-3.1-1.1-4.7-1-6.9.5-13.8.4-20.7 0-2.1-.1-4.3.2-6.2-1.3-1.1-.9-2.6-.8-3.8-.3-5.2 2.3-10.4 3-15.5-.2-.2-.2-.8-.2-1-.1-5 4.2-11.4.5-16.7 3-1.8 1.9-4.2 1.7-6.5 1.7-6.8.1-13.6.2-20.4 0-20.9-.6-41.8 1.2-62.7 1-2.8 0-5.7.4-8-1.9-.1-4.2-.2-8.5-.3-12.8 1.6-.7 2-2 2.1-3.6 0-2 1.1-4.2 3-3.8 1.8.4 5.1.2 5 3.6 0 2.6 1.5 3.1 3.5 2.9 2.3-.3 5.4 1.2 6.3-2.3.5-1.9.9-3.5 3.3-3.7 2.3-.1 3.7.9 4.8 2.9 1.8 3.4 7.9 3.5 10.2.2 2.5-3.5 5-3.6 7.8-.2 2.2 2.7 7.9 3.2 10.3.6 3-3.1 5-4 8.3.2 2.1 2.7 6.6 2.2 9.4 0 2.5-2 4.8-2.4 7.2-.9 3.3 2 7.4 2.1 10.1.8 4.1-1.9 7.7-.7 11.5-.7 12.2.1 24.4 1 36.5-.2 12.9-1.3 25.9-.3 38.8-1.4 15.3-1.2 30.8-.3 46.2-.3h182.7c5.7 1 11.5.2 17.2.5 1.9.1 4-.5 5.8.5h29c2.3 1 4.7 1.6 7 0 4.2-.3 8.2-.3 12.2-.3z"/>
|
||||||
|
<path fill="#797b7d" d="M595.3 970.7c10.5.4 20.9.2 31.4-.3 9-.4 17.9-.2 26.9-.3 13.1-.1 26.3-.1 39.4-.2 3 0 5.9.1 8.9.1 1 0 2-.1 3 0 3.8.6 7.2 3.7 7.3 6.4.1 3-4.2 1-6.5 1.4-4.8.7-9.8-1-14.5 1.1-5 0-10 .1-15 .1-24.1 0-48.2.1-72.3.1-2.6 0-5.2 1.1-7.9.6.2-3 .2-6-.7-9z"/>
|
||||||
|
<path d="M1116 968c-.4.4-.7.8-1.1 1.1-6.6 2.8-7.4 3.5-10.8 10.6-.2.4-.6.8-.9 1.2-9.1 0-18.3.1-27.4.1-1.3 0-2.7.2-3.7-.9 1.1-1.2 4.7 2.2 4.2-2.2-.9-6.5-6-7.7-11.2-8.7 0-.4 0-.7-.1-1.1 4.6-.5 9.6 1.4 13.7-2.6.9-.9 2.6-.8 3.7.1 5.2 4.1 10.5 3.6 15.7.1 1-.7 2.5-1 3.3-.2 4.3 4.1 9.6 2 14.6 2.5z" class="ste42"/>
|
||||||
|
<path fill="#737679" d="M1065 969.1c.2 0 .3 0 .5-.1 6.5-.3 10.1 2.6 10.7 8.8-3.9 2.4-8.3.6-12.4 1.1-.7-2.5-.4-4.8 1.2-7v-2.8z"/>
|
||||||
|
<path d="M946.9 968c17 0 34 0 51-.1-4.1 1.9-8.5.7-12.7.9-4.3.2-8.7-.2-13 .1-2.6.2-6.5-2-7.3 3 0 .3-2 .2-3.1.3-.8 1.7 3.5 1.9 1.1 3.8-1.7 1.3-3.4-.1-5-.8-.3-.2-.6-.8-.5-1.2.7-4-.1-4.9-4.3-5.1-2-.1-4.3.7-6.2-.9zm118.1 4c0 2.4.3 4.8-1.2 7-1.5 0-3 .2-4.5-.1-2.3-.5-3.1-2.5-3-4.6.1-2.2 2-2.3 3.7-2.3h5zm-24.8-.9c1.4.8 4.5-.2 4.8 3.2.2 3-1.8 4.4-4.2 4.5-3.1 0-3.2-2.8-3.6-5-.4-2 .6-2.9 3-2.7zm-14.4 1.8c-1.7 1.5-.3 5.6-4.6 5.1-3-.3-3.7-2.3-3.6-4.4.1-3.2 2.8-2.6 4.9-2.6 1.4 0 3.3-.6 3.3 1.9zm-19.8-.9c0 1.6-.1 2.5-1.3 2.3-2.4-.4-5.1-.3-6.2-3-.3-.8.9-1.2 1.7-1.2 2.3.1 4.4.5 5.8 1.9zm-8 2.2c2.3 1.4 4.7-.3 6.2 2 .4.7-.3 1.3-.9 1.5-2.4.7-4-.3-5.3-3.5z" class="ste16"/>
|
||||||
|
<path fill="#6f7275" d="M1103.1 980.9c-.1-3.1 1.4-6 .8-9.2-.4-2.2 1.1-2.8 3-2.7 2.6.1 5.2.1 7.9.1 0 1.6.1 3.2.1 4.8 1.9 1.7 3 4.1 1.6 6.1-1.8 2.7-4.9 1.5-7.5.9-2 .1-3.9 0-5.9 0z"/>
|
||||||
|
<path d="M1109 981c.8 0 1.7-.2 2.4-.1 4.4.6 5.3-1.2 3.7-5-.2-.6-.1-1.3-.2-1.9 3-1.3 6-1.5 8.9.1 1.2 1.6 1.6 3.1-.8 4-2.2 1.1-4.8 1.5-6.1 3.9-2.6-.4-5.4 1-7.9-1z" class="ste42"/>
|
||||||
|
<path d="M1025 953h-18.3c-1.6 0-3.3.5-4.7-1h18.3c1.6 0 3.4-.5 4.7 1zm36 0c-2.3 3.4-4.7 1.9-7 0h7z" class="ste16"/>
|
||||||
|
<path fill="#b7b9bb" d="m590.9 947.1.2 8.9c1 3.7-.2 7.5.7 11.2 0 1.2 0 2.4-.1 3.6-.4 1.7-1.8 2.4-3.3 2.5-7.1.5-14.2.7-21.3-.1-.8-.1-1.5-.7-2.1-1.2-2.1-7.9-.8-16-1-23.9 1.1-1.2 2.6-1.4 4.1-1.5 2.2-.1 3.5-1 4.7-3.1 2.6-4.7 6-5 9.1-.7 1.3 1.9 2.8 2.7 4.9 2.8 1.5.1 3 .3 4.1 1.5z"/>
|
||||||
|
<path fill="#86898c" d="M590.9 947.1c-1.8 0-3.7-.1-5.5 0-2.6.2-4.6-.1-4.5-3.5 0-1.7-1.3-2.6-3-2.7-1.6-.1-3.6.1-3.6 1.8.1 6.5-4.5 5.2-8.3 5.3h-2c-.3-7 .1-13.9.9-20.8.4-3.1 1.9-5.1 5-5.1 5.8 0 11.5-.6 17.3.7 3.6.8 4.9 2.9 4.4 6-1 6.1-.1 12.2-.7 18.3z"/>
|
||||||
|
<path d="M565 972c7.2 0 14.4-.1 21.6-.1 1.8 0 3.6.3 5.1-1.1.1 3.1.1 6.2.2 9.3-2.4 2-5.3 1.3-8 1.5-6 .3-12.2-1-18 1.5-1.6-3.6-.4-7.4-.9-11.1z" class="ste78"/>
|
||||||
|
<path fill="#b8b9bc" d="M565.9 983.1c-.2-2.8 1.5-3.1 3.8-3.1 7.4.1 14.8.1 22.3.1.8 7 .5 7.5-6.5 7.5-4.8 0-9.6-.4-14.4-.7-2.5-.2-4.7-1-5.2-3.8z"/>
|
||||||
|
<path d="M591.8 967.2c-1.2-3.7-.7-7.4-.7-11.2 1.7 3.6.8 7.4.7 11.2z" class="ste78"/>
|
||||||
|
<path fill="#606367" d="M295.1 975c-2.8-8.2-3.1-16.8-3.8-25.3-.9-10.4-.2-20.9.8-31.3.4-3.9 2.5-5.9 6.4-6.3 5.2-.4 10.2.8 15.4 1.2 3 .2 4.4 2.3 4.3 5.6-.3 7.3-1 14.7-.7 21.8.4 8.4-.4 16.9 1.5 25.3.3 1.3.1 2.7.2 4-2.9 2.4-6.5 2.1-9.9 2.5-4.8.4-9.6.9-14.2 2.5z"/>
|
||||||
|
<path fill="#8c8f94" d="M295.1 975c.1-2.2 1.9-2.6 3.5-2.8 6.8-.8 13.7-1.5 20.6-2.2 2 7.2 1.3 8.5-5.9 7.9-6.2-.6-12.6.8-18.2-2.9z"/>
|
||||||
|
<path fill="#676b6e" d="M1182 980.8h-20.2c.1-1.9 1.3-3.4 1.2-5.2 0-1.8-1.2-4.6 1.3-5.3 2.6-.7 5.6-.2 8.4-.1.9 0 1.2 1.1 1.2 1.9-.4 4.7 3 3.8 5.7 3.8 2.4 0 4.2-.4 2.5-3.4-.3-.5-.6-1.7-.5-1.7 3.4-1.8 7.1-1 10.6-.7 2.8.2 1.2 2.4.8 3.8-5 .1-10 .4-11 6.9z"/>
|
||||||
|
<path d="M1288.9 970.9c2.1-.1 3.8 2.2 6 1.1-.2 1.6 2.4 3.8-.3 4.7-2.2.7-5.3 1.3-7.1-.5-1.5-1.6.1-3.7 1.4-5.3zm-19 .9c2 3 4.4 2.8 7.2 1.1 1.1 1.3 1.5 3-.2 3.7-2.1.8-4.8 1-6.7-.1-2.1-1-1.5-3-.3-4.7z" style="fill:#8c99a1"/>
|
||||||
|
<path fill="#696d70" d="M1157.2 981h-16.8c-.8 0-1.8.1-1.7-1.2.2-1.4.9-.6 1.7-.5 4 .6 2.4-2.5 2.6-4.2.1-1.8-1.3-4.4 1.6-4.9 3-.5 6.3-.8 9.3.3.4.2.1 2.4.1 3.7 0 2.7-.8 5.9 3.2 6.8z"/>
|
||||||
|
<path fill="#6b6e72" d="M1123.1 978.1c1.1-1.2.8-2.6.8-4 .4-1.4-.6-3.7 1.9-4 2.8-.2 5.6-.6 8.3.3.9.3.8 1.4.5 2.2-1 2.8-.7 5.4 1.1 8.4-4.1 0-7.6-.1-11 0-2.8.1-1.8-1.5-1.6-2.9z"/>
|
||||||
|
<path fill="#707376" d="M1083.3 980.1c1.1-3.2 2.3-5.8 1-8.7-.6-1.3.3-2.2 1.7-2.3h2c7.3-.2 9.7 2.8 7.8 9.7-.3 1.3-1.3 1.3-2.3 1.3h-10.2z"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" id="Layer7" x="0" y="0" style="opacity:1;z-index:1" viewBox="0 0 1920 1920">
|
||||||
|
<style>
|
||||||
|
.stg0{fill:#d4d3d3}.stg8{fill:#898b8e}.stg13{fill:#bfbfbf}.stg17{fill:#838689}.stg20{fill:#413e3e}.stg25{fill:#6b6e73}.stg28{fill:#bbbcbe}.stg50{fill:#bbbdc0}.stg51{fill:#b1b3b6}.stg52{fill:#5b5e62}.stg58{fill:#cbcccd}.stg66{fill:#707375}
|
||||||
|
</style>
|
||||||
|
<g id="Group_2">
|
||||||
|
<path d="M628.1 1126.2c-6.2-2.2-12.6-4.1-19.1-5.7-7.2-1.8-14.6-2.7-22-.6-.5.9-1.5 1.3-2.3 1.8-9.8 6-15.5 14.9-17.9 25.9.3 3.6 3 5 5.9 6 10.3 3.8 20.3 8.2 30.8 11.5 3.9 1.3 5.8 2.5 6.1 4.9 6.5-15 13.6-29.6 22.6-43.6-1.1.5-2.4.4-4.1-.2zm87.2 75c2.1-1.6 4.6-2.3 7.7-1.7 2 .4 4 .3 5.8-.9.6-.5 1-1.2 1.1-1.9 0-2.2-1.5-3.1-3.2-3.9-2.6-1.3-1.8-2.7-.1-4.1 1.4-1.1 3.1-1.2 4.7-1.2 4.1 0 8.2-.2 12.3.3 1.7.2 4 1.2 4.5-1.8-3.4-2-6.9-3.9-10.2-6.1-3.9-2.5-4.8-3.1-3.3-5.4-8.2 7.7-13.9 17-19.3 26.7z" class="stg0"/>
|
||||||
|
<path fill="#b9b9ba" d="M567.9 1146.9c-.3 3.5 2.4 4.5 4.8 5.4 10.7 4 21.4 7.9 32.1 11.8 6.4 2.3 7.5 4.2 5.2 10.8-2.9 8.4-6.1 16.8-9.1 25.2-12.9-5.4-25.9-10.6-35-22.1-2.7-6.7-3.1-13.8-2.3-20.8.5-3.8 0-8.1 4.3-10.3z"/>
|
||||||
|
<path fill="#b9babb" d="M729 1196.9c-.1-1.5-.8-2.4-2.3-2.8-1.8-.4-4.7-.1-4-3 .7-2.7 2.6-5.2 6-5.1 5.4.2 10.9-.9 16.3.8 1.2.3 2.3.3 3.1-.9 2.8.8 5 2.5 7 4.5 2.4 2.4 3.3 4.7-.3 6.8-2.2 1.3-1.5 3.4-1.7 5.4-.8 9.8-4.6 18.3-12.1 24.8-4 3.5-9 4.1-14.1 3.5-10.2-1.3-20.4-2.6-30.5-4-.8-.1-1.5-.6-2.3-.9 3.3-6.4 7.4-12.3 12.6-17.4 2.1-2.1 4.1-4.3 5.9-6.6 2.9-3.8 6.6-4.9 10.9-3.6 1.8.5 3.2-.4 4.8-.3 1 1.9 0 3.6-.7 5.2-2.2 5.2-2.5 10.6-2 16.1.6 7.6 4.6 9.7 10.9 5.6 7.7-5 10.6-12.8 12.1-21.4.5-2.9-1.1-4.1-3.9-4.4-5.3-.7-10.5-1.5-15.7-2.3z"/>
|
||||||
|
<path fill="#76787c" d="M567.9 1146.9c-4 8.6-3.5 17.6-2.2 26.6.2 1.4 2.1 2.8.3 4.5-11.8-20.4-.7-51.3 20.9-58 1 1.8-.8 1.8-1.5 2.3-8.9 5.9-14.4 14.3-17.5 24.6z"/>
|
||||||
|
<path fill="#0f1215" d="M729 1196.9c2.1-1.8 4.4-1 6.6-.6 3.3.5 6.5 1.7 9.8 1.6 4.9-.1 5.3 2.3 4.6 6.2-1.5 8.4-4.9 15.8-11.5 21.4-2.8 2.4-6.2 4.6-9.9 3-3.5-1.5-4.2-5.3-4.6-8.8-1-7.7 1.3-14.7 4.4-21.6.1-.4.3-.8.6-1.2z"/>
|
||||||
|
</g>
|
||||||
|
<g id="Group_1">
|
||||||
|
<path d="M1033 1026.6c-5.8-2.8-11.9-5-17.8-7.6-6.1-2.7-12.2-5.2-18.4-7.7-19.8-7.9-39.9-14.9-59.9-21.9-3.2-1.1-7.5-2-8.3-4.9-1.6-5.6-6.1-7.5-9.9-10.5-4.7-1.7-9.5-3.1-14.2-4.5-23.5-7.2-47.5-13-71.2-19.4-31.6-8.6-63.6-15.9-95.3-24.1-6.8-1.8-13.7-4.2-21-4-3.7 2-7.6 1.6-11.6 1.6-5.9 0-11 1.8-15.1 6.1-1.2 1.2-2.2 2.5-2.3 4.2 0 .8.1 1.6.4 2.4 2.7 4 7.4 4.3 11.3 5.8 5.5 2.1 7.5 4.8 8.1 10.7.4 3.7-1.5 6.8-1.7 10.3-3.6 10.4-8.7 20-13.4 29.9-4.1 8.7-4.2 8.5-13.7 5.6-17.1-5.3-34.1-10.5-52.4-9.6-9.5.5-16.1 4.5-18.4 12.1 1 .9 2.2.7 3.3.4 4.6-1.5 9.2-.9 13.8-.2 8.4 1.3 16.4 4.7 24.8 5.6 8.2.9 15.8 3.9 23.4 6.7 5.5 2 6.3 4 4.2 9.5-2.1 5.4-4.9 10.5-6.8 16 1.3 1.8-.1 3.1-.7 4.6-3.7 8.3-7.4 16.7-11.2 25-8.2 18.3-16.6 36.6-24.8 55-.6 1.4-1.3 2.3-2.1 2.7-9 14-16.1 28.6-22.6 43.6.2 1.4-.2 3.2-1.1 5.6-2.2 6.2-4.8 12.4-6.8 18.7-.6 1.9-1.6 3.7-.7 5.8-2.4 6.6-4.5 13.2-7.1 19.7-5.1 12.8-8.6 26.2-16.5 37.8-2.7 3.9-4.9 8.4-4.3 13.5 2 3.1 4.4 1.8 6.5.4 3.3-2.2 6.6-4.5 9.7-7.1 6.5-5.4 12.6-11.4 20.3-15.2 10.3-5.1 22 .6 23.9 11.7 1.9 11 4.3 21.9 5.7 33 .2 2.1.3 4.4 1.8 6.1 1.7-.6 2.4-2.1 3.3-3.5 9.6-14.5 19.1-29 29.5-42.9 6.8-9.1 12.7-18.9 20.2-27.5 1.6-1 2.6-2.5 3.6-4.1 4.4-6.7 9.9-12.5 15.2-18.5.8-.9 1.6-1.6 2.4-2.3 5.4-9.6 11.1-19 19.2-26.7.5-.7 1.3-1.7 2.3-2.9 13.8-16.3 27.6-32.7 41.4-49.1 1.5-1.8 2.8-2.5 5.5-2 6 1.2 11.8 3.5 18 3.4 3.3 0 7.9 1.6 9-3 1.1-4.7-3.5-6.3-6.8-7.9-4-2-8.2-3.5-12.9-5.4 4.5-5.5 8.9-10.4 12.9-15.7 9.2-12.1 9.3-12 23.4-7 8.1 2.9 16.1 6.2 25 6 5.4-.2 6.8-2.5 4.5-7.5-1.7-3.8-4.2-7.2-6.8-10.4.3-3.1-2.5-3.6-4.2-4.8-5.1-3.7-5-6.8.4-10.1 5.7-3.5 11.6-6.4 17.3-9.9 4.1-2.5 8.9-4 14.3-2.4 4.7 1.4 9.8 1.5 14.8 2.1 2.2.3 4.9.5 5.4-2.2.4-2.3-2.1-3.1-3.9-3.9-2.3-1-4.7-1.7-7-2.8-2-.9-2.2-2.2-.3-3.2 5.9-2.9 11.2-6.5 18.3-7.2 8.5-.8 17-3.6 20.8-12.9 1.1-2.6 3.1-4.3 5.6-5.4 4.9-2.1 9.9-2.5 15.2-1.7 19.2 2.9 37.5 9.1 56 14.4 8.8 2.5 17.4 5.6 26.2 8.2 3.1.9 6.8 2.7 9.4-1.3-1-1.8-3.2-2.4-5.1-3.3z" class="stg0"/>
|
||||||
|
<path fill="#adafb3" d="M1410.9 997.1c4.1-.4 8.3-.8 12.4-1.1 7.3-.5 13.2-3.7 18.6-8.4 32.2-28.3 64.9-56.1 97.6-83.8 31.3-26.5 62.3-53.5 93.6-80.1 18.2-15.5 36.8-30.6 54.8-46.3 8-7 16.7-7.1 26.2-5.1 14.8 3.1 29.8 5.3 44.4 9 13.4 3.5 27.2 4 40.4 7.8 8.1 2.3 10.4 5.3 8.5 13.3-3.5 14.3-9.8 27.5-15.2 41.1-7.1 17.9-15.3 35.4-21.8 53.6-.3.8-.8 1.4-1.3 2.1-10.8 11.5-25 16.7-39.5 21.2-22.7 7.1-46 12.3-68 21.6-23 9.8-46.4 18.3-70.1 26.3-30.6 10.3-61.3 20.4-92.6 28.1-19.9 4.9-39.7 10-60.5 9.1-4.7-.2-9.3-.8-13.7-2.4-3.2-1.3-6.5-2.5-10.1-2.7-1.8-.2-4.5 0-3.7-3.3z"/>
|
||||||
|
<path fill="#c5c5c6" d="M1723.9 1008c.7 3.5 3.1 1.2 4.3.9 13.6-3 27.1-6.2 40.7-9.3 12.1-2.8 24.2-5.7 36.4-8 7.9-1.5 15.8-.5 23.7 1.4 12.1 3 24.3 5.4 35.9 9.9 4.8 1.9 5.2 3.7 1 6.7-6.2 4.5-13.5 7.3-20.5 10.1-9.1 3.6-17.6 8.6-26.3 12.9-22.7 11.4-45.3 23.2-67.9 34.8-14.8 7.6-29.6 15.1-44.4 22.7-1.4.7-3.2 1.2-3.9 2.9-2.4 1.2-4-.7-5.9-1.5-5.6-2.6-6.8-2.4-10.2 2.5-3 4.3-6 8.6-8.1 13.5-.6.9-1.2 1.8-2.2 2.2-4.1 1.1-8.3.9-12.4.4-22-2.6-43.9-5.7-65.8-8.3-6.6-.8-13-2.3-19.5-3.6 13.9 1.9 27.2 6.4 41 8.9 11 2 21.6 5.7 32.2 9.1 5.5 1.8 11.1 2.5 16.7 2.9 8.4.7 8.8.9 10.4 9 .6 4.2 2.1 7.6 7.2 7.5.8 0 1.5.5 2 1.2-1.3 1.1-2.8.9-4.3.8-9.5-.5-18.9 1.2-28.4 1.2-3.1 0-4.1 1.5-4.3 4.2-1.3 16.4-2.8 32.7-4.1 49.1-1.2 15.9-4.5 31.6-4.1 47.6.1 4.2-3 3.1-5.3 2.7-9.5-1.6-18.7-4.6-27.9-7.3-6.2-1.8-12.4-3.9-18.6-5.5-10.9-2.9-17.8-9.8-23.1-19.6-11.5-21.6-23.6-42.8-35.6-64.1-.9-1.5-1.5-3.4-3.4-4.2-2.6-3-3.3-7.2-6-10.2-1.8-2.3-3.1-4.9-4.1-7.8-.2-.7-.3-1.5-.4-2.2-3.9-9.2-9.9-17.3-14.7-26-.9-1.6-2.1-3-3-4.6-3-5.2-1.8-7.4 4-8.6 5.7-1.1 11.6-1.6 17.4-3-2.6-1.6-5.6-2.2-7.8-4.3-2.8-2.8-2.5-4.3 1.2-5.7 2.2-.8 4.6-.9 6.9-.9 8-.1 16 .1 24-.1 8.8.2 17.5.3 26.2.3 5.7 0 11.6-1.7 17.6-1.2 4.1.8 7.5-.2 10.2-3.5 2.2-2.6 4.8-2.8 8.1-1.8 21.4 6.7 42.8 13.2 64.3 19.7 1.8.5 3.5 1 5.3 1.3 8.7 1.4 13.4-1.3 16.7-9.4 5.3-12.7 10.2-25.6 16-38.1 2.4-8 6.3-15.3 9.3-23 .5-1.7.7-4.3 3.5-4.6z"/>
|
||||||
|
<path fill="#d5d5d5" d="M1456 786.1c-7.7 5.4-16.9 6.8-25.5 9.5-23.9 7.4-48 14.5-72.1 21.4-15.5 4.5-30.2 11-45.6 15.7-3.3 1-7.2.6-10.9 3.1 5.7 2.8 11.6 3.1 16.4 5.9 1.9 1.1 5.1 1.4 4.3 4.5-.7 3-3.7 2.9-6.2 2.9-12 .2-23.8-1.3-35.6-3.7-3.5-.7-6.7-.7-10.2.5-21.8 7.5-43.8 14.8-65.6 22.2-.8.3-1.5.7-2.7 1.2 3.4 2.5 7.5 2.4 10.6 4.4 1.7 1.1 4.6 1.7 3.7 4.6-.7 2.4-3 2.7-5.3 2.8-10.1.5-19.7-2.2-29.6-3.7-1.7-.3-3.2-.4-4.9.2-16.8 5.8-33.7 11.5-50.5 17.2-2.1.7-3.8 1.2-4.8 3.7s-3.1 4.4-6.4 3.2c-2.2-.8-3.2.9-5.2 2.6 8.2 2.8 15.2 6.7 20 13.7-1.9 1.5-3.8.6-5.7.1-33.9-9-67.9-17.7-101.8-26.9l-3-.9c-3.2-.9-6.5-1.7-9.8-2.4-23.2-6.5-46.6-12.3-69.9-18.7-14.7-4.1-29.4-8.4-44.4-11.6-2.1-.5-4.8-.5-5.5-3.4 6.6-1.4 13-3.2 20-3.3 16-.2 31.3 3.2 46.5 7.1 5.6 1.4 10.8 1.1 16.2 0 38.5-7.5 76.9-15.2 115.4-22.7 31.3-6.1 62.7-12 94-18 28.9-5.6 57.8-11.4 86.7-16.9 32.8-6.2 65.8-11.7 98.5-18.5 14.7-3.1 29.9-5 43.3-12.6 2.4-1.4 4.9-2.7 7.4-4.1 1.2 5.2 5.4 6.5 9.9 7.4 9.6 1.8 17.7 7.2 26.4 11 1.2.4 2.4 1 1.9 2.5z"/>
|
||||||
|
<path d="m1022 889.9 60 15.6c16 4.2 32 8.3 48 12.4l21 6c9.6 4.3 19.9 6.2 29.8 9.5 18.6 6.2 37.7 11.3 55.9 18.7 1.5.6 3.1 1.2 4.5 2.1 1.4.9 3.2 1.8 2.6 3.8-.6 1.9-2.4 2.2-4.1 2-3.8-.5-7.6-.6-11.4-1.1-18.5-2.4-36.7-6.7-55.3-8-21-1.5-41.3-6.8-62-9.8-6.6-1-13-2.8-19.4-4.4-1.3-.3-2.6-.9-3.9-.8-13.3.9-25.9-3.8-38.9-5.2-6.2-.7-12.3 0-18.2 2.2-4 1.4-8.1 1.9-12.3 1.7-14-.6-27.9-.4-41.8 1-7.9.8-15.8 1-23 3.4 2.2.8 5 1.9 7.6 3.2 1.6.8 3.4 1.6 3.2 4-1.8 1.5-3.8.7-5.7.3-17.2-4.1-34.3-8.4-51.4-12.5-25.9-6.2-51.7-12.9-77.5-19.1-34.8-8.4-69.8-15.8-104.7-23.5-12.2-2.7-24.5-5-36.6-7.7-1.9-.4-3.9-.7-5.7-1.7-.4-2.4 1.2-3.6 4.8-3.7-11.7-3.4-23-7.3-33.5-13.5-3.1-1.8-5.4-3.8-5.8-7.5.7-7.2.1-8.2-7.3-10.2-4.5-1.2-9-2.7-13.5-.1-8.8 2.1-15.3-2.1-20.7-8.1-4.6-5.1-2-11.3 4.8-11.7 5.8-.4 10.9-2.9 16.4-3.8 1.3-.2 2.9-.5 3.2-2 .3-1.5-1.2-2.2-2.2-3-7.1-5.3-15.3-8.6-23.1-12.7-7.1-3.8-14-7.5-20-12.9-2.7-2.4-5.2-4.9-4.5-8.8.7-4 4.2-4.7 7.4-5.8 1.2-.4 2.7-.4 3.6-1.5 11.2 2.3 21.9 6 32.9 8.8-1 3.2-3.8 2.1-5.8 2.2-4.5.2-8.9-1.3-13.4-.9-1.6.2-3.7-.2-4.4 1.6-.9 2.1.8 3.5 2.2 4.5 3.7 2.8 7.6 5.4 11.8 7.5 16.2 7.9 32.7 14.8 49.5 21.2 10.4 3.9 21 7.3 31.1 12.2 6.5 3.2 13.2 6.4 19.9 8.7 7.3 2.5 14.9 3.8 21.3 8.7 1.8 1.3 4.5 1.3 6.8 1.6 3.6.4 6.7 1.8 9.3 4.3 1.7 1.7 3.8 2.6 6.1 3.2 16.3 4.2 32.3 9.1 48.5 13.8 17.8 5.2 36 8.1 54.2 11.7 2.8.6 5.5 1 8.2 2.1 9.4 3.7 19.5 4.2 29.3 5.7 1.7.3 3.1 0 3-2.2-.4-4.6 2.8-5.3 6.1-5.3 6.2 0 12.3.6 18.4 1.6 8.3 1.4 16.7 2.7 25 4.9 6 1.6 12.6-.3 18.8 1.3.3.1.7 0 1 .1 11.6 5.6 24.5 3.1 36.6 6 7.5 1.8 15.3 3.3 23.2 3 6.3-.3 12 2.7 18.1 3.4 2.6.3 5.2.8 8.8-.4-11.2-3.8-21.6-6.8-31.6-11-2.4-1.3-5.4-1.6-5.2-5.1z" class="stg8"/>
|
||||||
|
<path fill="#545355" d="M1425 1002c14.7 4 29.4 2.1 44-.5 27.8-5.1 54.9-12.8 81.8-21.4 23.6-7.5 47.2-14.8 70.3-23.7 19.8-7.6 39.4-15.9 59.4-22.9 15.6-5.5 31.8-9.6 47.7-14.2 14.3-4.2 27.9-9.7 39.2-19.9.5-.5 1.1-.8 1.7-.2-10.4 25-20.8 49.9-31.2 74.9-3 5.8-8.5 8.2-14.1 10.5-13.3 5.5-27.3 7.2-41.4 8.9-15.2 1.9-30.4 3.7-45.6 5.5-8.7 1-17.2 3.9-25.9 5.1-24.9 3.5-49.8 6.8-74.9 8.4-27 1.7-54.1 2.7-81.3 2.2-2.1 0-4.2-.3-7.2.6 11.2.6 21.2 2.8 31.4 4.1 2.9.4 5.4-.1 7.8-2.2 5.2-4.6 8.3-3.6 9.8 3 .6 2.5 2.5 2.4 4.2 2.8 7.8 1.6 15.8 2.4 23.7 3.6 2.5.4 4.9.8 7.3 1.4 10.8 2.4 21.9 3.5 32.9 4.8 7.6.9 15.2 1.5 22.8 2.2 1.2.1 2.3.5 3.3 1 1.4.6 2.9 1.6 2.6 3.2-.4 2.1-2.3 1.6-3.7 1.2-5.9-1.8-9.4 3.4-14.2 4.7-1.1.3-.8 1.6-.8 2.6 0 5.9-3.4 10.1-7.1 14.2-4 .9-7.3-1.3-10.9-2.3-3.6-1-7.1-2.4-10.8-3.4-28.4-7.5-56.4-16.7-84.6-25-16.7-4.9-33.5-9.9-50.1-15.2-.8-.2-1.6-.4-2.4-.7-2.1-.9-5-1.3-5.1-4-.2-3.1 3-3 5.1-3.7 1.3-.4 2.6-1 3.3-2.1 3.3-5.9 8-5 13-3.5z"/>
|
||||||
|
<path fill="#74787c" d="M1425 1002c-5-.5-9.8-.6-12.5 4.9-.8 1.7-2.7 2.3-4.8 2.1-1.3-.1-3 0-3.2 1.6-.2 1.7 1.6 2 2.7 2.4 8.2 2.7 16.4 5.3 24.6 7.8 19.5 5.9 39.1 11.6 58.6 17.5 16.5 5 33 10 49.4 15.2 2.1.7 4.4-.3 6.2 1.4-1.7 1.9-3.9 1.6-6.1 1.6-22.5.3-45 .7-67.4-.2-22.1-.8-44.2-2.2-66.1-5.8-15.4-2.5-31.1-3.7-46.5-6.4-23.9-4.2-47.9-8.2-71.4-14.5-21.6-5.8-43.2-11.2-64.9-16.5-19.1-4.6-38.2-9.5-57.1-14.6-2.2-.6-4.5-1.2-6.6-2.3-2.8-2.2-6.1-3.4-9.2-4.9-1.6-.8-3.8-1.7-3.6-3.7.3-2.3 2.8-1.9 4.5-2 3.3-.2 6.6-.8 9.9-.9 2.2-.1 4.7-.7 5.4-2.9.8-2.5-1.6-3.8-3.3-5-3.7-2.5-7.8-4.5-11.6-6.9-1.4-.9-2.8-1.8-4-3-.9-.9-2-2-1.4-3.5.5-1.5 2-1.6 3.3-1.8 2-.2 4-.1 6 .2 29.7 3.9 59.2 9.1 88.9 13.1 24.4 3.3 48.6 7.8 73.2 9.9 4 .3 7.9-.5 12.3-.5-1-2.7-3-3.2-4.6-4-12.4-5.7-25.3-10.2-38.3-14.6-8-2.7-16.2-5.1-24-8.6-1.4-.7-3.7-.9-3.3-3.4 0 0 .3-.1.4-.1.2 0 .3.1.5.1 16.7 3.8 33 9 49.5 13.7 30.3 8.7 60.6 17.7 90.9 26.6 3.2.9 6.3 2 9.4 3 .5 2.3 2.4 1.8 3.9 1.9 3.8.2 7.1 1.2 10.3 3.1z"/>
|
||||||
|
<path fill="#909295" d="M1022 889.9c.9 2.1 2.9 2.5 4.8 3.2 9.3 3.7 18.7 6.8 28.2 9.8 2.2.7 4.2 1.8 7.2 3.1-5.2 2.4-9.6 2.5-14 1-10.5-3.5-21.6-3-32.3-4.6-7-1-13.8-4.5-21-3.3-7.1 1.2-13.2-1.3-19.7-3.3-5.3-1.7-11.1-2.5-16.7-1.6-4.4.7-8.3-.4-12.1-1.7-7.8-2.7-15.9-2.7-23.8-4.4-4.7-1-9.5-1-14.3-1-3-.1-5.9.2-3.8 4.8 1.8 3.9-1.7 3.3-3.5 3-9.8-1.6-19.8-2.1-29.3-5.2-11.5-3.8-23.5-5.1-35.3-7.7-11.1-2.5-22.3-4.7-33.2-8.3-9.1-3-18.5-5-27.7-7.7-6.5-1.9-14.4-2.2-19.3-5.8-6.6-4.9-13.5-6.3-20.7-8.2-1.7-.5-2.7-1.9-3.9-3-2.8-2.6-6-4.3-9.9-3.9-4.3.4-7.8-1.1-11-3.9-2.7-2.3-5.7-3.9-9.4-4.2-4.2-.3-7.2-3.3-10.9-4.7-17.6-6.9-35.4-13.2-52.9-20.4-11.8-4.9-23.5-10.1-34.2-17.3-.7-.5-1.4-1-1.8-1.7-1.1-1.7-3.7-3.3-2.7-5.4 1-2.3 3.8-2.2 6.1-2.4 5.2-.5 10.2 1.3 15.4 1 1.6-.1 3.4.5 4.8-.8 10.4 1.5 20.3 4.8 30.4 7.5 77.4 20.3 154.7 40.7 232.1 61 .8.2 1.6.3 2.5.5 11 3 22 6 33 8.9 28 7.5 56 15 83.9 22.5 1.1.3 2.1.9 3.2 1.3 3.1 1.8 6.5 2.1 9.9 2.3.7-.3 1.4-.1 1.9.6z"/>
|
||||||
|
<path fill="#818487" d="M1261.1 953.9c3 3.3 7.4 3.9 11.3 5.3 18.5 6.5 37.3 12.1 55.1 20.5.9.4 2 .6 2.7 1.2 1.3 1.2 3.7 2.2 3.1 4.1-.6 1.8-2.9.8-4.5.9-18 1.4-35.4-3-53.1-5.2-13.4-1.7-26.8-3.8-40.2-5.7-16.2-2.4-32.3-5-48.5-7.7-11.9-2-23.9-2.9-35.9-4.3-1.2-.1-3-.7-3.5.9-.5 1.7 1.5 1.9 2.4 2.7 3.5 3.2 8 4.8 11.8 7.3 1.2.8 2.8 1.3 3.8 2.4 1.6 1.7 5 3.1 3.9 5.8-1.2 3-5 4.7-7.8 4.4-4.7-.5-9.1 1.7-14.9 0 4.1 5 9.9 4.8 13.2 8.5-2 1.8-4.1.6-6.1 0-10.6-3-21.2-5.4-31.9-8-24.5-5.3-48.8-11.7-73.3-17.5-26.7-6.4-53.3-13.1-79.7-20.6-1.9-.5-3.9-1-5-3-4.6-4.5-10.9-5.1-16.5-7.5.2-2 1.7-1.6 2.6-1.4 2.4.6 4.7.2 6.9-.4 11.4-3.2 23.1-3.2 34.7-3.6 7.5-.3 15.1-1.4 22.7-.2 6.1.9 12.2 0 18.1-2 11.4-4 22.6-1.2 33.7 1.5 3.6.9 7 1.9 10.7 1.7 8.3-.6 16 1.8 23.9 3.7 11.4 2.8 23 4.3 34.6 6.3 2.9.5 6.1.2 8.8 1.2 14.2 5.1 29.3 2.6 43.7 6 13.7 3.2 27.9 3.4 41.6 6.5 3.7.8 7.7-.2 11.3 1.2.7.3 1.8-.1 2.2-.9.6-1.3-.6-1.8-1.4-2.1-5.7-2.3-11.3-4.9-17.1-6.8-21.9-7.1-44-14-65.9-21.1-2.7-.8-5.2-2.1-7.7-3.2-.1 0-.2-.3-.1-.5 0-.2.2-.3.3-.4 15.3 4 30.5 7.9 45.8 12 20.9 5.6 41.7 11.4 62.5 17.1.6.2 1.1.6 1.7.9z"/>
|
||||||
|
<path d="M850.1 1073.1c-2-1.5-3.9-3.1-6-4.4-5.1-3.4-4.8-8.1.7-11.2 6.1-3.4 12.3-6.6 18-10.5 7.3-5 14.8-2.3 22.4-1.5 4 .4 7.9 2.2 12.7.8-3.7-4.3-8.7-4.2-12.6-6.3-1-.6-2.4-.6-2.7-1.9-.3-1.5 1.2-1.8 2.1-2.4 5.3-3.4 11-7.8 17-7.9 6.1-.1 10.7-2.3 15.8-4.5 3.5-1.5 5.8-3.5 7.1-7.6 2.2-7 8.9-8.1 15-8.5 9.3-.6 18.4 2 27.4 4.4 20.3 5.5 40.6 11.3 60.6 18.1 3.4 1.2 6.9 2.4 10.6.5 1.3-1.5 2.8-.7 4.1 0 7.3 3.8 15 6.9 22.3 10.8 17.3 9.2 34.8 18.2 51.5 28.5 4.5 2.8 9 5.7 13 9.3 1.4 1.2 4 2.7 1.2 5.2-20.4 7-40-.2-59.6-4.3-20.8-4.4-41-10.8-61.4-16.8-2.4-.7-4.2-.6-6.5.7-5.7 3.3-12.1 1.6-18.1 1.2-12.2-.8-24.4-2.4-36.6-3.7-12.4-1.3-24.6-3.4-36.6-6.8-2.1-.6-3.8-.8-6 .5-5.2 3-10.7.7-16-.2-7.3-1.2-14.6-2.9-21.9-4.5-2.8-.6-4.5-.8-4.8 3-.4 5.3-1.8 10.4-2.6 15.7-1 7-1.1 7.1-7.6 5.1-1-.4-1.8-.6-2.5-.8z" class="stg13"/>
|
||||||
|
<path fill="#9c9fa4" d="M1130 1083.9c1.2-3.2-1.7-4.2-3.3-5.4-9.1-7-19.1-12.7-29.1-18.2-11.2-6.2-22.5-12.2-33.7-18.3 1.8-1.7 3.8-.7 5.7-.2 49.5 13.5 98.8 27.4 148.5 40 41.8 10.6 83.8 20.5 126.3 27.6 13 2.2 26 3.8 39 5.9 2.9.5 5.6 1.1 7.2 3.9 1.7 3 4.5 4.3 7.6 5.2 7.2 1.9 14.7 2.8 22 4.1 2.7.5 5 0 5.3-3.5.3-3.5 2.6-4.1 5.7-3.8 22.1 2.8 44.3 4.7 66.4 8.1 8.7 1.3 17.4 2 26.2 1.7 2.4 3.3 4.5 6.8 5 11-31.2.6-62.3-.9-93.4-2.3-24.9-1.1-49.8-3.1-74.6-5.8-40.7-4.4-80.9-11.2-120.8-20.2-36.7-8.3-72.8-18.7-108.8-29.1-.3-.1-.7-.5-1.2-.7z"/>
|
||||||
|
<path fill="#afb1b5" d="M1531.9 1029c-11.5-1.7-23-3.3-34.5-5.2-2.5-.4-6.1-.7-2.4-4.6.7-.8 1.1-1.9-.1-2.6-1.4-.8-3.7-2.2-4.5-1.1-6.9 9.9-16 3.7-24.1 3.3-6.9-.4-13.8-1.8-20.7-2.8-.6-.1-1.2-.5-2.2-1 2.4-2.2 5-2 7.5-2 15-.1 30 .3 45-.3 35.6-1.4 71-3.8 106.2-9.4 11.2-1.8 22.2-3.9 33.3-6 9.7-1.9 19.8-2 29.6-3.4 18.7-2.6 37.8-3.5 55.8-10 6.3-2.3 12.2-5.3 17-10-4.7 11.4-9.3 22.7-14 34.1-3.3 8.5-8.2 16.5-10.3 25.5-.2.9-1 1.7-1.4 2.5-10.3 4.1-20.9 6.3-32.1 4.9-7.9-1-15.9-.6-23.9-1.1-13.9-.9-27.8-2-41.7-2.4-21.4-.6-42.6-3.8-63.8-5.9-6.3-.6-12.5-1.5-18.7-2.5z"/>
|
||||||
|
<path fill="#717479" d="M448 757.9c15.9-5.8 32.3-6 48.9-3.8 3.3.4 6.6 1.2 9.9 1.9 2.3.5 5.3.4 2.6 4.1-1.4 1.9.1 2.6 1.7 3 1.9.5 2.9 1.9 4.1 3.4 3 3.7 4.5 8.6 8.6 11.4.8.5 1.1 1.7 1.1 2.7.2 9 3.6 16.7 9.3 23.5 2.2 2.6 2.2 5.8 2.5 9 0 1.3-.2 2.6.8 3.7 1.9 2 3.3 4.2 2.1 7.1-.9 1.5-2.5 2.2-3.8 3.1-1.7 1.2-4.7 1.9-4.3 4.3.3 2.8 3.7 2.2 5.7 3 2.2.9 4.2.8 6-.8 4.9-1.4 7 2.4 9.7 5.1.4.3.7.6 1.1.9 7.4 4.8 15 9.2 23 13 4 1.9 6.2 5.2 8.9 8.3 1.2 1.4.7 2.5-1.1 2.8-1.3.2-2.6-.2-4-.2-2-.2-4-.7-5.8-1.5-3.8-2.7-8-1.4-12.1-1.5-2.8 2.9-2.9 3-7.7.3-1.8-1-3.5-1.1-5 .3-2.6 2.3-4.8 2-6.6-.8-1.5-2.4-3.5-2.8-6-1.9-1.4.5-3 1.1-4.3.2-5.2-3.5-11.2-2.8-16.9-3.6-16.9-2.5-34-3.2-51-4.9-2.9-.3-3.7 1.6-5.1 3.2-2.4-.1-2.1-2.1-2.4-3.6-2.4-15.7-.5-31 4.2-46 2.1-6.7 1.6-7.8-5-10.1-3.4-1.2-6.8-3.1-10.4-.7-3.5.9-5.4-1-6.6-3.8-1.7-4-3-8.1-3.8-12.4-.9-4.7 1.1-8.4 4-11.8 2-2.9 5.2-4.4 7.7-6.9z"/>
|
||||||
|
<path d="M552 840c-2.2-3.1-4.3-6.4-8.9-6-2.2.2-4.2-.7-6.3-1.3-1.2-.4-2.8-.7-2.8-2.3 0-1.5 1.3-2.2 2.4-2.9 2.9-1.6 6-2.9 8.3-5.4 1.9-2.1 4-4.6 2-7.4-1.8-2.5-4.7-2.7-7.6-1.2-1 .5-2 1.3-3.2.4-1.2-10-10.9-16.3-11.4-26.2-.4-7-4.7-11.4-7.7-16.7-1.6-2.8-3.8-5.3-5.8-7.9 3.1.5 6.2 1.2 7-3.5.3-2.1 2.2-1.4 3.7-1.1 23.5 5.8 47.1 11.2 70.4 17.8.7 2.8-1.6 2.2-3 2.7-2.8 1-6.3 1.2-6.9 4.7-.6 3.5 1.8 5.5 4.3 7.7 10.7 9.7 24 14.5 36.4 21.1 3.2 1.7 6.2 3.9 9 6.1 2.1 1.7 2.3 4.4-.6 4.9-6.2 1-11.8 4.6-18.2 4.4-3.4-.1-6.5.6-7.6 4.2-1.1 3.5 1.4 5.8 3.6 7.6 5.1 4.2 10.7 7.3 17.7 6.2 1.1 1.7 0 3.2-.6 4.6-2.3 5.8-3.9 11.8-4.9 17.9-.2 1.5 0 3.5-2.4 3.6-4.7-4-10.5-4.3-16.3-4.8-1.8-.2-2.2 1-2.3 2.5-.1 1.5-.2 3-.8 4.4-.8 1.6-1.9 2.7-3.8 2.6-1.9-.1-3-1.2-3.6-3-.4-1.1-.3-2.3-.5-3.4-.2-1.5.5-3.8-1.6-4.2-2.3-.4-2.2 2-2.6 3.5-.7 2.4-1.7 4.4-4.8 4-5.2-3.3-2.8-7.6-1.6-11.7 1.4.2 2.8.3 4.8.5-8.4-11.7-22.6-14.1-32.8-22.3 1.9-7.2 4.7-14.1 7.8-21-1.7-.6-2.7.5-3.9.9-.5.2-1.4.2-.9 1.2 3.1 7.2-2.5 12.5-4 18.8z" class="stg17"/>
|
||||||
|
<path fill="#595c61" d="M448 757.9c0 2.1-1.5 3.1-3 4.2-7.7 5.6-9.2 10-6.4 19 .8 2.5 1.6 5 2.5 7.5.8 2.3 2.2 3.6 4.8 3.3 1.1 2.1-.4 3.8-1.1 5.6-5.3 13.6-7.9 27.5-5.4 42.1.4 2.2 1.8 4.9-.6 7-.5.2-.9.6-1.4.6-12.2-.7-24.5.9-36.5-3-7.6-6-13.9-13.1-17.5-22.2-4-10.1-1.1-20 7.4-26.7 3.1-2.4 6.7-4.3 10-6.4 3.4 2.2-.3 4.9.8 7.1.9-.6 1.7-2.6 3.1-1.8 2.1 1.3-.2 3.7.9 5.8 1.7-2.9 2.4-6.1 4-8.7.8-1.4 1.1-3.7 3.6-3 1.3 1.8.3 3.5-.4 5.2-1.4 3.6-2.3 7.3-3.4 10.9-.9 3 .1 5.1 3.5 6-2.9-2.7-2.8-5 .4-7 4.2-2.6 5.1-9.6 1.7-12.9-.7-.7-1.2-1.6-2-2.3-2.6-2.3-4.4-4.7-2.2-8.3 9.9-11.7 22.9-18 37.2-22z"/>
|
||||||
|
<path fill="#b9b9b9" d="M573.1 1271c2.7 1.7 4.6.2 6.8-1.3 10-6.6 17.9-15.8 28.5-21.6 6.3-3.4 18.4-2.1 23.3 3 2.4 2.4 2.5 5.8 3.1 8.8 2.2 11.8 4.2 23.7 6.1 35.5.2 1.5.1 3 .1 4.5-10.1-1-19.9-2.8-29.2-7.1-11.5-5.4-23.7-9.4-34.5-16.3-2-1.3-4.7-2.2-4.2-5.5z"/>
|
||||||
|
<path d="M1456 786.1c-10.5-5.5-20.9-11.3-32.8-13.4-4.8-.8-6-3.4-5.2-7.6 12.2-8.3 24.2-16.8 36.5-25 6.1-4 12.6-7.3 20.5-5.2 3.2.9 4.6 2.4 3.8 5.6-2.9 11.7-5.9 23.5-11.4 34.3-2.5 5.2-6.4 8.8-11.4 11.3z" class="stg13"/>
|
||||||
|
<path d="M690.6 930.8c-1 .8-1.8 1.7-1.7 3-1.6 3.3-4.2 2-6.5 1.4-11.9-3-23.8-6.4-35.7-9.5-28.5-7.3-57-14.8-85.8-21.2-9.7-2.2-19.3-4.8-28.8-7.6-3.5-1-6.9-2-10.2-3-3.1 7.5-1.3 14 2.6 20.4 1.4 2.3 3.8 3 5.5 4.8 1.3 1.4 3 2.6 3.1 4.8-1.7 2.5-4.7 2.4-9-.3-.7 2 .8 3.1 1.6 4.4 1.9 3.2 2 6.6 1.1 10.1-.3 1.2-1.1 2-2.5 2.2-1.2.1-2.1-.7-2.1-1.7-.2-7.3-5.3-11.4-10-15.9-.2-.2-.3-.6-.4-.9 2.1-6.5 1.3-12.4-3-17.8-2.6-2.7-2.8-6.3-3.6-9.6-.5-2.7-1.6-4.9-4.4-5.9-2.5-.8-5.1-1.5-7.6-2.4-1.4-.5-3.4-1.1-3-2.7.5-2 2.6-1.5 4.2-1.3 1.1.1 2.3.4 3.4.6 10.8 1.7 21.4 4.4 32.2 6.2 38.1 7.4 75.9 16.4 113.5 26 14.4 3.7 28.8 7.2 43 11.3 2.2.6 5.7.6 4.1 4.6z" class="stg20"/>
|
||||||
|
<path fill="#9d9fa3" d="M400.9 844.2c12.7.6 25.4 1.2 38.1 1.9 1 .2 1.5.9 2 1.7.8 1.6 1.9 2.9 3.7 3.4 3.2 1.1 6.5 2.1 9.7 3.3 2.3.8 4.1.6 5.6-1.4-.5-4.3 1-5.2 5.4-4.5 8.8 1.3 17.8 1.9 26.7 2.5 9.8.7 19.5 1.5 29.1 3.2 4.3.8 9.3-.6 12.7 3.5.2.3 1.5-.2 2.3-.5 3.4-1.3 6.8-3.2 8.4 2.5.5 1.6 2.4 3.4 4 .7 2.5-4.1 5.1-2.9 7.9-.5.4.3.7.8 1.1 1 1 .3 1.5 2.5 2.7 1.3 1.6-1.5-1.1-1.8-1.5-3.1h4.1c.8.8 1.9.5 2.8.5 3.1 0 4.8 1.1 4.1 4.5-.2 1-.3 2 1.2 2.5 1.3-1.8-.3-5.8 3.9-5.6 2 .4 4 .7 6 1.1.5 1 1.5 2.3.7 3.2-2.3 2.8-.9 5.2.4 7.7-1.6 1.6-3.4.9-5.2.6-28.5-5.3-56.9-10.6-85.6-14.5-3.3-.4-6.6-.6-10.9-.8 3.3 2.3 6.3 3.2 8.9 4.8 1.6 1 4.5 1.3 3.4 4.5-2 1.2-4.2.6-6.3.3-18-2.5-36.1-4.8-54.3-5.8-11-4.9-21.6-10.4-31.1-18z"/>
|
||||||
|
<path fill="#c9c8c8" d="M608.1 1001c8.9-4 17.6-1.3 26.3.7 6.9 1.6 13.8 3.5 20.8 4.5 7.7 1.1 14.8 4.6 22.1 7.4 2.6 1 4 3.8 3.2 5.5-2.8 6.8-4.3 14.3-9.6 19.9-8.1-3.9-16.2-7.8-24.2-11.8-9.4-4.7-19.1-8.7-28.9-12.3-1.6-.6-3.1-1.2-4.6-2-6-2.8-7.1-5.3-5.1-11.9z"/>
|
||||||
|
<path fill="#66696c" d="M432.1 862c4.6-1.8 9.4-1 14.1-.4 15.6 1.8 31.2 3.6 46.9 5.5 1.7-1.3 3.5-.7 5.3-.5 33.4 5.3 66.6 11.4 99.6 18.7l15.6 3.3c2.1.5 4.3.8 5.9 2.5 1.2 2.3 1.2 4.6 0 6.9-3 2.4-6.1.9-9 .2-24.2-5.7-48.7-10.1-73.1-15.2-6.8-1.4-13.8-2.1-20.6-3.8-19.6-3-39-6.7-58.8-8.5-3.9-.3-7.4-1.8-11.1-2.5-5.1-1.6-10.1-3.7-14.8-6.2z"/>
|
||||||
|
<path d="M447 868.1c14.7 1.1 29.3 2.8 43.9 5.3 8.8 1.5 17.5 3 26.3 4.5-3.8 2.9-3.8 2.8.1 5.4 2.8 1.8 5.8 3.1 9 4 1.5.4 3.8.2 3.8 2.8-12.1-2.2-24.2-4.4-36.2-6.7-1-.2-1.9-.3-3 .1 3.8 1.4 7.6 2.8 11.4 4.3-.6 2.2-1.3 4.5-.5 6.9 1.5 0 2.6-2.4 4.4-.8.9 3.4 1.9 6.8 2.8 10.1-6.4.5-12.5.5-18.6-2.7-7.3-3.9-15.2-6.7-22.9-9.8-2.8-1.1-4.4-2.8-4.2-6 .1-1.5-.2-3-.1-4.5.4-4.9-1.6-7.7-6.5-8.9-3.5-.7-6.9-1.8-9.7-4zm85 28.9c11.7 2.5 23.4 4.8 35 7.5 39 9.1 77.7 19.2 116.4 29.6 1.8.5 3.8 1.8 5.5-.2 0 .7 0 1.4.1 2.1-.1 2.2.9 4.4.4 6.7-.3 1.5-.1 3.4-2.5 3.4-18-4.7-35.6-10.9-53.3-16.4-27.1-8.5-54.1-17.4-81.4-25.5-6.9-2.1-13.5-4.6-20.2-7.2z" style="fill:#a8aaae"/>
|
||||||
|
<path d="M1677.8 1106.9c2.1-5.8 5.8-10.7 9.5-15.6 2.1-2.8 4.5-4.2 8-1.9 2.3 1.5 5 2.5 7.5 3.7 6.1 4.6 12.2 9.2 17 15.3 1.3 1.6 3 3.2 3 5.6-5.2 8.6-13 7.1-21 5.9-3.9-.6-7.5-2.2-11.3-3 2 1.1 5.8.5 5.3 3.9-.4 3.1-3.8 3.2-6.5 3.4-1.2.1-2.6.2-3.4-.6-2.2-2.3-4.6-3.9-7.7-4.8-2-.6-1.9-2.8-1.6-4.7.6-2.3 2.1-4.6 1.2-7.2z" class="stg25"/>
|
||||||
|
<path fill="#121111" d="M511.9 921.9c5.8 3.7 11.2 7.7 11.2 15.5 0 .8-.1 1.8.9 2 1.2.2 1.7-.8 1.9-1.8.6-3.9.3-7.6-2.6-10.7-1.5-1.6-3.4-3.1-.5-5.1 2.8-1.9 3.4.5 4.2 2.2 2.1 4.4 4 1.1 6 0 1.8 3.5 3.4 6.9 3 11-.6 6.3-4.8 10.5-11.1 10.3-1.9 0-3.1.1-4.2 1.8-.7 1.1-1.8 2-2.9 2.7-3.9 2.5-9.4 1.9-13.4-1.6-5.6-4.7-8.2-13.8-5.8-19.9 1.9-4.7 5.5-6.8 11.1-6.6.8.1 1.5.1 2.2.2z"/>
|
||||||
|
<path fill="#494748" d="M1677.8 1106.9c.8 0 2.3-.8 1.9 1-.3 1.9-1 3.8-1.6 5.7-.9 3.3-1.1 5.9 3.7 4.6 1.7-.5 3.4.7 3.3 2.2-.1 3.5 2.3 2.5 4.1 2.6 2.3.1 5.7-.1 5.7-2.5 0-2.3-3.2-2-5.3-1.7-1 .1-2.2.2-2.4-1.1-.3-1.8 1.2-1.6 2.3-1.9 1.6-.5 2.9-.4 4.6.5 6.1 3.1 13 2.5 19.6 3.5 2.8.4 4.3-2.1 5.5-4.4.9-1.7 1.7-2.9 3.7-1.5.7 12.4-3 17.5-15.1 20.5-6.5 1.6-13.1 2.2-19.7 2.6-8.8-.5-9.7-1.2-10.1-8.2-.1-3-.7-5.6-2.3-8.4-2.2-3.9-.8-8 1.2-11.8 0-.5 0-1.3.9-1.7z"/>
|
||||||
|
<path d="M686.9 946.1c2.7-3-.5-7.1 2.1-10.1 3 2.9 7.1 3.5 10.8 4.8 7.7 2.7 11.6 10.8 8.5 18.5-.5 1.3-1.5 2.5-2.3 3.8-5.8-3.9-11.7-7.7-15.1-14.2-.9-1.8-2.9-1.5-4-2.8z" class="stg28"/>
|
||||||
|
<path fill="#84898f" d="M410.9 779.8c-1.1 3.2 2.1 5.3 2.2 8.2-3.1 3.4-3.9 8-5.9 11.9-.5 1.1-.3 3.1-2.4 2.2-1.3-.6-1.9-1.8-1.2-3.3.5-1.2.7-2.5 1.2-4.2-2.2.7-2.1 3.7-4.4 3.6-1.2-3.2 1.2-6.2.4-9.4 3.9-2.4 6.6-6.2 10.1-9z"/>
|
||||||
|
<path fill="#3a3637" d="M1524 1131c-.2 3.6-2.9 2.1-4.5 1.9-12.6-1.1-25.1-2.7-37.6-4.3-17.3-2.3-34.7-4-52-6.1-2.9-.4-3.1 1.1-2.8 3.1.7 3.7-1.2 4.9-4.5 4.5-9.3-1-18.4-2.5-27.4-5.2-1.5-.5-3.6-1.4-4.1-2.7-1.9-5.5-6.7-5.3-10.9-5.9-51.8-6.8-102.7-18-153.3-30.8-53.4-13.4-106.4-28.4-159.6-42.9-1.1-.3-2.3-.4-3.4-.7-8.8-3.6-16.8-9.1-26-11.9-7.8-3.4-15.5-6.8-23.3-10.2.7-2.7 2.7-1.9 4.4-1.6 3.4.6 6.8 1.5 10.1 2.5 21.7 5.9 43.4 11.8 65.1 17.5 40.1 10.6 80.2 21.3 120.4 31.2 48.5 11.9 97.2 23.1 146.6 31.2 6.7 1.1 13.5 2 20.2 3.2 3.4.6 5.1-.6 4.9-4.2-.2-3.7.6-7.3 1-10.9 0-4.5.9-8.8 2.2-13 1.5-5.1 2.6-10.4 4.5-15.4 3.2-6.9 6.5-8.7 13.7-7.4 4.7.8 9.4 2 14 3.3 9.4 2.6 10.6 4.4 10.5 14.4-.5 3.8-1.7 7.5-2 11.4-.7 4.2-.8 8.4-1.8 12.5-.2 2.8-1 5.6-1 8.4-.1 6.6.2 7.1 6.6 7.9 11.9 1.4 23.7 3.1 35.6 4.3 15 1.5 30 3.9 45.1 5.2 2.4.2 4 1.3 5.2 3.3 1.4 2.6 2.7 5 4.1 7.4z"/>
|
||||||
|
<path fill="#87898b" d="M919 975.1c-13.5-3.1-26.6-7.9-40.1-11.4-38.7-10.1-77.4-20.5-116.3-29.9-13.7-3.3-27.4-6.9-41.1-10.1-1.5-.3-2.9-.5-4.4-.8-7.3.2-13.9-2.6-20.8-4.2-15.5-3.7-30.9-7.8-46.5-11.3-2-.5-3.9-.4-5.9-.1-2.9-3.4-1.9-7.3-1.3-11.2 2.2-1.5 4.5-.5 6.7 0 24 5.4 47.9 11.6 71.9 17 12.5 2.8 25.1 5.3 37.4 9 1.3.4 2.7.8 3.9.2 2.4-1.2 4-.5 5.7 1.3 1.3 1.5 3.2 2 5 2 11-.2 20.2 6.8 31 7.4 1 0 1.9.7 2.3 1.7.8 2.2 2 1.8 3.8 1 3.7-1.5 7.1.6 10.7 1.4 4.3.9 9 1.3 11.1 6.5.6 1.4 1.9 1.4 3.3.6 5.5-3 6.6-2.7 10.2 2.7 1.2 1.8 2.2 2 4.1.9 5.4-3.1 7-2.6 9.8 2.6 1.3 2.5 2.5 3.1 4.9 1 3.9-3.3 7.8-2.2 9.8 2.6 1 2.3 1.6 4.2 4.4 1.5 3.8-3.6 7.5-2.7 9.6 2.1 1.3 2.9 3 3.2 5.3.9 2.5-2.7 8.2-1.4 9.6 2.1.4 1.1.3 2.3.8 3.4 1 2.1 2.3 2.6 3.5.3 1.2-2.3 2.7-3.7 5.5-3.1 2.8.6 4.2 2.4 4.6 5.2.2 1.3.5 2.8 2 3.2 1.7.5 2.4-.8 3-2 1.6-2.8 4.2-3.2 6.9-2.5l17.4 4.5c3.3.9 4.3 3.2 4.6 6.3.1 1.5.2 3.3 2 3.7 1.9.3 2.3-1.6 2.8-3 1-2.6 2.7-3.7 5.4-3 2.7.7 5.3 1.5 5.1 5-.1 2.7 1.4 5.1 1.5 7.8-1 1.9-2.8 1.6-4.4 1.2-13.9-3.2-27.5-7.5-41.4-10.8-1.1-.3-2.2-1.2-3.4-1.7z"/>
|
||||||
|
<path d="M919 975.1c14.3 2.2 28 7.2 42.1 10.4 2.2.5 4.5 2.6 6.9.5.9-1.4 2.2-1.9 3.8-1.4 2 4.7 6.9 3.8 10.6 5.3.5.1.9.2 1.3.4 3.7 1.4 7.7 1.9 11.4 3.2 2.2.8 2.3-.6 2.9-1.8 2.4-.4 4.8-.5 7.1.1 1.1 1.5.6 2.8-.4 4 .3.4.9.3 1.3.3 2 .3 4.1 1.7 5.8 1 2.2-.8.4-3.5 1.1-5.3.5-1 .5-2.4 2.2-2.2 1.2 3.1 1.9 7 6.9 4.9-.6 7.4 4.9 8.2 10.1 9.3 1.3.4 2.7.7 4.1 1 4 1.1 8.1 2 11.8 4 2.1 2.4 5.1 1.8 7.8 2.2 11.3 2.8 22.6 5.5 33.7 9.1 1.7 1 3.4 2 5.4 2.6 1.1.3 2.3 1.1 2.2 2.4-.2 1.6-1.8 1.7-3.1 1.9-1.2.2-2.3.2-3.5-.1-12.9-2.9-25.9-5.1-39.1-6.8-1.5-.2-3.1-.8-4.3.1-5.8 4-12 2.7-18.2 1.6-3.5 0-6.5-1.6-9.9-2.2-1.4-.3-3-1.8-4.3.2-21.7-9.1-43.9-17.2-66-25.2-7-2.5-14.5-3.9-20.6-8.5-1.2-.9-3.8-1.4-1.7-4 .9-1.2-.8-1.8-1.7-2.5-1.9-1.3-4.5-2.1-5.7-4.5z" class="stg13"/>
|
||||||
|
<path d="M643.8 907.1c.3-2 1.7-2.3 3.3-1.9 23.3 5.8 46.8 10.9 69.9 17.7-2.8 2.8-6.5 2.2-9.8 2-6.4-.3-12 1.4-16.6 5.9.8-3.5-2.2-2.6-3.8-3-34.1-9.2-68.4-18-102.9-25.8-18-4-36-7.9-53.9-11.8-4.7-2.5-10.4-2.7-14.6-6.4-1.3-1.1-4-1.4-3.6-3.4.5-2.6 3.2-2.3 5.3-2.4 15.6 2.2 31 5.6 46.4 8.7 18.5 3.7 37 7.6 55.5 11.4.9.1 1.7.6 1.9 1.4 3.2 8.9 11.5 9.3 18.8 11.6 4 1.3 2.5-3 4.1-4z" class="stg28"/>
|
||||||
|
<path fill="#9c9fa3" d="M1431.1 1071c.4-9.7-.3-10.7-9.9-13.2-4.3-1.1-8.7-2.1-13.1-3-7.5-1.5-9.5-.5-13 6.3-11.4-3.1-23.2-4.3-34.9-6.3-19.2-3.3-38.3-7.3-57.3-11.5-13.8-3-27.7-5.9-41.5-9.2-41.5-9.9-82.8-20.2-124.2-30.5-5.5-1.4-11.2-1.8-16.3-4.5-2.7-2.7-6.5-2.9-9.8-4.4-1.8-.8-4.8-1.2-3.9-4.1.7-2.3 3.2-1.9 5.2-1.5 3.9.7 7.9.1 12.1 1.5-.3-2.2-3.3-2.6-2.6-4.8 11.3 1.8 22.2 5 33.2 8 1.6.4 3.2.7 4.8 1.1 19.8 6.2 40 10.7 60.1 15.7 24.6 6.1 49.2 12.3 73.8 18.7 21.7 5.7 43.8 9.6 65.8 13.2 22.2 3.6 44.6 6.3 66.9 9.2 9.8 1.3 19.8 1.4 29.8 2.2 18.3 1.3 36.6 1 54.9 1 11.6 0 23.2-.1 34.8-.1 7 2 13.9 4.1 20.9 6.1 8.1.3 15.2 4.1 22.8 6.1.8.2 1.4.9 1.2 1.9-5.8.4-11.7-1.3-17.2 2.2-1.7 1.1-3.9-1.4-6.4-1.3-7.1.3-14.3.1-21.4.1-9.4-1.1-19-1.2-28.3-.2-10.7 1.2-21.2-.4-31.8-.7-15-.4-29.8-3.1-44.7-3.5-4.1-.1-7.7-.1-8.8 4.9-.1.6-.8.5-1.2.6z"/>
|
||||||
|
<path fill="#605f62" d="M1591 1069c-6.4-2-12.7-4-19.1-6-1.7-.5-3.6-.7-4.9-2 2.1-3.6 4.3-7.2 6.4-10.9.1-.1.2-.4.2-.4-4.1-7.5 3.3-5.9 6.2-8.3 4.1-3.4 7.8-4.6 12.9-.9-1.8-3.7-3-4.1-7.3-4.4-17.5-1.3-34.9-3.5-52.2-6.1-.4-.1-.8-.5-1.2-.8 13.2 1.4 26.3 3 39.6 4.1 13.8 1.2 27.7 2.5 41.6 2.4 8 0 16.2 1.3 24.3 1.7 9.6.5 19.2 1.3 28.8 1.7 15.1.6 30.2 2.3 44.8-3.7.2-.1.8.5 1.2.8-5.4 12.9-11.3 25.6-15.9 38.8-3.1 9-8.2 10.7-18.5 9.7-4.2-.4-8.4-2.1-12.5-3.3-19.5-6-39.1-11.9-58.6-18.1-2.8-.9-4.1.5-5.4 2.1-2.9 3.1-5.9 5.3-10.4 3.6z"/>
|
||||||
|
<path fill="#b6b7bb" d="M1431.1 1071c2.3-2.1-.7-6.5 2.3-7.3 2.4-.6 5.5.2 8.3.3 10.2.2 20.4 1.5 30.6 2.8 5.7.7 11.5.5 17.3 1 17 1.7 34.1 1.1 51.2 1.2 1.8 0 3.7-.6 5.2 1h-24.5c-2.9.1-7.6-.1-7.6 2.3 0 2.3 3.9 4.9 7.7 4.7 1.1-.1 2.5-.4 3 1.1.5 1.4-.5 2.5-1.2 3.6-.5.7-1.2 1.1-2.1.8-6.6-1.9-12.7 1.5-19.1 1.7-3.2.1-2.2 3.1-1 5 5.3 8.8 10.6 17.6 15.9 26.3 1.2 2 2.5 3.9 2.8 6.3-1.6.5-2.7-.7-3.2-1.6-3.4-6.4-9.6-11.2-11.5-18.6-2.4-3.2-5.7-5.6-7.5-9.3-.8-1.7-2.6-1.8-4.3-2-19-2.2-38-4.5-57-6.1-2.6-.2-5.4-.2-7.2-2.6 0-3.5.8-7.1 1.9-10.6z"/>
|
||||||
|
<path fill="#adb0b4" d="M1507 1102c-.6 3.8 2.3 5.6 4.4 8 3.2 3.8 4.5 8.9 8.6 12 0 .6.1 1.2.1 1.9-4.4-3.1-9.7-2-14.5-2.7-25.2-3.3-50.5-6.2-75.7-9.1-3.3-.4-4.3-1.6-4-4.7.5-4.5.8-8.9 1.2-13.4 2-1.6 4.3-1.5 6.6-1.2 22 3.2 44.1 4.7 66.1 7.5 2.4.4 4.8 1 7.2 1.7z"/>
|
||||||
|
<path d="M1676.8 1108.9c-.9 6-1.2 11.9 1.7 17.5.5.9.3 1.9-.7 2.6-2.2-7.5-2.2-7.6-10.6-8-10.3-.5-19.7-4.3-29.3-7.2-11.1-3.4-22.7-4.9-33.8-8.1-9-2.6-18.2-4.2-27.5-7.2 4.1-1.3 7.6.4 11.2.8 18.6 2.2 37.2 4.6 55.8 6.8 11.1 1.2 22 3.7 33.2 2.8z" class="stg25"/>
|
||||||
|
<path fill="#898c90" d="M1572.2 1091.8c-4.3.4-5-.8-4.2-3.7 1.9-7.1 3.5-8.2 10.8-6.7.8.2 1.6.4 2.4.5 1.9.2 4.7-.3 4.5 2.6-.2 2.7-.7 6-4.3 6.4-3.6.3-7.1.1-9.2.9z"/>
|
||||||
|
<path d="M1019.9 889.1c-3.6.4-7.2 1.1-9.9-2.3 3.3.8 6.6 1.5 9.9 2.3z" class="stg8"/>
|
||||||
|
<path fill="#acafb1" d="M1122 986c2.1 1.8 4.2 3.5 7.4 6.2-8.1-.7-14.8-1.3-22.6-2 4.3 5.3 10.9 3.3 14.2 7.8-2.5 2-5.2.7-7.6 0-15.1-3.9-30.2-8-45.4-11.5-15.1-3.4-29.7-8.4-44.9-11.3-30-7.2-59.6-15.5-89.5-23-29.1-7.3-58-15-87.1-22.3-30.7-7.6-61.5-15-92.5-21.5-13.5-2.8-27-6-40.3-9.5-4.3-1.1-8.9-.8-12.8-3.6-1.5-1-3.3.7-4.8.4-6-1.2-11.5-4.5-17.8-4.3-1.2 0-1.9-1.7-2.8-2.7-.7-.8-1.4-1.1-2.6-.7-7.2 2.4-7.2 2.3-11.5-3.2.2 1.6 1.7 2.4 2.6 3.6 1.5 1.9 1.1 3.8.2 5.6-.7 1.4-1.7 2.6-3.4 2.5-2.3-.1-3.5-1.6-4.4-3.6-.5-1.1-.5-2.3-1-3.4-.6-1.4-1.3-1.7-2.6-.7-4.4 3.5-8 2.8-10.6-2.1-1-4.1-.3-8 1.3-11.9 1.8-2.3 4.3-2.5 6.8-2.1 9.7 1.5 19.2 3.8 28.8 5.9 1.4.3 2.4 1.1 3.1 2.3 13.1 2.5 26.3 4.8 39.3 7.9 15.3 3.7 30.7 7 46.1 10 8.8 1.8 17.4 3.9 26.1 6 15.9 3.8 32 7.2 47.9 11.1 17.6 4.2 35 8.9 52.6 13.2 23.3 5.7 46.7 11.2 70 16.9 20.1 5.4 40.2 11.1 60.4 16.2 26.2 6.7 52.6 13 78.9 19.4 6 1.5 12.5 2 18.5 4.4z"/>
|
||||||
|
<path fill="#484a4c" d="M644.1 875c-.3 4-1.6 7.9-1.1 12 1.1 3 2.4 6 0 9 .3 3.7.5 7.4.8 11.1.7 6.2.4 6.5-5.5 5-2.1-.5-4.1-1.4-6.2-1.8-7-1.3-11.3-5.5-13.3-12.3-.1-2.5-.2-4.9-.2-7.4-2-6.2-2.4-12.5.3-18.7 1.3-5.5 2.5-11 4-16.5.9-3.3 2.5-6.4 3.8-9.6 1.9-3.1 5.1-2.2 7.6-1.8 4 .6 8 1.8 11.8 3.2 4.9 1.8 3.4 6 2.8 9.6-.7 6.4-1.1 12.8-4.8 18.2z"/>
|
||||||
|
<path d="M644.1 875c1.5-6 2.2-12.3 4.9-18.1.5 3.5 3.2 4.7 5.8 6.7 6.9 5.3 15.6 6 22.8 10.3 3.9 2.3 9.2 2 14.5 4.2-2.8.9-4.7 1.3-6.7 1-1.6-.3-3.1-.5-3.4 1.7-10.7-2.3-21.5-4.7-32.2-6.8-1.9-.3-3.9-.3-5.7 1z" class="stg17"/>
|
||||||
|
<path fill="#2b2f33" d="M1001.8 1061c-6.3 3.9-7.7 3.4-9.8-3.1 3.2 1 6.1 1.9 9.8 3.1z"/>
|
||||||
|
<path fill="#2f3134" d="M460.1 853c.3 3.2-1.1 4.2-4 3.1-4-1.4-8-2.8-11.9-4.1.5-2.8 2.5-1.4 3.9-1.2 1.8.3 3.5 1.1 5.2 1.6 2.3.6 3.1-.3 2.6-2.6-2.9-15.7-1.4-31.1 3.6-46.2 1.3-4-.3-5.8-3.9-7.1-5.6-2-7.3-1.8-9.1 2.3-4.9 11.3-6.3 23.3-5.6 35.6.2 3 .9 5.9 1.2 8.9.2 1.8.8 4.1-2.1 4.7-.3-.7-.7-1.3-1-2-3.9-17.2-2-33.9 4.9-50.1.6-1.4 1.3-2.7 1.9-4 1.7-2.7 4.3-2 6.7-1.5 1.6.3 3.2 1 4.7 1.5 8 2.7 8.6 4 6 11.8-5 15.5-6.3 31.4-4.1 47.5.2.7.7 1.2 1 1.8z"/>
|
||||||
|
<path fill="#c3c5c7" d="M536 813.8c2.7-1.4 4.9-3.4 8.7-2.3 4.4 1.3 5 3.8 3.9 7.5-1.1 3.6-4 5.5-7 7.3-2.2 1.4-5 1.7-6.8 4 2.5 2 6.2 1.2 8.4 3.7-.4 2.3-1.5 3.1-3.9 2.2-2.2-.8-4.5-1.3-6.7-2-4.4-1.4-4.7-2.7-1.2-5.9 2.2-2 4.8-3.4 7.6-4.5.3-.2.5-.4.7-.7 1.3-2.1 5.2-3.5 3.7-6.3-1.7-3.3-4.2 1-6.4.5-.3-.1-.6-.1-.9-.3-1.3-.9-1.3-2-.1-3.2z"/>
|
||||||
|
<path fill="#bec0c3" d="M510.1 802c2.8.2 3 2.1 3 4.2V817c3.3-3.5 6.1-6.4 8.8-9.3 1.2-1.3 2.9-2.6 4.3-1.3 1.9 1.9-.8 2.7-1.7 3.7-4.4 4.9-8.9 9.7-13.4 14.6-1.4 1.5-2.9 2.9-5.2 2-1-.4-1.7-1.1-1.6-2.3.1-.7.4-1.4 1.1-1.4 7.2.5 4.5-4.6 4.6-8.1-.4-4.2-1.1-8.6.1-12.9z"/>
|
||||||
|
<path fill="#bfc1c4" d="M507.9 804.9c-4.8-2-7.7-.5-9.1 4.6-1 3.7-2.5 7.2-3.7 10.8-.4 1-.2 2.7-1.8 2.4-1.9-.3-1.5-2-1.2-3.2 1.4-4.4 2.9-8.8 4.6-13.1.9-2.4 1.7-4.3-1.9-5-1.1-.2-2.4-.9-1.6-2.4.6-1.3 2.1-1.1 3.1-.8 4.3 1.2 8.5 2.6 12.7 3.9 1 1.4.2 2.2-1.1 2.8z"/>
|
||||||
|
<path fill="#c4c6c9" d="M552 840c0-6.1 3.2-11.4 4.7-17-1.3-1.6-3.7 1.3-4.3-.8-.6-2.1 2-2.4 3.3-3 2.2-.9 5.2-3.7 6.4-2.4 1.9 2.1-1.3 4.6-2.1 7-1.6 4.5-3.4 9-4.9 13.5-.4 1.3-.6 2.6-2.2 2.9-.2-.1-.5-.2-.9-.2z"/>
|
||||||
|
<path d="M536.1 817.2c1.7-.1 2.5-1.4 3.7-2.3 1.7-1.3 3.3-1.2 4.9.2 1.7 1.5 1 3.1 0 4.4-1.5 1.9-2.9 4.1-5.7 4.3.4-2.8-.6-5-2.9-6.6zm38.9 43.7c-1.5 1.1-2.9 2-1.9 4.4.5 1.3.3 3.2-1.6 3.5-1.8.2-3.8-1.7-3.2-3 2.3-5.7-2.3-5.5-5.3-6.8 4.1.3 8.6-2.2 12 1.9zm-44.4-38.2c-.5 1.5-.5 3.6-2.2 3.1-2.5-.7-5.9-.4-7.1-3.4-.5-1.3 1.1-2.6 2.5-2.3 2.3.6 5.3 0 6.8 2.6zm-22.7-17.8c.4-1 .8-1.9 1.1-2.9h1c0 4.3-.1 8.7-.1 13-2.3-3 .7-7.1-2-10.1z" class="stg17"/>
|
||||||
|
<path fill="#bbbcbf" d="M619.1 872c-.1 6.2-.2 12.4-.3 18.7-13.5-1.6-26.6-5.5-40-8-27.4-5.2-54.7-10.8-82.3-14.8-1.1-.2-2.3-.5-3.4-.8-3.5-2.8-7.8-4.2-11.7-6.3-1.6-.8-4.2-1.7-3.7-3.5.8-2.5 3-.4 4.7-.3 16.4 1.1 32.4 4.3 48.5 6.9 16.6 2.7 33.2 5.7 49.7 9.1.5.1 1 0 1.5 0 2.8.4 4-.9 4-3.6 0-2.8.2-5.5 4.2-5.2 4.3.3 2.1 3.6 2.6 5.7.2.6 0 1.3 0 2 0 2.1.2 4.2 3 4.2 2.4 0 2.7-2 3.1-3.8.4-2.1-.8-5.8.7-6 3.3-.5 7-.8 10.2.6 1.7.8 3.4 1.4 5.2 1.2 3.1-.4 4.1 1.1 4 3.9z"/>
|
||||||
|
<path fill="#c1c3c5" d="M569.1 841.3c1.2-4.1-2.4-3.5-4.2-4.1-4.4-1.6-4.8-2.3-1.4-5.3 3.8-3.4 8-6.5 12-9.6 1-.8 2.4-1.9 3.6-1 1.7 1.2.2 2.7-.4 4-1.2 2.9-2.5 5.8-3.8 8.6-.4 1-1.2 2 0 3.1 1.7 1.5 1 2.5-1 3-1.1.3-1.6 1.1-1.9 2.1-.3 1.2-.2 3.1-2.2 2.5-1.5-.5-.6-2.2-.7-3.3z"/>
|
||||||
|
<path fill="#798c9d" d="M413 788c3 1.1 6.1 2.3 6.8 5.7.5 2.7-5.2 10.4-7.7 11.3-.6.2-1.4.2-1.5 1-.1 1.3.8 1.8 1.8 1.9 2.9.3 3 2 2.3 4.2-7.4-2-7.8-2.4-5.8-9.9 1.2-4.7 2.8-9.5 4.1-14.2z"/>
|
||||||
|
<path fill="#eeefef" d="M506.1 894c-2.2.1-3.2 2.1-5.2 3.7 0-3.6-3.1-7.1 1.3-9.8 3.6.5 3.3 3.6 3.9 6.1z"/>
|
||||||
|
<path fill="#616468" d="M440.1 848c2.6-4.2-.1-8.3-.5-12.4-1.2-13.7 1.1-26.7 6.3-39.3 1.1-2.7 3.1-3.8 6-2.5.9.4 1.9.6 2.8.9 8.2 2.7 8.3 2.8 5.6 10.7-4.3 12.6-5 25.7-4.2 38.8.1 2.4 1.3 4.8 1.8 7.2.5 2.6-.2 3.7-3.2 3-3.5-.8-6.6-3.7-10.6-2.5-2.6 0-3.3-2-4-3.9z"/>
|
||||||
|
<path d="M512.6 927.1c3.4.7 4.2 2 4.5 4.6-2.8-.6-3.1-2.4-4.5-4.6z" class="stg20"/>
|
||||||
|
<path d="M1023 974c5.5-.4 10.3 2 15.4 3.3 18.2 4.6 36.3 9.8 54.7 14 9.3 2.1 18.3 5.7 27.9 6.6 7.8 3.3 16.2 4.1 24.3 6.2 14.4 3.8 28.8 7.4 43.3 10.9 31.2 7.6 62.4 15.3 93.7 22.4 24.2 5.5 48.5 10.7 72.9 15.1 11.5 2.1 23 4.7 34.8 5.5 2 .1 4.5.2 5.1 3-1.4 4.9-2.8 9.8-4.2 14.8-1.6 1.7-3.6 1.3-5.6 1-34.3-5.3-68.4-11.4-102.4-18.5-1.3-.3-2.6-.7-3.8-1.2-14-3.6-28-7-42-10.5-6-1.5-11.8-3.2-17.8-4.5-2.3-.6-4.6-.9-6.8-1.9-3.6-1.8-7.4-2.7-11.4-2.9-2.3-.1-4.5-.5-6.7-1.4-.7-.3-1.3-.6-2-1-2.4-1.2-5-1.6-7.7-1.7-3.7-.5-7.4-1.8-11.3-.5-1.2.4-2.8-.1-3.8-1-6.8-5.8-15.8-5.2-23.6-8.1-2-.8-2.5.5-2.8 2.3-.6 3.2-.8 7.1-5.6 6.7-3.7-.3-5.8-3.6-5.4-8.6.2-3-.9-4.4-3.7-4.8-3.2-.5-2.9 1.9-3.3 3.8-.5 2.7-2.1 4.2-4.9 3.8-2.8-.3-5.2-1.2-5.5-4.7-.1-1.3-.1-2.7-.1-4 .1-2.3-1.4-3.2-3.4-3.6-2.3-.5-2.8.9-3.2 2.8-.6 3.1-1.3 6-5.6 5.4-4-.6-5.6-2.7-5.7-7.4 0-.7.1-1.3.1-2-.1-1.8-1.3-2.6-2.8-3-2-.5-2.6.7-3 2.4-.8 3.2-1.5 6.4-6.1 5.5-3.9-.8-5.8-3-5.3-7.1.2-2.1.2-4.1-2.4-4.7-3-.7-3.1 1.7-3.8 3.5-.9 2.6-2.4 4.5-5.5 4-3.2-.5-5-2.3-5.3-5.6-.1-1.3.1-2.7-.2-4-.4-2-2.1-2.5-3.8-2.7-1.7-.2-1.5 1.4-1.8 2.4-.8 2.5-1 5.5-4.8 5.2-3.9-.3-6.2-2.8-6.5-6.8-.1-1 .2-2-.1-3-.4-1.5-1.7-2-3.1-2.2-1.5-.2-2.1.8-2.3 2-.3 1.7-.7 3.3-2.2 4.3-2.9 1-5.2-.4-7.3-2.1-.3-.4-.7-.8-.7-1.3.4-5.8-3-7.7-8.1-7.8-1.1-1.1-.7-2.4-.6-3.7.1-1.5.2-3.1-1.6-3.7-1.8-.6-2.7.5-3.5 1.9-.4.7-.8 1.4-1.5 1.9-3.4 1.1-6.2-.1-8.8-2.2-.1-7.2 3.2-10.6 9.8-9.3 5.1 1 10.2 1.3 14.8 2-2.2-1.3-6.6-.6-7.4-5.2z" class="stg50"/>
|
||||||
|
<path d="M1028.9 1022c6.2-.4 12.7 1.3 18.1-3.5.9-.8 2.2-.6 3.4-.4 11.1 2 22.3 3.9 33.4 5.8 4.1.7 8 3.2 12.9 1.3-2.5-2.1-6.3-1.2-7.6-4.4 1.9-1.8 4.1-1.1 6.1-.5 10.8 3.1 21.9 5.2 32.5 8.7 11 3.6 22.7 5 33.3 9.2 8.3 3.3 17.7 2.7 25.4 7.9 1.3.9 2.9.2 4.4-.1 4.1 0 7.9.8 11 3.7 2.5 2.3 5.4.6 8 1.1 1.5.2 2.9.7 4.3 1.2 4 2.1 7.7 4.4 12.9 3.2 4.2-1 7.4 3.6 11.1 4.6 3.7 1 8-1.5 12 .7 1.5.8 2.7 1.9 4 2.9 1.2 1 2.4 1.5 4.1.8 5.1-2.2 9.4-.7 12.8 3.3 1.7 2 3.1 2.7 5.5 1.2 1.9-1.2 4.1-1.2 6.3-1 11.7 2.6 23.4 4.8 35.2 7.2 3.6.7 6.7 1.6 7.8 5.8.6 2.6 2.5 2.8 3.8.6 2.1-3.5 5-3.3 8.3-2.6 15.5 3.3 31.1 5.9 46.8 7.9 1.8.2 3.8.3 4.3 2.6-.3 4.2-1 8.3-.9 12.4.1 4-1.4 4.8-5 4.2-12.6-2.2-25.3-4.1-37.9-6.4-81.2-14.5-160.8-35.9-240.5-56.9-24.5-6.4-48.9-13.1-73.3-19.6-1-.1-1.8-.5-2.5-.9z" class="stg51"/>
|
||||||
|
<path d="M1388.7 1089.2c-5-2.1-10.4-1.6-15.6-2.6-12.6-2.4-25.2-4.5-37.7-6.9-2.5-.5-4.2-.6-4.6 2.5-.2 2.1-1.7 2.6-3.6 2.6-2.3-.1-3.3-1.4-3.2-3.6.2-2.9-1.2-3.9-4-4.4-12.7-2.5-25.4-5.2-38.1-7.9-2.2-.7-4.4-.7-5.8-3.6-1.3-2.7-.7-4.2.6-6.2.7-1.1-1.7-4.3 2.2-3.2 36.1 7.6 72.5 14.1 109 19.8 1 .2 2 .1 3 .1-.9 4.5-2.1 8.9-2.2 13.4z" class="stg52"/>
|
||||||
|
<path fill="#595d61" d="M1507 1102c-6 1.4-11.7-.7-17.5-1.3-17-1.6-34-3.8-51-5.6-3.8-.4-7.5-1.7-11.4-1.1.7-4.1 1.4-8.2 2.2-12.3 16.5 1.9 32.9 4 49.4 5.2 5.8.4 11.5 1.4 17.3 2.1 1.1.1 2.7-.1 2.9 1.4.7 5.2 5.9 7.3 8.1 11.6z"/>
|
||||||
|
<path fill="#b3b5b9" d="M1395.2 1076.7c.6-5 2.1-9.7 3.6-14.4 1.1-3.4 3.5-4.4 6.6-3.9 5.9 1.1 11.7 2.4 17.5 3.8 4 1 5.8 3.4 4.4 7.8-1.1 3.5-1.6 7.1-2.4 10.7-3.6 3.2-7.6-.5-11.4.7-.7 1.2 0 2.5-.2 3.8-.3 2.6-1.3 4.6-4.2 4.6-2.9 0-5.3-1.9-4.8-4.6 1-5.2-1.5-6.3-5.7-6.6-1.4 0-2.7-.6-3.4-1.9z"/>
|
||||||
|
<path fill="#abaeb2" d="M1422.8 1093.2c-.3 5-.8 9.9-.9 14.9-.1 2.8-1.5 2.9-3.6 2.6-7.6-1.1-15.1-2.2-22.7-3.1-2.8-.3-4-1.6-3.7-4.5.4-4.6-.1-9.3 1.4-13.8 4.3-1.6 25.9 1.3 29.5 3.9z"/>
|
||||||
|
<path fill="#5a5d61" d="M1422.8 1093.2c-9.9-1.3-19.7-2.7-29.6-4 .7-4.2 1.3-8.4 2-12.6 1.9.4 3.9 1 5.8 1.1 4.1.1 6.8.7 4.4 5.9-1.1 2.4.2 4.7 3.1 5 3.2.4 3.2-2 3.4-4.2.2-1.8-.3-3.4-1.4-5 5.1.5 9.7.9 14.2 1.3-.6 4.2-1.3 8.4-1.9 12.5z"/>
|
||||||
|
<path fill="#97999e" d="M1419 1127.8c-6.9-1.3-14.6-2.2-22.1-4.5-1.3-.4-2.4-1.2-3.1-2.4-1.1-1.8-.8-3 1.5-2.7 8.4 1 16.8 2.1 25.2 3.2 2.4.3 2.5 2.3 2.4 4.2 0 2.2-1.5 2.3-3.9 2.2z"/>
|
||||||
|
<path d="M1023 974c3.4 3.3 8 4.1 12.2 6.3-5.3-1.3-10.7.1-16.1-1.2-9.2-2.1-9.3-1.8-12.8 7.1 1.3 2.2 2 4.3-1 5.8-2.3 1.1-4.7 1.5-7-.1-1.1-.7-1.3-1.8-1.4-3-.3-1.9-.7-3.6-3-3.9-2.1-.3-2.9 1.3-3.5 2.8-1.4 3.7-3.8 4.5-7.3 3h.1c-2.1-1.1-2.3-3-2.3-5 0-2.6-.5-4.9-3.6-5.5-3.2-.6-2.5 2.3-3.4 3.7-.4.6-.8 1-1.6.8-1.4.3-2.7.7-4.1 1-2.9-1.6-2.9-4.7-2.5-7 .7-4.4-2.5-3.3-4.5-4.2-3.1-1.4-3.2 1.1-3.8 2.9-.7 2-.8 4.7-3.9 4.2-2.8-.5-3.7-2.9-3.3-5.3.5-4.2-1.7-5.4-5.2-6.1-5.2-1.1-10.3-2.8-15.5-4-2.1-.5-4.6-1.7-5.5 2-.5 1.8-1.3 4-4 3.6-2.6-.4-3.4-2.6-3.5-4.8-.1-2.3-.3-4.1-3.1-4.7-2.3-.5-3.8-.7-4.2 2.3-.2 1.8-1.1 3.7-3.6 3.2-2.3-.5-3.5-2.1-3.2-4.4.4-3.5-1.4-4.6-4.4-5.2-1.9-.3-3.2-.4-3.6 2-.3 1.5-.6 3.7-2.9 3.4-2.4-.3-4-1.9-4-4.4 0-2.5-.8-4-3.4-4.6-2.1-.5-3.5-.7-4 1.9-.4 1.9-1.7 2.8-3.7 2.5-2.3-.3-3-1.8-3.1-3.8 0-2.2-.3-3.9-3.1-4.3-2.3-.3-3.8-.3-5.2 2.2-1.7 3.1-4.7 2.3-6.1-1.3-2.5-6.3-3.2-6.3-8.7-1.9-2.7 2.2-4.6.1-5.6-2.5-1.9-4.7-4.2-5.2-7.9-1.8-2.6 2.5-5.3 1.1-5.8-1.6-.7-3.9-3.2-4.2-5.9-4.8-3.2-.8-6.4-1.7-9.7-2.3-1.8-.3-3.7-2.1-5.3 1.2-.8 1.6-4.2 1.1-4.1-1.7.1-2.4-1-2.2-2.5-2.5-5.7-1.2-11.3-2.6-17-3.8-1.5-.3-2.8-.6-3.9-2-1.4-1.8-3-1.7-5.5-1.2-3.5.6-8.3 1.3-10.3-3.8-.2-.6-1.3-1.2-1.5-.7-1.6 4.3-4.7 1.5-6.5 1-15.2-4.3-30.7-7.3-46-10.9-21-4.9-42-10-63.1-14.9-2.1-.5-4.2-1.1-6.2-1.6v-9c1 .5 1.6 1.2 1.9 2.2.4 1.6 1.2 2.7 3 2.8 2 0 2.7-1.5 2.8-2.9.3-2.7 1.7-3.3 4-3 2.5.3 2.1 2.1 2.2 3.7 0 .8.1 1.7.3 2.5.4 1.7 1.5 3.1 3.3 3.4 2.1.3 2.2-1.4 2.7-2.8.7-1.9 1.1-3.5-1-4.8-1.7-1-4.6-1.1-4-4.2.2-1 1.1-1.6 2.2-1.7 3.5-.3 3.1 2.5 3.8 4.6.7 2.1 5.5 2.4 6.8.4 2.2-3.5 4.3-2.1 5.5.4 2.2 4.3 4.6 5.4 8.7 2.1 1.9-1.6 3.5.2 4.4 1.8 2 3.6 4.8 4 8.1 2.3 1.7-.9 3.3-1.2 4.5.3 2.3 2.8 5.5 2.4 8.5 3.1 8 1.7 15.9 4 24 5.8 20.2 4.5 40.4 8.6 60.6 13.2 15 3.4 29.9 7.4 44.8 11.1 24.1 5.9 48.1 12.2 72.2 18.3 29.4 7.5 58.7 15.1 88 22.7 7.3 1.8 14.9 3.1 22.3 5.6z" class="stg58"/>
|
||||||
|
<path fill="#707275" d="M1191 1046.9c-1.8 1.4-3.6 2.4-5.7.6-4.2-3.3-8.8-5-14.2-3.8-.6.1-1.4 0-1.9-.3-9.9-5.9-21.1-7.1-32-9.6-3.6-.8-6.9-3.1-10.6-3.8-12.7-2.4-24.7-7.5-37.6-9.1-4.4.3-8.2-2-12.3-3-7.3-1.7-14.5-3.9-21.8-6-2.2-1-5.1 0-6.9-2-4.1-1.3-8.1-2.6-12.1-3.9-.6-1.9 1.2-2.1 2-3 .3-.9 1.1-1.9 1-2.8-.6-5.7 2.4-5.2 6.3-4 2.4.8 3 1.9 2.3 4.4-.6 2.1-1.2 4.6 1.4 6.2 4.4 2.6 6.2 1.7 7.1-3.6.3-1.8-.5-4.7 2.9-3.2 2.2 1 6.9-.5 5.4 4.9-.4 1.2-.2 2.6-.2 4 0 2.9 2.2 3.5 4.3 3.9 2.3.5 2.8-1.3 3.9-2.8 1.4-1.8-1.8-6.4 3.9-5.6 5.3.8 5.9 3.3 4.9 7.7-.3 1.5-.3 3.1 1.8 4.1 4.5 2.1 6.1 1.3 7-4.3.3-1.8-.5-4.7 3-3.4 2.5.9 7.2-.2 5.7 5.2-.2.6-.3 1.3-.4 2-.6 3.9 1.6 5.3 5.1 5.9 4 .7 2.7-2.8 3.7-4.5.9-1.5-1.8-5.6 3-4.3 3 .9 7.9-.2 6.2 5.9-.5 1.9-1.2 4.4 1 6 3.8 2.7 6.4 1.3 6.9-3.4.2-2.1-.5-5.4 3.5-4 2.8 1 7.9 0 6.2 5.9-.6 2-1.4 4 .1 5.7 1.2 1.5 3 3.1 5.1 2.7 2.7-.5 3-3.3 2.8-5.2-.4-5.3 2-5.1 5.9-3.9 5.7 1.7 11.6 3 17.3 4.6 1.4.4 2.8.5 3.9 2.4 1 1.8 3.4 3.1 6.3 1.4 3.3-2 6.6 1.2 9.9 1 2.1 2.9 5.3 1.5 8 2l1 1c-.3 1.3-1 2.5-2 3.4-.2.1-.3.1-.4.2-2 1.3-5.3-2.2-6 .7-.5 2.3 3.7 2 5.2 3.7.3.4.7.7.9 1.2.1 1.1-.1 2-.8 2.8z"/>
|
||||||
|
<path fill="#76787b" d="M1022.1 992.1c5.7-2.1 8.8-.2 8.8 5.4 0 1.2.1 2.3.1 3.5 1 1.1 2.3 2.2.9 3.8-1-.1-2-.1-2.9-.4-2.5-.7-5.3-1.1-7.4-2.5-3.2-2.2 1.8-4.5.4-7-.9-.9-.9-1.8.1-2.8z"/>
|
||||||
|
<path fill="#7b7d80" d="M983 991c3.5.7 5.7-.5 6.3-4.3.3-2 .7-4.6 4-3.5 2.4.8 5.6.6 4.7 4.8-.3 1.2.1 2.6.2 4 .4 1.2.7 2.4 1.2 4-5.6-1.9-11.4-2.3-16.4-5z"/>
|
||||||
|
<path fill="#7e8183" d="M972.1 985c.3-.6.5-1.2.9-1.7 1-1.5-1.6-5 2.2-4.6 3.4.3 7.7.4 6.7 6.1-.4 2.1.2 4.3 1.2 6.2-3.8.2-7-1.8-10.5-2.6-3.5-.9-.8-2.2-.5-3.4z"/>
|
||||||
|
<path fill="#787a7d" d="M1005.1 992c1.5-1.7.5-3.9 1-5.8 2.9.7 5.8 1.3 8.7 1.9.6.5.6 1.1.1 1.7-1.9 3-.7 6.1-.3 9.6-4-.9-7.8-1.8-11.8-2.8.9-1.4 2.7-2.5 2.3-4.6z"/>
|
||||||
|
<path d="M1014.9 989.9c0-.6 0-1.1-.1-1.7.2-3.4 1.3-5.9 5.3-5.1 4.1.9 2.8 4 2.4 6.7-.1.8-.3 1.6-.5 2.4 0 1 0 1.9-.1 2.9-1.5 1.9-3.6 2.8-5.7 1.7-2.5-1.6-.7-4.6-1.3-6.9z" class="stg58"/>
|
||||||
|
<path d="M1031.9 1004.9c-.3-1.3-.6-2.6-.9-3.8 2.5.1 4.3 2.4 6.9 2-.7 1-1.4 2-2 3-1.4-.2-3 .3-4-1.2zm16.1 5.1c2.5.1 4.8.6 6.9 2-2.5.2-5.5 1.8-6.9-2z" class="stg51"/>
|
||||||
|
<path fill="#b6b8ba" d="M641.1 877.1c-.1 2.9-.2 5.8-.3 8.8-1 3.3.6 6.8-.9 10.1-6.5 1.3-12.2-1.5-18-3.7-2.4-7.4-.4-14.7.3-22 2.8-1.9 6.5-2.3 8.6-5.4.6-.9 2.1-.8 3.3-.4.8.3 1.7.9 1.7 1.7-.3 4.5 8 5.1 5.3 10.9z"/>
|
||||||
|
<path fill="#86888b" d="M641.1 877.1c-.1-2.6-.1-5.1-3.8-5.1-2.9 0-2-2.4-2.2-4.1-.1-1.2-.1-2.4-1.6-2.8-1.2-.3-2.7-.1-3 1.1-1 5.2-5.2 3.4-8.3 3.9.9-6.4 2.8-12.6 4.8-18.8 1.2-3.8 3.6-4.9 7.2-4.3.3.1.7.1 1 .2 12.3 2.7 12.4 3.1 9.1 15.4-1.2 4.8-2.1 9.6-3.2 14.5z"/>
|
||||||
|
<path d="M621.9 892.2c6.2.1 12 2.7 18 3.7.3 2.7.7 5.5 1 8.2-2.9 1-5.6-.2-8.3-1-3.2-.9-6.4-1.9-9.8-1-1.5-3.2-.3-6.6-.9-9.9z" class="stg66"/>
|
||||||
|
<path fill="#b9babd" d="M622.8 902.1c.2-2.5 2-2.3 3.6-1.9 4.9 1.2 9.7 2.6 14.5 4 .5 1.9 1.8 4.1.5 5.7-1.7 2-4.2.3-6-.4-4.5-1.8-10.6-1.3-12.6-7.4z"/>
|
||||||
|
<path d="M639.9 896c.6-3.3-.5-6.8.9-10.1-.1 3.3 1.3 6.9-.9 10.1z" class="stg66"/>
|
||||||
|
<path fill="#7f7c7a" d="M1278.9 1056c-.6 3.4-2.9 6.6-.9 10.5 1 1.9 3.2.9 4 2.5-2.2.1-4.3-.2-6.3 1.9-2.1 2.3-4.2.2-5.5-1.8-2.8-4.3-7.5-5.4-11.8-2.7-2.8 1.7-4.4-1-5.9-2.2-3.7-3.2-7.2-5.4-12-2.3-2.1 1.4-3.7-.1-4.8-1.2-3.8-3.9-7.8-5.7-13.1-3-1.6.8-3.2.1-4-1.1-1.2-1.9-3.1-2.3-4.7-3.4.8-1.4 2-2.4 3.1-3.5 2.1-1.4 4.6.5 7-.9-1.6-2.3-4.7-1.6-6.3-3.5-.8-1.7-.3-3 1.2-4 8.4.9 16.4 3.8 24.6 5.8 11.8 2.7 23.6 5.9 35.4 8.9z"/>
|
||||||
|
<path fill="#64676a" d="M1192 1038c0-1.4 0-2.9 2-3 2.3.3 4.6.7 6.9 1.1 1.3.6 2.7.8 2.2 3-1.3 6.6-1.2 6.7 5.8 7.7 1.3 1.6 1.2 3.4 1.1 5.2-7.6 3.1-12.2-5.2-19-5 0-1 0-2-.1-3-1.2-2.4-.3-4.2 1.1-6z"/>
|
||||||
|
<path fill="#626569" d="M1210 1051.9c-2.1-1.3-.8-3.3-1-5-1.1-.9-1.3-2.2-1.5-3.6-.7-4.6.4-5.5 5.5-4.1 1.7 1.5 4.4.1 6 1.8-.3 1.3-.7 2.5-1 3.8.9 1.8.3 3.4-.9 4.9.1 2.2-.9 3.3-3.2 3.2-1.3-.2-2.6-.6-3.9-1z"/>
|
||||||
|
<path d="M1212.9 1039.3c-3.1-.7-5.7-.8-4.1 3.8.4 1.2.1 2.6.1 3.8-3.1 2.2-5.9.6-8.1-1.2-2.1-1.7-.7-4.2.8-6.1 1.3-1.6.6-2.7-.8-3.6 4.3.2 8.4 1 12.1 3.3zm-19.9-5.3c-4.6 2.3-6.7 1.8-8-2 2.8-.1 5.5.6 8 2z" class="stg51"/>
|
||||||
|
<path d="M1306.8 1078.5c1.6.9 3.3-1.4 4.7.4.1.2-.2 1-.5 1.2-1.9 1.2-3-.2-4.2-1.6z" class="stg52"/>
|
||||||
|
<path d="M1192 1038c.2 2.1-.4 4-1 5.9-2-.7-4.1-1.3-6.1-2-1.7-.6-2-2-1.5-3.6.6-1.7 1.5-2.3 3.4-1.6 1.6.7 3.4.9 5.2 1.3z" class="stg51"/>
|
||||||
|
<path d="M1170.1 1032.9c1.9.8 5.4-.2 4.8 3.9-.3 2.1-1.5 2.6-3.1 1.9-1.9-.8-5.1-.4-4.9-3.9.2-1.7 1.1-2.8 3.2-1.9z" class="stg50"/>
|
||||||
|
<path d="M1217.1 1049.8c-.2-1.7 0-3.4.9-4.9 2.1.4 4.2.7 6.3 1.2 1.8.4 1.7 1.8 1.6 3.1-.1 1.5-1.2 1.9-2.4 1.8-2.2-.3-4.3-.8-6.4-1.2z" class="stg51"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" id="Layer9" x="0" y="0" style="opacity:1;z-index:1" viewBox="0 0 1920 1920">
|
||||||
|
<style>
|
||||||
|
.sti0{fill:#d4d3d3}.sti8{fill:#7d8084}.sti11{fill:#abadaf}.sti13{fill:#bcbdbf}.sti30{fill:#898a8c}
|
||||||
|
</style>
|
||||||
|
<g id="Group_2">
|
||||||
|
<path d="M630.1 1054c2.4 0 4.4-2.8 7-1 2.7 1.7 5.2 3.6 7.7 5.6 1 .8 2 2.1.8 3.4-1 1.1-2.2.3-3.2-.4-2.7-1.9-5.2-4.2-7.9-6.1-2.7-1.9-4.7-.9-5.4 2.3-.6 3.1.8 5.6 2.6 7.8 8.7 10.9 16.2 22.9 28.1 30.8 1.4.9 2.3 2.3 3.4 3.6 9.8 11.8 20.7 22.6 31.2 33.6 1.4 1.4 2.7 3 5 2.8.8-.2 1.6-.5 2.2-1.1 5.9-6.2 13.2-8.4 21.5-8.3 3.7-.9 4-3.4 3-6.6-2.8-8.7-5.9-17.3-9.4-25.8-2.6-6.3-5.7-12.3-8-18.7-9.7-13.8-19-28-34.9-37.1-14.8 4.1-29.6 8.5-44.4 14.1.4.4.6.7.7 1.1z" class="sti0"/>
|
||||||
|
<path fill="#b9b9ba" d="M722.8 1126.1c3-.6 3.3-2.1 2.4-5-4.5-14.5-10.8-28.3-16.3-42.4-.3-.9-1.1-1.8 0-2.6 13 17.4 18.9 38.1 26.5 58 3.6 9.4.4 19.9-7.3 26.1-8.5 6.8-19.5 8.2-27.9 2.7-14.5-9.7-29.4-19-41.1-32.2-12.7-14.4-24.6-29.4-31.2-47.7-3.6-9.8-2.7-19.6 2.2-28.9 3.4-4 5.6-4.1 9.5-.9 1.8 1.5 3.7 2.7 5.6 4.1 2.1 1.4 3.7 3.2 2.1 5.8-2 3.2-4.2.8-5.9-.3-2.6-1.7-4.9-3.9-7.3-5.9-.9-.7-1.6-1.9-3-1-1.1.7-1.2 1.9-1.1 3.1.2 2.6 1.5 4.7 3 6.7 4.4 5.8 8.9 11.5 13.4 17.2.9 1.2 1.9 2.3 3.1 3.3 9.4 7.7 17.3 16.8 25.6 25.4 7.9 8.2 14.8 17.5 23.9 24.6 1.3 2-.3 3.4-1 5-2.4 5.9-3.3 11.9 1.5 16.8s11 6 17.5 3.8c6.8-2.3 11.9-6.6 15-13.1 3.1-6.5 1.9-16.8-6.7-19.8-1-.6-2.3-1.1-2.5-2.8z"/>
|
||||||
|
<path fill="#191c21" d="M722.8 1126.1c13.4 5.2 16.6 17.2 7.3 28.4-6 7.2-13.7 10.9-23.3 8.8-9.6-2.2-14.1-10.2-11.1-19.7.8-2.7 2.3-5.1 3.5-7.7 6.3-6.8 13.8-10.9 23.6-9.8z"/>
|
||||||
|
</g>
|
||||||
|
<g id="Group_1">
|
||||||
|
<path d="M938.8 1026.2c-12.1-15.4-25-30.1-38-44.8C896 976 890.5 971 890 963c-.1-1.1-.7-2.2-1.3-3.2-.8-1.1-1.7-2-2.6-3-11.7-11.9-24-23-36.2-34.4-12.7-12-25.8-23.6-38.7-35.3-3.5-3.2-6.8-6.9-11.3-8.9-3.5-.1-6.4 1.3-9.1 3.4-2.1 1.5-3.8-1.3-5.8-.5-.1 1.8 1.3 2.6 2.2 3.7 1.9 2.3 2 10.6 0 12.1-4.6 3.6-9.4 7-14.7 9.3-24.9 10.6-49.9 21-74.8 31.6-2.7 1.2-4.1.6-5.8-1.6-5-6.8-11.5-12-18.9-16-6.1-3.3-12.1-.8-14.2 5.8-1.8 5.8-1.6 11.5 2.2 16.6 1.4 1.9 2.5 3.9 3.7 5.9 1.2 1.9 1 2.9-1.4 4-10.7 4.6-21.2 9.5-31.9 14.2-28.7 12.6-57.5 25.1-86.3 37.8-23.6 10.4-47 21.1-70.7 31.2-32.5 13.7-64.7 27.8-96.7 42.6-33.2 15.3-66.4 30.6-100.7 43.4-9 3.3-10.9 2.9-15.8-5.1-.7-1.1-1.2-2.4-2-3.5-2.3-3-3.2-7.1-6.9-9.4-.1.7-.3 1.1-.2 1.3 5.9 16.9 13.8 32.8 22.6 48.3 3.7 6.5 8.9 7.9 16 6.2 12.1-2.9 23.7-7.5 35.6-11.2 42.8-13.5 84.6-30.3 128.1-41.9 11.7-3.1 23.2-6.8 34.8-10.5 2.8-.9 4.6-.4 6.6 1.6 3.9 3.9 7.3 8.2 12 11.3 1.7 1.2 3.5 3.3 5.7 1.9 2.5-1.6 2.7-4.6 2.1-7.2-.9-3.9-2.1-7.7-3.4-11.4-1-2.8-1-4.1 2.6-5.1 17.6-5 35-10.4 52.5-15.7 19.4-5.9 38.7-11.8 58.1-17.6 1.1-.3 2.8-1.8 4-.4 14.8-5.6 29.6-9.9 44.4-14.1-.1 0-.1-.1-.2-.1 12.8-3.8 24.7-7.5 36.6-10.9 10.4-3 10.9-2.8 17.4 5.9.1.1.1.3.2.4 5.5 5.9 9.8 13.1 17.6 16.6 2.7 1.2 5.5 2.1 7.9-.1 2.3-2.1 2.8-4.7 1.9-7.8-1.8-6.2-4.3-12.2-7.1-18.1-.6-1.3-2.5-2.8 0-4.2 2.8-1.6 2.2 1.5 3.3 2.3 2.3-1.5 4.9-1.8 7.6-2 2.3-.5 4.7-.7 7-1.1 6.5-1 13-.9 19.4-2.4 2.8-.1 5.6-.5 8.4-1 4.4-.8 7.8.7 10 4.7.7 1.3 1.3 2.7 2.3 3.8 1.7 1.6 2.9 1.2 3.7-.8 1.2-3.3 2.3-6.6-.2-9.9 2.8-.3 4.7.9 6.6 2.4 4 3.1 8.1 6.2 12.5 8.8 2.2 1.3 4.4 2.4 6.9.5 0-3-2.4-4.6-3.8-6.8-1.5-2.5-5.2-4.7-4.5-7.4.9-3.6 5.3-1 7.9-2.2.5-.2 1-.5 1.4-.4 5.4.4 10.9-3.2 16.1-.1 3.3 2 6.5 1.9 10 1.4 4-.6 8.2-1.9 11.7 1.7 1.2 1.2 2.9 1 4.3.5 2.9-1 5.9-.8 8.9-.7-.4-4.3 2.7-7.6 3.5-11.6.2-1 2-1 3.2-.8 1.9.3 3.5 1.1 5.1 2 6.6 3.4 11.9 8.4 17.1 13.6 7.9 7.9 16.5 14.9 24.2 23 1.9 2 4.3 4.7 7.3 1.1-1.9-5.3-5.8-9.1-9.2-13.3z" class="sti0"/>
|
||||||
|
<path fill="#c6c6c7" d="M1298.2 1277.8c-8.6 1.5-16.2 5.7-24.3 8.8-51.6 19.9-103.1 40.1-154.7 60.1-2.1.8-4.3 1.8-6.8 1-.6-.2-1.7-.2-1.8 0-3.2 6.9-10.8 6.8-16.3 10-1.7 1-3.6 1.6-5.5 2.3-10.2 4-14.9 2.9-22.3-5.3-5.2-5.8-10.4-11.6-15.6-17.5-6.5-7.4-6.7-12.9.7-19.3 11.4-9.9 23.2-19.4 35-28.8 25.9-20.5 51.9-40.8 77.8-61.3.6-.5 1-1.3 1.5-1.9 2.4-3.1 5.3-5.5 8.4-7.8 1.9-1.7 3.8-3.2 6.1-4.4 5.4-4.6 10.8-9 16.1-13.7l2.1-2.1c5.2-4.6 6.1-4.4-1.3-8.4-10.8-5.7-21.8-11.2-32.6-16.9-2-1.1-4.3-1.8-5.4-4.1.2-6.8 3-12.5 6.6-18.1 4.5-.9 8.1 1.5 11.7 3.3 11.3 5.3 22.5 10.7 34 15.6 18.1 7.7 36.9 13.4 55.4 19.8 4.7 1.6 10.2.4 15 2.6 3.7 1.8 7.4 2.8 11.4.9 2.7-1.2 4.8.2 6.8 1.9 10.3 9.2 20.4 18.5 30.2 28.3 4.9 5 10.7 8.4 17.7 9.4 6.8 1 10.4-.8 13.2-6.9 2.8-5.9 3.8-12.4 5.3-18.7 1.8-7.4 3.4-14.9 5.5-22.2 1.9-3.3 0-8.1 4.1-10.6 16 .4 31.9.5 47.9 1.3 18.9.9 37.9 1.4 56.8 2.1 18.6.7 37.2 1.4 55.8 2 18.4.6 36.9 1.3 55.3 2 15.3.6 30.5 1.5 45.8 1.8 15.3.3 27.8 6.9 39.1 16.5 5.2 4.4 11.1 7.9 15.1 13.6 2.7 3.7 1.2 5.1-2.1 6-4 1.1-8.1 2.1-12.1 2.6-7.9 1-15.9 2.4-23.8 2.1-14.3-.5-28 3.6-42.1 4.8-14.5 1.3-29 3.5-43.4 5.4-13.7 1.7-27.3 3.5-40.9 5.3-14.6 1.9-29.3 3.8-43.9 5.7-14.8 1.9-29.6 3.9-44.4 5.7-14.5 1.8-29 3.4-43.4 5.4-5.7.8-11.6.3-16.9 3-1.7-.1-2-1.5-2.6-2.7-1.1-2.3-2.4-4.4-3.8-6.4-6.1-9-12.5-11-22.7-6.9-5.9 2.4-11.2 5.9-15.4 10.8-3.2 3.8-6.6 4.4-11 2.3-7.2-3.4-14.4-6.9-21.3-10.9-12.9-7.6-26.8-13.3-35.3-19.3 11.4 9.6 28.5 19.2 42.6 32.9 5 4.9 12 7.1 18 10.6 3.8 6.7 6.1 14.2 10.8 20.4-6.6-1.3-13-3.2-19.2-5.8-4.9-1.8-9.5-4.3-14.5-6.1-2.2-.8-4.3-.9-6.4-.2z"/>
|
||||||
|
<path fill="#898b8e" d="M819.9 734.3c9.6 6.3 18 14.1 26.8 21.5 32 26.8 63.9 53.8 95.8 80.7 14.5 12.2 29 24.5 43.5 36.7 8 4.3 14.2 11 21 16.8 30.5 25.8 60.7 51.9 91.1 77.7 5.8 5 11.7 9.8 17.6 14.8 9.4 9.2 19.8 17.3 29.5 26.1 7.5 6.8 15.2 13.4 22.6 20.4 12.8 11.9 25.9 23.5 38.2 35.9 1.4 1.4 3 2.7 3.7 4.6-.7 5.6-6.2 12.3-11.3 12.8-4.3.4-2.6 4-4.1 5.8-2.1.8-2.4-1.1-3.3-2.2-3.2-8.3-3.3-8.4-11.3-4.1-4.4 2.3-8.3 2.4-12.6-.3-12.8-8.2-24.8-17.5-37.6-25.6-9.6-6-19.2-11.7-30.3-14.9-7.9-2.3-15.5-6.3-22.1-11.4-9.7-7.4-20.7-12.8-31-19.2-11.6-7.1-23-14.7-35.3-20.7-3.9-1.9-7.9-3.6-11.7-5.6-4.7-2.4-9.7-4.2-13.9-7.8-1.9-1.6-4.3-2.9-6.7-3.2-7.2-1-13-5-19-8.5-2.7-1.6-5.5-2.2-8.5-2.7-.8-.1-1.8-.3-2.3.5-.7 1 .1 1.8.7 2.6 1.7 2.4 4.9 3.7 5 7.1-2.8 1.8-4.4-.6-6-2-7.4-6.5-14.8-12.9-22-19.5-15.2-13.9-31.4-26.8-46.8-40.4-16.5-14.7-33.6-28.8-50.6-42.8-4.4-3.6-9.3-6.5-13.5-10.3-1.3-1.2-3.3-2-2.3-4.4 2.4-3.3.6-6-1.5-8.5-9.3-11.3-14.9-24.7-20.4-38.1-.8-1.9-.4-4-.6-5.9-.6-5.1-.9-9.9-4.1-14.6-3.3-4.8-2.4-11.2-3.5-16.9-1-5.1-2.1-10.1-4.1-14.9-2.8-6.6-2.6-13 2.1-18.7 5.6-6.8 12.2-11.2 21.8-8.1 5.8 1.6 11 5.3 17 7.3z"/>
|
||||||
|
<path fill="#d6d6d6" d="M1114.8 983.2c-19.2-16.2-38.3-32.4-57.4-48.7-16.7-14.2-33.4-28.5-50-42.8-7.2-6.2-14.3-12.4-21.4-18.7h60c1.3 0 2.7.1 3.9.4 2.7.7 2.9-.1 2.7-2.7-1-10.7 7-17 17.6-14.2 6.8 1.8 12.7 5.3 18 9.4 8.5 6.5 17.6 8.6 28.2 8.3 22.3-.7 44.6.6 66.8 1.1 15.1.3 30.3-.3 45.4.8 16 1.2 32-.2 47.9 1 15.3 1.2 30.6-.2 45.9 1 16.6 1.2 33.3-.2 49.9 1 18.6 1.3 37.3-.2 55.9 1 15.8 1 31.6-.1 47.4 1 12.5.9 24.9.4 37.4.8 1.5 0 3-.4 4.2.9-3.9 2.3-5.9 6.2-8.1 9.9-2.4 4.1-.7 7.8 3.9 9.1 3.2.9 6.5 1.4 9.8 1.8 1.5.2 3.2.8 3.2 2.5.1 1.6-1.7 1.9-2.9 2.2-16.6 4.4-32.9 9.4-50.3 10-6.9.2-13.9.3-20.7 2.3-1.7.1-3.5.2-5.5.3 2.7 5.6 9.9 6.7 11.3 12.8-3.2.8-5.9-.8-8.5-2.1-4.7-2.2-9.3-4.5-14.3-5.9-1.8-.5-3.4-1.9-5.2-1.7-10.1 1.5-17-5.3-24.3-10.1-11.7-7.7-23.4-15.3-35.2-22.9-8-5.1-14.6-3.9-21.3 3.3-5.1 5.5-9.4 11.6-14.2 17.4-6.8 8.2-12.9 16.9-19.7 25.2-3.3 4.1-5.1 4.4-9.9 2.2-1.7-.8-3.3-1.6-4.8-2.6-4-2.6-7.9-3.3-12-.3-13.1-2.8-26.1.6-39.1 1.2-12.4.5-24.8 2-37.3 2.5-4.7.2-9.3.5-13.1 3.9-2.7 2.3-5.9 1.5-9.1.6-.3 2 1 3 1.8 4.1 2.7 3.7 4.4 7.8 6 12 1.4 3.6 3 7.5-.5 10.6-3.7 3.2-7.9 1.7-11.6-.4-7.3-4.1-13.8-9.3-20.2-14.5-5.1-4.1-10.3-5.1-16.7-3.5-12.9 3.3-26 5.8-38.9 8.8-1.3.3-2.7.2-4.1 1.6 2 2.8 4.9 4.7 6.9 7.5 2.4 4.1 5.5 7.8 2.2 12.6z"/>
|
||||||
|
<path fill="#abadb1" d="M1288.9 936c2.1-3.8 5.2-3.7 8.5-2 3.1 1.6 6.2 3.2 9.2 4.9 3 1.7 5.1 1.2 7.2-1.7 11.1-14.5 22-29.1 33.9-43 5.9-6.9 15-9.8 22.9-4.2 11.8 8.3 24.4 15.4 36.1 23.9 4.1 2.9 8.7 5.3 13.1 8 1 .6 2.2 1.1 3.3 1 9.4-.7 17.3 3.5 25.4 7.3 3 1.4 6.1 2.5 9.2 3.8-.2 4.8-1.3 5.7-6.1 4.3-7.3-2.1-14.2-5.6-21.4-9 1.6 8.3-.9 15.8-2.6 23.3-6.8 30.2-14 60.4-21.1 90.6-.1.3-.4.5-.6.8-2.1-.7-4.1-.7-6.1.7-11.8 8-24.8 13.1-38.8 15.1-17.4 2.4-33.4 8.9-49.6 14.9-28.6 10.5-57.7 18.5-88.1 21.5-7.8.8-15.7.8-23.2-2-2.9-1.1-6.1-2.1-6.2-6.1 0-1 .3-2.1 0-2.9-1.2-3.4 0-4.6 3.4-4.1 2.8.4 4.9-.5 6.2-3 1.6-3.1 5.6-4.8 5.5-9 14.1-18.3 28.3-36.5 42.5-54.7 14.1-18.1 28.6-35.9 42.3-54.2 2.5-3.3 5.2-6.5 7.8-9.7 2.3-2.9 2.4-4.8-1.3-6.4-3.1-1.3-5.7-3.3-8.7-4.9-1.2-.7-2.9-1.1-2.7-3.2z"/>
|
||||||
|
<path fill="#545355" d="M1193.9 1088.1c4.3 6.2 11.1 6.4 17.4 6.8 13.4.9 26.6-1.3 39.5-4.2 19.3-4.3 38.5-9 57-16.1 10.3-4 20.5-8.6 31.1-11.7 9.3-2.8 19.2-3.8 28.7-5.9 11.8-2.6 22.9-7 32.6-14.3 3.4-2.5 4.6-2.1 5.8 1.4-4.6 20.4-9.3 40.7-13.9 61.1-1.3 5.6-2.8 11.2-4.2 16.8-11 4.6-22.2 8.6-34.3 9.2-7.4.3-14.7-.8-21.8-1.9-14.7-2.3-29.5-2.4-44.2-3.7-18.7-1.6-36.9-5.2-54.8-10.5-9.6-2.8-18.8-6.8-28.6-9.3 5.3 3.4 10.5 7.1 15.8 10.4 1.7 1 3.1.3 4.6-.6 3.3-1.8 5.4-.9 5.3 2.7-.2 4.8 2.8 6.8 6 8.9 7.9 5.2 16.4 9.5 23.8 15.5 5.8 5.1 13.1 7.8 19.5 11.7 1 .6 2.1 1 3 1.8.9.9 2.1 1.9 1.7 3.3-.4 1.4-1.9.9-3 1.1-6.8.9-7.5 1.9-6.9 8.5.4 4.2.2 8.3-2.5 11.8-2.6 1-3.9-1.2-5.3-2.5-3.6-3.3-6.8-7.1-10.9-9.9-16-14.6-31.2-30-47-44.8-9.3-8.6-18.3-17.5-27.2-26.4-5.6-5.5-4.9-8.4 2.6-10.7 2.7-.8 5-4 8.3-1.7.6 1.1 1.2 2.1 1.9 3.2z"/>
|
||||||
|
<path d="M819.9 734.3c-2.5 1.4-4.5-.1-6.3-1.3-3.1-2.1-6.6-3.3-10-4.5-9.4-3.4-19.7.5-23.8 9.9-1.7 4-2.7 8.9-.3 13.4 4.5 8.9 5.3 18.6 6.6 28.3.3 2.7 1 4.8 3.3 6.8 3.4 3 2.4 7.8 2.5 11.6.1 7 3 12.8 5.8 18.7 3.1 6.4 6.3 12.7 9.7 19 1.2 2.2 2.5 4.2 4.5 5.8 2.3 1.9 4 4.3 4.2 7.6.1 2.2-.5 3.6-3 3.4-2.3.6-3.8-1-5.2-2.2-10-8.2-20.7-15.6-31-23.5-1.1-.8-2.2-2.2-3.9-1.3 2.4 2.2 2.4 11 0 13.3-.5.4-1 1-1.7.6-.8-.5-.9-1.3-1.2-2.1-.3-1 .8-2.2 0-2.8-2.2-1.8-2.9-2.7-1.9-6.6 1.2-4.5.4-7.3-4.3-8.5-1.7 1.3-1 5.4-3.2 4.8-2.9-.8-1.5-4.2-1.4-6.5 0-.5.1-1 0-1.5-.4-.1-.5.1-.7.5-.7 1.9-.6 5.1-3.3 4.6-2.9-.5-2.2-3.6-1.9-5.9.1-1 .4-1.9.2-3-1.9 1.3-.4 5.6-3.6 4.8-2.7-.7-2-3.8-1.9-6.1 0-.8.3-1.6 0-2.5-.9.6-.6 1.7-1 2.5-.4.9-.9 1.9-2.1 1.8-1.2-.1-1.7-1.1-1.8-2.1-.5-2.8-.5-5.6 1.4-8.1 1.9-1.5.2-2.5-.5-3.7-4.1-6.2-9.1-11.9-12.3-18.7-1-2.1-2-4.2-1.3-6.7.1-.5.6-1.1.4-1.4-2.8-5.8.8-8.2 5.1-10.6 2.2-1.2 4-3.1 5-5.4 1-2.5.7-4.7-3.5-3.9 3.2.8 4.6 2.4 2.7 4.9-3.1 3.9-6.6 7.4-12.2 7.3-2.1-2.8-3.8-5.8-5.1-9 .6-4.5 5.1-5.7 7-8.6 0 0-.3.4-.7.7-1.6 1-2.8 3.9-4.8 2.6-2.3-1.5-.5-4 .5-5.7 1.5-2.7 2-5.5 1.6-8.6 1-3.2 1.6-6.5 1.4-9.8v-1c.7-11.1 17.2-28 28-29 2.4 1.9-.9 4.7 1.3 6.9 2.4-1.7 1-5 2.9-6.8 5.6.5 10.4 3.8 16 4.4 6.4 2.6 11.4 7.4 16.9 11.2 8.5 6 16.5 12.9 24.6 19.4.8.9 1.5 1.8 2.3 2.6z" class="sti8"/>
|
||||||
|
<path fill="#cacacb" d="M1452 920.9c2.2-3.3 5.8-2.8 8.8-2.8 9.5-.2 19-.9 28.1-2.6 7.1-1.3 15.1-.7 21.7-5.4 4.2-2.9 9.9-1.6 14.6-4.1-4.6-1.2-9.3-1.5-13.8-2.9-3.5-1.1-7-6.8-4.9-9.7 2.1-2.8 3.8-5.8 5.6-8.7 1.2-2 3.1-1.6 4.9-1.7 29.8-.1 59.6 1.9 89.3.9 10.9-.4 22-.3 31.9-6.1 9.5-5.5 18.8-11.2 28.3-16.8 5.3-3.1 10.8-5.9 16.6-8 3.3-1.2 6.2-.6 9.1.7 3.2 1.5 4.5 3.7 3.2 7.2-4.1 11.1-8.6 21.9-14.3 32.3-5.7 10.5-14.7 14.7-26 15.7-18.8 1.7-37.8 2.1-56.7 3.1-20.6 1.1-41.1 2-61.7 3.1-21.2 1-42.3 2.9-63.3 5-5.8.6-11.6-.2-17.3 1.6-1.3.7-2.8.1-4.1-.8z"/>
|
||||||
|
<path fill="#aeb0b4" d="M1259.1 1143.7c-8.5-5.5-17.1-10.9-25.6-16.4-3.2-2.1-7-3.8-4.4-8.9.5-1.1-.2-2.3-1.4-2.9-1.5-.8-2.1.5-2.7 1.4-.9 1.6-2 2.8-3.9 1.6-6.5-4.1-12.9-8.2-19.3-12.3-.8-.5-1.6-1.3-1.1-2.9 6.5.6 12.2 3.7 18.3 5.8 22.4 7.8 45.2 13.4 68.9 15 20.2 1.3 40.3 3.7 60.4 5.4 11.3 1 23.1-.5 33-7.3 2.5-1.8 4.5.5 6.6-.2-3.8 16.3-7.6 32.7-11.3 49-.2.9-.3 1.9-.4 2.9-2 3.4-.7 7.8-3 11.2-2.1-.9-4.2-.5-6.4-.1-4.4.7-8.8 1.1-13.3 1.1-12.8 0-23.1-6.9-34.2-11.4-10-4.1-19.5-9.2-29.3-13.8-10.7-5.2-20.8-11.3-30.9-17.2z"/>
|
||||||
|
<path d="M744.9 803.1c-.6 3-1.5 6.1-.3 9.4 2.1-.8 1-2.6 1.4-3.8.4-1.2.3-3.1 2-2.8 1.6.3 2.2 2 1.6 3.7-.9 2.6-1.1 5.1.6 8.5.7-2.5 1-4.1 1.5-5.7.4-1-.4-3.2 1.8-2.8 1.6.3 1.3 2.1 1.4 3.4.2 2.7-2.2 5.4 0 8.4 2.2-1.2 1.8-3.3 2-5.1.1-1.4.3-3 2-2.8 2 .2 2 2 1.7 3.5-.6 2.4-1.3 4.7-.2 7.7.5-1.8.8-3 1.2-4.2.5-1.3-.2-3.5 1.7-3.8 1.4-.2 1.9 2.4 2.5 2.5 7.8 1.8 2.8 7 3 10.7v3.9c1.5 0 .7-1.5 2-1.9v7c2.5-3 2.5-6.5 3-9.8.4-2.2-1.9-.9-2.4-1.3-1.1-1 .2-2.5.6-3.6.8-2 1.9-.5 2.7.1 8 5.9 15.9 11.9 23.8 17.9 4.8 3.6 9.5 7.2 14.2 10.8 8.2 6.6 16.6 13.1 24.7 19.9 12.6 10.5 25.3 20.8 37.5 31.8 9.5 8.5 19.4 16.6 29 24.9 9.8 8.4 19.2 17.3 29.3 25.3 6.9 5.6 12.1 13.2 20.4 17.2 7 3.2 11.7 9.3 17.2 14.4 3.6 3.8 5.6 9 10.1 12.1 1 .7 1.7 1.8 1 3-.8 1.5-2.3 1-3.5.5-2.5-1.1-4.7-2.8-7.3-3.8-.7-.2-.4.5-.4.5 3.9.9 4.9 3.5 4.3 7.2-2.2 1.2-3.3-.8-4.6-1.8-8-6.6-15.8-13.6-23.5-20.5-1.1-1-2.2-2-3.6-2.5-8.6-6.6-16.3-14.2-24.2-21.5-20.4-18.8-41.3-37-62.1-55.4-13-11.5-26.5-22.2-39.8-33.2-1.5-1.2-2.8-2-4.5-.7-2.5 1.2-1.4 3.6-1.7 5.5-.7 3.9-1.5 4.4-4.7 2.2-1.8-1.2-3.5-2.5-5.2-3.7-10.3-8.1-19.6-17.5-29.5-26-2.4-2-4.1-4.4-3.2-7.4.1-.5 0-.6-.1-.7 0 0-.1.1 0 .2.4 3.3-.9 3.2-3.4 1.9-5.7-3-6.4-7.8-5.4-12.7 0-1.4-1.1-.5-.4-.8.2-.1.4 0 .3.3-.5 2 1.2 4.8-1.1 5.8-2.2 1-3.8-1.4-5.5-2.7-14.6-12.3-29.8-24-44.7-35.9-2.7-2.1-4.9-5-8.2-6.3-3.6-3.9-7.2-7.8-9.1-13 3.1-.4 4.3 1.5 4.9 3.8.1-.3 0-.9-.2-1.5-.5-1.6-1-3.3.5-4.6 1.7-1.3 3.5-.4 5.1.6 5.7 3.3 11.7 6 17.2 9.7 5 3.1 9.3 7.1 14.6 9.9 1.8 1 2.4 3.7 5.6 3.5 1.6-.1 1.4 3 1.5 5 .3-1.5 1-2.4 2.3-2.8 1.7.1 2.4 1 2.6 2.4z" class="sti11"/>
|
||||||
|
<path fill="#6b6e72" d="m744.9 803.1-1.9-1.9c-4-3.2-9-5.3-12.1-9.7-.3-.4-.5-.9-1.1-.6-5.1 2-3.1-2.7-4.3-4.4-1 .5-1.2 2.8-2.9 1.9-3-1.6-1.2-4.8-2-7-.9 1.5.8 4.4-2.5 4.8l-17.1-9.3c-1.3-.7-2.7-2.1-4.1-1.2-1.7 1.1.1 2.7.1 4.1 0 .5-.1 1-.2 1.6-2.8-.3-3.4-3.6-5.9-4.1-1.5-2.2-2.1-5-4.1-6.9-10.3-20.5-9.4-40.3 5.7-58.1 15.2-17.9 35.4-23.8 58.4-20.4 8.9 1.3 17 5.4 25 9.5-5.8.8-10.9-1.3-15.8-4.2-1.5 0-2.9-.3-4.4 0-11.6 1.9-16.4 12.1-23.4 19.6-2.6 2.8-4 6.8-3.5 11.1.5 3.4-.3 6.6-2 9.6-2.3.4-3.3-2.1-5.7-2.6-.4 6.6-6.2 10.4-7.8 15.8 1.3-2.9 3.3-6.1 5.5-9.1 1.2-1.6 2.5-3.5 4.9-2.1 2.1 1.2 2.2 3.2 1.1 5.2-1.5 2.8-2 6-2.8 9-.5 1.8-1.4 3.3-3.1 4.3 1.5-.1 1.9-2.9 4-1.8 2.4 2.6 4.3 5.5 5 9-1.2 3.7 1.8 6.1 2.9 9-.1 4.8 2.3 8.7 5 12 3.6 4.4 5.8 9.8 10.1 13.8 1.1.8 3.1 3.5-1 3.1z"/>
|
||||||
|
<path d="M888 1012c-.6-1.4-7.8-1.8-.6-4.4 1.9-.7 1.5-2.7 1.6-4.3.2-4.6 2.3-6.2 6.7-4.9 4.6 1.5 8.8 4 12.3 7.2 11.3 10.4 22.5 21 33.7 31.6 1.8 1.7 3.3 4.1 6.3 2 1.4-.9 2.2.2 2.9 1 4.1 5.6 8.8 10.7 12.9 16.4 8.8 11.4 17.9 22.5 27.4 33.3 5.5 6.2 11.1 12.3 17 18.1 1 1 2.2 2.1 1.8 3.8-16 2.1-27.5-6.8-38.7-16.1-21.2-17.8-40-37.9-59-57.9-8.2-8.6-16.2-17.2-24.3-25.8z" class="sti13"/>
|
||||||
|
<path fill="#9c9ea3" d="M1010 1111.8c-10.9-11.3-21.7-22.7-31.6-34.9-5.3-6.5-10.9-12.7-15.5-19.8 2.3-1 3.4.9 4.5 2.1 9.6 10.2 20.1 19.4 30.3 29.1 41.6 39.3 84.6 76.7 134.2 105.9 6.9 4.1 14.2 7.5 21.1 11.5 4.4 2.6 7.7 5.6 8.4 11.1.5-1.9-2-3.3-.6-4.6 1.7-1.5 3.5 0 5 .8 3.1 1.8 7.1 2.3 9 5.8-3.2 2-5.1 5.9-9.1 7-42-19.8-80-45.6-114.9-76.1-13.9-12-27.5-24.8-40.8-37.9z"/>
|
||||||
|
<path fill="#6e7177" d="M1326.8 1270.2c-11.2-4.1-20.1-11.5-28.7-19.4-2.2-2-4.4-4.1-7-5.6-11.2-6.3-19.8-16-30.7-22.7-.3-.2-.5-.7-.4-1.7 4.1 2.4 8 5 12.3 7 17.5 8.6 34 18.9 51.6 27.2 3.9 1.8 6.4 1.6 9.3-1.9 5.5-6.5 12.6-10.8 21-12.7 8.2-1.9 13.2.2 18 7 2.6 3.7 4.7 7.6 6.5 11.7 1.4 4.9 3.5 9.6 3.1 14.9-6.1.2-11.6 2.2-16.7 5.7-1.7 1.1-3.8.2-5.7-.8-6.2-3.4-12.7-6.3-18.7-10.2-2.2-1.4-4.6-2.3-6.7 0-2 2.4-5.1-.8-7.2 1.5z"/>
|
||||||
|
<path fill="#4c4a4c" d="M1326.8 1270.2c-.1-2.2-1.2-5.9 3-2.1 1.2 1.1 2.7 1.1 3.5-.2 2.9-5 6.2-1.8 8.7-.1 6.2 4.2 13.1 6.9 19.4 10.8 1.8 1.1 3.9.6 5.5-.9 4.3-4.2 9.2-5.4 15-3.6.4 3.1.9 6.3-.8 9.2-4-4.9-9.9-4.9-13.9.1-2.6 3.2-1.7 5.5 2.2 6.3 1.9.3 4-.3 5.6 1.4-7.3 5.7-15.4 4-23.4 2.6-4.6-.8-9-2.4-13.4-3.7-4.8-3.9-8.2-8.4-9.1-14.8-.3-1.8-1.5-3.4-2.3-5z"/>
|
||||||
|
<path fill="#b5b7ba" d="M800 879c-3.4.5-6.5 1.7-9.1 3.9-4.2-3.8-8-8-12-11.9-13-12.3-25.6-25-38.8-37.1-1.1 1.2-2.1 2-3.4.1-7.9-12-17.8-22.4-27.5-33-.2-.2-.2-.6-.2-1 2.1-1 3.5.6 4.8 1.7 15.5 12.4 30.8 25.3 45.6 38.5 2.1 1.9 4.6 3.3 6.5 5.3 1.8 1.9 4.3 3.4 3.7 6.6 2.4-1.1 4.2.3 5.6 1.8 5.1 5.3 11.1 9.5 16 14.9 2.1 2.3 4.5 4.4 7.1 6.2 1 1.3 2.4 2.2 1.7 4z"/>
|
||||||
|
<path fill="#18191a" d="M786.1 1016.1c1.6-.2 3.3-.3 4.9-.5 10.8-1.4 12-.7 16.2 9.3.3.8 1 1.6.8 2.3-1.3 5.2-.4 10 1.9 14.7-1 1.3-.8 2.8-1 4.3-.5 3.2-2.2 5.7-5.3 6.6-3.4 1-6.3-.2-8.4-2.9-2.1-2.7-3.3-5.7-4.1-9-1.3-1.6.2-2.4 1-3.3 2.1-2.4 1.5-4.2-1.1-5.5-3-1.5-4.9-3.9-6.6-6.6-2.5-3.8-2-6.1 1.7-9.4z"/>
|
||||||
|
<path fill="#161617" d="M759 1020c2.2-1 4.6-1 6.9-1.1 4.7-.1 9.9-2.3 13.5 2.2 4.2 5.4 7.9 11.2 6.4 18.6-.6 2.8.3 5.6-.7 8.3-.3 4.1-1.6 7.6-5.7 9.1-2.8 1-5.5.7-7.5-2-1-1.8-.1-3.6.3-5.3 1.5-7.4-.7-16.1-5.5-21.2-.4 3.2 0 6.2-.3 9.1-.3 2.7-1.2 4.6-4.4 3.4-4.3-.9-5.7-4.3-7-7.9l-.2-.4c4.2-3.3 3-8.5 4.2-12.8z"/>
|
||||||
|
<path fill="#1b1b1c" d="M775 874c-.9 3.1-3.2 4.7-6.2 4.7-5.5 0-6.4-4.9-8.7-9.2-.5 2.6-.7 4.5-1.2 6.3-.8 2.7-2.2 4.8-5.3 5.3-3.2.5-5.6-.6-7.1-3.4-3.3-6-4.5-12.5-3.1-19.2 1.3-6.2 6.4-7.6 11.5-3.5 3.5-2.2 5.5.1 7.7 2.3 3.5 3.5 7.1 7 10.5 10.6 1.7 1.8 3.4 3.5 1.9 6.1z"/>
|
||||||
|
<path fill="#6f7275" d="M797.9 876.1c-7.4-4.9-12.8-11.9-19.6-17.6-4.8-4-9.8-7.9-14.2-12.5-4.7-5-10.3-9.2-15.5-13.6-5.2-4.4-10.5-8.6-15.6-13.1s-10.3-8.9-15.8-12.9c-2.8-2-5-4.8-8.3-6.3-3-3.4-5.9-6.7-8.9-10.1 1.8-1.9 2.6.3 3.6 1.1 17.6 13.9 35.4 27.5 52.4 42.2.6.5 1.4.8 2.5 1.4 1.3-2.5.2-5.1 1.2-7.5-.9 6.9 1.1 12.2 7.9 15 1.3-1 0-2.8 1-4 .1.2.3.5.3.6-.8 4.3 1.8 6.8 4.7 9.3 9.5 8.3 18.9 16.7 28.4 25 .3 3.2-1.2 4.1-4.1 3z"/>
|
||||||
|
<path fill="#bcbcbd" d="M809.9 1041.9c-6.3-4.8-3.1-11.1-2.7-17 2.6-1.4 3.9-6.7 2.2-9.1-.5-.8-1.7-1.2-1.5-2.6 3.7-.7 6.5.2 9.8 2.6 5.6 4.1 10.3 10.2 18.2 10.2-.2 2.3 1.6 5.3-1.3 6.7-2.7 1.3-5.1-.6-7.2-2.2-4.9-3.4-8.1-2.2-9.6 3.5-.5 1.8-1 3.5-1.5 5.2-1.2 4.1-3.3 5-6.4 2.7z"/>
|
||||||
|
<path fill="#646264" d="M775 874c0-1.7-.6-3.1-1.9-4.4-5.2-4.9-10.2-9.9-15.3-14.9-1 1.1 1.5 2.6-.3 3.7-1.5-.6-1.9-2-2.5-3.4 2.6-2.4 1-4.2-.8-6-4.8-5-9.5-10-14.2-15 4.8 1.7 7.7 5.8 11.2 9.1 12.8 11.8 25.2 24.1 37.7 36.2 1 1 2.4 1.9 2 3.7-3 2.5-3.8-1.8-5.9-1.9-2.2-2.4-4.6-4.7-6.7-7.2-1.3-1.7-2.3-1.5-3.3.1z"/>
|
||||||
|
<path fill="#676b70" d="M785.1 1048.1c-.9-4.6.3-9.2-.7-13.9-.9-4.3-3-7.6-5-11.2-3.1-5.5-8.7-3.5-13.5-4.1 6.7-.9 13.4-1.8 20.2-2.8-2.9 5.6-.9 11.8 4.7 14.5 5.7 2.7 5.9 5.1.9 9-.3.3-.4.9-.6 1.3-3.7-1.9-5.6-1.1-5.3 3.4.1 1.3.2 2.6-.7 3.8z"/>
|
||||||
|
<path fill="#3f4041" d="M761.9 1041.1c2.5-.1 3.3-1.4 3.2-3.9-.2-3.7 0-7.5 0-11.6 8.8 5.6 11.2 16.6 6.9 29.6-3-2.4-4.3-5.9-5-9.4-.7-3.1-2.4-4.3-5.1-4.7z"/>
|
||||||
|
<path fill="#211e1d" d="M1375 1291c-2 0-4 0-5.9.1-2.2.1-4-.7-4.7-2.8-.7-2-.2-3.8 1.3-5.5 2.5-2.9 5.5-4.5 9.4-4.8 4.1-.4 6.4.8 6.2 5.3-1 3.5-3.3 5.9-6.3 7.7z"/>
|
||||||
|
<path fill="#4a4c4e" d="M759 1020c0 .5 0 1 .1 1.5 1.1 4.8 2.5 9.7-4.2 11.7-2.1-3.1-2.2-6.7-3.1-10.1.6-5.2 4.6-2.5 7.2-3.1z"/>
|
||||||
|
<path fill="#636264" d="M1298.2 1277.8c1-1.6 2.7-2.4 4.2-1.9 5.8 2 11.7 4.2 16.6 8.1-7.3-.9-13.8-4.5-20.8-6.2z"/>
|
||||||
|
<path d="M686.9 770.1c2.7 1.5 3.4 4.2 4.1 6.9-2.3-1.7-3.2-4.3-4.1-6.9z" class="sti11"/>
|
||||||
|
<path d="M944 980c5.1 2 8.1 6.6 12.2 9.8 6.5 5.1 12.5 10.7 18.8 16.1 5.2 1.8 8.6 6.2 12.6 9.6 15.4 13.2 30.7 26.5 46.2 39.7 26.3 22.4 53.8 43.6 82 63.6 6.6 4.7 13.6 9 20.6 13.1 3 1.8 6.9 2.9 7.5 7.3-2.4 5.2-3.8 10.8-7.5 15.3-1.8.6-3.2-.3-4.7-1.2-20.5-12.4-40.3-25.9-59.3-40.5-22.2-17.8-43.4-36.8-65-55.3-1.8-1.5-3.3-3.3-5.1-4.8-.9-.8-1.8-2.1-2.9-1.8-5.4 1.7-6.3-1.8-6.8-5.7-.1-.5-.2-1.2-.6-1.3-5.5-1.2-7.9-6.4-11.9-9.4-4.6-3.5-9.9-6.6-13.6-11.4-.6-.8-.8-2.2-2-1.9-5 1.1-5.4-2.5-6.1-5.8-.1-.7-.4-1.3-1.1-2.2-1.8 2.1-3.9 3.4-6.3.7-2-2.2-.5-5.2-1.7-7.6-3.1 5.5-2.8 6.4 2.7 8.8.9.4 1.9.9 2.2 1.9 2.3 8 9.4 12.2 14.6 17.8 3.5 3.8 7.4 7.2 11.4 10.5 1.9 1.6 3.8 3.2 4.5 5.8.2 3.2-1.3 3.8-4 2.5-.9-.4-1.6-1.1-2.4-1.8-7.9-6.8-16.3-12.9-25.5-18-3.1-1.7-6.3-2.8-9.7-3.6-2.2-.3-3.1-2.8-5.3-3.1-14.8-18-29.9-35.7-45.5-53-3.6-4-2.6-9.4-4.6-13.9 1.8-.9 2.8.6 3.8 1.5 4.4 4.2 9.3 7.8 13.5 12.3.3.3.7.6 1 1 1.2 1.1 2 2.6 3.7 3.1 1.5-.8.7-2.3 1.2-3.4.5-1 .7-2.4 2.4-1.3 1.5 2.5.2 5.6 1.8 8 .9 2.6 2.3 4.8 5 5.9 1.1.5 2.7-.1 3.3 1.5-.3 1.8.1 3.3 2.1 4.5.3-3.6 1.6-7.2-2-10 .7-6.6 3.7-8.3 9.3-5.8 3.9 1.7 7.7 3.6 10.8 6.7 1.3-1.7-.4-3 .4-4.2z" class="sti13"/>
|
||||||
|
<path fill="#393637" d="M1136 1154.1c2.4-5 4.7-9.9 7.1-14.9 1.6-4.7 5.1-6.6 9.4-4.6 5.4 2.6 9.7 6.8 13.4 11.5 1.2 1.5 1.4 3.3.2 5-2.1 5.9-5.2 11.5-6 17.8.6 4.3-.9 8.3-1.6 12.5-.3 3.9-1.2 7.8-1.3 11.8 0 3.7 1.3 6.1 4.6 8 5.5 3.1 11.2 5.7 16.4 9.2 1.5 1 4.5 1.7 2.3 4.6l-5.7 4.2c-4.4-2.2-8.8-4.5-13.6-6.9-.2 3.1 2.4 4.7 2.4 8.3-1.9-1.7-4.8-.6-3.6-5.1.6-2.1-2-5.3-5-6.9-4.1-2.1-7.9-5.2-12.2-6.7-8-2.7-13.9-8.8-21.1-12.7-7.7-4.2-14.9-9.3-22.2-14.3-7.3-5-14.5-10.1-21.5-15.4-28.2-21.3-54.3-44.9-80.1-69.1-11.8-11-23.4-22.2-35.1-33.2-5-6-10-12-15-17.9-3.3-4.1-6.6-8.2-9.9-12.2.3-.6.2-1.9 1.5-.8 1.1 1 2.3 1.9 3.4 2.8 5.2 2.8 9.2 7.2 13.3 11.2 15.9 15.6 32.5 30.5 49 45.5 30.2 27.4 61.2 53.9 94.8 77.1 8.6 6 17.4 11.7 26.2 17.4 1.3.9 2.6 2 4.6 2.1 0-5.5 1.3-10.7.9-16 1.2-4.3.9-9 4.4-12.3z"/>
|
||||||
|
<path d="M905 975c-5.7-5-11.4-10-17.1-14.9-13.7-12.9-27.3-25.8-41-38.7-15.3-14.5-31-28.6-47-42.3-.7-1-1.4-2-2.1-2.9 2.2.2 3.4-1 4-3 2.8 1.2 5 3.5 7.9 5.8.4-4.5.2-8.5 2.1-12.3 1.5 1 1 2.4 1.3 3.5 1.8 2.7-.7 5.5.3 8.2.9 0 .9-.8 1-1.3.7-2 1-4.9 3.8-4.1 2.6.7 1.8 3.6 1.5 5.7-.2 2-.9 3.9 0 5.9 1.3-.9.8-2.3 1.2-3.3.6-1.5.9-3.7 3-3.4 2.4.4 2 2.7 2 4.5.1 2.6-1.5 5.2-.2 8.3 1.2-1.7 1-3.6 1.8-5.1.5-.9 1-1.8 2.2-1.8 1.5 0 1.8 1.2 2.1 2.4.4 1.8.1 3.7-.3 5.5-.8 3.1.3 5.5 2.8 7.4 2.4 1.8 3.9 5.2 5.9 6.4 5.2 3.1 9.8 6.3 11.7 12.3 4.3-.4 5.9 2 6.4 5.8.1.9 1 .5 1.6.2.6-.2 1.3-.1 1.9 0 3.8.5-.3 6.8 4.6 6.4 5.1-.4 3.9 3.9 4.9 6.5 4.5-1.9 5.1-1.3 6.1 6.9 1.8-1.2 3.7-2.7 5.4-.2 1.3 1.9 1 4.2 1.4 6.7 1.4-1.1 2.4-3.1 4.5-1.7 3 2 1.2 5.2 1.9 8.2 1.5-.8 1.5-3.2 3.5-3 1.6.2 2.7 1.3 3.8 2.3 4.7 4.3 9.6 8.5 8.1 16 0 1.1.1 2.3-1 3.1z" class="sti30"/>
|
||||||
|
<path fill="#9ea1a5" d="M1166.1 1151c-.7-5.6-11-15.7-16.3-16.2-3.3-.3-5 2-6.7 4.3-.3-2.4-2.4-3.1-4-4.1-15-8.9-29.4-18.6-43.2-29.2-16.4-12.6-33.1-24.8-48.9-38.2-16.3-13.8-32.5-27.7-48.9-41.4-7.9-6.6-15.4-13.5-23-20.3.2-3.6-3.2-5.5-4.4-8.8 4.4 0 6.9 4.1 11.1 4-5.3-3.7-7.8-9.6-11.7-14.3 2.2-1.3 3.4.5 4.7 1.6 21.8 17.7 42.7 36.6 63.9 55.1 17.2 15 34.6 29.8 52.4 44 18.2 14.3 37.5 27.1 58.3 37.5l1.8.9c17 11.1 35.5 19.1 54.4 25.9 12.8 4.6 25.8 8.8 39.1 12.2 3.9 1 7.8 2 11.3 3.8 5.9 3.4 9.5 9.4 14.8 13.4 4.9 2.7 9.2 6.1 11.2 11.7-13.6-1.3-26.3-6-39.1-10.4-16-5.4-31.7-11.6-47.1-18.4-9-4-17.6-9-26.9-12.4-.8-.4-1.8-.4-2.8-.7z"/>
|
||||||
|
<path fill="#5d5c5f" d="M1282.1 1192.9c-3.7-3.9-7.4-7.8-11.2-11.7 1.2-4.1 2.7-8.2 1.8-12.6-1.3-6.6 2-10.2 8.8-9.4.6.1 1.2.6 2.1-.3-7.5-6.3-17.4-8.5-24.5-15.3 4 .6 6.8 3.4 10.2 5.1 9.4 4.8 18.7 9.8 28.6 13.7 6 2.4 11.7 6 17.7 8.8 5.6 2.6 11.2 5.1 16.7 7.8 11.5 5.7 23.3 6.9 35.8 4 1.5-.4 4.8-2.6 5.1 1.8-2.8 11.5-5.4 22.9-8.3 34.4-3.6 14.6-11.9 18.4-25.7 11.8-3.7-1.8-6.7-4.3-9.6-7.1-10.3-9.7-20.6-19.3-30.8-29.1-1.7-1.6-3.2-2.2-5.2-1-4.2 2.6-8 2-11.5-.9z"/>
|
||||||
|
<path fill="#acafb2" d="M1180.6 1214.8c1-2.5-1.4-2.6-2.6-3.3-5.9-3.4-11.8-6.7-17.8-9.8-2.8-1.5-4.1-3.4-4.1-6.6 0-4.7.3-9.3 1-13.9 1-1.3 2.1-.7 3.1-.2 12.1 6.5 24.2 12.9 36.3 19.4.3.2.4.5.6.8-5.5 4.5-11 9.1-16.5 13.6z"/>
|
||||||
|
<path fill="#5b5d61" d="M1197 1201.2c-10.2-3.3-18.9-9.6-28.5-14.2-3.9-1.8-7.6-3.9-11.5-5.9 1.4-4 .9-8.5 3.1-12.3 14 7.3 27.9 14.8 41.9 21.9 3.9 2 3.3 3.3.6 5.5-1.9 1.6-3.7 3.3-5.6 5z"/>
|
||||||
|
<path fill="#888b8f" d="M1261.4 1201.2c2.6 1.5 5.8 2.2 7.9 4.7 1 1.3.6 2.6-.5 3.5-1.7 1.6-2 4.9-5.4 4.4-1.1-.2-2.2-.6-3.3-.8-2.3-.5-6 0-5.8-3 .2-3.6 2.8-6.6 6-8.6.3-.1.7-.1 1.1-.2z"/>
|
||||||
|
<path fill="#fefefe" d="M1288.9 936c4.5 2.5 8.8 5.4 13.5 7.5 3.6 1.6 4 2.9 1.5 6-10.1 12.6-20 25.3-29.9 38-20.5 26.2-40.9 52.4-61.4 78.6-1 1.3-1.7 3-3.7 2.9-29.6-28.4-59.9-55.9-90.9-82.8-1.1-1-2.1-2.1-3.2-3.1 1-4.9-.9-8.8-4.3-12.1-2.7-2.7-5.5-5.2-9.2-8.7 9.8-2.2 18.3-4.1 26.8-6 8.1-1.8 16.2-3.5 24.2-5.5 4.1-1 7.4 0 10.7 2.3 7.1 5.2 14.2 10.4 21.3 15.5 2.3 1.6 4.7 3.1 7.7 3.2 5 .2 7.3-2.5 5.7-7.2-2.3-6.6-4.9-13.1-9.7-18.4-.7-.8-2.2-1.6-1.3-2.8.4-.6 2-.9 2.7-.6 4.7 2 8.3 2 11.9-2.7 1.3-1.7 5.6-1.2 8.6-1.3 22-1.2 44-2.8 65.9-5 4.6-.1 9 .2 13.1 2.2z"/>
|
||||||
|
<path fill="#75787c" d="M1256 1167.8c-8.4-1-16.5-3.5-24.4-6.2-7.8-2.7-15.9-4.7-23.6-7.5-11.6-4.3-22.9-9.1-34.2-14.3-12.1-5.6-23.3-12.6-34.8-19-19.4-10.8-37.9-23.2-55-37.4-13.4-11.1-26.9-22-40.1-33.3-10-8.5-19.4-17.6-29.3-26.1-9.3-8-18-16.6-28.1-23.6-4.3-3-8-7-11.9-10.5-1.3-1.2-2.3-2.9-4.4-3-5.4-5-10.7-9.9-16.1-14.8-1.5-2.9-4.3-4.6-6.3-7-1-1.2-2.1-2.4-1.3-4 .8-1.8 2.7-1.3 4-1 3.7.8 7.4 1.2 10.6 3.7 6.2 4.8 14.5 5.7 21 9.5 13.5 7.8 28.2 13.2 41.3 21.6 17.8 11.3 36.4 21.1 53.7 33 8.6 5.9 17.9 10.3 28.1 13.3 8.8 2.6 16.8 7.8 24.5 12.9 13 8.8 26 17.7 39 26.6 2.9 2 5.8 2.2 8.8.5 1.9-1.1 3.7-2.2 5.6-3.2 3.9-2 7.2-.3 7.6 3.8.1 1.1.9 2.1 1.3 3.2-4.1-.1-7.2 3-11 3.9-3.1.8-3.2 3.4-.6 6.1 15.4 15.4 31.1 30.4 47.1 45.1 6.1 5.6 11.8 11.7 17.7 17.5 3.5 3.5 7.2 6.9 10.8 10.2z"/>
|
||||||
|
<path fill="#b6b8bc" d="M723.1 756c-1.3 1.2-2.7 2.4-4.1 3.7-.8.7-1.7 1.3-2.5.2s-.6-3 .4-3c4.7.1 3.6-3.9 4.7-6.2 1.1-2.4 1.8-5 2.8-7.4.7-1.6.1-2.5-1.1-3.4-1.5-1.1-2.1.4-2.7 1.2-2.3 2.8-4.1 6-5.8 9.2-.8 1.5-1 3.5-3.4 4.5.4-5.2 3.4-8.7 5.6-12.6 1.3-2.3 4.2-4.1 2.1-7.4-.5-.7.2-1.6.9-2.1 1-.8 1.8-.1 2.6.5 1.5 1.3 2.9 2.7 4.4 4 1.9 2.5.5 4.6-.6 6.9-.9 1.9-1.8 3.8-1.9 6.4 2.8-2.2 5.6-4.3 8.4-6.5.3.3.6.7.9 1-2.9 4.3-8.2 6.4-10.7 11z"/>
|
||||||
|
<path fill="#bcbdc0" d="M743.1 785.3c.2-3.3 1.6-6.5-1.7-9-.2-.2.2-1.7.6-2.2 3.4-3.7 7.7-6.2 11.9-8.8.6-.4 1.6-.2 1.7.5.1.7-.2 1.6-.7 2.3-2.1 3-5.1 5.6-6.2 8.9-1.1 3.3-3.5 5.5-5.6 8.3z"/>
|
||||||
|
<path fill="#bebfc2" d="M731 774.1c-2.3-2.6-7.4-4.3-2.9-9 3.1-1.8 6.8-2.9 9.3-5.7 1.2-1.3 3.3-2.6 2.3-4.5-1.3-2.5-3 1.1-5.7 0 2.1-2.2 3.4-4.8 6.7-3.5 3.4 1.4 1.9 4.1.9 6.3-1.9 4-5.6 6.1-9.2 8.1-2.2 1.2-2.8 2.3-.8 4.1 1.7 1.6 1.5 3-.6 4.2z"/>
|
||||||
|
<path fill="#bdbfc1" d="M736 778.5c.6-4.6 3.1-8.3 5.3-12.1.5-.9 3.2-2.2-.2-3.3-1.2-.4.2-1.7 1-2.1 2-1 4.1-1.8 6.6-2.3-4.2 6.7-8.7 13.1-12.7 19.8z"/>
|
||||||
|
<path fill="#c7c6c6" d="M755.8 697c1.5-3.4 2.9-1.6 4.4 0-.3 2.1-.4 4.2-.8 6.3-.2 1.2-.3 3-2.2 2.5-1.5-.5-3-1.4-2.5-3.5.3-1.8.7-3.6 1.1-5.3z"/>
|
||||||
|
<path fill="#cacbcc" d="M905 975c0-1.2-.3-2.4-.1-3.5 2-8.6-5.1-11.8-9.7-16.5-1.7-1.7-2.1.1-2.3 1.5-.2 1.3-.1 3.1-1.9 2.9-1.8-.2-1.9-2.1-2-3.6 0-.8 0-1.7.2-2.5.7-2 .5-4-1.5-4.6-2.2-.6-1.5 1.9-2.1 3.1-.2.5-.9 1.3-1.3 1.3-1.5-.2-1.4-1.6-1.6-2.7-.5-2.7 1.4-6.1-2.5-8.1-.4.8-.8 1.5-1.1 2.2-.4.8-.4 2.2-1.8 1.8-1-.3-1.4-1.4-1.4-2.4v-5c0-1.1-.5-2.1-1.5-2.4-1.5-.5-1.4.9-1.6 1.8-.3.9-.5 2.1-1.8 1.7-.9-.3-1.1-1.2-1.1-2-.1-1.5 0-3-.1-4.5-.1-1.3-.7-2.4-1.8-2.8-1.4-.5-1.4 1.1-1.9 1.8-1.8 2.4-2.6.6-2.9-.8-.4-1.8 0-3.7-.4-5.4-.3-1.2-1.2-3.4-2.8-.7-.5.8-.6 2.1-1.9 1.6-1-.4-1.1-1.6-1.1-2.6-.1-1.3 0-2.7-.4-3.9-.3-.9-1.2-2.7-2.4-1.6-4.2 4-3.8-.6-3.9-2.3-.5-4.5-4.5-6-6.9-8.8-.6-.7-1-.1-1.4.5-1.8 2.6-2.7.3-2.7-.9 0-3.1-1.6-5-4-6.5-4.5-2.8-6.5-6.3-4.5-11.7.5-1.4 1.2-3.5-.9-5.3-1.7 1.7-1.7 3.8-1.9 5.9-.2 1.2.3 3.2-1.5 3.1-1.5 0-2.5-1.7-2.4-3.3.1-2.1.6-4.2.9-6.4.2-1.7.8-3.5-.8-5.5-1.9 2.2-2 4.4-2.1 6.7-.1 1.1.4 2.8-1.1 2.9-1.6.1-2.6-1.3-2.8-2.9-.3-2.3.4-4.6.8-6.9.3-1.4 1.4-3.9-.8-4.2-2.3-.4-1.5 2.3-2.1 3.6-.7 1.6.3 4.8-2.6 4.3-2.7-.5-1.5-3.2-1.3-5 .2-2.1.8-4.2 1.1-6.3.8-2.9 2.3-2.3 4.1-.9 7.7 6.2 15.5 12.4 23.1 18.8 14.6 12.5 29.1 25 43.6 37.7 7.2 6.3 14.3 12.8 21.4 19.3 12.9 11.7 25.7 23.4 38.6 35.1.8 1.8 3.9 3.7 2.1 5.4-2.2 2-4.2-.9-5.6-2.5-3-3.5-7.5-4.1-11.3-5.8-2.2-1-4.1 3.2-5.2 5.9.8 1.9.5 3.6-1.1 5-1 .7-1.9.6-2.9 0-2.1-1-2-2.7-1.8-4.6.2-1.7.6-3.5-.2-5.3-1.6 1.1-1 3.7-3.3 3.9-3.8-2.4-.8-6.1-1.8-9-1.4-.9-2.9-3-3.9.6-.5 1.8-2.1 2.7-4.1 1.3z"/>
|
||||||
|
<path d="M718 786c2.3-2.3-.5-6.5 3.2-8.6 2 3.1-.3 7.1 1.5 10.2 2.2-1.2.3-5.2 2.8-4.7 2.6.5 1 3.7 1.5 5.7.1.6.3 1.2.5 2.2 2.3-2.7 4-5.3 4.8.6.4 2.5 4.5 3.4 6.6 5.6 1.3 1.4 3.2 2.3 4 4.2-3.2 1-1 4.6-2.9 6.3-1.7-1.1-.9-2.7-1.1-4.1-.2-1.7.7-4.2-1.6-4.8-2.3-.6-.7 3-3.1 3.5-.1-1.3-.3-2.7-.4-4-.1-1-.2-2.3-1.2-2.5-6.2-.9-9.4-6.8-14.6-9.6z" class="sti8"/>
|
||||||
|
<path d="M806.7 860.9c.9 4.6-.5 8-1.2 11.8-1.8-3.6-1.6-5.9 1.2-11.8z" class="sti30"/>
|
||||||
|
<path d="M695.1 777.8c-2.2-1.3-3.5-2.2-2.3-4.5 1.5.8 1.8 2.2 2.3 4.5z" class="sti11"/>
|
||||||
|
<path fill="#b0b2b6" d="M1132.9 1167c.2 5.2-1.2 10.2-.4 15.4.4 3.1-1.2 2.4-2.9 1.4-5.6-3.6-11.3-7-16.8-10.7-35-23.2-67.6-49.7-98.7-77.8-22.8-20.6-45.2-41.7-67.8-62.7-1.2-1.1-2.2-2.4-3.3-3.7 7.5.5 13.3 4.7 19.2 8.7 6.5 4.5 13.3 8.7 18.8 14.5 1.7 1.7 3.3 1.6 3.2-1.4 3.3-.7 5.3 1.4 7.3 3.4 7.8 7.9 16.3 15 24.2 22.7 4.1 4 8.6 7.7 12.8 11.5 4.1 3.6 7.2 9.2 13.2 10.6.8.2 1.5.8 1.9 1.5 2 3.6 5.6 5.2 8.5 7.6 3.2 2.8 5.8 6.2 9.9 7.8 1.3.5 2.3 2 2.6 3.5.5 2.9 2.3 2.8 4.4 2.2 2.9 1.5 5.6 3.1 6.1 6.7.2 1.4.9 1.9 2.4 1.6 6.3-1.4 5.8 7.2 10 7.4 6.4.4 7.4 4.4 8.2 10 3.6-3.9 6.4-2.1 9.5.2 7.6 5.7 15.4 11.1 23.8 15.6 1.9 1.1 3.1 2.3 3.9 4z"/>
|
||||||
|
<path fill="#757473" d="M1068.8 1122.2c-3 3.2-4.3 3.2-5.2-1.7-.4-2.5-1.8-6.7-6.8-4.4-1.9.9-2.8-1.4-2.7-3.1.2-3-2.2-5.1-3.9-5.1-4.3.1-4.9-2.7-6.5-5.4-.9-1.5-2.3-3.9-5.1-3.1-1.8.6-2.2-.8-2.9-2-1.6-2.8-3-5.9-7.1-6-1.3 0-1.3-1.7-1.9-2.6-1.6-2.4-2.9-5.3-6.5-5.3-1.5 0-2-1-2.2-2.2-.3-1.6-1.6-2.6-2.7-3.5-9.2-7.4-17.5-15.7-25.8-24-1.6-1.6-3.7-2.1-5.5-3.3-5.1-6.2-11.9-10.6-17.3-16.4-3.9-4.2-8.2-8.2-12.3-12.2-.7-.7-1.2-1.3-1-2.6.4-2.3.9-4.3-3.1-2.5-1.5.7-4.9-2.5-4.3-5.9.5-2.6 1.5-5 2.3-7.7 2.4 1.4 4 2.6 3 5.6-.8 2.2-.2 4.7 2.2 5.4 2.7.7 1.9-2.5 3-3.7 2.2 1.2 3.4 2.8 3.4 5.5 0 3.7.4 3.4 4.4 2.7 2.1-.4 3.3 1.7 3.7 3.7.5 2.7 1.3 4.1 4.6 3.3 2.6-.7 3.7 1.6 4.3 3.7.6 2.5 2.6 2.7 4.3 3.9 4.6 3.2 8.7 7.3 13.1 11 .5.5-.4 2.3 0 3.3.5 1.4 1.9 4 3.2 2.1 2-2.8 2.9-.5 3.7.2 23.5 21 47.8 41.3 71.8 61.8-1.8 1.5-2.3 3.5-2.6 5.7-.2 1.9.1 3.7-1.6 4.8z"/>
|
||||||
|
<path fill="#5d5f62" d="M1068.8 1122.2c.3-2.9.3-5.8 1-8.7.5-2.5 1.9-1.5 3.2-1.5 19.1 13.7 38.1 27.4 58.3 39.5 1.6.9 3.2 1.7 4.8 2.6-1 4.3-2.1 8.6-3.1 13-10.8-6.2-21.3-12.9-31.2-20.5-1.3-1-2.6-1.6-3.4.6-.3.9-.2 2.8-1.9 2.3-1.5-.5-2.3-1.9-2.2-3.6.2-2.8-.1-5.3-3.2-6.6-.3-.1-.7-.6-.8-.5-5.9 2.7-5.6-2.8-7.8-5.5-1.1-1.4-2.9-4.8-5.8-1.2-1.2 1.4-2.5-.2-2.3-1.2.8-4.7-3.4-6-5.6-8.7z"/>
|
||||||
|
<path fill="#77797c" d="M942.7 1010.4c-5.4-4.2-5.9-7.1-2.8-12.6.3-.5.5-1.5 1.2-1 1.3.9 3.2 1.9 2.5 3.8-1 3.1-.3 6.3-.9 9.8z"/>
|
||||||
|
<path fill="#7b7d80" d="M932.8 989.1c5.9 3.7 0 8.9 2.8 13.3-6.5-3.1-6.6-4.2-2.8-13.3z"/>
|
||||||
|
<path fill="#7c7e81" d="M922.9 988c.2-1.7 0-3.5 1.1-5 2.9.5 4.2 2 3.5 5.1-.5 2.2-.5 4.5-.8 7.2-2.7-1.9-6.2-2.9-3.8-7.3z"/>
|
||||||
|
<path d="M914.8 981.9c.8-1.1 1-2.4 1.2-3.7.1-1.2-.4-3.1 1.7-2.9 1.5.2 1.8 1.8 2.2 3 1.1 3.2-2.1 6.4.1 9.6-3.1-.8-5.6-2.1-5.2-6zM905 975c4.6.2 2.8-4.3 4.6-6.3 1.8.8 3.2 2 3.4 4.2-1.9 2.2-.1 5-1.5 7.6-3-1-4.8-3.2-6.5-5.5z" class="sti30"/>
|
||||||
|
<path fill="#b7b8bc" d="M1138.8 1155c1.4-4.6 3.2-9.1 5.7-13.2 1.7-2.9 3.8-3.5 6.6-1.6.3.2.6.3.9.5 12.5 7.7 13 10.3 4.8 26.2-1.6.9-2.9 0-4.1-.7-3.8-2.2-7.7-4.5-11.4-6.9-1.5-1.1-3.4-1.9-2.5-4.3z"/>
|
||||||
|
<path fill="#acaeb2" d="M1154.1 1184v14.2c-6.7-3.9-12.5-7.4-18.3-10.9-1.3-.8-.9-2.4-.9-3.7 0-4.5.2-8.9.3-13.4 1.4-2.8 3.4-1.3 5-.4 3.2 1.7 6.3 3.6 9.6 5.1 4 1.8 5.6 4.7 4.3 9.1z"/>
|
||||||
|
<path fill="#5f6063" d="M1154.1 1184c.5-4-1.3-6.4-5-8-3.3-1.4-6.3-3.5-9.6-5.2-1.3-.7-2.7-2.3-4.4-.7 1.2-5.1 2.4-10.1 3.7-15.2 4.9 5.5 11.9 8 18 11.7-1.8 5.7-1.4 11.7-2.7 17.4z"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" id="Layer10" x="0" y="0" style="opacity:1;z-index:1" viewBox="0 0 1920 1920">
|
||||||
|
<style>
|
||||||
|
.stj0{fill:#d4d4d4}.stj1{fill:#adafb3}.stj6{fill:#87898c}.stj8{fill:#c7c7c8}.stj12{fill:#a2a5a8}.stj13{fill:#4d4d4f}.stj16{fill:#6d7076}.stj26{fill:#75787d}
|
||||||
|
</style>
|
||||||
|
<g id="Group_2">
|
||||||
|
<path d="M735.1 1007.7c-8.7-1.6-17.1-1.3-26.1.3 9-1.6 17.3-1.9 26.1-.3-1.9-2.1-24.9-.4-26.7.7-5.2 3-10.3 6.1-13.3 11.6 3.1 3.5 3.4 7.8 3.5 12.1.1 3.3.1 6.7 1.5 9.8 3.6 7.9 4.9 16.5 7.4 24.7 2.8 8.9 4.7 18 8.5 26.5 1.6 3.7 3.9 6.1 8.1 6.2 1.7 0 3.4-.5 5-1.2 8-2 8.8-3.1 9.6-11.4 1.3-13.6.9-27.2 1.7-40.8.7-11.9 1.6-23.9-1.4-35.7-1.8-.7-3-1.5-3.9-2.5z" class="stj0"/>
|
||||||
|
<path d="M1143 1081c.5-.8.6-1.9.2-2.8-3.8-6.6-8.2-12.9-12.6-19.1-2.3-3.2-4-6.6-3.8-10.8-1.5 14.4-3 29.3-4.5 43.8 1.4-1.6.2-3.8 2.2-6.8 6 6.5 11.8 12.7 17.6 18.9.8-.3 1.3-.8 1.4-1.7-5.4-7.1-5.1-14.3-.5-21.5z" class="stj1"/>
|
||||||
|
<path fill="#d0d0d0" d="M1142 1104.1c.2-.4.4-.7.7-1.1 2.1-.4 3.8.8 5.7 1.6 9.8 3.9 20.6.3 26-8.7 5.9-9.8.5-21-10.8-22.4-5.5-.7-10.6.4-15.3 3.3-1.7 1-3.2 2.5-5.4 2.2-6.5-8.2-12.2-16.8-17.5-25.8-.7-1.3-.4-3.3-.3-4.9 1.4-14.8 1.8-29.8 3.2-44.6.6-6.5-.5-13.3 1.8-19.7 13.4 2 21.8 10.6 27.8 21.9 8 15.3 16 30.7 18.6 48.1 1.7 11.6 3.6 23.3 3.5 35.1 0 7.8-6.2 15.9-14.1 18.9-9.8 3.7-18.2 2.3-23.9-3.9z"/>
|
||||||
|
<path fill="#c3c3c3" d="M695 1020c2.6-.1 3.6 1.1 4.1 3.7 1.4 6.5 0 13.2 2.7 19.6 6.8 16.1 8.6 33.8 15.6 49.9 1.4 3.2 3.2 4.8 6.6 4.8.4 1.3-.6 1.8-1.4 2.3-1.4.9-2.9 1.7-4.1 2.8-4.9 4.3-8.2 9.3-6.4 16.2 1.7 6.4 8.9 11.8 15.6 12.2 5.4.3 10.6-.1 15.2-3.5 6.3-4.7 9-10.8 7.4-17.7-1.4-6-8-11.1-15.2-12-2.4-.3-5.1.6-7.1-1.5 8.3-.4 9-5.9 9.1-12.6.5-21.7 2.3-43.4 1.9-65.1 0-3-2.5-6-.2-9.1 12.4 7.1 16.8 19 19.1 32.2 2.2 12 3.6 24 3.2 36.2-.5 14.8-4 28.9-8.5 42.8-3 9.4-11.2 13.6-20.5 14.3-8.6.7-16.4-2.8-20.8-10.5-8.1-14.3-16.5-28.6-19.7-45-1.6-8.3-2.9-16.7-2.7-25.2-.7-6-.7-12.1 0-18.1-.1-6.2 2.2-11.7 6.1-16.7z"/>
|
||||||
|
<path fill="#1d2126" d="M728 1096.9c5.5-.3 10.9.1 15.9 3.1 6.4 3.9 9.5 10.5 8.1 17.8-1.7 8.5-10.8 15.3-20.8 15.4-10.6.1-18.4-5.3-20.6-14.4-1.5-6.3 1.9-13.7 8.3-17.8 1.7-1.1 3.4-2 5.1-2.9l4-1.2z"/>
|
||||||
|
<path fill="#1b1f24" d="M1142.8 1078.9c4.7-3.8 9.7-6.8 16-7.1 9.3-.4 16.3 3.5 18.7 10.8 2.4 7.3-1.1 16.3-8.5 21-8.8 5.5-17.7 5.6-26.4-.6-7.2-8-5.1-16.1.2-24.1z"/>
|
||||||
|
</g>
|
||||||
|
<g id="Group_1">
|
||||||
|
<path d="M900.7 1027.2c-4-16.2-8-32.3-11.8-48.5-4.3-18.3-8.7-36.5-12.6-54.9-4.5-17.6-10-34.9-14.6-52.5-.5-2.1-.6-4.8-3.6-5.4-3.6 2.4-6.1 5.6-6.9 9.9-.4 2.1-1.8 3.1-3.6 3.8-11.8 4.5-23.4 9.2-35.8 12.1-25.9 5.9-51.6 12.1-77.4 18.3-3.5.8-5 .3-5.6-3.6-.6-4.2-1.8-8.4-4.7-11.9-4.3-5.2-8.9-4.7-11.6 1.5-2 4.6-3 9.5-2.5 14.6.4 3.9-1 5.5-4.9 6.4-18.2 4.4-36.3 9.2-54.5 13.8-65.9 16.6-131.8 33.2-197.8 49.7-39.1 9.8-78.2 19.5-117.1 30-7.7 2.1-15.6 3.1-22.9 6.4 2.1 2.1 4.6 1.2 7.1 1 7.9-.7 15.8-1.8 23.8-.4 5.2.9 10.5 1.7 15.9 1.6 1.7 0 3.3.4 4.7 1.5 3.5 2.8 7.5 4.2 12.2 5.6-8.5 2.4-16.3 4.5-24 7.2-2.2.8-5.9 1.1-5.4 4.1.7 3.6 4.4 1.9 6.8 1.8 10.4-.6 20.7-2.7 31.3-2.2 3.4.2 7.7.8 10.2-2.7 2.4-3.3 5.8-4.6 9.5-4.6 5.9 0 11.9-2.6 17.6.6 3.4 1.9 6.9 2.4 10.6 1.6 4-.8 7.6-.5 10.8 2 3-1.7 4.6-1.4 5.2 2.7.7 4.6 2.4 9 3.6 13.4.4 1.4.9 2.6 2.5 2.7 1.6.1 2.2-1.1 2.9-2.3 3-5.4 5.1-11.2 6.6-17.2.6-2.4 1.8-3.1 4-3.4 19-2.6 38-5.3 57-8.2 23.2-3.5 46.4-7.1 69.7-10.7 2.8-.4 4.3.3 4.8 3.3.3 2.3 1.3 4.5 2.2 6.6.7 1.6 1 3.8 3.3 3.9 2.6 0 3-2.5 3.6-4.2.8-2.5 1.1-5.2 1.7-7.8.5-2.3 1.3-4.5 4.2-4.8 4.8-.6 9.5-1.4 14.2-2.1 17.2-2.5 34.4-4.7 51.5-7.7 14.1-2.5 17.9-2.5 25.2-.9 8.9-.3 17.7-2.3 26.6-1.8.6-.5 1.5-.7 2.9-.7 19.5.2 38.9.1 58.4.2 1.9 2 5.7.3 6.9 3.3 2.2 5.3 5.8 10.2 3.9 16.5-1.1 3.8-.8 7.7 1 11.2 1.2 2.4 3 4.1 4.7.1.1-1.4.1-2.9.2-4.3 4.5-3.4 7.5-7.6 7.9-13.5.2-2.6.5-5.2.5-7.8 0-1.7.1-3.3 2.1-4 4.1-.5 8.1-.6 11.3 2.7.4-2-.5-4.9 2.7-5 2.7-.1 6.5-1.7 7.8 1.2 1.7 3.8 4.3 3.5 7.2 3.5 5 0 10 .1 15 0 2.5-.1 4.6.4 6.4 2.1 6.1.8 8.6-2.1 8.7-7.9 0-.3 0 .8.1.3 5.7 11.4 8.9 23.8 14.3 35.5 1.1 2.3 2 6.1 5.1 5.2 3.7-1.1 1.5-4.6.9-6.9z" class="stj0"/>
|
||||||
|
<path d="M943.9 716.3c5.3 7.3 8.2 15.8 12 23.9 7.3 15.8 14 31.9 20.7 48 11.2 27.2 22.3 54.5 33.4 81.8.8 1.1 1.8 2 2.3 3.3 4.5 12 10.4 23.4 14.1 35.7 3 10.7 7.4 21 11.4 31.3 7.6 19.7 15.2 39.4 22.2 59.3.9 2.6 1.1 5.1.3 7.8-8.4 28.6-16.9 57.1-25.2 85.6-.5 1.6-.7 3.3-2.2 4.3-.2.1-.3.1-.5.2-11.6 3.4-15.7-5-19.6-12.8-6.1-12.2-12.6-24.2-19.5-35.9-5.8-9.7-13.2-18.3-20.4-27.1-.6-.8-1.5-1.4-2-2.2-8.2-13.3-19.2-24.6-27.7-37.7-4.3-6.7-11.1-11-15.6-17.5-6.8-9.8-16.3-17.5-22-28.5-.5 4.3 2.6 8.6-.7 12.4-2.1-.4-2.3-2.2-2.8-3.7-9.3-28.1-18.9-56.1-28.9-83.9-5.1-14.2-10.5-28.3-16.5-42.2-2.1-4.9-5.8-9.1-6.7-14.6-.3-1.8-1.3-3.4-.5-5.3 3.5-3.5 3.9-8.8 7.5-12.2 1.3-1.3 2.1-4.1 4.4-3.1 2.7 1.3 2.5 4.2 1.4 6.6-1.7 4-4.2 7.5-6.6 11.1-.4.7-.8 1.4-1 2 1.8-3.8 4.4-7.3 6.7-11.1 1.3-2.2 2.2-4.6 1.7-7.1-.5-2.6-1.9-3.5-4.2-1.5-1 .9-1.8 1.9-2.5 3.1-.9 1.5-2 2.8-4 2.3-1.9-.4-2.6-2-3.1-3.6-.6-1.9-1.1-3.9-.9-5.9.2-3 .6-6-2-8.3-.9-.8-.8-2.1-.5-3.3.2-.7.8-1.7.5-1.9-6.3-5.1 2.1-8.5 1.2-12.8-.8 1-.8 2.3-1.2 3.6-.4 1.2-.7 2.9-2.5 2.6-1.5-.2-2-1.7-2.3-3-.9-4 .1-7.2 3.8-9.4.4-.3.8-.5 1.2-.8.8-.4 1.8-.8 1.9-1.5 1.6-8.1 8-13.4 11.8-20.3 6.4-11.8 13.9-23.2 26.9-29.1 1.9-.8 2.2-2.3 2-4.1-.1-1.8-.1-3.7.6-5.4.5-1.4 1-3 2.9-2.8 1.8.2 2.7 1.7 2.6 3.2-.3 4.9 2.5 5.8 6.6 6.4 15.8 2.5 28.2 11.2 39 22.5.9.8 1.3 1.8 2.5 1.6z" class="stj6"/>
|
||||||
|
<path fill="#d6d5d5" d="M1025 909c-4.5-11.2-9-22.5-13.4-33.8-.7-1.7-1.2-3.5-1.7-5.2 3.6 2.8 8.1 2.7 12.2 3.8 15.1 4 30.5 5.7 46 7.3 13 1.3 25.9 3.3 38.9 4.7 6.4.7 12.9 1.1 19.2 2.2 2.4.4 3.8-.4 3.7-3.2-.2-3.2.1-6.2 1.7-9.2 3.4-6.2 8.6-7.4 13.7-2.6 3.8 3.5 7.9 6.9 9.9 11.7 2.9 6.8 8.5 7.9 14.8 8.3 12.7.9 25.3 3 37.9 4.7 14.6 2 29.2 3.5 43.8 5.3 13.6 1.7 27.2 3.6 40.8 5.3 11.6 1.5 23.3 3.1 34.9 4.6 14.6 1.9 29.2 3.8 43.8 5.6 11.5 1.5 23 2.9 34.4 4.4 12.1 1.5 24.3 3.1 36.4 4.6 12.3 1.5 24.6 2.9 36.9 4.4 11.7 1.5 23.3 3 34.9 4.5 13.8 1.8 27.6 3.5 41.3 5.5 13.5 2 27.2 3.1 40.6 5.9-1.1 1.5-2.7 1.8-4.4 2-7.3 1.2-13.2 4.4-16.6 11.2-.9 1.7-2.5 2.5-3.7 3.9 1.8 1.2 3.8 1.4 5.6 2.2 1.4.7 2.7 1.5 2.6 3.3-.1 1.6-1.3 2.3-2.6 2.7-6.5 1.7-12.7 5.1-19.8 4.2-2.7-.3-5.7-.5-8.2 1.5-20.4-.3-40.8-.7-61.1-.9-3.8 0-7.1-3.2-11.3-1.5 1.3 4.6 4.8 8.5 4.5 13.6-.1 1.6.7 3.6-1.1 4.6-1.9 1-3.9.6-5.6-.8-5.5-4.3-11.4-8.2-15.4-14.1-2.5-3.8-5.5-5-9.9-4.9-15.6.5-31.2-.8-46.9-1.2-19.1-.5-38.2-1.5-57.3-1.9-5.3-.1-10.6-.8-15.9-.9-2.9-.1-3.9.6-2.8 3.6.9 2.5 1.5 4.9 1 7.7-.8 4.4-3 4-5.4 1.9-3.4-2.9-6.7-6-9.2-9.8-2.1-3.1-4.8-4.5-8.8-4.5-16.1-.1-32.3.1-48.4-1.2-11.1-.9-22.3.5-33.3-1.6-2.3-.4-4.7-.5-6.5 2.3-1.7 2.6-4.7 2.4-7 .4-1.1-.9-1.8-1.9-3.3-1-1.9 1.1-.9 2.5-.5 3.9 1.7 6 4.4 11.8 4.3 18.3-.1 3.2-.4 6.2-3.7 7.5-3 1.2-5.9-.1-8.3-2-5.1-4.2-8.2-10-11.2-15.8-5-9.5-6.4-10-16.8-8.7-13 1.7-25.9 3.5-39 4-.9-.6-1.2-1.5-1.4-2.5-4.1-18.5-14.3-34.3-22-51.2-2-4.3-5.7-5.1-10-5-4.9.1-8.8 1.9-10.8 6.6-2.2 5.2-3.7 10.7-5.4 16.1-4.5 14-7.9 28.2-12.7 42.1-.3.8-.5 1.6-.8 2.4-1.1 3-3.3 4.5-6.5 4.6-3 .2-4.6-1.7-5.6-4.1-3.1-7.2-5.7-14.5-8.5-21.8-6.8-17.9-14.1-35.9-21-54z"/>
|
||||||
|
<path d="M1071 1318.9c-5.9-3-9.7-8.4-14.7-12.4-2-1.6-3.4-2.3-6.1-1.7-23.2 5-46.7 8.1-70 12.1-27.3 4.6-54.6 9-81.9 13.4-24 3.9-48.1 7.8-72.2 11.7-9.2 1.5-18.3 2.9-27.5 4.6-7.6 1.4-8.6.7-9.6-6.8-.3-2.2-.9-4.3-2.5-6.2.4 2.5.7 5 1.2 7.5 1 5.4-.3 7.9-5.6 8.9-9.9 2-19.8 4-29.8 5.7-7 1.2-10.4 0-12.5-6-3.3-9-4.9-18.5-4-28.2.5-5 3.5-8 7.7-10.3 12.2-6.6 25.5-10.4 38.4-15.3 48-18.2 96.1-36.1 144.1-54.2 16.3-6.1 32.6-12.5 48.9-18.6 1.6-.6 3.2-1 3.2-3.2 1.6-.8 3.4-1.5 1.5-3.8-.8-1-1.3-2.2-1.7-3.4-1.5-4.5-1.5-9.1-.3-13.7.3-1.2.4-2.8 2-3.1 1.5-.2 2.4 1 3.2 2.1 2.4 3.1 5 6.2 7.3 9.3 3.2 4.3 7.2 5.1 12 2.4 2.5-2.3.2-3.9-1-5.5-2.2-2.8-3.4-5.5-2.7-9.2.8-3.8-2.8-5.7-4.7-8.3-.9-1.3-2.8-2.2-2.6-4 .4-4.2.5-8-2.5-11.6-1.4-1.7.9-3.9 3.2-3.2 2.3.7 3.9 2.4 5.4 4.3 12.4 15.9 28.2 27.9 44.2 40 5.5 4.2 12.5 4.9 17.6 9.5 5.7.7 7.6 4.6 9 9.7 2.3 8.3 4.7 16.7 7.8 24.7 3.4 8.7 10.9 13.1 20 12.3 4.5-.4 7.4-3.6 10.8-5.9 4.4-1.4 5.9-.3 4.8 3.8-2.6 8.9-6.1 12.7-14.5 11.9-2-.2-4-.3-5.9.4-7.1 2.1-13.9 4.8-19 10.5-2.5 2.8-4.8 2-7.2-.3-5.7-5.4-10.5-11.7-15.1-17.9-4.3-5.9-9.7-10.9-11.6-14.6 8.7 13.9 16.2 32.4 28.9 47.7.7 5.2 4.3 9.5 4 14.9zm45.1-123.1c-.2 8.5 6.2 9.1 12.2 10.2 33.5 6.3 67.1 12.7 100.6 18.8 38.3 6.9 76.7 13.3 115 20.4 31.3 5.8 62.7 10.9 93.8 17.5 9.4 2 15.6 7.8 20.2 15.6 2.9 5 6 10.1 7.9 15.6 3.3 9.9 1.2 11.8-7.6 12.2-11.8.4-23.6-1-35.4-1-4.7 0-5.1-4.2-7.5-7.6.8 7.2-3.6 6.7-8 6.6-34.1-.4-68.3-.2-102.4-1.3-23.8-.8-47.6.2-71.4-.9-24.1-1.1-48.3 0-72.4-1-10.5-.4-20.9-.5-31.4-.7-2.6-.1-4.9-.8-7.2-2.5-1.3 1.7.1 4.1-1.4 5.6-2.3-2-1.7-4.8-1.8-7.3-.2-4.4.2-8.8.2-13.3-.4-19.4-2.4-38.7-5.2-57.9-.8-5.2-1.5-10.4-1.8-15.6-.3-5.1.9-9.4 3.6-13.4z" class="stj8"/>
|
||||||
|
<path d="M1025 909zm101.7 138.5c1.6-17.3 2.2-34.8 3.7-52.1.3-3.7.8-7.6-.3-11.4 0-2.6.1-5.2.1-7.9-.3-4.1-.5-8.4-2.2-12.1-6.4-13.9-13.3-27.5-19.5-41.4-2.8-6.2-7.4-6.8-13-6.5-5.4.3-9.2 2.8-11.1 7.8-2 5.3-3.6 10.7-5.2 16.1-4.4 14.7-8.8 29.5-13.2 44.2-.7 2.3-2.3 3.4-4.7 3.8-4.8.7-5.4-3.5-6.4-6.1-6.4-15.5-12.2-31.2-18.5-46.8-3.6-8.7-6.4-17.7-11-26 .4 1.6.5 3.2 1.1 4.7 10.8 28.8 22.4 57.1 32.5 86.2.9 2.5 1 4.6.3 7.1-4.8 16-9.4 32.1-14.2 48.2-4.2 13.9-8.5 27.8-12.7 41.7-.8.6-1.5 1.2-1.8 2.2-.5 1.4-.7 2.8-1.4 4.1-2.9 9.5 1.1 14.6 11 14 2.5-.2 5-.6 7.3-1.6 7.2-3 14-6.7 20.2-11.6 4.4-3.5 8-8.5 13.3-10.4 8.8-3.2 16.9-7.6 25.3-11.6 1.5-.8 2.8-1.7 4.2-2.8 1.4-1.1 2.7-1 4 .1 3.2 2.8 7.3 4.9 6.8 10.2-.1.9.3 2 1.3 2.5 1.5-14.6 3-29.4 4.5-43.8-.4-.3-.4-.6-.4-.8z" class="stj1"/>
|
||||||
|
<path fill="#cdcdce" d="M313 1016.9c6.8-.6 13.5-1.7 20.2-1.7 6.4 0 12.8 1.2 19.2 2 1.3.2 2.5.4 3.9.3 4.5-.5 8.3.9 12 3.8 2.4 1.9 5.6 3.9 9.3 2.8 1-.3 2.2-.3 2.6.8.6 1.7-1 1.7-2.1 2-6.3 2-12.6 4.2-19 5.7-3.4.8-6.5 2.6-9.9 3.3-.8.2-1.7.6-1.4 1.6.3 1 1.1 1 2 .8 8.8-1.8 17.8-1.4 26.6-3.1 4.6-.8 9.4.8 14.2 0 1.5-.2 3.1-.1 3.7-1.5 2.2-5.4 7.3-5.2 11.7-5.9 3.9-.6 8 .3 11.9-1 .4-.1 1.1-.1 1.5.2 6.1 4.7 13 3.7 19.9 2.8 2.7-.3 4.4 1.2 4.8 4-8.6 3.1-17.8 3.1-26.6 4.9-6.1 1.3-12.4 2.8-18.6 2.8-14.5-.1-28.4 4-42.5 6.3-21.7 3.6-43.4 7.6-65 11.3-22.3 3.9-44.7 7.8-67 11.5-4.1.7-8.3.3-12.5.1-6-.3-9.3-4.9-12.2-9.3-8-11.9-14-24.9-18.9-38.4-.5-1.4-.7-3-.5-4.4.5-4.6 2.9-5.9 6.7-3.3 5.5 3.7 11.2 7.3 16 11.8 10.2 9.6 21.4 10.3 34.5 7.1 24.2-5.8 48.6-10.6 72.5-17.3.9 0 2 .1 3 0z"/>
|
||||||
|
<path fill="#bbbdbf" d="M871.9 1001.1c5.2-.9 8.1-3.8 8.6-9.5 8.3 13.3 10.8 29.2 18.8 42.4.5-.2 1-.4 1.4-.5-2.3-9.5-4.6-19.1-6.9-28.6-5.9-24.1-11.8-48.2-16.9-72.5-.6-2.7-2.2-5.3-1.9-8.2 1.4-3.8-1.6-6.9-2-10.4-.9-9.3-4.8-17.8-7.2-26.7-.5-1.9-1-3.6.3-5.2 1.2-1.5 1.5-3.3 1.6-4.8-.8.7.7 3.7-2 3.2-1.9-.3-1.8-2.4-1.1-3.7.9-1.5-.4-1.4-.9-2.1-1.8-2.6-.6-5.1.6-7.5.4-.5-.7-.6-.1-.3.1.1 0 .2-.1.5-1 2.1-2.2 2.8-3.1.1-1-3-3-6.1-.7-9.5.8-1.2-.2-2.9.7-4.1-1.2 1.1.5 4-1.4 4.2-2.5.3-2-2.5-2.7-4.1-3.6-8.9-5.4-18.4-7.9-27.6-.2-.8-.3-1.6-1.1-2.1-3.4-13.3-7.2-26.5-9.8-40.1 2.9-.1 3.6 2.3 4.2 4.2 1.4 4.1 3.1 8.1 4 12.3.7 3.3 1.8 6.4 3.7 9.2.4.5.9 1.1 1 1.7.6 5.4 2 10.6 4.8 15.3.3.5.1 1.3-.1 2-.3 1-1.8 2.6 1 1.4.4-.2.9.7.8 1.1-.9 3.9 3.3 7.8.4 11 .2-.3.2-2.2 1.7-1.9 1.5.3 1.4 2 1.2 3.4-.1 1-.8 1.8-1.3 2.7.6-.5 1-1.5 2.1-1.3 1.5.2 2.2 1.3 2.9 2.5 7.3 12.2 13.3 25.3 16.3 39 8.1 36.7 19.8 72.2 31.7 107.7 7.1 21.2 14.3 42.3 22.1 63.2 11.6 30.9 24.6 61.2 42.3 89.2.8 1.3 1.6 2.6 1.7 4.1-1.1 4.9-4.3 8.9-6.5 13.2-1.1 2.1-2.9 1.9-4.5.4-.8-.8-1.5-1.8-2.1-2.8-5.8-9.7-11.7-19.2-16.4-29.5-7.8-15.5-14.2-31.6-20.1-47.9-5.5-15.2-10.9-30.4-15.6-45.9-2.1-7-5.1-13.7-7.8-20.5-.7-1.7-1.1-3.4-1.5-5.2-.8-3.5-1.2-7.1-4.6-9.4-2.1-1.4-1.3-3.8-.6-5.8-1 1.5-1.1 3.4-.4 5 3.6 8.5 5.2 17.5 8.1 26.2 1.7 5.3 4.2 10.4 6.6 15.4.5 1.1.9 2.2.7 3.3-.3 1.8-.7 3.1 2 3.7 1.6.4 1.3 2.8 1 4.5-.8 5.1.2 9.6 3.7 13.4.2.2.7.5.6.8-.6 4.8 2.8 8.4 4 12.7 1.3 4.6 1.8 9.5 4.5 13.6 2 3.2 1.8 7 2.7 10.5 1.2 4.3 3.6 8.1 4.6 12.5 1.4 5.8 5.7 10.6 6.6 16.8.2 1.2 1.4 1.3 2.1 2 6 12.9 14 24.7 20.9 37.1 3.3 5.9 1.8 12.3 1.4 18.6-.1 1.6-1.5 2.1-3 1.2-3.7-3.5-5.7-8.2-8.2-12.4-16.2-27.5-27.8-56.9-37.1-87.3-.1-.7-.8.2-.3-.1 0 0 .2.1.2.3.7 3.6 3.2 6.9 2.4 10.8-6-6.2-9.6-13.9-13-21.6-9.2-21-16.3-42.8-22.9-64.7-.7-2.4-1.5-4.7-2.3-7.1-1.7-5.1-2-11.7-10.4-9.7-.9.1-1.3-1-1.5-1.8z"/>
|
||||||
|
<path fill="#cacaca" d="M1549 978.9c.8-3.1 3.4-3.2 5.6-2.8 7.9 1.2 14.8-2.1 22.1-4 1-.2 2.1-.3 2.1-1.6 0-1.2-1.1-1.7-2-2-3.1-1-6.2-2-10.7-3.4 5.1-1.2 6.9-3.8 9-7 3.4-5.1 8.9-8.5 15.6-9.1 1.8-.2 3.6-.6 5.3-1 15 1.7 29.9 3.5 44.9 5.1 12.8 1.4 25.7 2.7 38.6 3.8 10.1.8 18.7-3.6 27-8.8 7.9-4.9 15.8-9.8 23.8-14.6 5.8-3.5 10.5-3.3 13.7 0 1.7 1.7 2.3 3.4 1.4 5.8-5.3 13.9-11 27.5-20 39.5-4.1 5.5-9.9 8.1-16.8 8.3-22.3.6-44.5-1.2-66.7-2.9-6.3-.5-12.6-.5-18.9-1-15.1-1.1-30.2-1.4-45.3-2.2-9.6-.6-19.1-1.4-28.7-2.1z"/>
|
||||||
|
<path d="M978 1150.9c-11.1-17.4-20.4-35.7-28.8-54.5-9.5-21.1-17.4-42.8-25-64.5-7.5-21.1-14.2-42.4-21.4-63.6-6.2-18.2-11.7-36.6-17.1-55-2.4-8.3-3.2-17.2-5.7-25.6-4.3-14.8-9.9-29.1-18.1-42.1-2.4.4-1.2 2.7-2.6 3.5-1.3-2.8 1.8-5.3.3-8.1-1.9.8-1 3-2.7 4.1 3.1-5-2.2-9.4.1-14.3-2.4.3-1.5 2.3-2.4 3.2-.8 0-.5-.6-.6-1-.2-3 1.6-5.8-.8-9-1.1-1.5-.7-1.1-2.2-.9-1.2.2-1.1-2.4-.8-3.9.4-1.8 1.5-3.8.5-5.3-5.6-7.9-6.3-17.7-9.9-26.3-.6-1.4-1.1-2.8-2.6-3.5-.9-5.4-3.1-10.5-3.2-16 2.7 0 3 2.4 3.7 4 3.5 8.4 8 16.3 11.7 24.6.1.5 0 1-.3 1.3.5 6.6 4.5 11.9 6.8 17.9 6.3 15.5 12.7 31 18.4 46.8 9 24.9 17.4 50.1 26.2 75.1 1.2 3.4 1.2 7.2 3.5 10.3 2 2.1 2.8 4.9 3.7 7.5 9.4 28.5 20.8 56.3 30.1 84.9 5.6 16.9 12.6 33.3 19 50 6.4 16.6 15.7 31.6 25.8 46.1 8 11.3 16.3 22.3 27.1 31.2 11.7 9.7 24.2 18.1 37.8 25 3 3.6 3.5 8.2 5 12.4 1.7 4.5 2.6 9.3 4.4 13.8.5 1.3 1.2 2.8 0 4.2-3.7-2-6.5-5.3-11.6-5.1-2.3.1-4.5-3.6-6.9-5.4-10.7-8.4-22.2-15.7-31.4-25.9-4.2-4.7-8.4-9.4-12.5-14.2-1.1-1.3-2.5-2.2-3.8-3.1-.7-.5-1.4-1.1-2.2-.2s-.9 2 .1 2.6c4.1 2.4 3.4 5.8 2.4 9.6-1.1 4.1 3.7 4.7 5.1 7.6 1.4 2.8 4.1 4.5 2.1 8.4-1.3 2.6 1.5 4.7 3.2 6.8 1.6 2 4.5 4.3.3 6.8-4.4-1.9-6.4-6.2-9.3-9.5-3.4-3.9-6.3-8.2-9.7-12.1-3.2-3.7-3.6-7.7-1.8-12.1 1.2-2.9 2.8-5.7 4.1-8.6 1.7-3.8 1.9-7.7.5-11.7-1.7-5.9-2.9-6.8-8.5-6.2z" class="stj12"/>
|
||||||
|
<path d="M1106 1080.9c2.4-1.2 4-5.5 6.6-4.2 3.4 1.6 6.3 4.8 8.8 7.7 1.8 2.1.1 5.2.8 7.7-1.5 21.1-2.9 42.3-4.4 63.4-.1 1.8-.5 3.6-.8 5.4-2.1 1.9-4.3.8-6.5.3-2.4-.6-4.6-1.8-7.2-1.6-5.2.8-10.1 3.2-15.6 2.8-6.3-.4-11.5-3-16.2-6.8-3.6-2.9-2.1-7-2.5-10.6-.2 2.6 1.1 5.6-2.1 7.1-3 1.5-5.6-.3-7.8-2-6.4-5.1-10.7-11.3-10.4-20 .1-2.3-.2-4.7-.4-7-.4-4.6 1.6-8.3 5.4-10.5 5.5-3.2 10.7-6.6 15.6-10.6 1.4-1.2 2.8-2.6 4.9-1.3 1.9 1.2 1.5 2.8 1.2 4.8-.9 7.2-1.2 14.5-6.1 20.5-1.2 1.5-1.4 3.7-1.6 5.7-.1 1.4-.7 3.4 1.3 3.7 1.8.2 1.6-1.8 1.8-3 1-8.2 3.7-16.1 4.2-24.4.2-2.6 1-5.1.9-7.8 0-3.8 2.3-6.4 6.1-7.7 8.5-2.7 16.2-7.2 24-11.6z" class="stj13"/>
|
||||||
|
<path fill="#b1b2b6" d="M1103 1158c4.9-.4 9 3.5 13.9 2.9.5 11.6-2.1 23.2-.8 34.9-1.3 6.7-2.2 13.3-2.2 20.1 0 2.9 1.8 4.9 2.1 7.5.8 7.7 2.4 15.4 2.7 23.1.4 11.9 3.3 23.7 2.1 35.7-.4.5-.8 1.1-.8 1.8-.3 4.3-2.4 3.6-4.8 1.7-1.2-.9-2.3-1.9-3.6-2.7-4.5-2.8-9.4-3.8-14.7-3.6-2.4.1-5 .7-7-1.5 3.3-1.8 6.8-.7 10.2-.9 4.7-.2 11.7-8.7 10.4-13.1-.9-3.1-2.6.3-3.9 0-1.2-2.9 1.2-5.1 1.5-7.6.5-4.1 1.4-8.2 1.3-12.4 0-1.8-.1-3.7 1.7-5 2.4.9 2 3.2 2.1 5 .1 1.7.7 3.3.8 4-1.6-2.1.6-6.3-2.4-9-1.6-2.2-1.2-4.5-.3-6.7 1.3-3.3.2-6.6 0-9.8-.1-2.4-1.9-2.3-3.7-1.9-7.8 1.7-15.5 1.2-23.3.1-4.7-.6-8.1-2.9-10.5-6.8-12.6-20.2-25.1-40.3-34.3-62.4-.9-2.2-1.5-4.4-2-6.7-.3-1.4 1.7-3.5-.7-4.3-2.7-.8-3.2-3.2-4.3-5.1-.7-1.3-1.2-2.8-1.7-4.2 0-2-2.6-4.8 1.6-5.7 2.5.7 3.7 2.8 5 4.7 6.3 8.8 14.2 16.3 23.9 20.8 6.3 2.9 11.8 6.9 18.1 9.6 8.3 3.4 16.1 1.2 23.6-2.5z"/>
|
||||||
|
<path fill="#6a6d70" d="M850 798v-1c-5.4-11.5-9.7-23.3-12-35.8-.8-4.3-2.5-8.4-2.8-12.2-.8 3.3 2.4 7.4-.3 11.2-2.9-1.5-1.8-4.3-2.8-6.3-6.9-30.9 8.8-66.9 43.5-74.3 19.6-4.2 36.6 2 51.4 14.9 7 6.1 13 13.2 17 21.7-.5 2-1.2.6-2 .2-4.8-2.8-8-7.4-12.3-10.8-9.4-7.5-20-11.4-31.8-12.7-2.2-.2-2.8-1.2-2.8-3.2 0-1.7-.1-3.3-.3-5-.1-.8-.8-1.5-1.8-1.4-.8.1-1 .8-1.2 1.4-.9 2.2-1.4 4.6-.7 6.8 1 3.2-.3 3.7-3 4.6-8 2.8-13 9.5-18 15.8-5.2 6.5-9.5 13.5-12.7 21.2-.7 1.7-2.2 2.4-3.5 3.4-1.5 1.2-3 2.2-2.3 4.9.8 3.2-1.9 4.5-4.5 5.4-.7-.6-.6-1.5-.7-2.4-.2 1 .1 1.8.7 2.4-4.9 4-5.3 6.1-2.4 11.3 2.2-1.1 1.5-3.2 1.5-4.8-.1-2.2 1.6-2.7 2.9-3.6.3-.2 1.1 0 1.3.2 1.2 1.6-.3 2.7-1 4-1 1.9-2.2 3.7-3.2 5.6-1.1 2.2-1 2.1 1.6 3 2.2.7 1.1 2.3.4 3.5-1.2 2-2.1 3.4 1 4.9 1.4.7 1.9 3.3 1.2 5.4-1 3 .1 5.9.7 8.8.3 1.2.8 2.2 2.1 2.5 1.4.2 2.1-.6 2.8-1.7.5-.8 1.1-1.8 1.8-2.3 1.7-1.3 3.1-5 5.3-3.3 2.5 1.9 2.9 5.5 1.1 8.7-3.2 5.6-7 10.8-9.6 17.8-1.2-3.7.3-5.7 1.7-7.9 2.1-3.5 5.2-6.6 5.7-10.9.2-1.5.7-3.8-1.2-4.4-1.6-.5-2.2 1.6-3 2.8-2.2 3-3.8 6.2-4.9 9.7-.5 1.5-1 3-2.9 1.9z"/>
|
||||||
|
<path d="M1089.9 1277.8c4.5.1 9-.3 13.4.3 5.8.8 10.8 4 14.8 8.2 1.8-1.1-.2-4.2 2.7-4.2l.3 20.9c-.5 2 .2 4.2-1.1 6.1-1.9-2-1.6-4.1-.8-5.8-1.9 2.2-1.8 6.2-4.4 8.8-2.8 2.8-22.9 7.1-26.3 5.1-4.6-2.8-8.3-6.6-12.2-10.2-3.2-2.9-6.5-3.7-10.5-2.9-5-5.1-9.6-10.5-12.5-17.2-2.5-5.8-5.2-11.7-9.3-16.4-5-5.8-5.4-13.7-9.7-19.8 4 5.8 9.6 10.2 13.6 15.9 5.3 7.8 11.5 15 18 21.9 1.6 1.7 2.9 2.3 4.7.1 5.1-6 12-8.9 19.3-10.8z" class="stj16"/>
|
||||||
|
<path fill="#4c4b4d" d="M1065.9 1304.1c.6-.7-.8-2.3 1.5-2.3 6.3.1 10 4.2 14.1 8 2.3 2.1 4.7 4.2 7.1 6.2 1.6 1.3 3.4 1 5.2.5 5.1-1.2 10.2-2.2 15.5-2.2 3.4 0 5.4-3.4 6.5-6.4.8-2.2 1.6-4.3 3.4-6.7 1.3 2.8.2 5.4.8 7.8 0 2.5-.9 4.9-1.7 7.2-6.5 17.8-19.5 22.4-35.6 12.5-4.4-2.7-8.2-6.1-11.8-9.9-2.3-4.6-4.6-9.3-5-14.7z"/>
|
||||||
|
<path fill="#131416" d="M821.1 995.1c1.8 0 3.8.4 5.5-.1 3.9-1 5.6.8 6.3 4.3 3.9 10.4 3.4 21.2 2.8 31.9-.1 2.4-1.8 4.3-4.4 4.8-2.7.4-4.9-.2-6.2-2.9-.5-6.7-2.7-13.2-2.6-20 0-1.7-.6-3.2-1.4-4.7-2.3-4.4-2.4-8.9 0-13.3z"/>
|
||||||
|
<path fill="#1d1d1e" d="M794.3 995.1c5.6-1 8.6.9 10.2 6.7 1.4 5 4 9.5 1.6 15-1.2 2.8.5 6.2 1.2 9.2.7 3 2.3 1.1 3.5.2-.3 1.8-.8 3.6-.8 5.3 0 3.7-1.8 5.8-5.3 5.9-3.5.1-5.5-2.1-5.8-5.6-.5-7.1-2.1-14-4-20.9-1.3-3.7.2-7.6-.9-11.3.2-1.4.3-3 .3-4.5z"/>
|
||||||
|
<path fill="#474446" d="M922 1106c-1.2-4.6-2.5-9.2-3.8-14.1 1.6 1 1.6 2.4 2 3.7 11.5 34.4 25.8 67.5 44.8 98.4.7 1.6 2.5 1.8 3.5 2.9 2.4 4.3 5.8 7.9 8 12.4.4 1.5 1.7 2.4 2.3 3.7l2.1 3.3c.6 1.1 2.4 1.8 1.5 3.2-1.1 1.6-2.8 1.1-4.4.5-24.1-33.5-41.9-70.1-54.2-109.4-.6-1.5-1.2-3-1.8-4.6z"/>
|
||||||
|
<path d="M847.9 824.1c2.3-.9 1.8 1 2.1 2.1 2 7.5 4.1 15 6 22.5.8 2.9 3.8 5 2.9 8.6 1.7-1.9.7-4.8 3.4-6.8-1.8 6.2-2.4 11.9.3 17.4 1.7-.7 1-2.8 2.4-4-2.8 5.4 1.2 10.3.4 16 2.4-1.6 1.5-4.3 3-5.8 1.2.9.5 2 .1 2.8-3 8.2-.5 15.6 3.3 22.8 2.1 4 .9 8.5 2 12.7.6 2.2 1.6 4.2 2.1 6.4.4 1.7.8 3.7-.9 5.1-4.8-17.4-9.7-34.8-14.6-52.1-.6-2-1.5-4-2.3-6-3.1-12.5-6.3-25-9.4-37.5-.3-1.3-.5-2.7-.8-4.2z" class="stj12"/>
|
||||||
|
<path d="M832.1 754c1.7 1.2.3 4.1 2.8 5.2.1-4.5-2.4-8.9.5-13 3.1 9.7 5.3 19.7 7.8 29.6 1.4 5.3 2.6 10.2 6.1 14.5 1.5 1.9.5 4.5.6 6.8-3.6-6.2-7.7-12.1-10-19-1.2-3.6-3-6.9-5-10-1.1-4.7-2.8-9.2-2.8-14.1z" class="stj6"/>
|
||||||
|
<path fill="#5c5e62" d="M821.1 995.1c0 3.8-1.4 9.1.5 11 3 3.1 2.4 6.1 2.4 9.1.2 5.9 1.7 11.8 1 17.8-1.8-2.2-1.7-5-1.8-7.5-.1-3.7-1.5-4.5-4.9-3.8-2.4.4-4.9.2-7.4.3.5-1.9 1-3.3 3-4.7 4.4-3 3.1-8.3 3.9-12.6.4-1.9-.1-4 .3-5.9.3-1.6.2-4 3-3.7z"/>
|
||||||
|
<path d="M689 1036.9v18.1c-1.5-6-1.6-12 0-18.1zm105.2-37.2c1.2 3.7 1.2 7.5.9 11.3-2-3.6-1.1-7.5-.9-11.3z" class="stj0"/>
|
||||||
|
<path fill="#777a7d" d="M938 1041c-5.1-9.6-6.7-20.4-10.9-30.4-6.3-15.2-10.9-31-17.2-46.2-2.2-5.3-3.3-11-4.9-16.5.9-4.7-1.7-9.4-.7-14.3 2 .5 2.9 1.9 3.7 3.3 6.7 11 15.3 20.6 23.9 30 9 9.8 17.2 20.1 24.3 31.3 1.2 1.9 3 3.5 4.7 5.1 3.1 2.8 5.2 6.3 7.3 9.9 4.5 7.7 10.7 14.2 16.1 21.2 6.1 7.8 11.2 15.9 16.1 24.4 6.4 11.2 11.6 23.1 18.8 33.8 2.1 3.2 4 5.2 8 3.6 1.7-.7 3.2-.2 4.8.6 0 .8-.2 1.6-1 2l-4.5 4.8c-2 2.1-3.3 4.4-2.9 7.4 1.1 4.2 2.2 8.4 3.4 12.6.5 3.8.2 7.6.2 11.5 0 3.6-1.8 5.4-5.4 4.6-5.1-1.1-10.1-2.3-13.6-6.7-2.5-3.2-6.9-4.3-9-7.8-7.2-11.4-16.1-21.5-23.1-33-3.5-5.7-7.3-11.1-11.1-16.5-5.8-8.3-11.7-16.5-16.9-25.2-2.2-3.7-5.4-6.8-7.5-10.6-1.3-2.3-1.4 1.9-2.6 1.1z"/>
|
||||||
|
<path fill="#5d5b5e" d="M1022.1 1111c.2-3.2.7-6.3 3.9-8 2-1.2 3.4-1.2 4.1.1-1 3.5-2.4 6.9.5 10.3 3.3 3.9 7.6 3.1 11.6 2.3 8.8-2 17-6 23.5-12.2 8.4-7.9 18.1-13 28.6-17.1 4-1.6 7.2-4.8 11.6-5.5-1.7 2.8-4.6 3.8-7.3 4.9-5.8 2.5-10.8 6.4-17 8-3.2.8-4.3 3.7-4.7 7-1.6 11.6-3.4 23.2-4.9 34.9-.4 2.9-2.3 1.7-3.7 2.1-1.8.5-2.3-.6-2.4-2.2-.2-5 .5-10.1 3.9-13.6 5.4-5.5 2.9-12.5 4.7-18.6.6-2-2-3-3.8-1.4-5.3 4.6-11.3 8.2-17 12.1-3.2 2.2-5.4 5.6-4 10.3 1.1 3.6 0 7.5.9 11.4 1.5 6.9 6.1 11.1 11.5 14.8 1.3.9 2.9 1.8 4.6.5 1.7-1.2 1.3-2.9.9-4.5-.1-.7-.5-1.3-.6-1.9 0-1.2-.8-3.1 1.2-3.2 1.6-.1 2.9 1.1 2.5 3-.7 3.4-2.3 6.9 1 9.8 4.2 3.6 8.9 6.2 14.7 6.8 5.9.6 11.1-1.6 16.5-3-6.5 5.4-19.3 6.7-26 2.3-5.1-3.3-10.5-5.8-15.9-8.3-10.7-5.1-19-13-25.6-22.8-.7-1.1-1.7-2-2.6-3-.5-.6-1-1.5-1.9-1.2-.9.3-1 1.3-.9 2.1.2 1.5 1.1 2.7 2 3.9.6 1.3.9 3.1 2 3.9 6.4 5.5 5.4 14.2 9.1 20.9 6.4 11.6 11.2 24 18.9 35 4.1 5.9 7.8 12.3 10.9 18.9 3.8 8.1 10.4 10.2 18.2 10.2 6.1 0 12.3.7 18.2-1.6 1.2-.4 3.5-.9 3.2.8-.7 4.5 2.7 8.9-.1 13.4-1.2 1.9-.7 4.2-.6 6.3-1.5 2.3-.8 4.8-.9 7.3-.5 6.1-1.1 12.2-4.2 17.7-9.1 11.9-28.9 5.9-32.5-7.5-2-7.2-4.3-14.2-6.7-21.3-1.7-5.1-1.7-11.7-9.5-12-3.3-10-6.7-19.9-10-29.9-1.4-1-2.3-2.3-2.8-4-5.4-18.6-11.8-36.9-17.2-55.5-.8-2.5-1.2-5.2-1.4-7.8.2-1.1.2-2.4.8-3.3 1.2-2.1 5.7-2.8 1.7-6.8-2.2-2.4-4.1-4.1-7-4.8z"/>
|
||||||
|
<path fill="#5c5e61" d="M978.8 1213c-1.2-.7-2.7-1.1-2.9-2.8.2-1.3-.4-2.6-.3-3.9.3-8.3.5-16.7-6.2-22.5-.7 3.9 1.5 8.9-1.5 13.2-1.9-.1-2.8-1.2-2.9-3 1.7.8 1.9-.1 1.9-1.5-.1-7.6 1.2-15.4-4.6-22.1-4.4-4.9-7.2-11.2-10.4-16.8-2.6-4.6-7.2-9.4-6.8-15.7-2.3-3-1.5-6.2-.7-9.4.3-1.1.7-2.4 2-2.5 1.4-.1 1.5 1.5 2.1 2.3.7 1.1.8 2.5 1.7 3.5 5.6 10.2 11.2 20.4 17.3 30.3 2 3.2 3 3.4 4.7-.3 1.7-3.8 3.9-7.3 5.9-10.9 4.5-3.8 5.3-3.5 8.4 1.8 3.4 6 3.8 11.9.3 17.9-.4.7-.8 1.5-1.2 2.2-3.8 6.4-4.5 12.2 1.5 18.3 5.9 6 10.7 13.1 15.9 19.7-.1.1-.3.2-.4.3-5.2 3-9.7 2.1-13.3-2.6-1.5-2-3.1-3.9-4.6-5.9-1.5-2-3-4-4.8-6.5-2.4 6-1.7 11.4-1.1 16.9z"/>
|
||||||
|
<path fill="#8c8e92" d="M1036.7 1227.1c2.4 1 5.7 3.3 5.3 5.3-.6 2.8-2.9 6.4-6 7.1-2.1.4-5.3-.9-5.9-4.1-.4-1.9 4.6-8.2 6.6-8.3z"/>
|
||||||
|
<path d="M1030.1 1103.1c-1.3-1.9-2.8.2-4.1-.1 1.3-1.9 2.5-3.8 5-4-.1 1.4.5 2.9-.9 4.1z" class="stj26"/>
|
||||||
|
<path fill="#7e7b79" d="M950.1 1131.9c-1.9-1.1-1.9-3.4-3.5-5.1-2.5 3.5-1.4 7.4-1.6 11.1-2 1.1-3 .8-3.1-1.7-.1-2.8 1-6.3-3.4-6.9-.2 0-.5-.6-.4-.8 1.6-4.9-3.5-8-3.4-12.5 0-.8-.2-1.7-.7-2.4-3.3-4.4-4.3-9.4-4.2-14.8 0-1.1-.2-2.1-1.4-2.3-1.8-.2-2.3-1.9-2.1-2.9.5-3.1 0-5.3-2.2-7.9-1.8-2.2 1.1-6.9-3.4-8.6 1.9-5.6-3.3-8.7-4.5-13.2-.7-2.8-1.5-5.4-.5-8.3.7-2 .4-1.9-2-2.6-.6-.2-1.2-1.2-1.2-1.9-.2-2.8 1.9-6.3-2.3-8 .4-6.2-4.2-10.8-5.4-16.6-1.5-7.5-4-14.7-6.2-22-1.2-3.9-.7-7.4 1.3-11.1.7 1.7.3 2.9.1 4.2-.6 2.7-.6 2.8 2.3 3.8.8.3 1 .9 1 1.5-.3 4.2 2 8 3.1 11.6 1.9 5.9 4.4 11.8 6.5 17.7 4 10.7 7.1 21.8 11 32.5 7.8 21.4 14.8 43.1 25.5 63.3.2 1.3.4 2.7.7 3.9z"/>
|
||||||
|
<path d="M1027 1125c2.9 12.5 7.4 24.6 11.1 36.9 3.2 10.4 6.5 20.8 9.8 31.2-5.8-2-11.1-4.9-16.1-8.6-9-6.8-18.6-12.4-26.8-20.3-9.1-8.7-16.4-18.7-23.6-28.7-9.8-13.6-18.5-28-24.4-43.7-6.4-16.9-13.9-33.3-19-50.7.5-1.4 1-2.8 1.8-5.2 2.7 6.8 7.3 11.4 10.9 16.8 5.2 7.8 10 15.9 15.8 23.4 3.9 4.9 7.6 9.8 10.4 15.5 2.4 4.8 5.3 9.4 9.6 13.2 5.3 4.7 6.8 12.1 11.5 17.2 6.5 7.1 13 14.3 23.1 16.7 3.4.8 5.1.3 4.9-3.6-.2-3.7 0-7.3 0-11 .9-.3 1.4-.2 1 .9z" class="stj26"/>
|
||||||
|
<path d="M1111.9 1238.9c5.3 2.4 2.2 7.1 3.2 11-4.3-3-2.7-7.3-3.2-11z" class="stj8"/>
|
||||||
|
<path d="M1032.1 1130.9c-1.7-.8-3-2-3-4 0-1.6-.7-3.8 1.3-4.2 1.7-.3 2.6 1.5 2.6 3.4-3.6 1.1.2 3.4-.9 4.8z" class="stj26"/>
|
||||||
|
<path d="M850.2 725.6c-5.2 2.9-6.8 8.6-11.1 13.7.4-5.5 3.2-8.7 5.4-12.1 1.7-2.6 4.3-4.7 4.6-8.1.1-.9.7-1.6 1.6-1.7 1.3-.2 1.6 1 2 1.9 1.3 2.8 1.9 5.7-.6 8.3-.9.9-1.7 2-1.7 3.5 1.1.4 1.4-.6 2-1 1-.7 2.1-1.7 3-.4.9 1.3-.8 1.8-1.6 2.6-3.6 3.4-7.2 6.9-10.8 10.3-.7.7-1.5 1.8-2.5.9-1.2-1-.3-2.2.6-3 4.6-4 5.1-10.5 9.1-14.9zM847 747c-.6-.5-1.4-1-1.7-1.7-.6-1.3-.5-2.6.7-3.6.3-.3 1.1-.4 1.3-.2 1.3 1 .8 2.3.3 3.6-.3.6-.4 1.3-.6 1.9z" class="stj6"/>
|
||||||
|
<path fill="#201d1c" d="M1102.1 1318c1.3 0 2.7-.2 4 0 4.7.7 6.4 5.4 3.4 9-2.9 3.5-10.3 5.5-14.1 3.4-2.6-1.4-4.5-3.8-4.2-6.9.3-2.9 2.8-4.5 5.4-5.2 1.7-.5 3.6-.3 5.4-.5.1.1.1.2.1.2z"/>
|
||||||
|
<path d="M1073.3 1310.4c-1.2-.4-2.5-.8-3-2.2-.3-.9.3-1.8 1.2-1.7 1.3.2 2.2 1.3 2.8 2.5.3.8-.2 1.3-1 1.4z" class="stj16"/>
|
||||||
|
<path fill="#aaacb0" d="M967.9 1197c.4-5-.5-10.2.7-15.4 8.2 6.8 11 18.4 7.3 28.6-2.4-4.5-6.4-8.2-8-13.2z"/>
|
||||||
|
<path d="m1027 1125-1-1-3.9-12.9c4.9-.9 9 2.8 11.6 10.8-3.9-2.1-5.4.3-6.7 3.1zm17.9 8.9c-1.9-.2-1.9-1.5-1.8-2.9 0-.8.3-1.8 1.4-1.5 1.4.4 1.9 1.8 2.1 3.1.1 1.1-.8 1.3-1.7 1.3z" class="stj13"/>
|
||||||
|
<path fill="#b6b7ba" d="M979.8 1180.6c-2.8-4.1-5.1-7.4-7.3-10.9-.9-1.3-.6-2.9 0-4.3.7-1.7 1.3-3.5 2.3-5 1.8-2.7 1.8-7.4 6.1-7.4 2.5 0 6.5 11.1 5.4 14-.1.3-.3.6-.4.9-1.9 3.9-3.8 7.8-6.1 12.7z"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" id="Layer11" x="0" y="0" style="opacity:1;z-index:1" viewBox="0 0 1920 1920">
|
||||||
|
<style>
|
||||||
|
.stk0{fill:#d6d6d5}.stk1{fill:#adb0b4}.stk2{fill:#bfbfbf}.stk6{fill:#d4d3d3}.stk7{fill:#8a8d90}.stk10{fill:#c3c3c4}.stk16{fill:#b1b3b5}.stk27{fill:#a0a3a7}
|
||||||
|
</style>
|
||||||
|
<g id="Group_2">
|
||||||
|
<path d="M1211.5 1008.3c-.1 0-.2-.1-.3-.1-9.4.6-18.8-.8-28.2 3.8 9.4-4.7 18.8-3.2 28.2-3.8-3.3-1.4-23.4-1.5-30.5 4.7-.8.7-1.8 1.4-2.7 2.2-.3 1.6-.3 3.3-.4 5-1.1 16-.7 31.9-.3 47.9.2 8.2 1.2 16.3 1.2 24.4 0 2.8 1 5.2 3.8 6.5 7 .5 13.8 1.6 20.4 4 4.2-1.2 4.9-5.2 6.2-8.5 2.6-6.5 3.8-13.6 7.4-19.6 7.9-13.2 11.5-27.5 13.1-42.6.2-1.8 0-3.7 1.5-5.2-3.7-9-10.1-15.4-19.4-18.7z" class="stk0"/>
|
||||||
|
<path d="M778.2 1077.1c-1.4 2.4.5 4.1 1.4 5.9 2.5 4.9 2.8 9.8.4 14.8-.6 1.3-1.6 2.6-1.2 4.2.7.6 1.4.6 2-.1 1.8-1.5 3.6-3 5.6-4.7.5 1.7.9 3 1.2 4.3-1.1-13.7-1-27.4-4.4-41.1.4 6.2.3 12.1-5 16.7z" class="stk1"/>
|
||||||
|
<path d="M1202.8 1102.1c3-1.8 3.8-5 4.9-7.9 3.4-9.1 6.7-18.2 11.2-26.9 5.5-10.7 8.5-22.6 9.1-34.9.1-2.2-.6-4.9 2.9-5.3 4.8 12.2 2.9 24.8 1.4 37.2-1.2 9.3-2.3 18.7-5.4 27.7-4.3 12.3-10.8 23.6-17.5 34.7-4.6 7.6-12.5 10.8-21 9.9-9.7-.9-17.5-5.8-20.4-15.7-4.4-14.8-8.2-30-7.6-45.5.7-17.2 2.3-34.4 9.7-50.4 1.8-3.9 4.2-7.5 8-10 1.4 1.4 1.3 3.1 1.2 5-1.8 19.7-.2 39.5 0 59.3.1 4.4.9 8.8.8 13.3-.1 2.7 1 4.4 3.3 5.6-.3 1.8-1.9 2.1-3.2 2.8-7.8 4.2-11 9.6-9.8 16.7 1.1 6.9 7.7 13.3 15.2 14.7 10.3 2 19.9-2.8 23-11.2 1.8-4.9.3-9.1-2.3-13.2-1.4-1.9-3.7-3.2-3.5-5.9z" class="stk2"/>
|
||||||
|
<path fill="#cecece" d="M778.9 1101.9c.7 0 1.3 0 2-.1-6 7.8-18.8 9.6-28.5 3.6-8.2-5.1-11.7-12.3-10.7-22.3 1.3-12.5 2.2-25.2 5.5-37.3 4.9-18.4 13.9-35.2 24.5-50.9 1.8-2.7 4.6-4.3 7.2-6 2.3 5.7 1 11.8 1.8 17.7 1.5 11 1.5 22.1 2.3 33.2.6 9.1 1.5 18.1 1.9 27.2.2 4.9-1.7 9.1-6.9 10.9-2.3.6-3.6-1.3-5.3-2.2-6.4-3.7-13.1-4.8-20-1.6-7.1 3.3-9.9 10.1-7.2 17.4 4.1 11.2 17.3 16.8 28.3 12 1.7-.6 3.1-2 5.1-1.6z"/>
|
||||||
|
<path fill="#1b2127" d="M1202.8 1102.1c1 1.1 2.1 2.1 3.1 3.2 7.3 8.1 5.9 19.3-3.2 25.3-9.7 6.5-23.7 4.1-30.8-5.2-6.1-8.1-3.9-19.1 5.1-24.4 2-1.2 4.2-1.9 6.2-2.9 7.1-1.1 13.6.4 19.6 4z"/>
|
||||||
|
<path fill="#1a2026" d="M778.9 1101.9c-12.6 10.2-28.5 3.1-33.7-7.1-5.7-11.2.8-22.8 13.3-23.9 7.6-.7 14 1.9 19.5 7.1 6.8 9.3 7 15.1.9 23.9z"/>
|
||||||
|
</g>
|
||||||
|
<g id="Group_1">
|
||||||
|
<path d="M1584.3 1013.1c-49.9-13-99.8-26-149.7-38.9-43.7-11.2-87.4-22.2-131.1-33.5-28.6-7.4-57.1-15.1-85.7-22.3-4.6-1.2-6.4-2.7-6-7.6.5-5.3-.3-10.7-3.3-15.3-3.1-4.8-7.5-4.8-10.8-.2-2.7 3.7-4.3 7.9-5.1 12.3-.7 3.6-2.1 4.3-5.6 3.4-13.5-3.5-27-6.6-40.5-10-22.7-5.7-45.8-9.7-67.4-19-4.5-1.9-9-3.3-9.1-9.3 0-1.8-1.6-2.9-2.8-4-1.5-1.3-2.4-2.8-2.2-4.8-2.7.5-2.8 3-3.4 4.9-5.1 14.9-9.2 30.1-13.9 45.1-2.8 9-6.2 17.8-8 27.1-.1 2-.1 3.9-.6 5.9-6 22.6-12 45.1-18 67.7-2.9 10.6-5.4 21.3-8.8 31.8-.3.8-.6 1.6-.7 2.4-.3 1.6-1 3.5 1.1 4.4 1.7.7 2.8-.7 3.7-1.9 1.9-2.4 3.2-5 4.4-7.8 3.5-8.5 7.4-16.8 10.9-25.2.8-2 1.7-4 3.5-5.3.4-.9 1.1-1.7 1.2-2.6.9-4.5 2.9-7.6 8.2-6.4 1.2.2 2.5-.1 3.1-1.2 2.1-4.4 6.1-3.7 9.8-3.7h13.4c2.2 0 3.9-.1 5.3-2.5 1.6-2.8 10.6-2 12.9.8 3.2.9 6.5-.6 9.7.7 3.1 2 1.7 5.2 1.7 7.8 0 5.7.4 11.2 6.1 14.9-2.5.3-4.4-.3-5.7 1.6.9.3 1.9.9 2.8.8 5-.6 6.7 1.7 6.2 6.4-.2 1.6-.5 3.4 1 4.7 2.8-5.4 5.9-11.2 4.3-17.3-1.6-5.9 0-10.7 2.3-15.7 1.5-3.3 3.7-4.5 7.1-3 2.4 2.5-.3 6.5 2.5 8.9 1.8-2.6 1-5.5.9-8.2-.1-3.3 1.4-4.1 4.2-3.7 3.4.5 6.9.9 10.4.9 13.6-.1 27.3 0 40.9.1.9 0 2.4-.5 3.3 0 10-1.2 20-1.9 29.6.4.9-.2 1.9-.2 3 0 13.5 2.5 27.1 4.4 40.7 6.5 14.9 2.3 29.8 4.7 44.7 6.9 2.7.4 3.4 1.4 3.3 3.8-.1 3.2 1 6.2 1.8 9.2.5 1.7 1.2 3.5 2.9 3.6 2.2.2 3-1.9 3.6-3.5 1-2.5 2-5 2.5-7.6.5-2.7 1.5-3.4 4.4-2.9 11.6 2 23.2 3.7 34.8 5.5 16.5 2.6 33 5.2 49.5 7.7 13.6 2.1 27.1 4.4 40.8 6.1 3.9.5 5.3 1.7 6.2 5.3 1.1 4.5 2.9 8.8 4.5 13.2.8 2 1.7 4.6 4.2 4.4 2.6-.2 2.8-3 3.5-5 1.2-3.6 2.5-7.3 2.9-11.1.5-4.1 2.1-4.4 5.2-2.7 2.9-1.9 5.9-2.7 9.4-2.6 2.8.1 5.7.1 8.4-.6 7.4-1.9 14.6-5.4 22.8-2.9 2 .6 3.9.6 5.5 2.5 2.8 3.6 6.7 5.8 11.3 5.3 6.2-.6 12.2.7 18.3 1.2 2.5.2 4.9.8 7.4.6 1.2-.1 2.4-.6 2.8-1.8.4-1.4-.9-2-1.8-2.6-1-.6-2.1-.9-3.2-1.3-9.1-3.3-18.6-5.2-27.6-8.2 3.8-3.3 8.6-4.9 12.8-7.5 4.1-2.5 9.1-4.1 14-4.5 8.6-.7 17.3-.5 25.8 1.6 1.8.5 4 1 5.2-1.4-.6-.2-1.1-.7-1.7-.8z" class="stk0"/>
|
||||||
|
<path d="M777.9 974.1c-10.8-.1-21.4-2.2-32.2-3.1-4.7-.4-7.4 1.4-9.5 5.4-2.5 4.7-5.4 9.2-8.2 13.7-1.6 2.5-3.7 4.7-6.4 6.2-2.3 1.3-4.8 2.7-7.5 1.2-2.9-1.6-3.1-4.3-3.2-7.3 0-6.3 3.1-11.8 4.2-17.9.2-1.2 1.5-2.6.2-3.7-1.4-1.2-2.7 0-4.1.6-2.8 1.2-5.9 2.4-7.2-1.9-.5-1.8-1.4-1.3-2.6-1.2-22.9 1.3-45.8 1.8-68.8 2.3-5.4.1-10.9 1-16.4.7-4-.2-6.7 1.3-8.8 4.4-2.4 3.5-5.5 6.3-8.6 9-1.2 1.1-2.7 2.1-4.5 1.2-1.6-.8-1.5-2.5-1.5-4 0-1.3-.1-2.7.1-4 1-5.7 1-5.8-5.1-5.7-18.5.3-36.9.4-55.4 1.2-21.3.9-42.5 1.9-63.8 1.9-2.4 0-4.1.6-5.5 2.6-4.8 6.5-11.1 11.4-17.5 16.2-1.6 1.2-3.3 1.7-5.1.9-1.9-.8-1.5-2.7-1.7-4.3-.4-3.6 1.4-6.5 3.1-9.3 2.4-4 1.6-5.6-3.1-5.2-11.4-.4-22.8-2-34.2-.8-4.8.5-9.6.8-14.4-.7-1-.3-2-.6-2.9-.2-5.4 2.5-10.8 1.1-16.2.3-6.9-1-13.9-.9-20.9-1.4-2.8-.2-7.2.3-7.4-3.3-.2-3.5 4-3.7 6.9-4.4 2.2-.5 4.6-.7 6.9-2.2-4-6.1-10-8.5-16.5-9.8-4.7-.9-9.3-2.5-14.2-2.6-1.9 0-3.5-.9-4.1-3 6.2-2 12.7-2 19-2.9 17-2.5 34.1-4.7 51.1-6.9 14.9-1.9 29.9-3.4 44.9-5.2 17.7-2.2 35.4-4.6 53.2-6.8 15-1.8 29.9-3.4 44.9-5.2 14.9-1.8 29.8-3.9 44.8-5.7 14.6-1.8 29.2-3.4 43.9-5.2 14.6-1.8 29.2-3.8 43.8-5.6 11.8-1.5 23.7-2.9 35.5-4.3 15.1-1.9 30.2-3.7 45.3-5.6.2 0 .3-.2.5-.1 10.5 1.4 16.5-4.5 21.1-12.7 2-3.6 5.6-5.6 8.5-8.3 3.9-3.6 8.8-1.9 11.7 2.4 1.8 2.6 3.1 5.7 2.8 8.9-.4 4 1.5 4.9 5 4.5 10-1.1 20.1-2.1 30.1-3.2 10.3-1.2 20.7-2.8 31-3.7 15.4-1.3 30.5-3.8 45.5-7.5 2.1-.5 4.4-.1 6.2-1.7 2 2.8-.2 5.1-1.1 7.3-5 11.6-9.9 23.2-14.7 34.9-3.8 7.3-6.4 15.1-10.1 22.5-6.6 14.3-12.6 28.8-18.7 43.3-1.9 4.6-5.1 8-10.1 9.4-1 0-2.1-.1-3.1-.3-6.7-.1-9.2-4.4-11-10.1-5.4-16.6-10.1-33.4-16-49.8-2-5.8-5.1-10.5-11.8-11.3-5.4-.7-8.9 1.1-11.5 5.8-7.2 13.1-13.6 26.6-20.3 40-1.1 2.3-1.8 4.6-2 7.1 0 1.5-.1 3.4-2.3 4.2z" class="stk6"/>
|
||||||
|
<path d="M1092 759c.6 4.7-3.2 8.4-3 13-2.9 5.9-5.6 12.1-7 18.4-1.1 5-4.1 8-6.8 11.5-2.4 3-3.9 5.9-2.5 9.7.2.5.2 1 .3 1.5.2 1.9.3 4.1-1.8 4.7-2.8.8-1.7-2.5-3.1-3.6-7.7 16.9-14.4 34-21.3 51.1-9.2 22.7-16.7 46-25.8 68.7-1.4 3.6-2.6 7.2-3.8 10.8-.6 1.7-.6 4.1-3.4 4.3-2.4-3.4.3-6.8 0-10.2-6.9 9.4-12.4 19.8-20.5 28.3-8.8 9.2-17 19-27 27.1-8.8 7.1-18.1 12.2-28.8 15-7.2 1.9-12 6.9-16.3 12.6-1.6 2.2-3.2 4.2-5.3 5.9-.8.6-1.5 1.4-2.6 1.1-1.3-.5-1.3-1.8-1.4-2.9-.1-1.2.2-2.3.4-3.5 2.3-11.2 4.9-22.5 6.7-33.8 1.9-12.1 2.5-24.3.2-36.6-1.3-7.3-2.1-14.8-3.3-22.1-2.2-13.5 1-25.8 3.9-38.4 6.8-30.1 19.3-57.9 34.6-84.6 4.3-7.5 7.8-15.5 12.3-22.8 8.6-13.8 16.8-28 29.8-38.4 3.6-2.9 6.2-6.8 9.8-9.9 6.8-5.8 14.5-9.3 22.8-11.9 7.8-2.4 14.5-1.1 20.5 5.1 5.7 5.8 10.3 12.2 13.8 19.4.3 3.3.9 5.8 4.3 8.2 4.6 3.1 6.7 8.8 9.6 13.6.2 3.9-.4 7.8-.2 11.8 2.4-6.2 4.7-12.3 6.1-18.7 1.2-5.6 4-10.8 4.1-16.7 0-.7.3-1.3 1-1.5.9-.3 1.7.3 2.1 1.1 1.1 2.1 1.8 4.5 1 6.7-.9 2.5-1.1 5.2-2.1 7.8 1-.6 1.1-2.4 2.7-1.8z" class="stk7"/>
|
||||||
|
<path fill="#7f8286" d="M1062.9 749c-3.1-2.3-3.5-6.3-5.7-9.2-3.5-4.7-7.4-9.1-11.9-12.7-5.1-4.1-11.1-3.4-17-1.6-9.5 2.9-18.2 7.6-25 14.7-9.4 9.9-19.5 19.1-27 30.9-11.6 18.4-21.7 37.6-31.7 56.8-8.2 15.8-13.8 32.7-20 49.3-3.2 8.5-4.3 17.3-6.3 26-1.4 6.1-1.3 12.8-3.2 19.1-.1.4-.1 1.1.2 1.4 4.2 4.8 1 10.9 2.7 16.1 1.4 4.4 1.6 9 2.6 13.5 1.4 6.6 2.2 13.5 1.5 19.9-1 9-1.5 18.1-4 26.9-2.1 7.5-3 15.2-4.6 22.8-.4 1.8-.8 3.6-.2 5.7 5.1-3.4 7.7-9 11.7-13.2 3.9-4.1 8.6-6.8 13.7-7.7 5.4-1 9.7-4.1 14.8-5.4 5.2-1.3 7.8-6.5 12.1-9.4 11-7.5 19.1-18.2 27.9-28 7.5-8.3 13.2-17.8 19.1-27.1.5-.8.8-2.2 2-1.8 1.4.4 1.3 1.7 1 2.9-.8 3.4-1.8 6.7-1.7 10.3.2 1 .2 2-.2 3-5 16.1-11.2 31.7-17.5 47.2-11.1 27.5-21.1 55.3-32.5 82.7-6.2 14.8-13 29.3-21.8 42.5-14.2 21.3-29.7 41.7-52.4 55.3-7 4.2-13.3 9.4-20.8 12.8-1.9.9-3.8 2.3-6 .7-.5-1.8.5-3.2 1.1-4.7 8.1-22.6 15.3-45.6 23.4-68.2.7-1.9 1.2-3.8 1.6-5.7 1.5-6.8.3-8.9-6.3-11.1-1.3-.9-1.8-2.3-2.2-3.8-8.3-27-16.8-53.9-25.3-80.8-1.6-5.1-1.1-9.7.8-14.5 8.5-22.3 18.1-44.2 27.3-66.2 4.2-8.1 7.5-16.6 10.7-25.1 4.6-13.3 10.9-26 16.1-39 .4-.9.5-1.9.8-2.8 15.2-34.9 30.3-69.7 45.5-104.6.8-1.9 1.4-4.1 3.3-5.5 5.7-8.1 11.2-16.4 14.8-24.8-.7.6-.8 3.4-3.2 2.8-1.2-.3-.8-1.9-.2-3 0-.8 0-1.6.9-1.9 2.7-3.7 6.6-6.4 9-10.4 1.8.1 3.1-.9 4.3-2 13-12.1 27.5-21.5 44.2-27.6 1.3-.4 2.7-.2 4.1-.6 16.6-.4 29.7 6.4 39.2 19.8 2 2.8 4.8 5.7 4.7 9.6-.9 1-1.7.6-2.8-.4 1.8 2.8 3.2 5.4 4.4 8.1.5 1.2 1.3 2.7-.3 3.5-1.2.7-2.1-.5-2.9-1.3-.9-.9-1.7-2.1-2.6-3.2.3 1.9.9 3.8-1.8 4.3-1.5.3-2.2 1.4-1.3 2.4 1 1.1.2-1.3 1.3-1.1.5.1 1 0 1.4.3 2.9 2.5 4.7 5.7 5 9.4.3 3-1.6 4.9-4.5 5.6-2.3-1-2.3-3.8-4-4.9.1.6 1.1 1.2 1.5 2.1.4 1 1.4 2.2.4 3.2-1.1 1-2.2.1-3.1-.6-1.6-1.9-3.2-2.1-5.1-1.7z"/>
|
||||||
|
<path fill="#c8c8c9" d="M934.8 1220.7c3.8 4.5 9.5 5.2 14.5 7.1 40.1 15.6 80.3 31 120.4 46.5 28.2 10.9 56.4 21.7 84.6 32.7 4 1.6 7.9 3.5 11.7 5.6 6.3 3.5 8.9 8.7 7.8 15.8-1 6.4-2.2 12.7-3.7 19-1.9 8.3-6.2 10.8-14.5 9.2-9.6-1.9-19.2-4-28.8-5.6-4.7-.8-6.3-3-5.8-7.4.3-2.9.7-5.8 1.1-9.5-2.3 3.2-2.5 6.3-2.8 9.1-.4 4.7-3 5.1-6.5 4.5-10.6-1.8-21.2-3.6-31.9-5.4-24.5-4.2-49-8.3-73.5-12.5-20.4-3.5-40.8-7-61.3-10.4-22.7-3.9-45.4-7.7-68.1-11.6-5.7-1-11.5-1.8-17.1-3.3-3.1-.8-4.8 0-7.1 1.9-5.3 4.5-10.2 9.5-16.1 13.2 1-5.9 3.7-11.2 5.4-16.9 7.9-7.2 11.9-16.9 17.4-25.7 6.2-9.9 11.6-20.4 17.5-30.4 4.1-4.2 6.6-9.5 9.6-14.4 4.3-6.9 8.3-13.9 12.5-20.9 1.5-2.6 3.3-5.3 7.1-3.7 1.3.6 2.4 1.5 3.7 2.2 4.6 2.4 8.5 1.5 11.7-2.5 2.7-3.4 5.3-6.8 8.2-10.1.9-1 1.8-2.1 3.3-1.8 1.6.4 2 1.8 1.9 3.1-.2 6 1.7 12.4-2.5 17.9-1.3 2.1 0 3.2 1.3 4.3z"/>
|
||||||
|
<path d="M788.9 1295.1c-2.1 3.5-5.3 3.9-9 4-46 1.1-91.9.3-137.9 1.2-47.1 1-94.2.4-141.4.8-2.9 0-6.5 1-5.8-4.8-2.2 5.8-6.6 6.5-11.2 6.6-11.2.1-22.3.2-33.5.1-6.7-.1-8.7-2.2-6.2-8.3 6.1-14.9 11.8-30.6 30.3-34.6 7-1.5 14-2.8 21-4.1 22-3.9 44-7.8 66.1-11.6 26.1-4.5 52.3-8.9 78.4-13.5 24-4.2 48-8.4 72-12.7 24.6-4.4 49.2-8.8 73.9-13.3 1.6-.3 3.2-.8 4.9-1 3.5-.5 5.4-2.2 4.8-6 2.8.9 2.3 3.4 2.4 5.4.5 12.2-.6 24.3-2.3 36.3-1.7 12.7-3.3 25.4-3.7 38.2-.3 4.2.1 8.5-.9 12.8-.4 1.6-.4 3.3-1.9 4.5z" class="stk10"/>
|
||||||
|
<path d="M883.1 1103.1c-8.7-27.7-17.4-55.4-26.2-83.1-1.4-4.3-2.6-8.4-.8-13 9-23.1 18.1-46.1 27.8-68.9.8-1 .7-2 0-3-.4.5-1 1-1.2 1.5-6 14-11.9 28.1-17.9 42.2-1.7 4.1-4.8 6.9-9 8.4 4.3 6-1.5 10-2.6 16.1-1-2.5-1.4-4.1-1.9-5.6s-.7-3.2-1.4-4.7c-1.7-3.3-.1-4.7 2.8-5.5l.3-.6c-4-.6-7.5-1.6-8.8-6.3-2.8-9.9-6.1-19.6-9.2-29.4-3-9.3-5.6-18.8-9.5-27.8-2.5-5.8-7.3-8.2-13.5-8.2-4.8 0-8.5 2-10.4 6.3-7.8 17.6-19.9 33.3-23.6 52.8-.1 5 1.7 9.9 1.1 14.9-.7 1.9-.6 3.9-.5 5.9 1.1 21.3 3.1 42.5 4.7 63.7 0 .6.1 1.2.1 1.8 3.5 13.7 3.3 27.4 4.4 41.1.1.2.1.4.2.5 2.4-2.4 1.4-5.3.9-8-1.3-6.2.2-11.1 5.4-14.9 2.1-1.6 3.6-1.7 5.7-.1 4.5 3.4 9.5 6.2 14.8 8.3 10.7 4.2 20.9 9.2 29.7 16.9 6.2 5.4 13.9 8.5 21.5 11.4 4.1 1.5 8.4 2.1 12.8 1.3 3.3-.6 6.1-2.3 7.1-5.6.8-3.2.4-6.3-2.8-8.4z" class="stk1"/>
|
||||||
|
<path fill="#cfcecf" d="M1474.9 1036.1c.6-3.4 3.2-4.2 5.9-4 8.2.7 15.8-1.2 23.2-4.2 2-.8 3.8-1.2 5.7 0 3.3 2.3 7.4-1 10 .6 2.4 1.6 3.5 5.4 6.8 6.7 2.4.9 4.8 1.4 7.6 1.1 7.4-.8 14.8 1.3 22.2 2 1.4.1 2.6.5 4.2-1.1-12.1-4.9-24.4-7.6-37-10.9 6.4-3.3 12.2-7.4 18.4-10.2 11.4-5.1 23.7-5.2 36-2.7 2.7.5 5.3 2 8.2.5 13.3 2.7 26.4 6.5 39.5 10.1 23 6.3 46.4 10.9 69.8 15.8 3.8.8 7.2-1 10.7-1.9 1.2 1 1.2 2.3 1.2 3.6-.1 7.7 1.2 15.2 2.7 22.7.6 3 .7 5.9-.8 8.7-5.3 2-10.9 1.5-16.2.6-40.1-7-80.1-14.3-120.1-21.5-14.7-2.6-29.2-6.5-43.9-7.6-12-1-23.8-3-35.7-4.7-6.3-.7-12.8-.3-18.4-3.6z"/>
|
||||||
|
<path fill="#cccccd" d="M322 946c4.9 3 10.6 2.7 15.9 3.5 9.4 1.4 16.3 6 22.7 12.6-5.5 2.7-12 2-17.9 5.7 3.3 1.5 6 2.3 8.9 2.2 9.7-.5 19.1 1.3 28.7 2.3.6.1 1.4.6 1.9.4 10.6-3.6 21.5-.2 32.3-1.2 6.9-.7 14.4-.3 21.5.5 1.4.2 2.7.1 2.9 1.9-1.8 1.3-3.9 1.2-5.9 1.1-3.9 1.2-8.1-.3-12 .9-7 0-14 .1-21 .1-4.7.7-9.4.8-14.1 0-16.9.5-33.8 1.6-50.7 2.8-7.3.5-14.6.5-21.9 1-15.9 1.1-31.9 1-47.8 2.3-16.4 1.4-32.8 1.5-49.3 2-11.7.3-19.6-4.6-25.3-14.2-6-10-10.6-20.7-15-31.5-1.2-2.9-1.7-5.8.7-8.4 2.5-2.6 5.7-2.7 8.8-1.8 6.8 2 12.4 6.4 18.4 10 7 4.1 13.6 8.9 21.1 12.3 7.2 3.2 14.6 4 22.4 2.9 8.5-1.1 17.1-2 25.7-2.4 13.9-.6 27.7-3.1 41.5-4.6 2.6-.1 5.1-.3 7.5-.4z"/>
|
||||||
|
<path fill="#504f52" d="M787.8 1102.1c.8-5-1.2-9.9-.9-14.9.2-2.4 7.5-11.7 9.7-11.8.7 0 1.5.5 2.1 1 7.8 6.6 17 10.7 26.6 13.8 9 3 14.9 10.4 22.6 15.2 7.8 4.8 15.7 9.5 25 10.5 10.4 1.1 13.5-3.2 10.1-12.8 4.3-.8 7.7 1.8 7.9 6.1.2 5.8-2.3 11-4.1 16.3-6.9 20.4-13.9 40.9-21 61.3-.8 2.2-1.9 4.2-2.9 6.3.4 1.5-.1 2.6-1.3 3.3-1.1.2-2.2-.1-2.4-1.2-1-4.4-3.9-7.9-5.2-12.1-.2-2.2 1-3.8 2-5.5 4.8-8 8.8-16.5 13-24.8 2-3.9 3.8-7.7 3.7-12.3-.1-1.7 0-3.9 2.9-3.6 1.4.1 1.9-1.2 2.4-2.2 1.1-2.7 2.3-5.4 3.5-8.1-5.7 7.3-12.1 13.8-19.5 19.2-5.3 3.9-10.8 7.3-17.3 8.6-2.7.5-4.9 2.2-7 3.8-9.1 6.7-18.8 6.2-28.5 2.3-3.5-1.4-6.5-1.8-10-.4-2.7 1-6 2.3-7.2-2.2-1.3-18.6-2.7-37.2-4.2-55.8z"/>
|
||||||
|
<path fill="#afb1b5" d="M792.1 1157.9c3 4.1 6.4 1.2 9.3.1 2.1-.9 3.6-1 5.6 0 11.1 5.8 22.1 6 32.1-2.2 3.4-2.8 7.4-2.4 10.9-4.1 12.3-5.9 21.8-15 30-25.6.9-1.1 1.8-3.3 3.2-2.4 1.7 1.1.3 2.8-.5 4.3-1.7 3.2-3.3 6.5-4.8 9.9-1.1 2.5-2.4 2-4.5-1 1.8 7.5-1.1 12.7-3.8 17.8-4.9 9.4-9.9 18.8-14.8 28.1-1.6 5.7-6.1 9.7-8.7 14.9-2.8 5.6-6.9 10.6-10.3 15.9-2.1 3.3-5 5.1-8.8 5.9-8.4 1.9-16.8 1.8-25.2-.1-2.9-.7-3.6.1-3.3 2.8.6 5.1-.1 10.3 1.4 15.3.8 2.6 1 5.6-.5 8.3-1.8 1.2-1.8-1.2-3.2-1.6-1.7 10.4 1 19.8 5 29.1.7 1.7 2.1 3 2.1 5-2.5 3.2-6.2 4.8-9.2 7.4-1.9 1.7-3.7 1.2-3.7-2 0-1.8.4-3.7-.3-5.4-.4-9.5 1.1-18.8 2.3-28.1 2.1-16.6 4.5-33.1 3.5-49.9 0-.8-.5-1.5-.8-2.3-1-13.3-2-26.7-3-40.1z"/>
|
||||||
|
<path fill="#717377" d="M1077 723c-7.4-16.9-20.6-25.9-38.4-29-1.9-.3-3.8 1.7-5.6 0-1.8-1.6-1.1-3.9-1.5-5.9-.4 2.1.2 4.3-1.5 5.9-.2.8-.4 1.6-1.3 1.9-16.7 5.4-30.5 15.4-43.2 27.1-1.2 1.2-2.4 3.1-4.5 1-.7-1.7.7-2.8 1.4-4 .7-1.1 1.3-2.3 2.2-3.7-1.6 1.3-2.1 3.2-3.7 4.2-.9.6-2.1 1.3-2.1-.8 7.9-15.5 18.7-28.2 34.8-35.8 31.6-14.9 68.4 1.8 78.3 35.7 3.8 13.1 4 26.2.1 39.3-.5.7-1 1.3-1.4 2-.4.7-.7 1.5-1.5 3.3-2.6-6.8 3.9-12.9-.5-19.1-.3 6-2.5 10.9-3.7 16-1.6 7-4 13.7-5.8 20.6-.4 1.5-.7 3.3-2.6 3-2.4-.5-1.7-2.7-1.1-4.1 1.4-3.5-.3-7.3 1.6-10.7-.8-.9-1.4-1.8-1.5-3 .4-2.3 1.7-4.6.6-7.1-.4-1.6-1.1-3.1-1-4.8.6-2.3 1.2-4.4 4.5-4.1 2.1.2 2-1.8.8-2.6-3.3-2.5-2.9-6.9-5.2-9.9-.7-1-.9-2.2.3-3.1 1.5-1.1 2.5 0 3.3 1 1.1 1.4 1.8 3 3 5.1-1.2-2.5-2.5-4.7.8-5.5 2.1-.6.4-1.4.3-2-.6-2.1-2.1-3.7-3.5-5.4-1.2-1.6-3.1-3-2.4-5.5z"/>
|
||||||
|
<path d="M1013.1 951c0-.8.1-1.6.9-2.1 4.6-11.9 9.3-23.7 13.7-35.6 4-10.7 7.4-21.6 11.5-32.3 8.8-23.3 18.6-46.2 28.4-69 .2-.6.7-1 1.3-1.8 2 2.1.3 5 1.6 7.1 2-1.3 1.8-3.2 1.1-4.5-2.1-4.4-1.3-7.9 2.4-10.8 1.9-1.5 2.4-3.2 1.5-5.4 1.6-.3 1.1 1.3 2.3 1.4.1-1.3.2-2.6.3-4 1.3.3.3 1.8 1.8 1.9-1.3-8.5 5.8-14.5 6.6-22.5.1-1 1.4-1.3 2.5-1.3-2.8 15.2-7.3 30-11.2 44.9-4.1 15.8-8.6 31.4-12.9 47.1-4.4 10-6.8 20.7-10.1 31.1-4.5 14.3-8.9 28.7-13.3 43-.3.9-.3 1.9-.5 2.9-1.7 7.3-3.9 14.3-5.9 21.5-.4 1.6-.8 3.7-2.8 3.5-2-.2-2.3-2.2-2.4-3.9-.3-4-.1-8 1.6-11.8.5-1.2 1.2-3.1 2.6-2.5 1.5.6 1.6.8 1-.8-.4-1.3-.8-3.3 0-3.8 3.2-2.2 2.6-6.2 3.4-8.8 1.5-5.2 2.4-10.9 4.6-15.9 3.1-7.1 3.7-14.9 6.7-22.1 2.3-5.5 4.8-11.9 2-18.3-.2-.5-.2-1-.3-1.5-.1-1.3-.5-3 1.1-3.4 1.7-.5 1.8 1.5 2.5 2.5-.6-1.8-1.5-3.5-1.7-5.5-.1-1.2-.3-2.6 1.1-3 1.4-.4 1.9 1 2.3 2.1.2.6.3 1.2.3 1.9 0-2.2-1.4-4.1-1.8-6.2-.2-1.4-.6-3.4 1.3-3.7 1.6-.3 1.6 1.7 2 3-.2-1.5-.5-2.8-1.4-4.5-2.9 2.2-3 5.7-4 8.3-12 32.5-23.3 65.2-34.1 98.1-1.5 4.7-3.7 9.3-5.2 14-.4 1.3-.5 3.6-3.1 2.8-.6-.9-.9-1.9-.6-2.8 3.2-9.7-.8-19.9 2.9-29.3zm8.9 64c-2 10.7-5.3 21.1-8.3 31.6-.5 1.8-1.7 3.6-1.2 6 3.2-.9 4.1-3.8 5.1-6 4.3-9.3 8.3-18.8 12.4-28.2 1.1-2.5 1.8-5.1 5.1-5.4-7.4 25.1-16.2 49.6-27 73.4-3.6 7.8-7.6 15.6-14.1 21.6-.9-3.8 1.7-6.9 2.5-10.3.5-1.9 1.3-3.8 2-5.7-5.5 16.1-11.5 32-18.3 47.6-8.1 18.4-17.8 36-28.8 52.9-1 1.5-1.6 3.4-3.7 3.8-.7-.2-1.4-.6-1.4-1.2-.6-7.7-2.4-15.5 2.5-22.6 3.1-4.5 5.9-9.2 8.6-14 1.1-1.9 1.8-4.6 4.8-4.3 1.4.1.7-.7.7-1-.8-6.5 4.6-10.2 6.8-15.4.5-.4 1.6-.7 1.6-1.1-.3-5.2 4.5-8.5 5.2-13.5.5-3.4 3.1-6.6 4.5-10.1 1.4-3.8 2-7.9 3.7-11.6.8-1.8 1.2-3.8 2.5-5.3 1.1-1.3 1.5-2.9 1.3-4.7-.3-2.9-1.5-6.1 2.6-7.4.6-.2.5-1.2.5-1.8-.1-2.8-1.9-6.2 2.8-7 .5-.1.2.2.2-.4 0-7.3 8.8-12.2 5.6-20.4 4.1-2.9 1.6-8.8 5.7-12.2 2.1-1.8 2.6-5.6 3.6-8.5 2.7-8 5.9-15.9 7.8-24.2.3-1.5.5-3.9 3.2-3.4 1.6 2.6.4 5.9 1.5 8.8z" class="stk16"/>
|
||||||
|
<path fill="#6e7177" d="M790.2 1278.3c2 2-.8 6.1 1.8 6.9 2.4.7 3.7-3.2 5.9-4.4 1.7-.9 3.4-1.8 5.1-2.8 6.2-3.9 12.8-2.7 19.2-1.3 6.2 1.3 11.9 4.4 16.5 8.8 2.5 2.4 4.4 2.2 6.7-.2 5.2-5.4 9.8-11.3 14.4-17.2 5.1-6.5 11-12.5 15.8-19.3.8-1.2 1.8-2.5 3.6-2.1-4.5 7.5-6.9 16.1-12.4 22.9-6.5 8.1-9.1 18.4-15.8 26.4-2.1 2.5-4.2 5.1-6.8 7.2-7-2.1-11.5 2.2-15.4 6.6-5.4 6-11.7 7.8-19.2 5.8-1.4-.4-2.9-1.1-4.4-.9-8 1.1-11.5-3.4-13.6-11.2-.5 2.1-.3 3.8-1.7 4.6-1.7-4.3-.7-8.7-1-13.1.2-5.5 1.6-11.1 1.3-16.7z"/>
|
||||||
|
<path d="M1709 1073.1c-.3-11.8-4.4-23.2-3.1-35.1 8.2-6.1 16.5-12.2 24.7-18.3 1.8-1.3 3.7-2.5 5.9-1.2 2.1 1.2 1.5 3.5 1.5 5.5-.1 5.2-3 9.4-4.9 13.9-4.1 9.8-8.9 19.2-15.1 27.9-2.3 3.2-4.8 6.4-9 7.3z" class="stk2"/>
|
||||||
|
<path fill="#4c4b4c" d="M947.9 1195.6c22-33.2 37.9-69.4 52-106.6-2 6.3-3.9 12.7-5.9 19-10.3 29.2-22.5 57.6-39.1 83.9-6.2 9.9-12.9 19.6-20.1 28.8-1.5.4-3.1.5-4.1-.8-1-1.3.4-2.1 1-2.9 3.5-5.1 4.5-13.5 2.1-21.2-4.1 5.1-8.5 9.7-11.9 14.8-2.8 4.3-5.6 4.2-9.3 1.7-.8-.6-1.8-.9-2.6-1.4.2-3.9 3-6.5 5.3-9.1 4.5-4.8 8.5-10 12.8-15.1 2.4-2.8 2.8-5.5.9-8.5-.6-1.1-1-2.3-.9-3.6.2-1.1.6-2 1.9-2.1 2.9 1.5 3.1 4.6 4.3 7.1 1.2 3.9 2.6 7.7 3.1 11.8.2 5.1-.2 10.2.2 15.7 3.2-3.5 5-7.4 7.9-10.6.6-.5 1.9.2 2.4-.9z"/>
|
||||||
|
<path fill="#4d4d4e" d="M789.9 1308.1c.2-2.5.3-5.1.5-8.3 3.7 3.7 2.9 8.9 6.5 11.6 1.6 1.2 2.7 2.4 5.1 1.8 4.8-1.2 9.1 2.1 14 1.8 5-.2 8.2-2.8 11.7-6.1 4-3.8 7.6-9.2 14.7-7.7 1.4.3 1.5 1 1.8 1.9-1.5 5.8-2.8 11.7-6.4 16.7-5.5 4.9-11.2 9.5-18.2 11.9-10.7 3.6-19.5.3-25-9.5-2.5-4.3-4.3-9-4.7-14.1z"/>
|
||||||
|
<path fill="#151617" d="M1089.1 997.2c3.3-3.1 7.2-1.1 10.9-1.3 1.5 3.8.8 7.8.8 11.8 0 .9-.3 2.3-1.4 2-.6-.2-1.4-2.1-1.1.2 1.1 8.2-1.9 15.9-2.4 23.9-1.7 2.6-3.9 3.4-6.8 2.4-3.2-1.2-4-4-3.9-6.9.1-10.5-1-21.2 4.1-31.2 0-.1-.1-.5-.2-.9z"/>
|
||||||
|
<path fill="#18191a" d="M1110.8 1034c.2-2.3.1-4.4 1.4-6.9 1.9-3.7 3-8.3 1.1-12.9-2.8-6.8 2.4-12 4.7-17.5.9-2.1 5.2-.9 7.9-.8.6 5-.1 9.9-.7 14.8-1.2-1.5-1.6-3.2-1.2-5.1-.8 1.7-.4 3.5-.4 5.4.2 8-1.8 15.7-2.4 23.6-.1.8-.8 1.4-1.3 2.1-4.1 2.8-7 1.3-9.1-2.7z"/>
|
||||||
|
<path fill="#58595c" d="M1095.9 1033.9c.5-9 .9-18.1 1.4-27 2.1 0 1.1 1.9 2.7 2V996c2.4 2.1 2 5 2 7.7 0 3.7-.3 7.3.9 10.8.6 1.6.8 3.4 2.9 3.6 2 .2 2.7 1.6 2.4 3.1-.4 1.8-2.2.7-3.4.9-1.3.2-2.7.1-4 .2-2.4-.6-2.7 1-2.9 2.8-.2 2.9.1 6.1-2 8.8z"/>
|
||||||
|
<path d="M971 735.9c.1.7-.1 1.5.3 1.9 1 1 1.5-.1 1.6-.8.6-2.5 2.2-3.8 4.5-4.5-5 10.1-9.1 20.7-17.8 28.4 3.5-8.5 6.9-17 11.4-25z" class="stk7"/>
|
||||||
|
<path fill="#4d4b4b" d="M1119.9 1036.8c1.6-5.4 1.1-11.1 1.9-16.7.8-5 .9-10.1 1.9-15.2.1 1.6.3 3.1.4 4.7.5-4.6 1.3-9.1 1.8-13.7 2.9 3.4.1 7.4 1.1 11-.5 9-4.5 17.3-4.9 26.3 0 1.5-.4 3.1-2.2 3.6z"/>
|
||||||
|
<path d="M978.8 719.8c2.5 1.5 2-1.3 2.9-2 1.6-1.2 1.8-4 4.8-4.4-.5 4.4-3.1 7.5-5.5 10.7-.8 5.3-5.7 7-9.1 10 2.3-4.8 4.6-9.6 6.9-14.3z" class="stk7"/>
|
||||||
|
<path d="M386 976h14.1c-4.7 1.5-9.4 1.6-14.1 0zm35.1-.1c3.9-1.9 8-.5 12-.9-3.9 1.9-8 .6-12 .9z" class="stk6"/>
|
||||||
|
<path fill="#c2c3c5" d="M1022 1015c-3.8-2.3-1.4-6-2.1-9-1.1-1.2-.5-2.3 0-3.4 2.3-4.5 4.7-8.9 1.9-13.1 0 2.4 3 6-.8 9-.3 0-.6-.2-.9-.3-1-.3-.3.3-.3.6.2 3 .2 3-2.8 4.2-1 .3-.1.6-.2.9-1.2 6.8-3.7 13.3-6.4 19.5-3.8 8.7-7.1 17.5-10.3 26.4-8 22.4-17 44.4-26.3 66.3-2.2 5.2-5.7 9.8-7.7 15.1-5.2 11-11.9 21.2-18.6 31.4-3.3 5.2-4.8 4.9-7.3-1-1.6-3.7-4.6-6.6-5.2-10.7 1.8-5.8 5.7-10.4 8.9-15.4 10.3-16.2 18.6-33.4 26.3-50.9 14-31.8 26.1-64.4 37.2-97.3.6-1.8.6-4.1 3.4-4.3 4.2-10.4 8-20.9 11.5-31.6 4.6-14 9.5-28 14.3-42 6-17.3 11.9-34.5 19.1-51.3.2-.5.6-1.1 1.1-2.2 2.4 4.2 2.1 8.3 3 12.8-3.2-1.8-.9-5.3-3.7-6.8-.7 4.2 2.6 7.9 1.4 12.1-2.9-1.1-.6-4.6-3.3-6.4-.4 4.1 2 7.7 1.4 11.5-2.7-.9-.9-4.2-3.2-5.3-1.2 1.5 0 2.9.4 4 2.3 7.9-.2 14.8-3.6 21.7-.7 1.5-1.4 3.2-1.3 4.7.3 6.2-3.4 11.2-4.5 17-.8 4.3-2.5 8.8-3.9 13-.9 2.7-.5 6.6-1.9 7.6-3.8 2.7-.5 6.1-2.2 8.9-.9-1.7-1.8-4-3.1-.1-1.6 4.8-2.2 9.5-.4 15.6 4.1-8.8 5.1-17.6 8.9-25.4-.4 9.7-4.1 18.6-6.2 27.9-3.5 15.1-7.8 30-11.8 44.9-.1.7-.5 1-.8 1.4z"/>
|
||||||
|
<path fill="#72767c" d="M856 987.1c4.2.9 4.3 3 2.4 6.5-2 3.8-3.3 8-5.4 13.2-1.2-3.8-2-6.4-2.8-8.9 1.5-3.4 3.1-6.8 2.8-10.7v-.5c1 .1 2 .2 3 .4z"/>
|
||||||
|
<path d="M884 938v-3c3.3-7.4 5.9-15.1 9.9-22.2-1 7-4.7 13-7 19.5-.8 2-2 3.8-2.9 5.7z" class="stk7"/>
|
||||||
|
<path fill="#bfc0c3" d="M1076 767c.3 1 .6 1.9.9 2.9-4.3-3.1-5.3-8.6-9.2-12-1.1-.9-1.1-3-3.7-1.5-1.4.8-2.2-1.5-2-3.1.2-1.5.6-2.9.8-4.4 3.6-5.5 5 1.5 7.8 1.2-.3-3.3-3.7-5.2-4.6-9.3 3.8 2.5 4.9 6.2 7 9 2.2 1 2.3 3.2 2.9 5.1l1.2 5.1c-4.3-.6-5.2-5.6-9.1-7 2.6 5 7.6 8.2 8 14z"/>
|
||||||
|
<path d="M1011 982.9c-3.5 5.7-4.7 12.3-6.9 18.5-13.3 37.6-27.4 74.9-45.3 110.5-6.3 12.6-13.4 24.8-21.6 36.3-.5.8-.8 1.8-1.2 2.6-2 1-4.2-2.5-5.9.1-2.2 3.5-4.5 7-4.7 11.3-.1 1.5.7 2.9-.1 4.4-3.4 2.1-6.3 4.9-8.8 8-12.8 15.9-29.2 27.5-45.3 39.6-5.3 4-12.2 4-17 8.6-.5.5-1.2.1-1.6-.6 2.4-9.1 5.2-18.1 9.5-26.5.4-1 .7-2 1.1-2.9 8.2-2.4 15.3-7 22.1-12 7.9-5.8 16.2-10.9 23.4-17.7 5.1-4.8 10.1-9.6 14.3-15.1 17.6-22.6 32-46.8 42.4-73.7 9.1-23.5 18-47 27.4-70.4 6.4-15.9 12.9-31.9 18.2-48.3.5-1.7 1.4-3.3 2.2-5 2 1.9 0 3.8-.2 5.6-.6 9.1 1 18.1-2 26.7z" class="stk27"/>
|
||||||
|
<path d="M1076 755c-1.6-1.3-2.1-3.3-2.9-5.1 5-5.1 4.7-7.3-1.6-14.1-.7 1.7 1.8 2.8.7 4.9-2.5-1.9-4.4-4.1-4.1-7.2.3-3 3.2-.1 4.4-1.3.3-2.2-2-3.4-2.2-5.8 4.4.5 5 5.3 8.6 7.3-1.5-5.3-4.7-9.2-7.3-14.9 2.6 2 4.1 3.1 5.5 4.2 2.7 4.8 8 8.1 8.1 14.2-2.1-.3-2.6 2.2-1.5 7.7-3.7-2.4-3.8-7.4-7.8-9 2 3.5 1.5 8.1 5.6 10.7 2.2 1.4 1.6 3.8.7 5.8-1.2 2.5-1.9.5-3.2-.1-2.4-1-2 1.8-3 2.7z" class="stk7"/>
|
||||||
|
<path fill="#c5c4c4" d="M1030 694c0-2.6-.1-5.2 0-7.8 0-1 .5-2 1.7-1.8 1 .1 1.2 1 1.2 1.9.1 2.6 0 5.2 0 7.8-.9.6-1.9.6-2.9-.1z"/>
|
||||||
|
<path d="M853 1223c3.5-3.7 8.4-4.4 12.7-6.3 5-2.3 9.3-6.7 14-10 11.3-7.9 21.7-16.8 31.1-26.9 3.4-3.6 6.7-7.4 10.1-11 1-1.1 1.9-3 4-1.7 3.4 1.7 2.9 5.2 4 8.1.3 1 .7 1.9 1 2.9.3 2.1-1.2 1.5-2.2 1.4-1.5-.1-2.5-1.6-4.6-1.6 1.1 4.6 1.7 9.1.5 13.6-.5 1.9-1.2 3.8-2.7 5.2-3 2.9-3.8 2.8-6.3-1 1.9 5.8 0 9.2-7.4 13.3-3-1.7-4.1.5-5.3 2.5-6.6 10.9-13.2 21.8-19.8 32.8-.7 1.2-1.2 2.3-2.7 2.4-9.4 11.3-18.7 22.7-28.1 34.1-.5.6-.9 1.4-1.5 2-2.2 2.2-4.2 5.3-6.8 6.4-3.5 1.3-4.8-3.1-7.2-4.8-10-7.2-20.8-8.9-32.6-6.3-8.1-10.4-11.2-29.1-6.1-37.6 2.1 1.4.2 4.3 2 5.7 1.9 1.7 2 4.1 2.3 6.4 1.3 8.8 6.1 14.6 13.1 15.7 7.5 1.2 16.8-4 19.8-11.6 3.3-8.5 6.1-17.3 8.9-26 .6-1.9 1.1-3.9 2.4-5.4 1.8-2.7 4.4-3.3 7.4-2.3z" class="stk10"/>
|
||||||
|
<path d="M907.1 1208.9c.3-.4.4-.9.8-1.3 2.2-2.2 5.2-4 6.6-6.6 1.5-2.7-2.7-5-2.2-8.2 1.8-.3 2.9.6 3.5 2 .5 1.2 0 3.5 2.4 2.8 1.8-.5 3.3-2 3.6-3.8.8-4.8 2.7-9.7-.1-14.5-.7-1.2-1-2.6.3-3.6 1.5-1.2 2.3.4 3.4 1 1.4.9 2.6 2.9 4.6 1.2 2.5 3.4 2.1 6.3-.8 9.6-6.7 7.6-12.8 15.5-19.2 23.3-1-.5-1.9-1.2-2.9-1.9z" class="stk27"/>
|
||||||
|
<path fill="#292828" d="M853 987.2c2.1 2.9.9 7.5-2.8 10.7-.5-1.8-1-3.5-1.6-5.2-1.3-4.1.1-5.9 4.4-5.5z"/>
|
||||||
|
<path fill="#5f5e60" d="M853 1223c-7.2-.3-7.9 5.4-9.5 10.3-2.4 7.4-4.8 14.8-7.5 22.2-3.1 8.8-11.2 14.4-20.2 14.3-7.3-.1-14.5-6.9-15.8-14.9-.5-2.9-.8-5.9-1.1-8.9.6-7.8-2.4-15.4-1.8-23.2.2-2-.5-4 .3-6.1 9.8 3.1 19.8 3.5 29.9 1.4 2.8-.6 5.1-1.6 6.6-4 4.7-7.8 10.8-14.8 14.4-23.3 1.3-3.1 4.3-5.4 6.6-8 2 4 5.3 7.4 5.5 12.3 0 .3 1 .6 1.6.9-1.8 9.4-5.6 18.1-9 27z"/>
|
||||||
|
<path d="M1076 767c-2.9-4.3-5.5-9-9.2-12.8-1-1-1.3-2.6-.3-3.5 1.1-.9 2.1.4 2.8 1.2 2.6 2.7 5.2 5.5 7.8 8.2 2.1 2.7 0 4.7-1.1 6.9z" class="stk7"/>
|
||||||
|
<path fill="#7f7d7c" d="M1020.8 1002.9c-1.1.8-.8 2-.9 3-3 5.6-3.7 12-5.8 17.9-2.2 6.3-5.2 12.3-6.4 19-.1.4-.5 1.2-.7 1.2-4.9-.7-2.7 2.4-2.4 4.5.4 2.5.4 2.4-2.4 3.2-1.7.5-1.4 2.2-1 3.4 2 5.1-1.2 9.3-2.3 13.9-.2.7-.4 1.6-1.2.9-2.7-2.4-1.8.3-1.9 1.3-.1 1.3.1 2.7.1 4-.1 1.1.5 2.6-.9 3.1-1.2.4-1-2.1-2.4-1.8-1.3 2.1.5 3.9.2 5.8-.2 1.5 1.3 4.3-2.6 3.3-1.8-.5-1.3 1.7-1.1 2.5 1.1 4-.1 6.8-2.2 10.5-1.4 2.5-4.4 6.4-2.3 10.5.5.9-.2 2.1-1.3 2.2-1.3.1-1.8 1.1-2 1.9-.7 3.2.2 7.1-4 8.8 1.2 5.7-5.9 8.8-4.6 14.7.5 2.4-1.9.7-2.9 1-1.3-3-.9-6.3-1.7-9.3-.8.9-1 3-3.2 2.4 3.7-8.9 8.4-17.3 12.1-26.2 9.1-21.8 17.5-43.8 25.5-66 1.9-5.3 4.2-10.6 6.5-15.8 1.5-3.4 3.8-7.3 3.8-11.7 0-3.6 4.6-5.8 2.8-10 1.9-.3 1.2 2 2.9 1.8 1.1-2.7-.2-5.6-.6-8.7 2.8.5 1.3 3.1 2.8 3.8 1.3 1.7 1.1 3.3.1 4.9z"/>
|
||||||
|
<path fill="#5e6063" d="M965.1 1131c1.8-.8 2-2.9 3.5-4.5 1.4 3.9 2.5 7.5 1.3 11.4-1.3 6.4-8.5 10.9-5.9 19.1-1.4-2-2.4-3.6-4-.7-4 6.9-9.2 13.2-12.2 20.5-2.4 5.8-1.4 12.6 0 18.9-.2 1.1-1 1.3-1.9 1.3-2.6-3.9-.4-8.4-1.7-12.7-3.5 1.9-3.9 7-8.2 7.8-1-4-2-8.1-3-12.1 1-2.9 3.1-5.2 4.9-7.4 2.8-3.4 2.8-6.6.8-10.1-.2-.4-.4-.9-.7-1.3-1.6-2.1-1.6-6.5-5-5.9-2.9.6-3.6 4.4-4.5 7.3-.6 2-.2 3.9.5 5.9.6 1.5 1.8 2.9.9 4.7-.8.4-.9 1.3-1 2.1-2.2-2.3-2.6-5.4-4-8.1-2.8-7 1.3-12.5 4.7-17.7 2.4-3.6 4.3.8 6.4 1.6 2.5 4.7 5.5 9.1 7.5 15.2 8.4-11.8 15-23.5 21.6-35.3z"/>
|
||||||
|
<path fill="#b7b8bc" d="M930 1173c-4.3-6.3-3.5-12.4.9-18.3 1.9-2.5 3.5-2.8 5.2 0 2.3 3.7 4.1 7.6 5.5 11.6.5 1.3.5 2.7-.5 3.8-2.9 3.1-4.1 7.6-8.1 9.8l-3-6.9z"/>
|
||||||
|
<path fill="#abadb0" d="M936 1192c2.2-2.8 4.3-5.5 6.5-8.2.7-.8.8-2.6 2.4-1.9 1.2.5 1 2 1 3.1 0 4 0 8 .1 12-2.1 5.1-5.8 9-9.9 13.1l-.1-18.1z"/>
|
||||||
|
<path fill="#1f1c1b" d="M809.3 1330c-7.3-.1-10.9-2.9-10.4-8.3.1-.8.1-1.8.6-2.4 3.6-4.3 8.1-2.2 12.4-1.6 3.5.5 5.9 2.2 6 6 .3 4.5-2.4 6.4-8.6 6.3z"/>
|
||||||
|
<path d="M1027 984c.7-4.7-1.8-9.1-.8-14.4.9 1.7 1.5 3 2.3 4.6 1.4-3.7-.8-7.1-.2-10.8 4.2 5.2 3.8 10.7-1.3 20.6zm-6.2 18.9v-4.8c2-2 .8-4.3.6-6.5-.3-2.2-2.3-4.5.1-7.6 2.8 6.9 3.3 13-.7 18.9z" class="stk16"/>
|
||||||
|
<path d="M1027 984c-.4 1.4-.8 2.8-1.5 5.2-1.6-4.3-2.8-7.6-1.8-12.2 2.1 2.5 1.4 5.4 3.3 7z" class="stk16"/>
|
||||||
|
<path fill="#8e9195" d="M874.8 1227.2c2 .2 7.2 6.3 6.8 7.8-.8 3.1-3.9 3.3-6.2 4.2-1.4.6-5.8-5.3-5.3-7.1.9-2.3 2.8-3.8 4.7-4.9z"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 388 KiB |
@ -21,6 +21,10 @@
|
|||||||
<MenuItem parent="{BA073333-DFBC-4BA3-8EA7-172F3F6B4FEE}" name="ShowMechRecPanelsRoot" caption="Панели мониторинга" url="Modules/P8-Panels/"/>
|
<MenuItem parent="{BA073333-DFBC-4BA3-8EA7-172F3F6B4FEE}" name="ShowMechRecPanelsRoot" caption="Панели мониторинга" url="Modules/P8-Panels/"/>
|
||||||
<MenuItem parent="{BA073333-DFBC-4BA3-8EA7-172F3F6B4FEE}" separator="true"/>
|
<MenuItem parent="{BA073333-DFBC-4BA3-8EA7-172F3F6B4FEE}" separator="true"/>
|
||||||
<MenuItem parent="{BA073333-DFBC-4BA3-8EA7-172F3F6B4FEE}" name="ShowMechRecPanelCostProdPlans" caption="Производственная программа" panelName="MechRecCostProdPlans"/>
|
<MenuItem parent="{BA073333-DFBC-4BA3-8EA7-172F3F6B4FEE}" name="ShowMechRecPanelCostProdPlans" caption="Производственная программа" panelName="MechRecCostProdPlans"/>
|
||||||
|
<MenuItem parent="{BA073333-DFBC-4BA3-8EA7-172F3F6B4FEE}" name="ShowMechRecPanelDeptCostProdPlans" caption="Производственный план цеха" panelName="MechRecDeptCostProdPlans"/>
|
||||||
|
<MenuItem parent="{BA073333-DFBC-4BA3-8EA7-172F3F6B4FEE}" name="ShowMechRecPanelDeptCostJobsManage" caption="Выдача сменного задания" panelName="MechRecCostJobsManage"/>
|
||||||
|
<MenuItem parent="{BA073333-DFBC-4BA3-8EA7-172F3F6B4FEE}" name="ShowMechRecPanelDeptCostJobs" caption="Загрузка цеха" panelName="MechRecDeptCostJobs"/>
|
||||||
|
<MenuItem parent="{BA073333-DFBC-4BA3-8EA7-172F3F6B4FEE}" name="ShowMechRecPanelAssemblyMon" caption=" Мониторинг сборки изделий" panelName="MechRecAssemblyMon"/>
|
||||||
</App>
|
</App>
|
||||||
</MenuItems>
|
</MenuItems>
|
||||||
<Panels urlBase="Modules/p8-panels/#/">
|
<Panels urlBase="Modules/p8-panels/#/">
|
||||||
@ -84,6 +88,46 @@
|
|||||||
icon="calendar_month"
|
icon="calendar_month"
|
||||||
showInPanelsList="true"
|
showInPanelsList="true"
|
||||||
preview="./img/mech_rec_cost_prod_plans.jpg"/>
|
preview="./img/mech_rec_cost_prod_plans.jpg"/>
|
||||||
|
<Panel
|
||||||
|
name="MechRecDeptCostProdPlans"
|
||||||
|
group="Планирование и учёт в дискретном производстве"
|
||||||
|
caption="Производственный план цеха"
|
||||||
|
desc="Мониторинг и управление (установка приоритетов партий, заказов) производственным планом цеха"
|
||||||
|
url="mech_rec_dept_cost_prod_plans"
|
||||||
|
path="mech_rec_dept_cost_prod_plans"
|
||||||
|
icon="free_cancellation"
|
||||||
|
showInPanelsList="true"
|
||||||
|
preview="./img/mech_rec_cost_prod_plans.jpg"/>
|
||||||
|
<Panel
|
||||||
|
name="MechRecCostJobsManage"
|
||||||
|
group="Планирование и учёт в дискретном производстве"
|
||||||
|
caption="Выдача сменного задания"
|
||||||
|
desc="Управление составом сменных заданий цеха/участка"
|
||||||
|
url="mech_rec_cost_jobs_manage"
|
||||||
|
path="mech_rec_cost_jobs_manage"
|
||||||
|
icon="psychology"
|
||||||
|
showInPanelsList="true"
|
||||||
|
preview="./img/mech_rec_cost_prod_plans.jpg"/>
|
||||||
|
<Panel
|
||||||
|
name="MechRecDeptCostJobs"
|
||||||
|
group="Планирование и учёт в дискретном производстве"
|
||||||
|
caption="Загрузка цеха"
|
||||||
|
desc="Просмотр сведений о производственной загрузке цеха/участка"
|
||||||
|
url="mech_rec_dept_cost_jobs"
|
||||||
|
path="mech_rec_dept_cost_jobs"
|
||||||
|
icon="factory"
|
||||||
|
showInPanelsList="true"
|
||||||
|
preview="./img/mech_rec_cost_prod_plans.jpg"/>
|
||||||
|
<Panel
|
||||||
|
name="MechRecAssemblyMon"
|
||||||
|
group="Планирование и учёт в дискретном производстве"
|
||||||
|
caption="Мониторинг сборки изделий"
|
||||||
|
desc="Отображение текущего состояния комплектации и сборки изделий производственными подразделениями"
|
||||||
|
url="mech_rec_assembly_mon"
|
||||||
|
path="mech_rec_assembly_mon"
|
||||||
|
icon="build"
|
||||||
|
showInPanelsList="true"
|
||||||
|
preview="./img/mech_rec_cost_prod_plans.jpg"/>
|
||||||
<Panel
|
<Panel
|
||||||
name="Samples"
|
name="Samples"
|
||||||
group=""
|
group=""
|
||||||
|