initial commit

This commit is contained in:
AntigoneRandy 2023-05-20 18:53:47 +08:00
parent a2e8226dc8
commit 391f7c6e4e
93 changed files with 35301 additions and 1 deletions

9
Dockerfile Normal file
View File

@ -0,0 +1,9 @@
FROM nginx
COPY nginx/nginx.conf /etc/nginx/conf.d/default.conf
WORKDIR /var/www
COPY ./dist/ emergency_management_frontend/
EXPOSE 5400

View File

@ -1,2 +1,26 @@
# AntiE
# AntiE安急易-遥感智慧应急技术先行者
产品“AntiE-安急易 遥感智慧应急监测技术先行者”,针对目前应急监测领域灾区信息获取困难、灾害分析联系不紧密等问题,实现了应急过境卫星查询、多无人机航迹规划和灾害链耦合推导等功能,构建了多灾种耦合的空天地一体化应急传感网,面向应急管理部门及相关研究院,提供准确、及时、全面的决策参考,为减少灾害损失提供有力的技术支撑。
## Project setup
```
npm install
```
### Compiles and hot-reloads for development
```
npm run serve
```
### Compiles and minifies for production
```
npm run build
```
### Lints and fixes files
```
npm run lint
```
### Customize configuration
See [Configuration Reference](https://cli.vuejs.org/config/).

3
babel.config.js Normal file
View File

@ -0,0 +1,3 @@
module.exports = {
presets: ["@vue/cli-plugin-babel/preset"],
};

10
nginx/nginx.conf Normal file
View File

@ -0,0 +1,10 @@
server
{
listen 5400;
server_name emergency.defaultlin.cn;
location / {
root /var/www/emergency_management_frontend/;
index index.html index.htm;
}
}

60
nginx/root.conf Normal file
View File

@ -0,0 +1,60 @@
server {
# SSL 访问端口号为 443
listen 443 ssl;
# 填写绑定证书的域名
server_name emergency.defaultlin.cn;
# 证书文件名称
ssl_certificate emergency.defaultlin.cn_bundle.crt;
# 私钥文件名称
ssl_certificate_key emergency.defaultlin.cn.key;
ssl_session_timeout 5m;
# 按照以下协议配置
ssl_protocols TLSv1.2 TLSv1.3;
# 按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://81.68.195.211:5400/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /api/ {
proxy_pass http://81.68.195.211:8000/api/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /uav_demo/ {
proxy_pass http://81.68.195.211:5600/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /uav_full/ {
proxy_pass http://81.68.195.211:5700/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
# 升级http请求
server {
listen 80;
# 填写绑定证书的域名
server_name emergency.defaultlin.cn;
# 把http的域名请求转成https
return 301 https://$host$request_uri;
}
# 处理IP请求
server {
listen 80;
server_name 81.68.195.211;
return 301 http://$host$request_uri;
}

21533
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

42
package.json Normal file
View File

@ -0,0 +1,42 @@
{
"name": "emergency_management",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint"
},
"dependencies": {
"@jiaminghi/data-view": "^2.10.0",
"axios": "^0.26.1",
"core-js": "^3.6.5",
"echarts": "^5.3.3",
"element-ui": "^2.15.6",
"vue": "^2.6.11",
"vue-router": "^3.2.0"
},
"devDependencies": {
"@vue/cli-plugin-babel": "^5.0.8",
"@vue/cli-plugin-eslint": "^5.0.8",
"@vue/cli-plugin-router": "^5.0.8",
"@vue/cli-service": "^5.0.8",
"@vue/eslint-config-prettier": "^6.0.0",
"babel-eslint": "^10.1.0",
"babel-plugin-component": "^1.1.1",
"babel-preset-es2015": "^6.24.1",
"eslint": "^6.7.2",
"eslint-plugin-prettier": "^3.3.1",
"eslint-plugin-vue": "^6.2.2",
"prettier": "^2.2.1",
"sass": "^1.26.5",
"sass-loader": "^8.0.2",
"vue-template-compiler": "^2.6.11"
},
"prettier": {
"semi": true,
"singleQuote": false,
"printWidth": 120,
"tabWidth": 2
}
}

BIN
public/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

23
public/index.html Normal file
View File

@ -0,0 +1,23 @@
<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<meta name="theme-color" content="#16293a">
<!-- web app 程序的支持 -->
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="application-name" content="智慧应急管理">
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
<title>智慧应急管理系统</title>
<script src="https://api.map.baidu.com/api?v=3.0&ak=h72mkChGp4Gbx3G80BgAHUS5e6VnVrwq"></script>
</head>
<body>
<noscript>
<strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
</noscript>
<div id="app"></div>
<!-- built files will be auto injected -->
</body>
</html>

317
src/App.vue Normal file
View File

@ -0,0 +1,317 @@
<template>
<!-- 根容器 -->
<div id="app">
<!-- 登录界面 -->
<Index v-if="loggedIn" id="login" @loginSucceeded="loginSucceeded"></Index>
<div class="container">
<!-- 导航栏收起/展开按钮 -->
<div class="menu-hider" @click="menuHidden = !menuHidden">
<i :class="{ 'el-icon-s-fold': !menuHidden, 'el-icon-s-unfold': menuHidden }"></i>
</div>
<!-- 导航栏 -->
<div class="side-menu" :class="{ hidden: menuHidden }">
<div class="top">
<div class="title" @click="$router.replace('/')">
<div>
<h1>智慧应急管理系统</h1>
<h2>应急管理与分析</h2>
</div>
</div>
<el-menu
:default-active="$route.path"
class="el-menu"
background-color="#19324b"
text-color="#fff"
unique-opened
router
>
<el-menu-item index="/">
<i class="el-icon-s-home"></i>
<span slot="title">首页</span>
</el-menu-item>
<el-submenu index="/home">
<template slot="title">
<i class="el-icon-menu"></i>
<span>应急资源配置</span>
</template>
<el-menu-item v-for="(item, index) in mapApps" :key="index" :index="item.path">
<i class="el-icon-location-outline"></i>
<span slot="title" class="el-item">{{ item.alias }}</span>
</el-menu-item>
</el-submenu>
<el-submenu index="/analysis">
<template slot="title">
<i class="el-icon-s-data"></i>
<span>资源时空分析</span>
</template>
<el-menu-item v-for="(item, index) in analysisApps" :key="index" :index="item.path">
<i class="el-icon-menu"></i>
<span slot="title" class="el-item">{{ item.alias }}</span>
</el-menu-item>
</el-submenu>
<el-menu-item index="/uav/full">
<i class="el-icon-aim"></i>
<span slot="title">空地一体灾区协同监测感知</span>
</el-menu-item>
<el-menu-item index="/uav/demo">
<i class="el-icon-aim"></i>
<span slot="title">空地一体灾区协同监测感知(演示版)</span>
</el-menu-item>
<el-menu-item index="/management">
<i class="el-icon-document"></i>
<span slot="title">应急管理</span>
</el-menu-item>
</el-menu>
</div>
</div>
<!-- 内容区 -->
<div class="router-view"><router-view /></div>
</div>
</div>
</template>
<style lang="scss">
$theme: #409eff;
* {
margin: 0;
padding: 0;
}
#app {
font-family: Avenir, Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-align: center;
color: #2c3e50;
overflow: hidden;
}
@media (max-width: 900px) {
html {
font-size: 16px;
}
}
@media (max-width: 600px) {
html {
font-size: 14px;
}
}
@media (max-width: 400px) {
html {
font-size: 13px;
}
}
#login {
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
z-index: 1000;
&.blur-enter-active,
&.blur-leave-active {
transition: opacity 0.3s;
}
&.blur-enter,
&.blur-leave-to {
opacity: 0;
}
}
.container {
width: 100vw;
height: 100vh;
display: flex;
background-color: #16293a;
color: rgba(255, 255, 255, 0.85);
}
.menu-hider {
position: fixed;
left: 0;
top: 0;
z-index: 1005;
width: 50px;
height: 50px;
font-size: 32px;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
cursor: pointer;
background-color: #19324b;
border-bottom-right-radius: 10px;
-webkit-tap-highlight-color: transparent;
@media (min-width: 600px) {
display: none;
}
}
.side-menu {
width: 275px;
display: flex;
flex-direction: column;
align-items: stretch;
justify-content: space-between;
text-align: left;
box-shadow: 5px 0 15px rgba(0, 0, 0, 0.1);
background-color: #19324b;
overflow: hidden;
@media (max-width: 800px) {
& {
width: 200px;
}
}
@media (max-width: 600px) {
& {
position: fixed;
left: 0;
top: 0;
width: 80%;
max-width: 275px;
min-width: 200px;
height: 100%;
z-index: 1000;
transition: left cubic-bezier(0, 0, 0.39, 1.02) 0.3s;
&.hidden {
left: -300px;
}
}
}
.title {
margin: 48px 24px 20px;
display: flex;
flex-wrap: wrap;
align-items: center;
user-select: none;
cursor: pointer;
@media (max-width: 600px) {
& {
margin-top: 56px;
}
}
& > img {
width: 64px;
height: 64px;
border-radius: 50%;
margin-right: 12px;
}
}
.el-menu {
border: none;
width: 100%;
span.el-item {
display: inline-block;
width: 100%;
overflow: hidden;
text-overflow: ellipsis;
}
}
.link {
display: block;
appearance: none;
padding: 12px 24px;
font-size: 18px;
color: inherit;
font-weight: 500;
text-decoration: none;
cursor: pointer;
}
.link:not(.router-link-exact-active):hover {
background-color: rgba($color: $theme, $alpha: 0.25);
}
.router-link-exact-active {
background-color: $theme;
}
}
.router-view {
flex: 1;
}
.BMap_cpyCtrl {
display: none;
}
.anchorBL {
display: none;
}
</style>
<script>
import Index from "./views/Index.vue";
export default {
name: "App",
components: {
Index,
},
data() {
return {
mapApps: [
{
path: "/map/earthquake",
alias: "地震应急避难场所",
},
{
path: "/map/air",
alias: "人民防空工程",
},
{
path: "/map/rescueplan",
alias: "生产安全事故应急救援预案",
},
{
path: "/map/hazard",
alias: "危险化学品重大危险源",
},
{
path: "/map/enterprise",
alias: "应急管理局双随机执法企业",
},
{
path: "/map/fire",
alias: "消防设施概览",
},
],
analysisApps: [
{
path: "/analysis/earthquake",
alias: "地震应急避难场所分析",
},
{
path: "/analysis/hazard",
alias: "危险化学品重大危险源",
},
{
path: "/analysis/shelter",
alias: "人防工程缓冲区分析",
},
],
loggedIn: false,
menuHidden: false,
};
},
methods: {
loginSucceeded() {
this.loggedIn = true;
this.$router.replace("/");
},
},
};
</script>

28
src/api/index.js Normal file
View File

@ -0,0 +1,28 @@
import axios from "axios";
export const instance = axios.create({
baseURL: "//emergency.defaultlin.cn/api",
});
axios.interceptors.request.use((config) => {
config.withCredentials = true;
return config;
});
instance.interceptors.response.use(
(response) => {
return response;
},
(error) => {
if (error.response) {
console.warn(error);
switch (error.response.status) {
case 401:
break;
default:
break;
}
}
return Promise.reject(error);
}
);

2054
src/assets/css/animation.css Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,464 @@
/* 登录页 */
.login{
width:792px;
height:565px;
background:url(../../img/dy-img/003.png);
background-size:cover;
position:fixed;
left:0;
top:0;
right:0;
bottom:0;
margin:auto;
}
.login_1{
position:absolute;
left:-210px;
bottom:72px;
}
.login_t{
width:307px;
padding-left:58px;
margin-top:68px;
}
.login_t h3{
color:#FFFFFF;
font-size:36px;
line-height:36px;
margin-top:20px;
}
.login_rt{
width:368px;
margin-right:66px;
margin-top:48px;
}
.login_rt h4{
text-align:center;
color:#FFFFFF;
font-weight:normal;
font-size:30px;
line-height:30px;
position:relative;
padding-bottom:27px;
}
.login_rt h4 span{
font-size:18px;
font-weight:100;
margin-left:5px;
}
.login_rt h4:before{
content:"";
position:absolute;
width:100%;
height:1px;
background:rgba(255,255,255,.3);
bottom:0;
left:0;
}
.login_rt h4:after{
content:"";
position:absolute;
width:74px;
height:3px;
background:#00ebff;
left:0;
right:0;
margin:0 auto;
bottom:-1px;
}
.login_rt form{
margin-top:48px;
}
.form_1{
width:100%;
height:56px;
background:url(../../img/dy-img/009.png) left no-repeat;
background-size:auto 100%;
margin-bottom:12px;
}
.form_1 img{
display:block;
float:left;
margin-top:16px;
margin-left:12px;
}
.form_1 input{
display:block;
float:left;
width:288px;
height:56px;
border:none;
background:none;
padding:0;
margin-left:12px;
font-size:18px;
color:#FFFFFF;
font-weight:100;
outline:none;
}
.form_1 input::-webkit-input-placeholder{
color: #FFFFFF;
}
.form_2 label{
margin-left:20px;
display:block;
margin-top:10px;
color:#FFFFFF;
font-weight:100;
font-size:16px;
cursor:pointer;
}
.form_2 .form_mima_1{
display:none
}
.form_mima_2{
background:url(../../img/dy-img/007.png);
background-size:100% 100%;
display:inline-block;
height:18px;
margin-right:5px;
width:18px;
}
.form_mima_1:checked + .form_mima_2:after {
background:url(../../img/dy-img/008.png);
background-size:100% 100%;
content:"";
display:inline-block;
height:18px;
width:18px;
}
.form_3 a{
display:block;
color:#FFFFFF;
font-weight:100;
font-size:16px;
margin-top:10px;
transition: all .3s;
}
.form_4 input{
display:block;
width:366px;
height:54px;
margin:0 auto;
background:url(../../img/dy-img/006.png);
background-size:100% 100%;
border:none;
outline:none;
font-size:24px;
color:#FFFFFF;
margin-top:40px;
cursor:pointer;
}
.login_2{
text-align:center;
color:#FFFFFF;
margin-top:24px;
font-size:20px;
}
.login_2 a{
color:#FFFFFF;
transition: all .3s;
}
.form_3 a:hover,.login_2 a:hover{
color:#00fcff;
text-decoration:underline;
}
/* 注册成功 */
.register{
width:810px;
height:563px;
background:url(../../img/dy-img/010.png);
background-size:cover;
position:fixed;
top:0;
left:0;
bottom:0;
right:0;
margin:auto;
}
.register_1{
margin:65px 0 0 65px;
}
.register h3{
text-align:center;
color:#FFFFFF;
font-size:72px;
line-height:72px;
margin-top:85px;
}
.register_2{
text-align:center;
margin-top:100px;
}
.register_2 a{
color:#FFFFFF;
font-size:24px;
border-bottom:2px solid #FFFFFF;
padding-bottom:8px;
}
.welcome_1 a{
display:block;
margin-top:50px;
font-size:24px;
color:#FFFFFF;
text-align:center;
line-height:24px;
}
.welcome_2 a{
display:block;
width:298px;
height:108px;
background:url(../../img/dy-img/011.png);
background-size:100% 100%;
margin:0 auto;
text-align:center;
line-height:108px;
color:#FFFFFF;
font-size:24px;
margin-top:50px;
}
/* 数据生产 */
.shuju{
width:100%;
height:100%;
position:fixed;
padding:.59rem .25rem .4rem .25rem;
}
.shuju_c,.xinxi_c{
width:100%;
height:100%;
background:rgba(4,23,51,.5);
padding:.6rem .35rem .4rem .35rem;
}
.shuju h4{
width:97.8%;
height:.385rem;
background:url(../../img/dy-img/012.png);
background-size:100% 100%;
color:#FFFFFF;
text-align:center;
font-weight:normal;
font-size:.18rem;
line-height:.23rem;
position:absolute;
left:0;
right:0;
margin:0 auto;
top:.43rem;
}
.shuju_c li{
float:left;
width:25%;
height:100%;
padding-left:.18rem;
}
.shuju_c ul{
margin-left:-.18rem;
height:100%;
}
.shuju_1{
width:100%;
background:url(../../img/dy-img/013.png);
background-size:100% 100%;
padding:.35rem .14rem .15rem .14rem;
}
.shuju_2 img{
width:100%;
}
.shuju_1 p{
width:1.5rem;
margin:0 auto;
padding:.1rem .08rem;
background:url(../../img/dy-img/018.png);
background-size:100% 100%;
text-align:center;
color:#FFFFFF;
font-size:.13rem;
line-height:.2rem;
margin-top:.12rem;
}
.xinxi_c li{
float:left;
padding-left:.37rem;
width:29.25%;
height:100%;
}
.xinxi_c li:nth-child(1){
width:41.5%;
}
.xinxi_c ul{
margin-left:-.37rem;
height:100%;
}
.xinxi_c li .shuju_1{
background:url(../../img/dy-img/020.png);
background-size:100% 100%;
}
.xinxi_c li:nth-child(1) .shuju_1{
background:url(../../img/dy-img/019.png);
background-size:100% 100%;
padding:.2rem .15rem 0 .15rem;
}
.xinxi_1,.xinxi_2{
position:relative;
}
.xinxi_1 h5{
width:100%;
height:.23rem;
background:url(../../img/dy-img/023.png);
background-size:100% 100%;
position:absolute;
top:-.1rem;
left:0;
text-align:center;
color:#FFFFFF;
font-size:.15rem;
line-height:.23rem;
font-weight:normal;
}
.xinxi_2{
width:47%;
margin-top:.15rem;
}
.xinxi_2 h5{
width:100%;
height:.175rem;
background:url(../../img/dy-img/025.png);
background-size:100% 100%;
position:absolute;
top:-.07rem;
left:0;
text-align:center;
color:#FFFFFF;
font-size:.15rem;
line-height:.175rem;
font-weight:normal;
}
@media screen and (min-width:1921px){
/* 登录页 */
.login{
width:3.96rem;
height:2.825rem;
}
.login_1{
left:-1.05rem;
bottom:3.6rem;
}
.login_1 img{
width:2.175rem;
}
.login_t{
width:1.535rem;
padding-left:.29rem;
margin-top:.34rem;
}
.login_t h3{
font-size:.18rem;
line-height:.18rem;
margin-top:.1rem;
}
.login_rt{
width:1.84rem;
margin-right:.33rem;
margin-top:.24rem;
}
.login_rt h4{
font-size:.15rem;
line-height:.15rem;
padding-bottom:.14rem;
}
.login_rt h4 span{
font-size:.09rem;
margin-left:.025rem;
}
.login_rt h4:after{
width:.37rem;
}
.login_rt form{
margin-top:.24rem;
}
.form_1{
height:.28rem;
margin-bottom:.06rem;
}
.form_1 img{
width:.12rem;
margin-top:.08rem;
margin-left:.06rem;
}
.form_1 input{
width:1.44rem;
height:.28rem;
margin-left:.06rem;
font-size:.09rem;
}
.form_2 label{
margin-left:.1rem;
margin-top:.05rem;
font-size:.08rem;
}
.form_mima_2{
height:.09rem;
margin-right:.025rem;
width:.09rem;
}
.form_mima_1:checked + .form_mima_2:after {
height:.09rem;
width:.09rem;
}
.form_3 a{
font-size:.08rem;
margin-top:.05rem;
}
.form_4 input{
width:1.83rem;
height:.27rem;
font-size:.12rem;
margin-top:.2rem;
}
.login_2{
margin-top:.12rem;
font-size:.1rem;
}
/* 注册成功 */
.register{
width:4.05rem;
height:2.815rem;
}
.register_1{
margin:.325rem 0 0 .325rem;
}
.register h3{
font-size:.36rem;
line-height:.36rem;
margin-top:.425rem;
}
.register_2{
text-align:center;
margin-top:100px;
}
.register_2 a{
font-size:.12rem;
border-bottom:2px solid #FFFFFF;
padding-bottom:.04rem;
}
.welcome_1 a{
margin-top:.25rem;
font-size:.12rem;
line-height:.12rem;
}
.welcome_2 a{
width:1.49rem;
height:.54rem;
line-height:.54rem;
font-size:.12rem;
margin-top:.25rem;
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

BIN
src/assets/img/53/53bg.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

BIN
src/assets/img/53/53cloud.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

BIN
src/assets/img/53/53earth.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
src/assets/img/53/53gqleft.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

BIN
src/assets/img/53/53gqright.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

BIN
src/assets/img/53/circle.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 139 KiB

BIN
src/assets/img/53/circle1.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

BIN
src/assets/img/53/circle2.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

BIN
src/assets/img/bg.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 476 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 219 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1019 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 273 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1007 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 208 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 185 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 241 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 101 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 247 KiB

BIN
src/assets/img/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 93 KiB

882
src/assets/img/process.svg Normal file
View File

@ -0,0 +1,882 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 25.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 751.3 239.8" style="enable-background:new 0 0 751.3 239.8;" xml:space="preserve">
<style type="text/css">
.st0{fill:#15C1EE;}
.st1{fill:none;stroke:#15C1EE;stroke-width:3;stroke-miterlimit:10;}
.st2{fill:#FFFFFF;}
.st3{fill:#332C2B;}
</style>
<rect x="0" y="24" class="st0" width="116.4" height="45.9"/>
<rect x="327.4" y="93.9" class="st0" width="118.9" height="47.5"/>
<rect x="669.3" class="st0" width="81.7" height="32.2"/>
<rect x="669.7" y="48.1" class="st0" width="81.7" height="32.2"/>
<rect x="669.3" y="99.9" class="st0" width="81.7" height="32.2"/>
<rect x="669.4" y="154.7" class="st0" width="81.7" height="32.2"/>
<rect x="669.5" y="207.6" class="st0" width="81.7" height="32.2"/>
<rect y="95.8" class="st0" width="116.4" height="45.9"/>
<rect y="167.8" class="st0" width="116.4" height="45.9"/>
<polyline class="st1" points="115.9,46.7 195.8,46.7 195.8,190.8 114.9,190.8 "/>
<line class="st1" x1="327" y1="118.8" x2="115.5" y2="118.8"/>
<line class="st1" x1="669.3" y1="117.3" x2="446.2" y2="117.3"/>
<polyline class="st1" points="669.3,16.7 588.3,16.7 588.3,224.8 669.9,224.8 "/>
<line class="st1" x1="588.3" y1="65.1" x2="669.7" y2="65.1"/>
<line class="st1" x1="588.3" y1="171.6" x2="669.4" y2="171.6"/>
<g>
<path class="st2" d="M224.1,104c-0.6,0.4-1.2,0.9-1.8,1.5c-0.1,0.1-0.2,0.2-0.3,0.2s0,0,0,0c0-0.1,0-0.2,0.1-0.3l0.4-1v-0.1
c0-0.1,0-0.1-0.1-0.2c-0.1,0-0.1,0-0.2,0l-0.8,0.3l-0.7,0.3c0.2,0.1,0.5,0.2,0.7,0.3c0.2,0.1,0.3,0.2,0.4,0.4
c-0.1,0.2-0.1,0.6-0.2,1.1c-0.1,0.5-0.1,1-0.1,1.5v2.4c0,0.5-0.1,1.1-0.3,1.5c-0.2,0.4-0.4,0.6-0.7,0.6c-0.1,0-0.3-0.1-0.4-0.2
c-0.1-0.2-0.3-0.3-0.4-0.5c-0.2-0.3-0.4-0.5-0.7-0.8c-0.2-0.2-0.4-0.4-0.7-0.5c-0.1,0-0.2-0.1-0.2-0.1s0.1-0.1,0.4,0h0.6
c0.3,0,0.6,0,0.8-0.2c0.2-0.2,0.3-0.4,0.3-0.7v-3.8c0-0.3-0.1-0.6-0.2-0.9l-0.4,0.1l-1.5,0.5c-0.1,0-0.2,0-0.3,0
c-0.3,0-0.6-0.2-0.8-0.4c-0.2-0.2-0.3-0.5-0.3-0.8c0,0,0-0.1,0-0.2c0.4,0.1,0.8,0.1,1.2,0.1c1-0.1,1.9-0.2,2.9-0.5
c-0.6-0.6-1.1-1.1-1.3-1.3s-0.4-0.4-0.4-0.5s0-0.1,0.1-0.1l0.4,0.1l0.9,0.2l1.2-1.9c0,0,0-0.1,0-0.1c0,0,0-0.1-0.1-0.1
c0,0-0.1,0-0.1,0l-1.2,0.5l-1.3,0.5c-0.1,0-0.2,0-0.3,0c-0.2,0-0.4-0.1-0.5-0.2c-0.1-0.2-0.2-0.3-0.3-0.6c0-0.1,0-0.3,0-0.4
c0.3,0,0.7,0.1,1,0.1c1-0.1,2-0.4,3-0.8l0.2-0.1l0.1-0.1l1.3,1c-0.4,0.3-1,0.8-1.7,1.5l-0.9,0.8h0.3c0.1,0,0.2,0.1,0.3,0.1
c0.1,0.1,0.1,0.2,0.1,0.3c0,0.3,0,0.6-0.1,0.9l0.8-0.2c0.1,0,0.2-0.1,0.2-0.1l0.2-0.1L224.1,104z M231.8,110.1
c0.1,0.1,0.1,0.3,0.1,0.4c0,0.4,0,0.9-0.1,1.3c-0.1,0.3-0.2,0.5-0.4,0.5c-0.2,0-0.3-0.1-0.4-0.2c-0.9-0.7-1.7-1.4-2.3-2
c-0.4-0.4-0.8-0.8-1.1-1.2c-0.6,1.9-2.3,3.3-4.3,3.5h-0.5c-0.1,0-0.2,0-0.2,0s0.1-0.1,0.4-0.2c0.6-0.3,1.2-0.7,1.7-1.3
c0.6-0.7,1.1-1.5,1.5-2.4c0.4-1,0.7-2.1,0.7-3.2c0-0.3,0-0.5,0-0.8c0-0.2,0-0.5-0.1-0.7c0.4,0,0.9,0.1,1.2,0.3
c0.3,0.2,0.5,0.5,0.4,0.9v0.2c-0.1,1.2-0.4,2.3-0.7,3.4c0.1,0,0.1,0,0.2,0l3.5,1.2C231.6,109.9,231.7,110,231.8,110.1L231.8,110.1z
M230.9,98.2c0.3,0,0.5,0.1,0.8,0.2c0.2,0.1,0.4,0.3,0.6,0.5c0.1,0.2,0.2,0.3,0.2,0.5c0,0.2-0.1,0.3-0.4,0.3
c-0.5-0.1-1-0.2-1.5-0.2c-0.9,0-1.8,0.1-2.7,0.2c0.2,0.2,0.3,0.4,0.3,0.7c0,0.2,0,0.3-0.1,0.5c-0.2,0.5-0.5,0.9-0.9,1.2l1.5-0.4
c0.5-0.1,0.8-0.2,0.9-0.2l0.2-0.1l0.1-0.1l1.6,1.1c-0.1,0.2-0.2,0.4-0.2,0.7c-0.1,0.2-0.1,0.5-0.1,0.8v2.6c0,0.5-0.1,1-0.3,1.4
c-0.2,0.4-0.4,0.5-0.6,0.5c-0.2,0-0.3-0.1-0.4-0.2c-0.2-0.2-0.3-0.4-0.5-0.7c-0.2-0.3-0.4-0.6-0.7-0.9c-0.1-0.1-0.1-0.1-0.1-0.1
s0.1,0,0.3,0c0.2,0,0.4,0,0.5,0c0.1,0,0.2-0.1,0.2-0.2c0.1-0.2,0.1-0.4,0.1-0.6v-1.1V103c0-0.1,0-0.1-0.1-0.1c0,0-0.1,0-0.1,0
c-0.6,0.1-0.9,0.2-1.2,0.2s-0.5,0.2-0.8,0.3l-0.8,0.3c-0.1,0-0.1,0-0.2,0c-0.2,0-0.4-0.1-0.5-0.3c-0.1,1.2-0.2,2.5-0.2,3.7v1.8
c0,0.1-0.1,0.2-0.1,0.2c-0.1,0-0.1,0-0.2-0.1c-0.1,0-0.1-0.1-0.2-0.1c-0.3-0.1-0.5-0.3-0.7-0.6c-0.2-0.2-0.3-0.4-0.3-0.7
c0.1-0.6,0.1-1.2,0.1-1.8c0-0.8,0.1-1.6,0.1-2.4l0,0c0-0.2,0-0.5-0.1-0.7c0-0.2-0.1-0.4-0.2-0.5h0.2c0.2,0,0.5,0,0.7,0.1
c0.2,0.1,0.5,0.2,0.7,0.3v-0.1h0.4c0.1-0.1,0.2-0.3,0.2-0.5c0.2-0.5,0.4-0.9,0.5-1.2c0.1-0.2,0.2-0.5,0.2-0.7
c-0.8,0.1-1.6,0.3-2.3,0.7c-0.2,0-0.4,0-0.6-0.2c-0.2-0.2-0.3-0.4-0.4-0.6c-0.1-0.2-0.2-0.3-0.2-0.5c0.8,0,1.5-0.1,2.2-0.3
s1.8-0.3,3.2-0.6c0.5-0.1,1.1-0.2,1.9-0.4L230.9,98.2z"/>
<path class="st2" d="M239.7,105.5c0,0.3,0,0.6-0.2,0.8c-0.1,0.2-0.3,0.3-0.5,0.3c-0.4,0-0.8-0.2-1.1-0.5c-0.4-0.3-0.7-0.6-1-1
c-0.2-0.2-0.3-0.4-0.3-0.4s0-0.1,0.1-0.1c0.1,0,0.3,0.1,0.4,0.1l0.6,0.3c0.2,0.1,0.3,0.1,0.5,0.1c0.3,0,0.4-0.2,0.4-0.6
c0-0.2-0.1-0.4-0.2-0.6c-0.2-0.3-0.3-0.6-0.5-0.8c-0.1-0.2-0.2-0.4-0.4-0.6c0-0.1,0-0.1,0-0.2c0-0.1,0-0.2,0.1-0.3l1.1-2.7
c0-0.1,0-0.2,0-0.2c-0.1,0-0.2,0.1-0.4,0.3c-0.2,0.2-0.5,0.4-0.8,0.6c-0.1,0-0.2,0.1-0.3,0.1c-0.1,0-0.3-0.1-0.4-0.2l-0.1,1
c-0.1,0.8-0.2,1.6-0.2,2.3v8.7c0,0.2-0.1,0.3-0.2,0.3c-0.2,0-0.4-0.1-0.5-0.2c-0.7-0.5-1-0.9-1-1.3c0-0.3,0-0.7,0.1-1.1
s0.1-0.7,0.1-0.8c0.1-1,0.2-1.8,0.2-2.3v-6.3c0-0.2,0-0.5-0.1-0.7c0-0.2-0.1-0.4-0.2-0.5h0.2c0.3,0,0.5,0.1,0.8,0.2
c0.3,0.1,0.5,0.2,0.7,0.4c-0.1-0.1-0.1-0.2-0.1-0.3c0.3,0,0.6,0,0.8-0.1c0.4-0.1,0.7-0.2,1-0.4c0.1-0.1,0.2-0.2,0.3-0.2l0.3-0.2
l1.2,1c-0.3,0.3-0.6,0.7-0.9,1.1c-0.3,0.5-0.6,1-0.8,1.5c-0.1,0.1-0.1,0.2,0,0.3c0.3,0.4,0.6,0.8,0.8,1.2c0.3,0.4,0.4,0.8,0.5,1.3
C239.7,105.1,239.7,105.3,239.7,105.5z M248.7,101.6c0.2,0.1,0.5,0.3,0.6,0.5c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.4,0.3
c-0.6-0.2-1.2-0.2-1.7-0.2c-1.3,0-2.7,0.1-4,0.3c0.3,0.2,0.4,0.5,0.4,0.8c0,0.2,0,0.3-0.1,0.5l-0.1,0.4h0.1c0.1,0,0.3,0,0.4,0
c0.4-0.1,0.7-0.1,1.1-0.2c0.2-0.1,0.4-0.1,0.6-0.2l0.2-0.1l0.1-0.1l1.6,1c-0.2,0.3-0.3,0.6-0.3,0.9c-0.1,0.3-0.2,0.9-0.3,1.6
c-0.1,0.7-0.2,1.2-0.2,1.5l-0.2,1.5c-0.1,0.5-0.3,0.9-0.6,1.2c-0.2,0.3-0.5,0.4-0.9,0.5c-0.2,0-0.4-0.1-0.4-0.3
c-0.2-0.3-0.4-0.5-0.6-0.8c-0.2-0.3-0.5-0.5-0.7-0.7c-0.1-0.1-0.2-0.1-0.2-0.2s0.1,0,0.3,0h0.6c0.3,0,0.5-0.1,0.7-0.2
c0.2-0.2,0.4-0.5,0.4-0.8c0.2-0.6,0.3-1.3,0.4-1.9c0.1-0.7,0.2-1.3,0.2-2c0,0,0-0.1,0-0.1c0,0,0,0,0-0.1c0,0,0,0-0.1,0l-0.6,0.2
c-0.3,0.1-0.6,0.2-1,0.2h-0.1c-0.3,0-0.6-0.2-0.7-0.5c-0.5,1.3-1.2,2.6-2.1,3.7c-0.8,1.1-1.8,1.9-3,2.6c-0.2,0.1-0.4,0.2-0.6,0.3
c-0.1,0,0-0.2,0.3-0.5c0.9-1.1,1.8-2.3,2.5-3.5c0.7-1.2,1.3-2.4,1.6-3.8c0.1-0.3,0.1-0.7,0.2-1l-1.9,0.3c-0.3,0-0.6-0.2-0.8-0.4
c-0.2-0.3-0.3-0.6-0.4-0.9c0.7,0,1.4-0.1,2.1-0.2l3.2-0.4c1.7-0.2,2.8-0.4,3.4-0.4C248.1,101.4,248.4,101.4,248.7,101.6
L248.7,101.6z M242.6,98.7c-0.4-0.4-0.6-0.7-0.6-0.9s0.1-0.1,0.2-0.1c0.1,0,0.3,0,0.4,0.1l2.2,0.6c0.2,0,0.3,0.1,0.4,0.2
c0.1,0.1,0.1,0.2,0.1,0.3c0,1.2-0.2,1.9-0.5,1.9c-0.1,0-0.3-0.1-0.4-0.2C243.6,99.8,242.9,99.1,242.6,98.7L242.6,98.7z"/>
<path class="st2" d="M259.7,107.5c0.2,0.1,0.5,0.3,0.6,0.5c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.4,0.3
c-0.7-0.2-1.4-0.3-2.1-0.3c-1,0-1.9,0.1-2.9,0.2c-1,0.1-2.1,0.3-3.3,0.5l-0.4,0.1c-0.3,0-0.6-0.2-0.8-0.4c-0.2-0.3-0.3-0.6-0.4-0.9
c0.8,0,2.2-0.2,4.2-0.4c2-0.2,3.5-0.4,4.3-0.4C259.2,107.3,259.5,107.4,259.7,107.5z M262.9,99.8c0.2,0,0.5,0.1,0.7,0.2
c0.2,0.1,0.4,0.2,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.4c0,0.2-0.1,0.2-0.3,0.2c-1.3,0.1-2.7,0.3-4.1,0.5c-1,0.1-2,0.3-2.9,0.7
c-0.2,0-0.5-0.1-0.8-0.5c-0.2,0.9-0.4,1.7-0.7,2.5c0,0.1,0,0.1,0,0.2s0,0.1,0.1,0.1l2.1-0.3c2.6-0.3,4-0.5,4.1-0.6l0.1-0.1l0.1-0.1
l1.6,1c-0.2,0.3-0.3,0.6-0.3,0.9c-0.1,0.5-0.3,1.6-0.5,3.4c-0.2,1.4-0.3,2.3-0.4,2.7c-0.1,0.4-0.3,0.8-0.6,1
c-0.3,0.2-0.6,0.4-1,0.4c-0.2,0-0.3,0-0.4-0.1c-0.1-0.1-0.2-0.1-0.3-0.3c-0.2-0.4-0.5-0.8-0.9-1.1c0,0-0.1-0.1-0.1-0.1
c-0.1,0-0.1-0.1-0.1-0.1s0,0,0.1,0h0.8c0.3,0,0.5,0,0.8-0.2c0.2-0.2,0.4-0.5,0.4-0.8c0.1-0.3,0.2-1.2,0.5-2.7
c0.2-0.9,0.3-1.8,0.3-2.8c0-0.1,0-0.1-0.1-0.1c0,0-0.1,0-0.1,0c-1,0.1-2.2,0.2-3.8,0.4s-2.6,0.4-3.4,0.6h-0.1
c-0.2,0-0.4-0.1-0.5-0.2c-0.1-0.1-0.3-0.3-0.3-0.5c-0.1-0.1-0.1-0.3-0.1-0.4c0.3,0,0.5-0.1,0.7-0.3c0.2-0.2,0.3-0.5,0.4-0.8
c0.1-0.6,0.3-1.3,0.3-1.9c0.1-0.7,0.2-1.6,0.3-2.7c0-0.3,0-0.6-0.1-0.9c0-0.2-0.1-0.5-0.3-0.7h0.3c0.4,0,0.8,0.1,1.1,0.3
c0.3,0.2,0.5,0.6,0.4,1c0,0.8-0.1,1.6-0.2,2.4c1.1-0.1,2.2-0.3,3.2-0.5c1-0.2,1.9-0.4,2.9-0.7C262.7,99.8,262.8,99.8,262.9,99.8z"
/>
<path class="st2" d="M271.2,104.2c-0.3,0-0.6-0.2-0.7-0.4l0,0c-0.1,0.4-0.2,0.7-0.4,1.1c-0.1,0.3-0.4,0.7-0.8,1.3l-0.1,0.2
c-0.1,0.1-0.2,0.2-0.2,0.2s-0.1,0-0.1-0.2c-0.1-0.3-0.2-0.5-0.3-0.7c-0.1-0.1-0.1-0.2-0.2-0.4c-0.1-0.2-0.1-0.4,0.1-0.5
c0.3-0.4,0.6-0.8,0.8-1.2c0.1-0.3,0.2-0.7,0.2-1c0-0.1,0-0.2,0-0.3c0.2,0.1,0.5,0.2,0.7,0.3c0.2,0.1,0.4,0.3,0.5,0.4
c0,0,0.1,0.1,0.1,0.2c0.3,0.1,0.6,0.1,0.9,0.1c0.2,0,0.7,0,1.3-0.1s1.4-0.2,2.2-0.3c-0.9-0.8-1.4-1.2-1.4-1.4s0-0.1,0.1-0.1
c0.1,0,0.2,0,0.4,0l1.4,0.2c0.1,0,0.2,0.1,0.3,0.1c0.1,0.1,0.1,0.1,0.1,0.2c0,0.2,0,0.5,0,0.7c1.6-0.2,3.1-0.5,4.7-0.9l0.4-0.1
l1.8,1.6c-0.7,0.4-1.4,0.7-2.1,0.9l-0.8,0.3c-0.2,0.1-0.3,0.1-0.5,0.2c-0.2,0-0.1-0.2,0.2-0.6l0.8-1c0,0,0-0.1,0-0.1
c0-0.1-0.1-0.1-0.2-0.1c-0.5,0-2.5,0.3-5.9,0.8l-2.6,0.4L271.2,104.2z M269,102.4c0,0,0-0.1,0-0.1c0.1-0.1,0.1-0.2,0.2-0.3
c0.4-0.5,0.8-1,1.1-1.5s0.6-1,1-1.7c0.2-0.3,0.3-0.7,0.3-1.1c0-0.1,0-0.2,0-0.3c0.3,0.1,0.6,0.3,0.9,0.5c0.2,0.2,0.4,0.5,0.4,0.8
c0,0.2,0,0.3-0.1,0.5l0,0l1.3-0.3c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.4,0.2,0.5,0.3c0.1,0.1,0.2,0.2,0.2,0.3c0,0.1-0.1,0.2-0.4,0.2
c-0.3,0-0.7,0-1,0.1c-0.3,0.1-0.6,0.1-0.9,0.2c-0.2,0.1-0.4,0.1-0.6,0.2h-0.1c-0.1,0-0.2,0-0.2-0.1l-0.3,0.4l0.4,0.1l0.6,0.2h0.2
c0.1,0,0.1,0,0.1,0.1c0,0.1,0,0.1,0,0.2c0,0.3,0,0.5-0.1,0.8c0,0.2-0.1,0.4-0.2,0.4s-0.1,0-0.2-0.1c-0.1-0.1-0.2-0.2-0.3-0.3
c-0.3-0.3-0.6-0.6-0.9-1c-0.3,0.3-0.6,0.5-1,0.8c-0.4,0.2-0.8,0.4-1.2,0.7C269.3,102.3,269.1,102.4,269,102.4L269,102.4z
M279.1,110.6c0.2,0.1,0.4,0.3,0.6,0.4c0.1,0.1,0.2,0.3,0.2,0.4c0,0.2-0.1,0.2-0.3,0.2c-1.4,0-2.7,0-4,0.1c-0.9,0-1.8,0.2-2.6,0.4
h-0.1v0.7c0,0.1,0,0.2-0.1,0.2c-0.1,0-0.1,0-0.2-0.1l-0.2-0.1c-0.3-0.2-0.6-0.4-0.8-0.6c-0.2-0.2-0.4-0.4-0.3-0.7
c0.2-1.4,0.3-2.8,0.3-4.2V106c0-0.2,0-0.5-0.1-0.7c0-0.2-0.1-0.4-0.2-0.5c0.1,0,0.1,0,0.2,0c0.3,0,0.5,0.1,0.8,0.2
c0.3,0.1,0.5,0.2,0.7,0.4c0-0.1-0.1-0.2,0-0.3c0.1,0,0.2,0,0.3,0h0.3h0.2c0.3,0,0.7-0.1,1-0.2l1.6-0.4l0.3-0.1
c0.1,0,0.2-0.1,0.3-0.2l2.1,0.8c-0.1,0-0.2,0.1-0.2,0.2c-0.1,0.1-0.1,0.2-0.2,0.3l-0.1,0.2l-0.5,0.9c0.2,0.1,0.4,0.2,0.5,0.4
c0.1,0.1,0.2,0.3,0.2,0.4c0,0.1,0,0.1-0.1,0.1c-0.1,0-0.1,0-0.2,0c-1.1,0-2.1,0-3.1,0.1c-0.7,0-1.4,0.2-2.1,0.4c-0.1,0-0.1,0-0.2,0
c0,0.4,0,0.7,0,0.9h0.4h0.2c0.6-0.1,1.1-0.2,1.6-0.2s1.1-0.2,1.9-0.5c0.1,0,0.2-0.1,0.3-0.2l2.1,0.8c-0.1,0-0.2,0.1-0.2,0.2
c-0.1,0.1-0.1,0.2-0.2,0.3c0,0.1-0.1,0.2-0.1,0.2l-0.5,1h0.1C278.7,110.5,278.9,110.5,279.1,110.6L279.1,110.6z M276.7,110.7
l0.4-1.5l0,0c0,0,0-0.1-0.1-0.1c0,0-0.1,0-0.1,0c-0.2,0-0.9,0.2-1.8,0.4c-0.5,0.2-1,0.3-1.4,0.3c-0.3,0-0.7-0.1-0.8-0.5v1.7
C274.2,111.1,275.5,110.9,276.7,110.7L276.7,110.7z M273.1,105.7L273,107c0.5,0,1-0.1,1.5-0.1l1.8-0.3l0.3-1.2l0,0
c0,0,0-0.1-0.1-0.1c0,0-0.1,0-0.1,0c-0.5,0.1-0.9,0.2-1.4,0.4c-0.4,0.2-0.9,0.3-1.3,0.4C273.5,106,273.3,105.9,273.1,105.7
L273.1,105.7z M275.4,100.1c0.1-0.2,0.4-0.7,0.8-1.5c0.2-0.3,0.3-0.7,0.3-1.1c0-0.1,0-0.2,0-0.3c0.3,0.1,0.7,0.3,0.9,0.5
c0.2,0.2,0.4,0.5,0.4,0.8c0,0.2,0,0.3-0.1,0.4c0.6-0.1,1.2-0.3,2-0.5h0.2c0.2,0,0.4,0,0.6,0.1c0.2,0.1,0.3,0.2,0.4,0.3
c0.1,0.1,0.1,0.2,0.2,0.3c0,0.1,0,0.1-0.1,0.1c-0.1,0-0.2,0-0.3,0c-0.4,0-0.8,0-1.2,0.1c-0.4,0.1-0.8,0.2-1.2,0.3l-0.6,0.2h-0.1
c-0.2,0-0.3-0.1-0.4-0.2l-0.2,0.2c-0.1,0.1-0.1,0.1-0.2,0.2h0.3l0.4,0.1l0.8,0.2c0.1,0,0.2,0.1,0.3,0.1c0.1,0.1,0.1,0.1,0.1,0.2
c0,0.8-0.1,1.2-0.3,1.2c-0.1,0-0.2-0.1-0.2-0.1l-0.4-0.4c-0.4-0.4-0.8-0.7-1.1-1.1c-0.5,0.4-1.1,0.8-1.7,1l-0.3,0.1l0,0
c0-0.1,0.1-0.3,0.2-0.4C275.1,100.6,275.3,100.3,275.4,100.1L275.4,100.1z"/>
<path class="st2" d="M288.5,105.5v5c0,0.5-0.1,1.1-0.3,1.5c-0.2,0.4-0.4,0.6-0.7,0.6c-0.1,0-0.3-0.1-0.4-0.2
c-0.1-0.2-0.3-0.3-0.4-0.5c-0.2-0.3-0.4-0.5-0.7-0.8c-0.2-0.2-0.4-0.4-0.7-0.5c-0.1,0-0.2-0.1-0.2-0.1s0.1,0,0.4,0h0.5
c0.3,0,0.6,0,0.8-0.2c0.2-0.2,0.3-0.4,0.3-0.7v-3.2c-0.8,0.6-1.4,1-1.6,1.1c-0.1,0.1-0.3,0.1-0.5,0.2c-0.2,0-0.4-0.1-0.6-0.2
c-0.2-0.1-0.3-0.3-0.4-0.5c-0.1-0.1-0.1-0.3-0.1-0.4c0,0,0,0,0.1,0h0.2c0.3,0,0.6-0.1,0.9-0.2c0.5-0.3,1.2-0.6,2.1-1v-2.6
c-0.4,0.1-0.8,0.3-1.1,0.5h-0.1c-0.3,0-0.5-0.1-0.7-0.3c-0.2-0.2-0.3-0.4-0.4-0.6c0.8-0.1,1.6-0.2,2.4-0.5v-3.1
c0-0.2,0-0.5-0.1-0.7c0-0.2-0.1-0.4-0.2-0.5h0.2c0.3,0,0.7,0.1,1,0.3c0.3,0.1,0.6,0.3,0.8,0.6l-0.1,1.2c-0.1,0.6-0.1,1.2-0.1,1.8
l0,0c0.1,0,0.3-0.1,0.4-0.1c0.2,0,0.4,0.1,0.6,0.2c0.2,0.1,0.3,0.2,0.5,0.3c0.1,0.1,0.2,0.2,0.2,0.4c0.1-0.1,0.2-0.3,0.3-0.4
c0.1-0.3,0.2-0.7,0.2-1.1c0-0.1,0-0.2,0-0.2c0.2,0.1,0.4,0.2,0.6,0.3c0.2,0.1,0.4,0.2,0.5,0.4V101l0.5,0.1c0.2,0,0.4,0,0.6,0
c0.5,0,1-0.1,1.5-0.2l2.3-0.5l0.5-0.1c0.1-0.1,0.2-0.1,0.4-0.1l1.6,1.3c-0.9,0.5-1.8,1-2.8,1.5c-0.1,0.1-0.3,0.1-0.4,0.2
c0,0,0,0,0-0.1l0.1-0.2l0.3-0.4l0.5-0.8c0,0,0-0.1,0-0.1c0-0.1-0.1-0.1-0.2-0.1c-0.4,0-1.1,0.2-2.1,0.3l-1.7,0.3h-0.1
c-0.3,0-0.6-0.1-0.7-0.4c0,0.1,0,0.1,0,0.2v0.1c-0.1,0.4-0.3,0.7-0.5,1.1c-0.2,0.3-0.4,0.6-0.6,0.8l-0.2,0.2
c-0.1,0.1-0.1,0.1-0.2,0.1c-0.1,0-0.1-0.1-0.2-0.2c-0.1-0.3-0.2-0.6-0.3-0.7l-0.2-0.4c0-0.1,0-0.2,0-0.2c0-0.1,0-0.2,0.1-0.3
l0.1-0.1h-0.1c-0.5,0-1,0-1.4,0.1v2.3l1.2-0.5c0.1,0,0.2,0,0.2,0c0.1,0,0.1,0,0.1,0.1s-0.1,0.2-0.2,0.2L288.5,105.5z M298.8,109.9
c0.2,0.1,0.5,0.3,0.6,0.5c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.4,0.3c-0.9-0.2-1.8-0.2-2.7-0.2c-1.1,0-2.2,0.1-3.2,0.2
c-1,0.1-2.1,0.2-3.1,0.4c-0.3,0-0.6-0.2-0.8-0.4c-0.2-0.3-0.3-0.6-0.4-0.9c1.6,0,3-0.1,4.2-0.2c0.1-0.5,0.2-1.1,0.1-1.7v-0.8
c0-0.2,0-0.4-0.1-0.6c-0.2,0-0.4,0.1-0.6,0.1c-0.3,0.1-0.6,0.1-0.9,0.2c-0.3,0-0.5-0.1-0.8-0.4c-0.2-0.3-0.3-0.6-0.4-0.9
c1.1,0,1.8,0,2.2-0.1c0.4,0,1.1-0.1,2.3-0.3l1.2-0.2c0.3,0,0.6,0,0.8,0.2c0.2,0.1,0.5,0.3,0.6,0.6c0.1,0.2,0.2,0.4,0.2,0.6
c0,0.2-0.1,0.3-0.4,0.3c-0.9-0.2-1.9-0.3-2.9-0.2c0.1,0.1,0.2,0.2,0.3,0.3c-0.1,0.4-0.2,0.7-0.2,1c0,0.3-0.1,0.7-0.1,1v0.7
c1-0.1,2.1-0.2,3.2-0.4C298.3,109.8,298.6,109.8,298.8,109.9z M291.1,105.3c0.2-0.3,0.5-0.7,0.8-1l0.3-0.4c0.2-0.2,0.3-0.4,0.4-0.7
c0.1-0.2,0.1-0.4,0.1-0.6c0.6,0.3,0.9,0.8,0.9,1.2c0,0.2-0.1,0.5-0.2,0.7c-0.3,0.5-0.8,0.9-1.3,1.2c-0.5,0.3-1,0.5-1.6,0.7
l-0.5,0.1c0,0,0,0,0-0.1l0.3-0.3C290.6,105.9,290.8,105.6,291.1,105.3L291.1,105.3z M292.5,98.2c0-0.1,0-0.1,0.1-0.1
c0.1,0,0.3,0,0.4,0.1l1.6,0.4c0.1,0,0.2,0.1,0.3,0.1c0.1,0.1,0.1,0.2,0.1,0.3c0,0.3,0,0.7-0.1,1c-0.1,0.3-0.2,0.5-0.3,0.5
c-0.1,0-0.2-0.1-0.3-0.2C293.1,99.1,292.4,98.4,292.5,98.2L292.5,98.2z M297.1,103.7c0.1,0,0.3,0.1,0.4,0.2
c0.1,0.1,0.1,0.2,0.1,0.4l-0.1,0.4c0,0.2-0.1,0.5-0.2,0.7c-0.1,0.2-0.1,0.2-0.2,0.2c-0.2,0-0.3-0.1-0.4-0.2l-0.6-0.6
c-0.6-0.6-1-1-1.2-1.2s-0.3-0.4-0.3-0.5s0-0.1,0.1-0.1c0.1,0,0.2,0,0.4,0.1L297.1,103.7z"/>
</g>
<g>
<path class="st2" d="M476,103.7c0.2,0,0,0.3-0.4,0.8s-1,1.2-1.7,2.1l-0.1,0.2c0,0-0.1,0.1-0.1,0.1c-0.1,0.2-0.3,0.3-0.5,0.3
c-0.2,0-0.4-0.1-0.6-0.2c-0.2-0.1-0.3-0.3-0.5-0.5c-0.1-0.1-0.2-0.3-0.2-0.4c0.3-0.2,0.6-0.4,0.8-0.7c0.3-0.2,0.4-0.5,0.4-0.9v-4
c-0.3,0.2-0.5,0.3-0.5,0.3s-0.3,0.1-0.7,0.3h-0.2c-0.2,0-0.4-0.1-0.5-0.2c-0.1-0.2-0.2-0.3-0.3-0.5c0-0.1,0-0.3,0-0.4
c0.2,0.1,0.5,0.1,0.7,0.1h0.3c0.3,0,0.5-0.1,0.8-0.2c0.2-0.1,0.4-0.2,0.6-0.3c0.1-0.1,0.3-0.1,0.4-0.2l1.5,1.6
c-0.4,1-0.6,2.1-0.6,3.2v0.6l0.7-0.5C475.5,104,475.7,103.8,476,103.7z M475.4,97.4c-0.1,0.3-0.2,0.5-0.3,0.5
c-0.1,0-0.2-0.1-0.2-0.1c-0.9-0.9-1.5-1.5-1.8-1.8s-0.5-0.6-0.5-0.7s0-0.1,0.1-0.1c0.1,0,0.3,0,0.4,0.1l2,0.6
c0.1,0,0.2,0.1,0.3,0.2c0.1,0.1,0.1,0.2,0.1,0.3C475.4,96.7,475.4,97.1,475.4,97.4z M485.6,96.7c-0.2,0.3-0.3,0.6-0.3,0.9v10
c0,0.5-0.1,1.1-0.3,1.5c-0.2,0.4-0.4,0.6-0.7,0.6c-0.1,0-0.3-0.1-0.4-0.2c-0.1-0.2-0.3-0.3-0.4-0.5c-0.2-0.3-0.4-0.5-0.7-0.8
c-0.2-0.2-0.4-0.4-0.7-0.5c-0.1,0-0.2-0.1-0.2-0.1s0.1-0.1,0.4,0h0.5c0.3,0,0.6,0,0.8-0.2c0.2-0.2,0.3-0.4,0.3-0.7v-2.8l-0.2-6.9
c0-0.1,0-0.1-0.1-0.1c0,0-0.1,0-0.1,0c-1.8,0.2-3.3,0.4-4.6,0.6c-0.3,0-0.6-0.1-0.7-0.3c0,0.1,0,0.2,0,0.2c0,0.3,0,0.7,0,1.3
c0,0.9,0,1.8-0.1,2.7c0.6,0,1.3-0.1,2.1-0.2v-1.3l-1.2,0.2c-0.1,0-0.3,0-0.4-0.1c-0.1-0.1-0.2-0.3-0.3-0.4
c-0.1-0.1-0.1-0.2-0.1-0.3c0.5,0,1.1-0.1,1.9-0.1v-0.6c0-0.2,0-0.4-0.1-0.6c0-0.2-0.1-0.3-0.2-0.4h0.2c0.3,0,0.6,0.1,0.8,0.2
c0.3,0.1,0.5,0.3,0.6,0.5l0,0.8l0.7-0.1c0.2,0,0.4,0,0.5,0.1c0.2,0.1,0.3,0.2,0.4,0.3c0.1,0.1,0.1,0.2,0.1,0.4
c0,0.2-0.1,0.2-0.2,0.2c-0.5-0.1-1.1-0.2-1.6-0.2c0,0.4,0,0.8,0,1.2c0.3-0.1,0.7-0.1,1.2-0.2c0.2,0,0.4,0,0.6,0.1
c0.2,0.1,0.3,0.2,0.4,0.4c0.1,0.1,0.2,0.3,0.2,0.4c0,0.2-0.1,0.2-0.2,0.2c-0.4-0.1-0.8-0.2-1.2-0.2c-0.4,0-0.8,0-1.2,0.1
c-0.4,0.1-0.9,0.2-1.5,0.3l-0.7,0.1c-0.2,0-0.3-0.1-0.4-0.2c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1,1.5-0.5,3-1,4.4c-0.4,1-0.9,2-1.7,2.7
c-0.2,0.2-0.4,0.3-0.4,0.3s0,0,0,0c0-0.2,0.1-0.3,0.1-0.4c0.3-0.8,0.6-1.6,0.9-2.4c0.3-1.1,0.5-2.2,0.6-3.3
c0.2-1.7,0.3-3.4,0.3-5.2c0-0.2,0-0.5-0.1-0.7c-0.1-0.2-0.2-0.4-0.3-0.6c0.2,0,0.3,0,0.5,0c0.3,0,0.7,0.1,0.9,0.3
c0-0.1,0-0.2,0-0.3c0.2,0,0.4,0.1,0.7,0.1h0.2l0.5-0.1c0.8-0.1,1.7-0.2,2.8-0.3c0.6,0,1.1-0.1,1.6-0.2l0.2-0.1l0.1-0.1L485.6,96.7z
M481.8,105.7c-0.6,0-1.2,0.1-1.8,0.2c0,0.1,0,0.3,0,0.6l0,0c0,0.1,0,0.2-0.1,0.2c-0.1,0-0.2-0.1-0.3-0.1l-0.3-0.2
c-0.2-0.1-0.3-0.2-0.5-0.3c-0.1-0.1-0.2-0.2-0.2-0.4V105c0-0.4,0-0.8-0.1-1.2c0-0.2-0.1-0.4-0.2-0.5c0-0.1-0.1-0.2-0.2-0.3
c0.1,0,0.2,0,0.3,0c0.2,0,0.5,0,0.7,0.2V103h0.5c0.1,0,0.1,0,0.2,0l0.6-0.1c0.3-0.1,0.7-0.2,1.1-0.2c0.1,0,0.2-0.1,0.2-0.1l1.6,0.6
c-0.2,0.2-0.3,0.4-0.4,0.6l-0.6,1.2c0.2,0.1,0.3,0.2,0.4,0.3c0.1,0.1,0.2,0.2,0.2,0.4c0,0.1-0.1,0.2-0.2,0.2
C482.4,105.7,482.1,105.6,481.8,105.7L481.8,105.7z M479.9,105.2l0.8-0.1l0.8-0.2l0.2-1.4c0-0.1,0-0.1-0.1-0.1s-0.4,0.1-0.8,0.2
s-0.5,0.1-0.8,0.2H480h-0.2C479.8,104.1,479.8,104.5,479.9,105.2L479.9,105.2z"/>
<path class="st2" d="M492.2,100.9c-0.1-0.2-0.3-0.5-0.4-0.7c-0.3,1.8-0.7,3.6-1.3,5.4c-0.5,1.4-1.3,2.7-2.4,3.7
c-0.2,0.2-0.4,0.3-0.5,0.3s-0.1,0,0-0.2c0.1-0.1,0.1-0.3,0.2-0.4c0.9-1.5,1.5-3.1,1.9-4.8c0.4-2.1,0.8-4.1,1-6.2v-0.2
c0-0.2,0-0.5-0.1-0.7c0-0.2-0.1-0.3-0.2-0.5h0.2c0.4-0.1,0.9,0.1,1.2,0.4l0,0c1-0.1,2.3-0.2,3.9-0.5c-0.6-0.7-1.1-1.1-1.4-1.4
s-0.4-0.5-0.4-0.6s0-0.1,0.1-0.1c0.1,0,0.1,0,0.2,0l2,0.5c0.1,0,0.2,0.1,0.3,0.2c0.1,0.1,0.1,0.2,0.1,0.3c0,0.3,0,0.7-0.1,1
c1.1-0.1,2.1-0.4,3.2-0.7c0.1,0,0.2-0.1,0.4-0.1c0.2,0,0.5,0.1,0.7,0.2c0.2,0.1,0.4,0.2,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.4
c0,0.1-0.1,0.2-0.3,0.3c-0.6,0.1-1.8,0.3-3.9,0.6c-1.2,0.2-2.2,0.3-2.9,0.4c-0.5,0.1-1,0.2-1.5,0.3c-0.3,0-0.6-0.2-0.8-0.6
c0,0.1,0,0.2,0,0.3c-0.1,0.7-0.2,1.5-0.3,2.3l1.9-0.2l0,0l-0.1-0.6c0-0.2-0.1-0.5-0.2-0.7c-0.1-0.2-0.2-0.3-0.3-0.5
c0.1,0,0.2,0,0.3,0c0.3,0,0.7,0.1,1,0.2c0.3,0.1,0.5,0.3,0.7,0.5c-0.1,0.3-0.1,0.7-0.1,1l0.8-0.1l0.7-0.1l0.8-0.1v-0.1v-0.6
c0-0.2,0-0.5-0.1-0.7c0-0.2-0.1-0.4-0.3-0.5h0.2c0.4,0,0.7,0.1,1,0.3c0.3,0.1,0.6,0.3,0.8,0.6l-0.2,0.8c0.5-0.1,1-0.2,1.5-0.4
c0.2,0,0.5,0,0.7,0.2c0.2,0.1,0.4,0.3,0.5,0.5c0.1,0.1,0.2,0.3,0.2,0.5c0,0.1,0,0.1-0.1,0.2c-0.1,0.1-0.2,0.1-0.2,0.1
c-0.2,0-0.5,0-0.8,0c-0.5,0-1.1,0-2,0.1l-0.1,0.5c0,0.2-0.1,0.4-0.2,0.8c0.2,0.1,0.3,0.2,0.4,0.3c0.1,0.1,0.2,0.2,0.2,0.3
c0,0.1-0.1,0.2-0.3,0.2h-0.5c-0.5,0-1,0-1.5,0.1c-0.4,0-0.8,0.1-1.2,0.3v0.2c0,0.2,0,0.3-0.1,0.3c-0.1,0-0.2,0-0.2-0.1l-0.2-0.1
l-0.4-0.3c-0.2-0.1-0.4-0.3-0.5-0.4c-0.1-0.1-0.2-0.3-0.2-0.5v-0.4c0-0.3,0-0.5,0-0.6c-0.3,0.1-0.7,0.2-1,0.3
C492.5,101.4,492.2,101.2,492.2,100.9z M503.4,109.7c0,0.1-0.3,0.2-0.8,0.2h-2.7c-0.3,0-0.6,0-0.9-0.1c-0.3-0.1-0.5-0.3-0.8-0.5
l-1.3-0.9l-0.8-0.6c-1.6,1.1-3.5,1.7-5.5,1.7h-0.2c-0.3,0-0.4,0-0.4-0.1s0.1-0.1,0.4-0.2c0.8-0.2,1.6-0.5,2.4-0.9
c0.8-0.4,1.5-0.9,2.1-1.4l-0.5-0.4c-0.1-0.1-0.2-0.1-0.3-0.2c-0.2-0.1-0.4-0.3-0.6-0.4c-0.2-0.1-0.4-0.2-0.6-0.3l-0.4-0.1
c-0.2,0-0.4-0.1-0.4-0.2s0.1-0.2,0.4-0.2c0.2-0.1,0.5-0.1,0.7-0.1c0.2,0,0.5,0.1,0.7,0.2l0.7,0.4l1.1,0.6c0.6-0.6,1.1-1.3,1.6-2
c0,0,0-0.1,0-0.1c0-0.1-0.1-0.1-0.2-0.1c-0.6,0.2-1.7,0.4-3.3,0.7h-0.1c-0.2,0-0.4-0.1-0.5-0.2c-0.1-0.1-0.2-0.3-0.3-0.5
c-0.1-0.1-0.1-0.3-0.1-0.4c0.2,0,0.4,0.1,0.6,0.1c0.1,0,0.2,0,0.2,0c0.7-0.1,1.4-0.2,2.1-0.4c0.5-0.1,1-0.2,1.4-0.4l0.3-0.2
l1.6,0.9c-0.5,1.2-1.2,2.4-2.1,3.3c1.6,0.8,3.2,1.4,4.8,2C503,109.3,503.4,109.5,503.4,109.7z M497.3,100.4c-1,0.1-1.7,0.2-2.2,0.3
c0,0.4,0.1,0.7,0.2,1.1l0,0l1.8-0.3C497.1,101.2,497.2,100.9,497.3,100.4z"/>
<path class="st2" d="M513.7,104.7c0.2,0.1,0.5,0.3,0.6,0.6c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.4,0.3
c-0.7-0.2-1.4-0.3-2.1-0.3c-1,0-1.9,0.1-2.9,0.2c-1,0.1-2.1,0.3-3.3,0.5l-0.4,0.1c-0.3,0-0.6-0.2-0.8-0.4c-0.2-0.3-0.3-0.6-0.4-0.9
c0.8,0,2.2-0.1,4.2-0.4c2.1-0.2,3.5-0.4,4.3-0.4C513.1,104.5,513.4,104.6,513.7,104.7z M516.8,97c0.2,0,0.5,0.1,0.7,0.2
c0.2,0.1,0.4,0.2,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.4c0,0.2-0.1,0.2-0.3,0.2c-1.3,0.1-2.7,0.3-4.1,0.5c-1,0.1-2,0.3-2.9,0.7
c-0.3,0-0.5-0.1-0.8-0.5c-0.2,0.9-0.4,1.7-0.7,2.5c0,0,0,0.1,0,0.2c0,0,0,0.1,0,0l2.1-0.3c2.6-0.3,4-0.5,4.1-0.6l0.2-0.1h0.1l1.6,1
c-0.2,0.3-0.3,0.6-0.3,0.9c-0.1,0.5-0.3,1.6-0.5,3.4c-0.2,1.4-0.3,2.3-0.4,2.7c-0.1,0.4-0.3,0.8-0.6,1c-0.3,0.2-0.6,0.4-1,0.4
c-0.2,0-0.3,0-0.4-0.1c-0.1-0.1-0.2-0.1-0.3-0.3c-0.2-0.4-0.5-0.8-0.9-1.1l-0.1-0.1c-0.1,0-0.1-0.1-0.1-0.1s0,0,0.1,0h0.9
c0.3,0,0.5,0,0.8-0.2c0.2-0.2,0.4-0.5,0.4-0.8c0.1-0.3,0.2-1.2,0.5-2.7s0.3-2.4,0.3-2.8c0-0.1,0-0.1-0.1-0.1c0,0-0.1,0-0.2,0
c-1,0.1-2.2,0.2-3.8,0.5c-1.5,0.2-2.7,0.4-3.5,0.6h-0.1c-0.2,0-0.4-0.1-0.5-0.2c-0.1-0.1-0.3-0.3-0.3-0.5c-0.1-0.1-0.1-0.2-0.1-0.4
c0.3,0,0.5-0.1,0.7-0.3c0.2-0.2,0.4-0.5,0.4-0.7c0.1-0.6,0.3-1.3,0.3-1.9c0.1-0.7,0.2-1.6,0.3-2.7c0-0.3,0-0.6,0-0.9
c0-0.2-0.1-0.5-0.3-0.7h0.3c0.4,0,0.8,0.1,1.1,0.3c0.3,0.2,0.5,0.6,0.4,1c0,0.8-0.1,1.6-0.2,2.4c1.1-0.1,2.2-0.3,3.3-0.5
c1-0.2,1.9-0.4,2.9-0.7C516.6,97.1,516.7,97,516.8,97z"/>
<path class="st2" d="M527.2,101.6c0.1,0,0.2,0,0.2,0.1s-0.1,0.2-0.2,0.2l-1.2,0.9v5.1c0,0.5-0.1,1.1-0.3,1.5
c-0.2,0.4-0.4,0.6-0.7,0.6c-0.1,0-0.3-0.1-0.4-0.2c-0.1-0.2-0.3-0.3-0.4-0.5c-0.2-0.3-0.4-0.5-0.7-0.8c-0.2-0.2-0.4-0.4-0.7-0.5
c-0.2,0-0.2-0.1-0.2-0.1s0.1,0,0.4,0h0.5c0.3,0,0.6,0,0.8-0.2c0.2-0.2,0.3-0.4,0.3-0.7v-3.2c-0.8,0.6-1.4,1-1.8,1.3
c-0.1,0.1-0.3,0.1-0.5,0.2c-0.2,0-0.4-0.1-0.6-0.2c-0.2-0.1-0.3-0.3-0.4-0.5c-0.1-0.1-0.2-0.3-0.2-0.4c0,0,0,0,0.1,0h0.2
c0.3,0,0.6-0.1,0.9-0.2c0.4-0.2,1.1-0.6,2.3-1.1V100c-0.5,0.1-1,0.4-1.4,0.6H523c-0.3,0-0.5-0.1-0.7-0.3c-0.2-0.2-0.3-0.4-0.4-0.6
c0.9-0.1,1.8-0.3,2.6-0.6v-3c0-0.2,0-0.5-0.1-0.7c0-0.2-0.1-0.4-0.2-0.5h0.2c0.3,0,0.7,0.1,1,0.3c0.3,0.1,0.6,0.3,0.8,0.6
c0,0.7-0.1,1.1-0.1,1.3c-0.1,0.7-0.1,1.2-0.1,1.6l0.2-0.1c0.1,0,0.3-0.1,0.4-0.1c0.2,0,0.4,0,0.6,0.1c0.2,0.1,0.3,0.2,0.5,0.3
c0.1,0.1,0.2,0.2,0.2,0.4c0,0.2-0.1,0.3-0.3,0.3c-0.5,0-1.1,0-1.6,0.1v2.3l1-0.4C527,101.6,527.1,101.6,527.2,101.6z M535.2,103.2
c-0.2,0.6-0.4,1.2-0.4,1.9c-0.1,0.5-0.1,1.4-0.1,2.7v2c0,0.2-0.1,0.2-0.2,0.2c-0.1,0-0.3-0.1-0.4-0.2c-0.2-0.1-0.3-0.3-0.6-0.5
c-0.2-0.2-0.3-0.3-0.5-0.5c-0.4-0.1-0.8-0.1-1.1-0.1c-0.3,0-0.7,0-1,0.1l-1.3,0.2l-0.5,0.1v0.5c0,0.2,0,0.2-0.2,0.2
c-0.1,0-0.3-0.1-0.4-0.2l-0.4-0.3c-0.2-0.2-0.4-0.3-0.5-0.5c-0.1-0.1-0.2-0.3-0.2-0.5c0-0.6,0.1-1.2,0.2-1.8c0-0.4,0.1-0.8,0.1-1.2
s0-1,0-1.7c0-0.2,0-0.5-0.1-0.7c0-0.2-0.1-0.4-0.2-0.5h0.2c0.2,0,0.5,0.1,0.7,0.1c0.2,0.1,0.5,0.2,0.7,0.3c0-0.1,0-0.1,0-0.2
c0.3,0.1,0.6,0.1,0.9,0.1c0.6,0,1.1-0.1,1.7-0.2c0.7-0.1,1.3-0.2,1.8-0.4c0.1,0,0.1,0,0.2-0.1l0.1-0.1L535.2,103.2z M536.1,100.5
c0,0.2-0.1,0.4-0.3,0.4c-0.1,0.1-0.3,0.1-0.5,0.2l-0.2,0.1c-0.6,0.2-1.3,0.3-1.9,0.3c-0.8,0.1-1.6,0.1-2.3,0.1
c-0.7,0-1.3-0.1-1.8-0.5c-0.4-0.3-0.7-0.7-0.8-1.2c-0.1-0.6-0.2-1.2-0.2-1.8v-1.7c0-0.2,0-0.4-0.1-0.6c0-0.2-0.1-0.3-0.2-0.5
c0,0,0.2,0,0.5,0.1c0.3,0.1,0.5,0.2,0.8,0.3c0.2,0.1,0.4,0.2,0.5,0.4c-0.1,0.2-0.1,0.5-0.2,0.7c0,0.2-0.1,0.4-0.1,0.6
c0,0.4,0,0.7,0,0.9l1.4-0.8l1.2-0.7c0.3-0.1,0.5-0.4,0.6-0.6c0-0.1,0.1-0.2,0.2-0.2s0.3,0.1,0.5,0.4c0.2,0.2,0.3,0.3,0.5,0.4
c0.2,0.1,0.2,0.1,0.2,0.2s-0.1,0.2-0.2,0.3c-0.3,0.3-0.7,0.5-1,0.6c-0.4,0.2-1.1,0.3-2,0.6l-0.5,0.1l-0.8,0.2h-0.1
c0,0.4,0.2,0.8,0.5,1.2c0.4,0.2,0.8,0.3,1.2,0.3c0.8,0,1.6,0,2.4-0.2c0.4,0,0.7-0.2,1-0.5c0.2-0.3,0.2-0.6,0.2-0.9v-0.6
c0-0.1,0-0.2,0-0.3c0-0.1,0.1-0.1,0.1-0.1s0.1,0,0.1,0.1c0.1,0.1,0.1,0.2,0.1,0.3c0,0.3,0.1,0.6,0.2,0.8c0.1,0.2,0.3,0.6,0.6,1.1
C536.1,100.2,536.1,100.4,536.1,100.5L536.1,100.5z M532.7,107.5c0.1,0,0.3,0,0.4,0.1l0.1-0.7c0-0.5,0.1-1,0.1-1.4s0-1.1,0-2
c0-0.1,0-0.1-0.1-0.1c0,0-0.1,0-0.2,0c-1,0.1-2,0.3-3,0.5h-0.2c-0.2,0-0.4-0.1-0.5-0.3l-0.2,1.8c0.4,0,0.9-0.1,1.3-0.2
c0.3-0.1,0.6-0.1,0.9-0.1c0.2,0,0.4,0,0.6,0.1c0.2,0.1,0.3,0.2,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.4c0,0.2-0.1,0.2-0.3,0.2
c-0.4-0.1-0.7-0.2-1.1-0.2c-0.3,0-0.7,0.1-1,0.1l-0.6,0.1c-0.2,0-0.4-0.1-0.5-0.3c0,0.1,0,0.3,0,0.5v1.3l0.9-0.1l0.6-0.1
c0.6-0.1,1.2-0.2,1.8-0.2L532.7,107.5z"/>
<path class="st2" d="M542.5,102.8v5c0,0.5-0.1,1.1-0.3,1.5c-0.2,0.4-0.4,0.6-0.7,0.6c-0.1,0-0.3-0.1-0.4-0.2
c-0.1-0.2-0.3-0.3-0.4-0.5c-0.2-0.3-0.4-0.5-0.7-0.8c-0.2-0.2-0.4-0.4-0.7-0.5c-0.2,0-0.2-0.1-0.2-0.1s0.1,0,0.4,0h0.5
c0.3,0,0.6,0,0.8-0.2c0.2-0.2,0.3-0.4,0.3-0.7v-3.1c-0.8,0.6-1.3,1-1.6,1.1c-0.1,0.1-0.3,0.1-0.5,0.2c-0.2,0-0.4-0.1-0.6-0.2
c-0.2-0.1-0.3-0.3-0.4-0.5c-0.1-0.1-0.1-0.3-0.2-0.4c0,0,0,0,0.1,0h0.2c0.3,0,0.6-0.1,0.9-0.2c0.5-0.3,1.2-0.6,2.1-1v-2.8
c-0.4,0.1-0.8,0.3-1.2,0.6h-0.2c-0.3,0-0.5-0.1-0.7-0.3c-0.2-0.2-0.3-0.4-0.4-0.6c0.8-0.1,1.7-0.3,2.5-0.5v-2.9
c0-0.2,0-0.5-0.1-0.7c0-0.2-0.1-0.4-0.2-0.5h0.2c0.3,0,0.7,0.1,1,0.3c0.3,0.1,0.6,0.3,0.8,0.6c0,0.1,0,0.3,0,0.4
c0,0.2,0,0.4-0.1,0.6c-0.1,0.8-0.1,1.4-0.1,1.7l0.4-0.1c0.1,0,0.3-0.1,0.4-0.1c0.2,0,0.5,0.1,0.7,0.2v-0.1c0-0.1,0-0.1,0-0.2
c0-0.1,0-0.2,0.1-0.3c0.3-0.3,0.5-0.7,0.7-1.1c0.1-0.2,0.1-0.4,0.2-0.6c0-0.2,0-0.4,0-0.6c0.2,0.1,0.4,0.1,0.6,0.3
c0.2,0.1,0.3,0.2,0.4,0.4l0,0c0-0.1,0-0.1,0-0.2c0-0.1,0-0.2,0-0.3c0.2,0.1,0.3,0.1,0.5,0.2c0.2,0,0.4,0,0.6,0
c0.6,0,1.2-0.1,1.8-0.2l2.3-0.5c0.1-0.1,0.3-0.1,0.4-0.1l1.6,1.4l-0.3,0.2l-1,0.6c-0.6,0.3-1.1,0.6-1.5,0.8
c-0.2,0.1-0.4,0.2-0.6,0.2l0,0c0-0.1,0.1-0.2,0.1-0.2l0.9-1.4c0,0,0-0.1,0-0.1c0-0.1-0.1-0.1-0.2-0.1c-0.4,0-0.8,0.1-1.2,0.2
l-1.2,0.2c-0.3,0.1-0.7,0.1-1.2,0.2h-0.2c-0.2,0-0.4-0.1-0.6-0.2c-0.1-0.1-0.2-0.3-0.3-0.4c0,0.2,0,0.3-0.1,0.5
c-0.1,0.3-0.3,0.7-0.4,1c-0.2,0.4-0.4,0.8-0.7,1.1c-0.2,0.3-0.3,0.4-0.4,0.3h-0.1c-0.6,0-1.2,0-1.8,0.1v2.6l1.2-0.5
c0.1,0,0.2,0,0.2,0c0.1,0,0.2,0,0.2,0.1s-0.1,0.2-0.2,0.2L542.5,102.8z M553,104.8c0.2,0.1,0.5,0.3,0.6,0.6
c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.4,0.3c-0.8-0.2-1.6-0.3-2.4-0.2c-0.4,0-1.2,0-2.1,0.1v4.2c0,0.1,0,0.2-0.1,0.2
c-0.1,0-0.1,0-0.2-0.1l-0.2-0.1c-0.3-0.2-0.6-0.4-0.8-0.6c-0.2-0.2-0.4-0.4-0.3-0.7c0.2-0.9,0.3-1.9,0.3-2.8
c-1.4,0.1-2.6,0.2-3.7,0.4c-0.3,0-0.6-0.2-0.8-0.4c-0.2-0.3-0.3-0.6-0.4-0.9c1,0,2.6-0.1,4.9-0.3v-1.4c-0.6,0.1-1.2,0.2-2,0.3
l-0.7,0.1c-0.3,0-0.5-0.1-0.8-0.4c-0.2-0.3-0.3-0.6-0.4-0.9c0.3,0,0.6-0.1,0.8-0.3c0.2-0.1,0.4-0.3,0.5-0.5
c0.1-0.2,0.2-0.4,0.4-0.7l0.4-0.7c-0.1,0-0.2,0-0.3,0h-0.3c-0.2,0-0.5-0.2-0.6-0.4c-0.1-0.2-0.3-0.5-0.3-0.7c0.7,0,1.3-0.1,2-0.2
c0.1-0.2,0.2-0.5,0.2-0.7c0.1-0.3,0.2-0.7,0.2-1.1c0-0.2,0-0.4-0.1-0.6c0.4,0.1,0.8,0.2,1.1,0.5c0.3,0.2,0.5,0.6,0.4,1
c0,0.1,0,0.3-0.1,0.4l-0.1,0.2l0.3-0.1l1-0.2c0.4-0.1,0.8-0.1,1.1-0.1c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.4,0.3,0.5,0.4
c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2-0.1,0.3-0.3,0.3c-0.4-0.1-0.8-0.1-1.2-0.1c-1,0-1.9,0.1-2.8,0.3l-0.2,0.3h0.2c0.3,0,0.7,0.1,1,0.3
c0.3,0.1,0.6,0.3,0.8,0.6c0,0.3,0,0.5-0.1,0.7c0.4-0.1,0.9-0.1,1.3-0.2c0.3,0,0.6,0,0.8,0.2c0.2,0.1,0.5,0.3,0.6,0.5
c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.4,0.3c-0.6-0.2-1.3-0.2-1.9-0.2H549c0,0.6-0.1,1.1-0.1,1.4l3.2-0.3
C552.5,104.5,552.8,104.6,553,104.8L553,104.8z M547.6,102.4v-0.5c0-0.2,0-0.5-0.1-0.7c0-0.2-0.1-0.4-0.2-0.5
c-0.1,0.2-0.3,0.4-0.6,0.8s-0.6,0.8-0.8,1c0,0.1-0.1,0.1-0.1,0.1s0,0,0.1,0C546.5,102.6,547.1,102.5,547.6,102.4L547.6,102.4z"/>
</g>
<g>
<path class="st3" d="M39.2,42.5c-0.1,0.1-0.1,0.3-0.2,0.4c0,0.1-0.1,0.3-0.1,0.5l-0.2,8c0,0.4-0.1,0.7-0.2,1.1
c-0.1,0.3-0.2,0.5-0.4,0.8c-0.1,0.1-0.3,0.2-0.4,0.3c-0.1,0-0.3-0.1-0.3-0.2l-0.2-0.4c-0.1-0.2-0.2-0.4-0.4-0.6
c-0.1-0.2-0.3-0.3-0.4-0.4c-0.9,0-1.8,0.1-2.7,0.2c-0.7,0.1-1.4,0.2-2.1,0.4V53c0,0.1,0,0.2-0.1,0.2c-0.1,0-0.1,0-0.2-0.1L31.1,53
c-0.3-0.2-0.6-0.3-0.8-0.5c-0.2-0.1-0.3-0.4-0.3-0.7c0.3-1.3,0.4-2.6,0.4-3.9l-0.1-4.6c0-0.2,0-0.4-0.1-0.7c0-0.2-0.1-0.3-0.2-0.5
h0.2c0.3,0,0.7,0.1,1,0.2c0.3,0.1,0.6,0.3,0.8,0.6l0,0l1.4-2.7l0.1-0.3c0-0.2,0.1-0.3,0.1-0.5v-0.2c0-0.2,0.1-0.3,0.3-0.3
c0.2,0,0.3,0,0.5,0.1h0.3h0.3h0.2c0.2,0,0.3,0.1,0.3,0.3v0.2c-0.3,1.1-1,2-1.8,2.8h0.2c0.5,0,1.1-0.1,1.8-0.3
c0.6-0.1,1.2-0.3,1.8-0.5c0.1,0,0.1-0.1,0.2-0.1l0.1-0.1L39.2,42.5z M31.6,51.2l1.5-0.2l2.2-0.2c0.8-0.1,1.3-0.1,1.8-0.1h0.2v-7.8
c0,0,0-0.1-0.1-0.1c0,0-0.1,0-0.2,0l-0.6,0.2l-1.5,0.4c-0.4,0.1-0.8,0.2-1.3,0.2c-0.2,0-0.4,0-0.5-0.1c-0.1-0.1-0.2-0.3-0.3-0.5
l-0.5,0.4c-0.2,0.2-0.4,0.4-0.6,0.5c-0.1,0.7-0.1,1.1-0.1,1.5c0.3,0,0.6,0,0.9-0.1l0.8-0.1c0.6-0.1,1.2-0.2,1.8-0.2
c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.4,0.3,0.5,0.5c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2-0.1,0.3-0.3,0.3c-0.5-0.1-0.9-0.2-1.4-0.2
c-0.3,0-0.5,0-0.8,0.1c-0.2,0-0.6,0.1-1,0.2s-0.7,0.1-0.8,0.2c-0.3,0-0.5-0.1-0.6-0.4v2c0.5,0,1.1-0.1,1.6-0.2l0.7-0.1
c0.4-0.1,0.8-0.1,1.3-0.1c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.4,0.3,0.5,0.5c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2-0.1,0.3-0.3,0.3
c-0.4-0.1-0.9-0.2-1.4-0.2c-0.3,0-0.5,0-0.8,0l-1,0.2c-0.3,0.1-0.6,0.1-0.8,0.2c-0.2,0-0.4-0.1-0.6-0.4L31.6,51.2z"/>
<path class="st3" d="M57.1,48.6c0.2,0.1,0.3,0.2,0.5,0.3c0.1,0.1,0.2,0.1,0.2,0.2s-0.1,0-0.3,0.1h-2.5c-0.3,0-0.6-0.1-0.8-0.3
c-0.2-0.2-0.4-0.5-0.5-0.7c-0.4-0.8-0.8-1.6-1.3-2.4L52,45.1c-0.3,0.8-0.6,1.6-1.1,2.3c-0.6,0.7-1.2,1.4-2,1.9
c-0.1,0.1-0.2,0.1-0.3,0.2c-0.1,0-0.2,0.1-0.2,0.1c-0.1,0-0.1,0,0-0.1c0.1-0.1,0.2-0.3,0.3-0.4c0.9-1.1,1.6-2.5,2-3.9l-0.2,0.1
c-0.2,0.1-0.5-0.1-0.7-0.5c-0.5,1.2-1.3,2.3-2.3,3.2c-0.8,0.7-1.6,1.2-2.6,1.6c-0.3,0.1-0.7,0.2-1,0.2c-0.1,0-0.1,0-0.1,0
s0.1-0.1,0.3-0.2c0.7-0.4,1.3-0.9,1.8-1.4c0.7-0.7,1.3-1.4,1.8-2.3c0.5-0.8,0.9-1.7,1.1-2.6l0,0c0-0.1,0-0.2-0.1-0.2
c-0.1,0-0.1,0-0.2,0l-0.6,0.2c-0.1,0.1-0.3,0.1-0.4,0.1c-0.2,0-0.3-0.1-0.4-0.1c-0.3,0.3-0.5,0.6-0.8,0.9c0.1,0,0.2,0,0.3,0h0.3
l0.7,0.1c0.2,0,0.3,0.2,0.3,0.4c0,0.2-0.1,0.4-0.1,0.6c0,0.1-0.1,0.2-0.2,0.2c-0.1,0-0.2-0.1-0.2-0.1c-0.7-0.6-1.1-1-1.1-1.1
c-0.4,0.4-1,0.8-1.5,1c-0.1,0.1-0.3,0.1-0.4,0.1h0c0,0,0.1-0.2,0.3-0.3c0.5-0.4,0.9-0.9,1.2-1.5c0.3-0.6,0.7-1.2,1.1-2.1l0.2-0.3
c0.1-0.2,0.2-0.4,0.2-0.5c0.1-0.2,0.1-0.4,0.1-0.6c0-0.1,0-0.2,0-0.4c0.4,0.1,0.7,0.3,1,0.5c0.2,0.2,0.4,0.5,0.4,0.8
c0,0.2,0,0.3-0.1,0.5l-0.8,1.1h0.3c0.3,0,0.6-0.1,0.9-0.2l0.3-0.1c0.1,0,0.2-0.1,0.2-0.1l0.2-0.1l1,1c-0.2,0.5-0.4,0.9-0.5,1.3
c0.3,0,0.7-0.1,1-0.2c0.3-1.2,0.4-2.4,0.5-3.7c0-0.1,0-0.3,0-0.4c0-0.4-0.1-0.7-0.2-1c0.5,0,0.9,0.1,1.3,0.2
c0.3,0.2,0.4,0.5,0.4,0.8c0,0.1,0,0.2,0,0.3c-0.1,1.1-0.3,2.3-0.6,3.4l2-0.6h0.2c0.2,0,0.4,0,0.5,0.1c0.2,0.1,0.3,0.2,0.4,0.3
c0.1,0.1,0.2,0.2,0.2,0.4c0,0.1-0.1,0.2-0.2,0.2h-0.4c-0.8,0-1.6,0.1-2.3,0.3c0.8,0.9,1.5,1.6,2,2.1c0.6,0.6,1.3,1.1,2.1,1.5
L57.1,48.6z M46,50.1c0.1,0.1,0.2,0.2,0.2,0.3c0,0.1,0,0.1,0,0.2c0,0.2-0.1,0.4-0.2,0.6c-0.2,0.3-0.4,0.6-0.6,0.9
c-0.2,0.2-0.5,0.6-1,1.1c-0.1,0.1-0.2,0.2-0.4,0.2c-0.1,0-0.1,0-0.1-0.2s-0.1-0.4-0.1-0.7s-0.1-0.3-0.1-0.4V52c0-0.1,0-0.1,0-0.2
c0-0.1,0.1-0.1,0.1-0.2c0.2-0.1,0.4-0.3,0.6-0.5c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.1,0.2-0.3,0.2-0.4c0.1-0.1,0.1-0.3,0.2-0.5
c0-0.1,0.1-0.1,0.1-0.2c0.1,0,0.1,0,0.2,0C45.7,49.8,45.8,49.9,46,50.1z M46.2,46.9c-0.1,0.2-0.2,0.2-0.3,0.2s-0.2-0.1-0.3-0.2
c-0.4-0.5-0.7-0.8-0.8-1c-0.1-0.1-0.2-0.3-0.2-0.5c0,0,0-0.1,0.1-0.1c0.1,0,0.2,0,0.3,0.1l0.3,0.1l0.8,0.2c0.2,0,0.3,0.2,0.3,0.3
c0,0.1,0,0.1,0,0.2C46.4,46.5,46.3,46.7,46.2,46.9z M49.5,51.3c0.1,0.1,0.1,0.1,0.1,0.2c0,0.1,0,0.2-0.1,0.2l-0.2,0.4
c-0.1,0.2-0.2,0.3-0.3,0.5c-0.1,0.1-0.2,0.2-0.3,0.2c-0.1,0-0.2-0.1-0.3-0.3c-0.5-0.8-0.9-1.7-1.1-2.6c0-0.1,0-0.2,0.1-0.2
c0.2,0,0.3,0.1,0.5,0.2l1.4,1.1C49.4,51.1,49.5,51.2,49.5,51.3z M52.9,51c0,0.1,0.1,0.1,0.1,0.2c0,0.1,0,0.2-0.1,0.2
c-0.2,0.3-0.3,0.6-0.5,0.8s-0.2,0.3-0.4,0.3s-0.2-0.1-0.3-0.3c-0.5-0.7-0.8-1.6-1-2.4c0-0.1,0-0.2,0.1-0.2c0.1,0,0.3,0.1,0.4,0.2
l1.3,1L52.9,51z M53.4,41.2c0-0.1,0.1-0.1,0.2-0.1l0.7,0.1l1,0.1c0.2,0,0.4,0.2,0.4,0.5c0,0,0,0.1,0,0.1c0,0.3-0.1,0.6-0.2,0.8
c0,0.2-0.1,0.3-0.3,0.3c-0.1,0-0.3-0.1-0.3-0.2C53.9,41.9,53.4,41.4,53.4,41.2L53.4,41.2z M56.8,51.3c0.1,0.1,0.1,0.1,0.1,0.2
c0,0.1,0,0.2-0.1,0.3l-0.2,0.5c-0.1,0.2-0.2,0.4-0.3,0.5C56.2,52.9,56.1,53,56,53c-0.1,0-0.3-0.1-0.4-0.4c-0.5-0.8-0.9-1.5-1.2-2.1
c-0.2-0.4-0.4-0.8-0.4-1.2c0-0.1,0-0.2,0.1-0.2c0.2,0,0.3,0.1,0.5,0.2l2,1.6C56.6,51.1,56.7,51.2,56.8,51.3z"/>
<path class="st3" d="M73.3,53c0.2,0.1,0.2,0.2,0.2,0.2s-0.1,0.1-0.3,0.1s-0.5,0-0.9,0H70c-0.3,0-0.5,0-0.8-0.1
c-0.2-0.1-0.4-0.3-0.5-0.5c-1.2-1.6-2.2-3.1-3.1-4.3c-0.4,1.2-1.2,2.2-2.1,3c-1.1,0.9-2.4,1.6-3.8,1.9c-0.2,0.1-0.5,0.2-0.8,0.2
c-0.2,0,0-0.1,0.5-0.4c0.9-0.5,1.8-1.1,2.5-1.8c0.8-0.7,1.4-1.6,1.8-2.5c0.5-1.2,0.8-2.4,0.8-3.7c0-0.1,0-0.2,0-0.3
c0-0.2,0-0.5-0.1-0.7c0-0.2-0.1-0.4-0.2-0.6c0.5,0,1,0.1,1.4,0.4c0.3,0.3,0.5,0.7,0.4,1.1c0,0.8-0.2,1.6-0.4,2.4
c0.1,0.1,0.3,0.3,0.5,0.5c0.7-0.6,1.4-1.3,2-2.1c0.4-0.4,0.5-1,0.5-1.5c0.3,0.2,0.6,0.4,0.8,0.7c0.2,0.2,0.3,0.5,0.3,0.8
c0,0.3-0.1,0.6-0.3,0.8c-0.3,0.4-0.7,0.7-1.2,0.9c-0.6,0.3-1.2,0.6-1.8,0.8c0.9,0.8,1.8,1.6,2.8,2.4c0.9,0.7,1.8,1.3,2.8,1.8
C72.8,52.7,73,52.8,73.3,53z M60.1,45.1L60,44.7l-0.1-0.4c0-0.1-0.1-0.2-0.1-0.2c0-0.1,0-0.2,0.1-0.3c0.2-0.2,0.3-0.4,0.5-0.7
c0.1-0.2,0.2-0.4,0.3-0.7c0.1-0.2,0.1-0.3,0.2-0.5c0-0.2,0-0.4,0-0.6c0-0.1,0-0.2,0-0.3c0.3,0.1,0.5,0.2,0.7,0.3
c0.2,0.1,0.4,0.3,0.5,0.4c0.1,0.1,0.1,0.2,0.1,0.4c0,0.2-0.1,0.4-0.1,0.5c-0.1,0.4-0.3,0.8-0.5,1.2c-0.2,0.3-0.5,0.8-0.8,1.4
c-0.2,0.2-0.3,0.4-0.4,0.4s-0.1,0-0.2-0.2L60.1,45.1z M63.3,47.1c0.1,0,0.2,0.1,0.3,0.2c0,0.1,0,0.2,0,0.3c-0.2,0.5-0.3,0.8-0.4,1
S63,49,62.8,49s-0.1-0.1-0.2-0.2c-0.1-0.3-0.4-0.8-0.8-1.4l-0.2-0.4l-0.2-0.5c0-0.1-0.1-0.2-0.1-0.3c0,0,0,0,0.1,0
c0.1,0,0.2,0.1,0.3,0.1L63.3,47.1z M63.3,43.1c-0.3,0-0.5-0.1-0.7-0.3c-0.2-0.2-0.2-0.4-0.2-0.7c0-0.1,0-0.2,0-0.2
c0.2,0.1,0.3,0.1,0.5,0.1c0.2,0,0.4,0,0.6,0c1.1-0.1,2.2-0.2,3.3-0.4c1.7-0.3,2.8-0.5,3.3-0.6c0.1-0.1,0.3-0.1,0.4-0.1l1.5,1.5
l-0.6,0.3l-0.9,0.6c-0.4,0.2-0.8,0.5-1.3,0.7c-0.2,0.1-0.4,0.2-0.6,0.2c-0.2,0-0.1-0.2,0.2-0.6l0.9-1c0,0,0.1-0.1,0.1-0.2
c0-0.1,0-0.1-0.1-0.2c-0.1,0-0.1,0-0.2,0c-1.3,0.1-3.4,0.4-6.1,0.8L63.3,43.1z M64.2,39.1c0-0.1,0-0.1,0.1-0.1c0.1,0,0.3,0,0.4,0.1
l1.7,0.4c0.1,0,0.2,0.1,0.3,0.1c0.1,0,0.1,0.1,0.1,0.3c0,0.3,0,0.7-0.1,1c0,0.3-0.2,0.5-0.3,0.5c-0.1,0-0.2-0.1-0.3-0.2
C64.8,39.9,64.2,39.2,64.2,39.1L64.2,39.1z"/>
<path class="st3" d="M87.7,47c0.2,0.1,0.4,0.3,0.6,0.5c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.3,0.3c-0.7-0.1-1.4-0.2-2.1-0.2
c-0.8,0-2.1,0-3.7,0.2v0.9l0,0l2.1-0.3c0.1,0,0.2-0.1,0.3-0.2l2.2,0.9c-0.2,0.1-0.3,0.3-0.4,0.4l-0.2,0.3l-0.9,1.2
c0.2,0.1,0.5,0.2,0.6,0.4c0.1,0.1,0.2,0.3,0.3,0.5c0,0.2-0.1,0.2-0.3,0.3c-0.6-0.1-1.1-0.1-1.7-0.1c-0.8,0-1.7,0-2.5,0.1
c-0.7,0.1-1.4,0.2-2.1,0.3v0.5c0,0.1,0,0.2-0.2,0.2c-0.1,0-0.2-0.1-0.3-0.1L79,53.6c-0.2-0.1-0.4-0.2-0.6-0.4
c-0.1-0.1-0.2-0.3-0.2-0.5c0-0.2,0-0.5,0-0.9c0-0.4,0-0.9-0.1-1.3c0-0.2-0.1-0.5-0.2-0.7c-0.1-0.2-0.2-0.4-0.3-0.4
c0.1-0.1,0.3-0.1,0.4-0.1c0.3,0,0.5,0.1,0.8,0.1c0.2,0.1,0.4,0.2,0.6,0.4c0-0.1,0-0.2,0-0.3H80c0.2,0,0.6,0,1.3-0.1l0.7-0.1l0,0
c-0.2-0.1-0.4-0.2-0.6-0.3c-0.2-0.1-0.3-0.3-0.5-0.5l-3,0.3C77,48.9,76.3,49,76,49c-0.3,0-0.5-0.1-0.7-0.4
c-0.2-0.2-0.3-0.5-0.4-0.8c1.3,0,3.3-0.2,6-0.4c0-0.2,0-0.5,0.1-0.9c-0.7,0.1-1.3,0.2-2,0.4c-0.2,0-0.4-0.1-0.6-0.4
c-0.1-0.2-0.2-0.5-0.3-0.8c1,0,2-0.1,3-0.3c0-0.2,0-0.5,0-1c-0.8,0.1-1.6,0.2-2.4,0.4c-0.2,0-0.4-0.1-0.6-0.4
c-0.1-0.2-0.3-0.5-0.3-0.8c1.1,0,2.1-0.1,3.1-0.2v-0.3c0-0.3-0.1-0.6-0.3-0.9l-1.1,0.2l-0.6,0.1h-0.2c-0.2,0-0.4-0.1-0.6-0.2
c-0.1-0.1-0.2-0.3-0.3-0.5c0,0.2,0,0.4-0.1,0.5c-0.1,0.4-0.3,0.8-0.5,1.2c-0.2,0.3-0.4,0.8-0.8,1.3c-0.2,0.2-0.3,0.4-0.4,0.4
s-0.1,0-0.2-0.2s-0.1-0.2-0.2-0.4s-0.1-0.3-0.2-0.4L75.4,44c0-0.1,0-0.2-0.1-0.2c0-0.1,0.1-0.2,0.1-0.3c0.2-0.2,0.4-0.4,0.5-0.7
c0.1-0.2,0.2-0.4,0.3-0.7c0.1-0.2,0.1-0.3,0.1-0.5c0-0.2,0.1-0.4,0.1-0.6c0-0.1,0-0.2,0-0.3c0.3,0.1,0.5,0.2,0.7,0.3
c0.2,0.1,0.4,0.3,0.5,0.4c0,0,0,0.1,0.1,0.1c0-0.1,0-0.2,0-0.3c0.2,0.1,0.3,0.1,0.5,0.2c0.2,0,0.4,0,0.6,0c1-0.1,2-0.2,3-0.4
c-0.8-0.7-1.3-1.2-1.6-1.5s-0.5-0.5-0.5-0.6s0-0.1,0.1-0.1l0.4,0.1l1.7,0.4c0.1,0,0.2,0.1,0.4,0.1c0.1,0.1,0.1,0.2,0.1,0.3
c0,0.4,0,0.9-0.1,1.3c1.7-0.3,3-0.5,3.9-0.7c0.1-0.1,0.3-0.1,0.4-0.1l1.8,1.5c-0.8,0.4-1.8,0.8-2.9,1.2c-0.2,0.1-0.3,0.1-0.5,0.2
c0,0,0,0,0-0.1c0.1-0.1,0.1-0.2,0.2-0.3l0.2-0.2l0.5-0.7c0,0,0-0.1,0-0.1c0-0.1-0.1-0.1-0.2-0.1c-0.7,0-2.2,0.3-4.5,0.6
c0.2,0.1,0.4,0.1,0.6,0.2c0.1,0.1,0.3,0.2,0.4,0.3c0,0.2,0,0.4,0,0.5c0.8-0.2,1.4-0.3,1.8-0.4c0.1,0,0.2,0,0.3,0
c0.2,0,0.4,0.1,0.6,0.2c0.2,0.1,0.4,0.2,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.4c0,0.2-0.1,0.2-0.3,0.2l-3.2,0.3c0,0.2,0,0.5,0,0.9
c0.7-0.1,1.3-0.3,1.9-0.4c0.1,0,0.2,0,0.3,0c0.2,0,0.4,0.1,0.6,0.2c0.2,0.1,0.4,0.2,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.4
c0,0.2-0.1,0.2-0.3,0.2l-0.6,0.1l-2.5,0.2l0.1,1c2.1-0.2,3.6-0.3,4.6-0.5C87.2,46.8,87.4,46.9,87.7,47z M84.7,50.1
C84.7,50,84.7,50,84.7,50.1C84.6,50,84.5,50,84.5,50l-0.8,0.1l-1.4,0.2l-1.8,0.3c-0.4,0-0.7-0.1-0.8-0.5c0,0.6,0.1,1.3,0.2,2.1
c1.2-0.1,2.7-0.2,4.3-0.5L84.7,50.1L84.7,50.1z"/>
</g>
<g>
<path class="st3" d="M25.3,114c0.2,0.1,0.4,0.3,0.6,0.5c0.1,0.2,0.2,0.3,0.2,0.5c0,0.2-0.1,0.3-0.3,0.3c-0.7-0.2-1.4-0.2-2.1-0.2
c-1,0-2.5,0.1-4.4,0.2c0,0.4-0.1,0.8-0.1,1c1.7-0.3,2.5-0.4,2.6-0.4c0.1-0.1,0.1-0.1,0.2-0.1l1.4,0.7c-0.1,0.2-0.2,0.5-0.2,0.7
l-0.4,1.8c-0.1,0.4-0.2,0.8-0.4,1.2c-0.2,0.3-0.4,0.5-0.5,0.5c-0.1,0-0.2-0.1-0.2-0.2c0-0.1-0.1-0.2-0.1-0.2l0,0
c-0.5-0.1-0.9-0.1-1.4-0.1h-0.8v1.4h0.4c0.6-0.1,1.3-0.1,1.8-0.1c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.4,0.3,0.5,0.4
c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2-0.1,0.3-0.3,0.3c-0.6-0.2-1.3-0.2-1.9-0.2c-0.3,0-0.8,0-1.4,0.1v1.1c2.2-0.1,3.6-0.2,4.3-0.2
c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.4,0.3,0.5,0.5c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2-0.1,0.3-0.3,0.3c-1-0.2-2.1-0.3-3.2-0.3
c-1.3,0-2.8,0-4.4,0.1s-2.7,0.2-3.2,0.3c-0.3,0-0.5-0.1-0.6-0.4c-0.2-0.2-0.3-0.5-0.4-0.8c1,0,2.6-0.1,4.7-0.2h0.3v-1
c-0.8,0.1-1.5,0.2-2,0.3c-0.2,0-0.3-0.1-0.4-0.2c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.1-0.1-0.3-0.2-0.4c0.6,0,1.6-0.1,3-0.2v-1.4
c-0.5,0-0.9,0.1-1.4,0.2c0,0,0,0.1,0,0.1v0.1c0,0.1,0,0.1-0.1,0.1c0,0-0.1,0-0.1,0l-0.1-0.1c-0.2-0.1-0.5-0.2-0.6-0.4
c-0.2-0.1-0.3-0.3-0.3-0.6c0-1.3,0-2.2-0.1-2.7c0-0.2-0.1-0.4-0.1-0.5c0-0.1-0.1-0.3-0.2-0.4h0.2c0.3,0,0.5,0.1,0.8,0.2
c0.2,0.1,0.4,0.2,0.6,0.4v0.8c0,0.1,0,0.3,0,0.5c0.5,0,1.1-0.1,1.6-0.1v-0.6l-0.7,0.2c0,0-0.1,0-0.1,0c-0.1,0-0.3-0.1-0.4-0.2
c-0.1-0.1-0.2-0.2-0.2-0.4c0-0.1,0-0.2,0-0.3c0.2,0.1,0.5,0.1,0.7,0.1l0.7-0.1v-1.1l-3.1,0.3l-1.9,0.2c-0.3,0-0.5-0.1-0.7-0.4
c-0.2-0.2-0.3-0.5-0.4-0.8c0.8,0,2.8-0.1,6.1-0.4V114c0-0.2,0-0.4-0.1-0.6l-1.7,0.2c-0.3,0-0.6,0-0.8,0s-0.3,0-0.3-0.1
s0.4-0.3,1.1-0.5c0.8-0.3,2-0.7,3.8-1.2c0.3-0.1,0.5-0.3,0.6-0.5c0.1-0.1,0.1-0.1,0.2-0.1c0.1,0,0.1,0,0.2,0.1
c0.1,0.1,0.2,0.2,0.2,0.3c0.1,0.2,0.3,0.4,0.4,0.5c0.1,0,0.2,0.1,0.2,0.2c0,0.1-0.1,0.2-0.2,0.3c-0.8,0.4-1.7,0.6-2.5,0.7
c0.2,0.1,0.3,0.2,0.4,0.4l-0.1,0.7c2.5-0.2,4.2-0.3,5.3-0.4C24.9,113.9,25.2,113.9,25.3,114z M17.9,119.5v-0.8l-0.4,0.1
c-0.2,0-0.4,0.1-0.6,0.1c-0.1,0-0.2,0-0.3-0.1c-0.1-0.1-0.2-0.2-0.3-0.3c0,0.4,0,0.8,0.1,1.3L17.9,119.5z M21.8,116.7
c0,0-0.1,0-0.1,0l-1.8,0.3l-0.7,0.1v0.6c0.5-0.1,0.9-0.2,1-0.2c0.2,0,0.4,0,0.6,0.1c0.2,0.1,0.3,0.2,0.4,0.4
c0.1,0.1,0.2,0.2,0.2,0.4c0,0.2-0.1,0.2-0.3,0.2c-0.4-0.1-0.7-0.2-1.1-0.2c-0.3,0-0.5,0-0.8,0v0.9c0.9-0.1,1.5-0.1,1.8-0.1h0.1
c0.1,0,0.2,0,0.3,0c0.1-0.2,0.1-0.4,0.1-0.6L21.8,116.7C21.8,116.7,21.8,116.7,21.8,116.7L21.8,116.7z"/>
<path class="st3" d="M41.8,123.8c0.2,0.1,0.2,0.2,0.2,0.3s-0.1,0.1-0.3,0.2c-0.3,0-0.6,0-0.9,0h-1.8c-0.3,0-0.6-0.1-0.9-0.3
c-0.3-0.2-0.5-0.4-0.6-0.7c-0.5-0.8-1.1-1.7-1.8-2.8c-0.5-0.8-1.1-1.5-1.8-2.2c-0.4,1.4-1.1,2.6-2,3.7c-1,1.1-2.3,1.9-3.7,2.4
c-0.2,0.1-0.5,0.2-0.7,0.2c-0.1,0-0.1,0,0-0.1c0.1-0.1,0.3-0.2,0.5-0.3c1-0.7,1.9-1.5,2.6-2.5c0.8-1.2,1.5-2.5,1.9-3.9
c-1,0.1-2.1,0.2-3.1,0.5c-0.3,0-0.6-0.1-0.7-0.4c-0.2-0.3-0.3-0.5-0.4-0.8c0.7,0,2.2-0.1,4.5-0.3c0.2-1.1,0.4-2.2,0.4-3.2v-0.6
c0-0.3,0-0.6-0.1-0.8c0-0.3-0.1-0.5-0.2-0.8c0.5,0,1,0,1.5,0.3c0.4,0.2,0.5,0.7,0.5,1.1c0,1.3-0.2,2.6-0.4,3.9l2.4-0.3l2.2-0.2
c0.3,0,0.5,0,0.8,0.2c0.2,0.1,0.4,0.3,0.6,0.5c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.3,0.3c-0.7-0.1-1.4-0.2-2.2-0.2
c-1.1,0-2.2,0-3.5,0.1c0.3,0.3,0.9,0.8,1.6,1.6c0.9,1,1.7,1.8,2.4,2.4c0.7,0.6,1.5,1.2,2.3,1.7C41.4,123.5,41.6,123.6,41.8,123.8z"
/>
<path class="st3" d="M58,123c0,0.1-0.3,0.1-0.9,0.1h-1.5c-0.2,0-0.4-0.1-0.6-0.2c-0.2-0.1-0.5-0.3-0.7-0.5l-0.3-0.3
c-0.5-0.4-0.9-0.8-1.3-1.3c-0.6-0.6-1.1-1.2-1.7-1.8c-0.7,0-1.6,0.1-2.6,0.2c0,0.1,0.1,0.2,0.1,0.4c0,0.2-0.1,0.4-0.2,0.6
c-0.4,0.5-0.8,0.9-1.2,1.3c0.8,0,1.5-0.1,2.3-0.2V121c0-0.2,0-0.4-0.1-0.7c0-0.2-0.1-0.3-0.2-0.5h0.2c0.3,0,0.7,0.1,1,0.2
c0.3,0.1,0.5,0.3,0.7,0.6v0.5l1.2-0.2c0.2,0,0.4,0,0.6,0.1c0.2,0.1,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2-0.1,0.2-0.3,0.2
c-0.4-0.1-0.7-0.1-1.1-0.1c-0.2,0-0.6,0-1.2,0.1c-0.1,0.7-0.1,1.2-0.1,1.5l1.2-0.1l2.1-0.1c0.3,0,0.5,0,0.8,0.2
c0.2,0.1,0.4,0.3,0.6,0.5c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.3,0.3c-0.8-0.2-1.7-0.3-2.6-0.2c-1.1,0-2.3,0.1-3.7,0.2
c-1.4,0.1-2.4,0.2-3,0.3c-0.3,0-0.6-0.1-0.7-0.4c-0.2-0.3-0.3-0.5-0.4-0.8c0.8,0,2.3-0.1,4.5-0.2c0-0.3,0-0.8,0-1.4v-0.1
c-0.5,0.1-1,0.2-1.5,0.3c-0.2,0-0.4,0-0.5-0.3c-0.1-0.2-0.3-0.4-0.4-0.7c-0.9,0.9-2.1,1.6-3.3,1.9c-0.1,0-0.3,0.1-0.4,0.1
c-0.1,0-0.1,0,0-0.1c0.1-0.1,0.2-0.2,0.4-0.3c0.6-0.5,1.2-1,1.8-1.5c0.6-0.6,1.2-1.3,1.8-2.1c0,0,0.1-0.1,0.2-0.3
c-1.1,0.1-1.8,0.2-2.2,0.2s-0.5-0.1-0.7-0.4c-0.2-0.2-0.3-0.5-0.4-0.8c0.9,0,2-0.1,3.3-0.1c0-1.2-0.1-2.6-0.1-4.1l-0.5,0.1h-0.3
c-0.3,0-0.6-0.1-0.7-0.4c-0.2-0.2-0.3-0.5-0.4-0.8c0.7,0,1.2-0.1,1.8-0.1c0-0.1,0-0.2,0-0.3c0-0.2-0.1-0.5-0.2-0.7
c0-0.2-0.1-0.3-0.3-0.4c0.1,0,0.2,0,0.3,0c0.3,0,0.6,0.1,0.9,0.2c0.3,0.1,0.5,0.3,0.7,0.5v0.6c0.7-0.1,1.3-0.1,2.1-0.2l0.9-0.1
c0-0.5-0.1-0.8-0.1-0.9c0-0.2-0.1-0.4-0.2-0.7c0-0.2-0.1-0.3-0.3-0.4c0.1,0,0.2,0,0.3,0c0.3,0,0.6,0.1,0.9,0.2
c0.3,0.1,0.5,0.3,0.7,0.5c0,0.3,0,0.7,0,1.2l0.8-0.1c0.3,0,0.5,0,0.8,0.2c0.2,0.1,0.4,0.3,0.6,0.5c0.1,0.1,0.2,0.3,0.2,0.5
c0,0.1,0,0.2-0.1,0.2c-0.1,0.1-0.2,0.1-0.3,0.1c-0.7-0.1-1.3-0.2-2-0.2l0.1,4.3l1.9-0.1c0.3,0,0.5,0,0.8,0.2
c0.2,0.1,0.4,0.3,0.6,0.5c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.3,0.3c-1-0.2-2-0.3-3-0.2h-0.8c0.8,0.8,1.6,1.5,2.5,2.1
c0.8,0.6,1.6,1.1,2.5,1.4C57.7,122.7,58,122.9,58,123z M48.6,118.2l3.1-0.2c0-1.8-0.1-3.2-0.1-4.4c-0.9,0.1-1.9,0.2-3,0.3v0.6
c0.4,0,0.8-0.1,1.2-0.2l0.4-0.1c0.2,0,0.4,0,0.6,0.1c0.2,0.1,0.3,0.2,0.4,0.4c0.1,0.1,0.2,0.3,0.2,0.4c0,0.2-0.1,0.2-0.3,0.2
c-0.3-0.1-0.6-0.1-0.9-0.1c-0.4,0-0.8,0.1-1.2,0.2l-0.3,0.1h0v0.9c0.3,0,0.7-0.1,1-0.2l0.6-0.2c0.2,0,0.4,0,0.6,0.1
c0.2,0.1,0.3,0.2,0.4,0.4c0.1,0.1,0.2,0.3,0.2,0.4c0,0.2-0.1,0.2-0.3,0.2c-0.3-0.1-0.6-0.1-0.8-0.1c-0.4,0-0.8,0.1-1.1,0.1
l-0.4,0.1c0,0,0,0-0.1,0l0,0L48.6,118.2z"/>
<path class="st3" d="M64.1,121.3c0.1,0.1,0.2,0.2,0.2,0.4c0,0.1-0.1,0.2-0.2,0.2h-0.5c-0.7,0-1.3,0.1-1.9,0.4v0.8
c0,0.1,0,0.2-0.1,0.2c-0.1,0-0.2-0.1-0.3-0.2l-0.3-0.2c-0.1-0.1-0.3-0.2-0.4-0.4c-0.1-0.1-0.2-0.3-0.2-0.4v-1.6
c-0.4,0.5-0.8,0.9-1.3,1.2c-0.1,0.1-0.3,0.2-0.4,0.2h0c0-0.2,0.1-0.3,0.2-0.4c0.3-0.4,0.6-0.8,0.8-1.3c0.2-0.4,0.5-0.9,0.7-1.4
c0-0.1-0.1-0.3-0.2-0.4c0-0.1-0.1-0.2-0.2-0.3h0.2c0.1,0,0.3,0,0.4,0l0.2-0.6l0.8-1.8c0-0.1,0-0.2,0.1-0.4
c-0.5,0.1-0.9,0.2-1.3,0.4c-0.2,0-0.3-0.1-0.5-0.3c-0.1-0.2-0.2-0.4-0.3-0.6c0.7-0.1,1.4-0.3,2.1-0.4l0,0h0
c0.7-0.2,1.3-0.4,1.8-0.7c0.1,0,0.2-0.1,0.3-0.1c0.2,0,0.5,0.1,0.6,0.3c0.2,0.1,0.3,0.3,0.3,0.5c0,0.1-0.1,0.2-0.2,0.2
c-0.7,0.1-1.3,0.2-1.8,0.4c0.1,0.1,0.1,0.3,0.1,0.4c0,0.1,0,0.2,0,0.3c-0.2,0.7-0.5,1.4-0.8,2c0.2,0,0.3-0.1,0.5-0.2
c0.1,0,0.2-0.1,0.3-0.1c0.1,0,0.2-0.1,0.2-0.1l1.3,0.9l-0.9,2.7C63.8,121.1,64,121.2,64.1,121.3z M62.8,118.3c0,0-0.1,0-0.1,0
c0,0,0,0,0,0l-0.9,0.4l0,0c0,0.3,0,0.6-0.1,1.1c0,0.5,0,1,0,1.5c0.3-0.1,0.6-0.2,0.8-0.2l0.1-0.8c0.1-0.6,0.2-1.2,0.2-1.8
C62.9,118.4,62.8,118.4,62.8,118.3z M72.8,122.3v1.7c0,0.2,0,0.2-0.1,0.2c-0.1,0-0.1,0-0.2-0.1l-0.1-0.1l-0.4-0.3
c-0.2-0.1-0.4-0.3-0.5-0.5c-0.6-0.1-1.2-0.2-1.8-0.2c-0.8,0-1.7,0.1-2.5,0.3c-0.7,0.1-1.3,0.3-1.9,0.6c-0.3,0-0.5-0.1-0.7-0.4
c-0.2-0.3-0.3-0.5-0.4-0.8h0.2c0.2,0,0.3-0.1,0.3-0.2c0-0.2,0-0.3,0-0.5v-1.6c0-0.2,0-0.4-0.1-0.6c0-0.2-0.1-0.3-0.3-0.5h0.2
c0.3,0,0.6,0.1,0.9,0.2c0.3,0.1,0.5,0.3,0.7,0.5v2.2c0,0.1,0,0.2,0.1,0.2c0.1,0.1,0.2,0.1,0.3,0.1c0.4-0.1,0.7-0.2,1.1-0.2
c0.1-0.3,0.1-0.7,0.1-1c0-0.2,0-0.6,0-1.1v-2.4c-0.6,0.2-1.1,0.4-1.6,0.7l-0.3,0.1l-0.2,0.1c-0.3,0-0.5-0.1-0.7-0.4
c-0.2-0.2-0.3-0.5-0.4-0.8h0.2c0.2,0,0.3-0.1,0.3-0.2c0-0.2,0.1-0.3,0.1-0.5v-0.9c0-0.2-0.1-0.4-0.1-0.6c0-0.2-0.1-0.3-0.3-0.5
c0.1,0,0.2,0,0.2,0c0.3,0,0.6,0.1,0.9,0.2c0.3,0.1,0.5,0.3,0.7,0.5v1.6c0,0.3,0.1,0.4,0.2,0.3s0.6-0.2,1-0.3v-4.8
c0-0.2,0-0.4-0.1-0.7c0-0.2-0.1-0.3-0.2-0.5h0.2c0.3,0,0.7,0.1,0.9,0.2c0.3,0.1,0.5,0.3,0.7,0.6c0,0.5-0.1,0.9-0.1,1.1
s0,0.4-0.1,0.8s-0.1,0.8-0.1,1.2v1.7c0.4,0,0.8-0.1,1-0.1s0.2,0,0.2-0.1c0-0.1,0-0.2,0-0.2v-1.3c0-0.2,0-0.4-0.1-0.7
c0-0.2-0.1-0.3-0.3-0.5h0.2c0.3,0,0.7,0.1,1,0.2c0.3,0.1,0.5,0.3,0.7,0.5l0,2v1.7c0,0.2-0.1,0.2-0.1,0.2c-0.1,0-0.1,0-0.2-0.1
l-0.1-0.1l-0.4-0.3c-0.2-0.1-0.4-0.3-0.5-0.5c-0.5-0.1-1-0.2-1.5-0.2v4.4c0.7-0.1,1.3-0.1,2-0.1c0.1,0,0.2,0,0.2-0.1
c0.1-0.1,0.1-0.1,0.1-0.2v-1c0-0.2,0-0.4-0.1-0.7c0-0.2-0.1-0.3-0.3-0.5h0.2c0.3,0,0.7,0.1,1,0.2c0.3,0.1,0.5,0.3,0.7,0.5
L72.8,122.3z"/>
<path class="st3" d="M79.4,120.5c0.2,0,0,0.3-0.5,1s-1.1,1.3-1.7,2c-0.1,0.2-0.3,0.3-0.5,0.3c-0.2,0-0.4-0.1-0.5-0.2
c-0.2-0.1-0.3-0.3-0.4-0.4c-0.1-0.1-0.1-0.3-0.2-0.4c0.3-0.2,0.5-0.4,0.8-0.6c0.2-0.2,0.4-0.5,0.4-0.8v-4.5
c-0.4,0.2-0.7,0.4-1.1,0.5c-0.1,0-0.1,0-0.2,0c-0.2,0-0.4-0.1-0.5-0.2c-0.1-0.1-0.2-0.3-0.3-0.5c0-0.1,0-0.3,0-0.4
c0.2,0,0.4,0.1,0.7,0.1h0.3c0.2,0,0.4-0.1,0.6-0.1c0.1,0,0.3-0.1,0.4-0.2l0.2-0.1c0.1-0.1,0.2-0.1,0.4-0.2l1.4,1.5
c-0.2,0.6-0.3,1.2-0.4,1.8c-0.1,0.7-0.2,1.3-0.2,2v0.5l0.6-0.5C78.9,120.8,79.1,120.6,79.4,120.5z M77.8,114.1
c-0.8-0.8-1.3-1.3-1.5-1.6s-0.4-0.5-0.4-0.6s0,0,0.1,0c0.1,0,0.2,0,0.3,0.1l2.1,0.6c0.1,0,0.2,0.1,0.3,0.1c0.1,0.1,0.1,0.2,0.1,0.3
c0,0.3,0,0.7-0.1,1c-0.1,0.3-0.2,0.5-0.3,0.5c-0.1,0-0.2-0.1-0.2-0.1L77.8,114.1z M89.3,125.1c0,0.1-0.3,0.2-1,0.2h-1.6
c-0.3,0-0.6,0-0.8-0.1c-0.2-0.1-0.5-0.3-0.6-0.5c-0.8-0.8-1.5-1.5-1.9-2c-1.1,1.1-2.5,1.7-4,2c-0.2,0-0.4,0.1-0.6,0.1
c-0.1,0-0.1,0-0.1-0.1c0.1-0.1,0.3-0.2,0.5-0.3c1.2-0.7,2.4-1.5,3.3-2.6c-0.2-0.2-0.4-0.5-0.7-0.8c-0.2-0.2-0.3-0.4-0.6-0.6
c-0.1-0.1-0.3-0.2-0.4-0.2l-0.4-0.1c-0.3-0.1-0.4-0.1-0.4-0.2s0.2-0.2,0.4-0.3c0.3-0.1,0.6-0.2,0.9-0.2c0.3,0,0.5,0.1,0.7,0.3
l1.2,1.1c0.7-0.9,1.2-1.9,1.6-2.9c0-0.1,0-0.1,0-0.2l0,0c0,0-0.1,0-0.1,0c-0.3,0.2-0.7,0.3-1,0.4c-0.5,0.2-1.1,0.4-1.6,0.6
c-0.1,0-0.2,0.1-0.3,0.1c-0.2,0-0.4-0.1-0.5-0.2c-0.1-0.1-0.3-0.3-0.3-0.5c-0.1-0.1-0.1-0.3-0.1-0.4c0.3,0,0.7,0,1-0.1
c0.5-0.1,1.1-0.3,1.6-0.4c0.4-0.1,0.8-0.3,1.1-0.4c0.1,0,0.1-0.1,0.2-0.1c0,0,0.1-0.1,0.2-0.1l1.7,0.8c-0.6,1.5-1.3,2.9-2.3,4.2
c1.4,1.1,2.8,2,4.3,2.8C89.1,124.8,89.3,125,89.3,125.1L89.3,125.1z M79.8,117.3L79.8,117.3c0-0.1,0.1-0.3,0.2-0.4
c0.3-0.5,0.5-1.1,0.6-1.7c0.1-0.6,0.2-1.1,0.2-1.7c0-0.3,0-0.5,0-0.8c0-0.2-0.1-0.4-0.2-0.6c0.4,0,0.8,0.1,1.2,0.3
c0-0.1,0-0.2,0-0.3h0.6c0.1,0,0.3,0,0.4,0c0.6-0.1,1.1-0.3,1.6-0.5c0.1-0.1,0.2-0.1,0.3-0.2l1.6,1c-0.2,0.3-0.4,0.6-0.5,0.9
c0,0.2-0.1,0.4-0.1,0.6c0,0.3,0,0.4,0,0.5c0,0.2,0,0.4,0.2,0.6c0.2,0.1,0.5,0.2,0.7,0.1c0.3,0,0.4-0.1,0.5-0.3
c0.1-0.3,0.1-0.6,0.1-0.9c0-0.2,0-0.2,0.1-0.2s0.2,0.1,0.2,0.2l0.2,0.3c0,0.1,0.1,0.2,0.2,0.4c0,0.1,0.1,0.2,0.2,0.2
c0.2,0.2,0.3,0.4,0.3,0.6c0,0.3-0.2,0.5-0.7,0.7c-0.5,0.2-1.1,0.3-1.7,0.3c-0.5,0.1-0.9-0.1-1.3-0.3c-0.2-0.3-0.3-0.6-0.3-1v-2.6
l0,0l0,0c-0.2,0.1-0.5,0.2-0.7,0.3c-0.3,0.1-0.5,0.2-0.8,0.2h-0.2c-0.2,0-0.3-0.1-0.5-0.2c0,0.1,0,0.3,0,0.4c0,0.8-0.2,1.5-0.5,2.2
c-0.3,0.6-0.8,1.1-1.4,1.5C80.2,117.3,80,117.3,79.8,117.3L79.8,117.3z"/>
<path class="st3" d="M104.8,123.1c0,0.4-0.4,0.7-1.3,0.9c-1.1,0.2-2.2,0.3-3.2,0.3c-0.7,0-1.2,0-1.5,0c-0.6,0-1.3-0.2-1.7-0.7
c-0.4-0.5-0.6-1.2-0.6-1.8v-1.3c-0.2,0-0.4,0-0.6-0.2c-0.2-0.1-0.3-0.2-0.5-0.4c0,0.3-0.1,0.7-0.2,1c-0.1,0.3-0.1,0.6-0.2,0.8
s-0.2,0.7-0.3,1.2c-0.1,0.5-0.3,0.9-0.4,1.4c-0.1,0.3-0.3,0.5-0.4,0.5c-0.1,0-0.2-0.1-0.3-0.2l-0.4-0.5c-0.2-0.3-0.4-0.5-0.6-0.7
c-0.2-0.2-0.3-0.4-0.5-0.5c-0.2-0.1-0.2-0.2-0.2-0.3s0,0,0,0c0.1,0,0.3,0,0.4,0.1c0.2,0.1,0.4,0.1,0.6,0.1c0.1,0,0.2-0.1,0.3-0.2
c0.1-0.2,0.2-0.3,0.2-0.5l0.3-1c0.1-0.4,0.2-0.8,0.3-1s0.1-0.7,0.2-1.3l0,0c0,0,0-0.1-0.1-0.1c0,0-0.1,0-0.1,0
c-0.1,0-0.3,0-0.4-0.1c-0.1-0.1-0.1-0.1-0.1-0.2c-0.4,0.9-0.8,1.7-1.4,2.5c-0.4,0.6-1,1.1-1.7,1.5c-0.1,0.1-0.3,0.1-0.4,0.2
M89.9,122.6c0-0.1,0.1-0.2,0.2-0.4c0.6-0.8,1.1-1.5,1.5-2.4c0.4-0.9,0.7-1.8,1-2.7V117c-0.2,0.1-0.7,0.2-1.4,0.5
c-0.2,0-0.3,0-0.4-0.2c-0.1-0.2-0.3-0.3-0.4-0.5c-0.1-0.1-0.1-0.3-0.2-0.4c0.8-0.1,1.6-0.2,2.4-0.3l0,0c0.6-0.1,1.3-0.3,2.1-0.6
l0.4-0.1c0.2,0,0.4,0,0.6,0.1c0.2,0.1,0.3,0.3,0.4,0.5c0.6-0.9,1-1.9,1.4-2.9c0.1-0.3,0.2-0.7,0.2-1c0-0.2,0-0.4-0.1-0.5
c0.4,0.1,0.8,0.2,1.1,0.5c0.3,0.2,0.4,0.5,0.4,0.8c0,0.2,0,0.3-0.1,0.4c-0.2,0.5-0.4,1-0.8,1.4c0.8-0.2,1.4-0.4,1.9-0.6
c0.5-0.2,1-0.4,1.4-0.6h0.2c0.2,0,0.4,0.1,0.6,0.2c0.2,0.1,0.3,0.2,0.4,0.4c0.1,0.1,0.2,0.2,0.2,0.4c0,0.2-0.1,0.2-0.2,0.2
c-1.6,0-3.2,0.5-4.6,1.2c-0.2,0-0.4-0.1-0.6-0.2c-0.6,0.7-1.2,1.3-2,1.8c-0.2,0.1-0.3,0.2-0.5,0.3c0,0,0,0,0-0.1s0.1-0.2,0.3-0.4
l0.4-0.6h-0.4c-0.6,0-1.2,0.1-1.8,0.2c0.1,0.1,0.1,0.3,0.1,0.4c0,0.1,0,0.2-0.1,0.3l-0.2,0.6h0.2H94l0.2-0.1l0.1-0.1l1.5,0.9
c-0.1,0.1-0.2,0.3-0.2,0.4c0,0.1-0.1,0.3-0.1,0.4c0,0,0,0.1,0,0.1c0.2,0,0.4,0,0.5-0.1l0.4-0.1h0.1v-1c0-0.2,0-0.4-0.1-0.6
c0-0.2-0.1-0.3-0.2-0.5c0.2,0,0.3,0,0.5,0.1c0.3,0.1,0.5,0.2,0.8,0.3c0.2,0.1,0.4,0.2,0.5,0.4c0,0.1,0,0.3-0.1,0.7l0.7-0.4v-1.3
c0-0.2,0-0.4-0.1-0.6c0-0.2-0.1-0.3-0.2-0.4h0.2c0.3,0,0.6,0.1,0.9,0.2c0.3,0.1,0.5,0.3,0.7,0.5l-0.1,0.8c0.3-0.2,0.6-0.4,0.9-0.6
l0.1-0.1l0.1-0.1l1.7,0.2c0,0.1,0,0.1,0,0.2c0,0.1,0,0.3,0,0.4c0,0.1,0,0.2,0,0.3v2.3c0,0.5-0.1,0.9-0.3,1.4
c-0.2,0.3-0.4,0.5-0.6,0.5c-0.1,0-0.3-0.1-0.3-0.2l-0.6-0.8l-0.6-0.8c0,0-0.1-0.1-0.1-0.1c0,0,0.1,0,0.2,0c0.2,0,0.5,0,0.7,0
c0.1,0,0.2-0.1,0.3-0.2c0.1-0.2,0.1-0.4,0.1-0.6v-0.7V118c0,0-0.1-0.1-0.1-0.1c0,0-0.1,0-0.1,0c-0.5,0.3-0.9,0.6-1.4,0.9
c0,0.4-0.1,0.7-0.1,1.1v2.3c0,0.1,0,0.2-0.1,0.2c-0.1,0-0.2-0.1-0.3-0.1c-0.2-0.1-0.4-0.3-0.6-0.5c-0.2-0.2-0.3-0.4-0.2-0.7
c0.1-0.4,0.1-0.9,0.1-1.3l-0.8,0.6c0,0.4,0,0.7,0,1v0.6c-0.1,0.7,0.4,1.4,1.1,1.5c0.1,0,0.1,0,0.2,0c0.5,0,1,0.1,1.5,0.1
c0.6,0,1.2-0.1,1.8-0.3c0.4-0.2,0.8-0.6,0.9-1c0.2-0.6,0.3-1.3,0.3-2c0-0.1,0-0.2,0.1-0.3c0-0.1,0.1-0.1,0.2-0.1c0,0,0.1,0,0.1,0
c0,0,0,0.1,0,0.1c0,0.5,0.1,1.1,0.2,1.6c0.1,0.5,0.3,1,0.6,1.5c0.1,0,0.2,0.1,0.2,0.1L89.9,122.6z M92.9,113
c-0.3-0.3-0.4-0.5-0.4-0.6s0.1-0.1,0.2-0.1c0.2,0,0.4,0,0.5,0.1l1.4,0.3c0.1,0,0.3,0.1,0.4,0.2c0.1,0.1,0.1,0.2,0.1,0.4
c0,0.3-0.1,0.6-0.2,0.9c0,0.2-0.1,0.2-0.3,0.2c-0.1,0-0.3-0.1-0.4-0.2C93.6,113.6,93.2,113.2,92.9,113z M92.9,117.8L92.9,117.8z"/>
</g>
<g>
<path class="st3" d="M31,186.6c0.2,0,0.4,0.1,0.6,0.2c0.2,0.1,0.4,0.2,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.4c0,0.1-0.1,0.2-0.3,0.2
c-1.3,0-2.7,0.2-4,0.4c-1.2,0.1-2.3,0.3-3.5,0.6c-0.2,0-0.4-0.1-0.6-0.3c-0.1,1.2-0.3,2.3-0.6,3.5c-0.2,1-0.6,2-1.1,2.9
c-0.5,0.9-1.3,1.8-2.1,2.4c-0.1,0.1-0.3,0.2-0.5,0.3c-0.1,0,0-0.2,0.2-0.5c0.6-0.8,1.1-1.7,1.5-2.6c0.4-0.8,0.6-1.7,0.8-2.6
c0.2-1.1,0.4-2.2,0.5-3.3v-0.2c0-0.2,0-0.3,0-0.5c-0.4,0.3-0.8,0.6-1.3,0.8c-0.4,0.2-0.7,0.3-0.8,0.3s-0.2,0.1-0.2,0
c0.2-0.2,0.4-0.5,0.6-0.6c0.7-0.6,1.3-1.3,2-2.1c0.7-0.8,1.4-1.7,2-2.5c0.2-0.3,0.3-0.6,0.3-0.9c0-0.2,0.1-0.3,0.2-0.3
c0.2,0,0.4,0.1,0.6,0.2l0.3,0.1c0.1,0,0.3,0.1,0.4,0.1c0.1,0,0.2,0,0.2,0.1c0.1,0,0.1,0.1,0.1,0.2c0,0.1,0,0.2-0.1,0.3
c-0.2,0.4-0.5,0.8-0.8,1.2c0.5-0.1,0.9-0.1,1.3-0.2c0.5-0.1,0.8-0.2,1.1-0.3l0.2-0.1L29,184l1.5,1.5l-2.6,1.8c1-0.1,2-0.3,3-0.6
C30.9,186.7,31,186.7,31,186.6z M26.5,187.5l1.8-2.1c0,0,0.1-0.1,0.1-0.2c0-0.1,0-0.1-0.2-0.1l-0.8,0.3c-0.7,0.3-1.2,0.5-1.6,0.6
c-0.1,0-0.2,0-0.3,0c-0.2,0-0.3-0.1-0.5-0.2c-0.5,0.5-1.1,1-1.7,1.5c0.2,0.1,0.3,0.2,0.4,0.3C24.6,187.7,25.5,187.6,26.5,187.5z
M33.3,195.9c0,0.3-0.2,0.6-0.7,0.8c-0.4,0.2-0.9,0.3-1.3,0.4c-0.3,0-0.7,0.1-1.1,0.1h-1.9c-0.7,0-1.4-0.1-2-0.4
c-0.5-0.2-0.8-0.6-1-1.1c-0.2-0.6-0.3-1.2-0.3-1.8v-3.5c0-0.2,0-0.4-0.1-0.7c0-0.2-0.1-0.3-0.2-0.5c0.1,0,0.3,0,0.7,0.1
c0.3,0.1,0.6,0.2,0.9,0.4h0.5c0.4,0,0.8-0.1,1.2-0.2c0.3-0.1,0.7-0.2,1-0.3l0.1-0.1l0.1-0.1l1.5,0.9c-0.1,0.1-0.2,0.3-0.2,0.4
c-0.1,0.1-0.1,0.3-0.1,0.5l-0.1,1.6c0,0.5-0.1,1-0.3,1.4c-0.2,0.4-0.4,0.6-0.6,0.6c-0.1,0-0.3-0.1-0.3-0.2l-0.3-0.4
c-0.2-0.2-0.4-0.4-0.6-0.6c-0.2-0.2-0.4-0.3-0.6-0.5c-0.1,0-0.1-0.1-0.2-0.1h0.3c0.3,0,0.6,0,0.8,0c0.2,0,0.3-0.1,0.4-0.2
c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2,0-0.3,0-0.4c0-0.3,0-0.7,0-1.1c0-0.1,0-0.1-0.1-0.1c0,0-0.1,0-0.1,0c-0.4,0.1-0.8,0.2-1.2,0.4
l-0.3,0.1c-0.1,0-0.1,0-0.2,0c-0.2,0-0.5-0.2-0.6-0.4l-0.1,0.9c-0.1,0.8-0.1,1.5-0.1,1.9c0,1.7,0.6,2.6,1.7,2.6h0.7
c0.5,0,1.1,0,1.6-0.1c0.4,0,0.7-0.2,1-0.5c0.2-0.3,0.4-0.6,0.5-1c0.1-0.6,0.1-1.1,0.1-1.7c0-0.1,0-0.2,0.1-0.3
c0-0.1,0.1-0.1,0.2-0.1c0.1,0,0.2,0.1,0.2,0.2c0,0.6,0.1,1.1,0.2,1.7c0.1,0.5,0.3,1.1,0.6,1.5C33.3,195.7,33.3,195.8,33.3,195.9
L33.3,195.9z"/>
<path class="st3" d="M50,190.1c0,0.1,0,0.1-0.1,0.1h-0.4h-1.4c-0.3,0-0.5-0.1-0.7-0.3c-0.2-0.2-0.4-0.4-0.6-0.6l-0.3-0.4
c-1.1-1.5-1.8-2.6-2.2-3.3c-0.3,0.6-0.6,1.2-1,1.8c-0.4,0.6-0.8,1.2-1.3,1.8c0.6,0,1.1-0.1,1.7-0.2c0.3-0.1,0.7-0.1,1.4-0.2
c0.2,0,0.4,0,0.6,0.1c0.2,0.1,0.3,0.2,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.4c0,0.2-0.1,0.2-0.3,0.2c-0.4-0.1-0.9-0.2-1.3-0.2
c-0.3,0-0.6,0-0.9,0.1l-1.1,0.2l-0.5,0.1c-0.2,0-0.4-0.1-0.7-0.5c-0.6,0.8-1.4,1.4-2.3,1.8c-0.1,0.1-0.2,0.1-0.3,0.1l0,0
c0,0,0.1-0.1,0.2-0.3c0.4-0.4,0.7-0.8,1-1.3c-0.1,0.1-0.2,0.1-0.3,0.1c-0.3,0-0.7-0.2-0.9-0.4c-0.4-0.3-0.7-0.8-0.9-1.2l-0.1-0.2
v8.2c0,0.2,0,0.2-0.2,0.2c-0.2,0-0.3-0.1-0.5-0.2c-0.6-0.4-0.9-0.9-0.9-1.2s0-0.7,0.1-1s0.1-0.6,0.1-0.7c0.1-0.7,0.1-1.4,0.2-2.2
v-5.8c0-0.2,0-0.4-0.1-0.7c0-0.2-0.1-0.3-0.2-0.5h0.2c0.3,0,0.6,0.1,0.9,0.2c0-0.1,0-0.2,0-0.2c0.3,0,0.5,0,0.8-0.1
c0.3-0.1,0.6-0.2,0.9-0.3l0.3-0.2l0.2-0.2l1.1,0.9c-0.6,0.6-1.1,1.4-1.5,2.1c0,0,0,0.1,0,0.1c0.4,0.4,0.7,0.8,1,1.3
c0.2,0.3,0.3,0.7,0.3,1.1c0,0.1,0,0.1,0,0.2c1-1.6,1.8-3.2,2.6-4.8c0.1-0.3,0.2-0.5,0.3-0.8c0.1-0.2,0.1-0.5,0.1-0.7
c0.3,0.2,0.6,0.4,0.8,0.6c0.2,0.2,0.3,0.4,0.2,0.7c0,0.2,0,0.3-0.1,0.5c1.3,1.7,2.8,3.2,4.5,4.5C49.7,189.8,50,190,50,190.1z
M38.7,188.5c0.2,0.2,0.5,0.4,0.7,0.5c0.1,0,0.1-0.1,0.1-0.2c0-0.3-0.1-0.5-0.2-0.7c-0.1-0.2-0.3-0.4-0.4-0.6
c-0.1-0.2-0.2-0.3-0.3-0.4c0,0,0-0.1,0-0.1c0-0.1,0-0.2,0.1-0.2l0.9-2.1c0,0,0-0.1,0-0.1l0,0c0,0-0.2,0.1-0.4,0.3
c-0.2,0.2-0.5,0.4-0.7,0.5l-0.1,0.1c0,0.5-0.1,0.9-0.1,1.1s0,0.4-0.1,0.7s0,0.6-0.1,0.9l0.2,0.2C38.4,188.3,38.6,188.4,38.7,188.5z
M48.7,194.5c0.2,0.1,0.4,0.3,0.5,0.5c0.1,0.2,0.2,0.3,0.2,0.5c0,0.2-0.1,0.3-0.3,0.3c-0.7-0.2-1.4-0.3-2.1-0.2
c-1.3,0-2.6,0.1-3.8,0.2c-1.5,0.2-2.5,0.3-3.2,0.4c-0.3,0-0.6-0.1-0.7-0.4c-0.2-0.2-0.3-0.5-0.4-0.8c1,0,2.9-0.1,5.5-0.4l0,0
c0.3-0.4,0.5-0.7,0.7-1.1c0.3-0.6,0.5-1.1,0.7-1.7c0.1-0.3,0.1-0.6,0.1-0.9c0-0.2,0-0.3-0.1-0.5c0.4,0.1,0.7,0.2,1,0.4
c0.2,0.2,0.4,0.5,0.4,0.8c0,0.1,0,0.3-0.1,0.4c-0.2,0.5-0.4,1-0.8,1.5c-0.4,0.5-0.8,0.9-1.3,1.2l1.1-0.1l0.9-0.1l0.8-0.1
C48.2,194.3,48.5,194.4,48.7,194.5L48.7,194.5z M42.4,193.5c-0.1,0.1-0.2,0.3-0.3,0.4c-0.1,0.1-0.1,0.1-0.2,0.1
c-0.1,0-0.2-0.1-0.3-0.3c-0.4-0.7-0.6-1.4-0.8-2.2c0-0.1,0-0.1,0.1-0.1c0.1,0,0.2,0.1,0.3,0.2l0.3,0.2l1,0.8
c0.1,0.1,0.1,0.1,0.2,0.2c0,0,0.1,0.1,0.1,0.2c0,0.1,0,0.2-0.1,0.2L42.4,193.5z M44.6,192.5c-0.1,0.1-0.2,0.3-0.3,0.4
c-0.1,0.1-0.1,0.1-0.2,0.1c-0.1,0-0.2-0.1-0.3-0.3c-0.3-0.6-0.5-1.1-0.6-1.4c-0.1-0.2-0.1-0.4-0.2-0.6c0-0.1,0-0.1,0.1-0.1
c0.2,0.1,0.3,0.2,0.5,0.3l0.9,0.7c0.2,0.1,0.2,0.2,0.2,0.3c0,0.1,0,0.2-0.1,0.2C44.8,192.2,44.7,192.3,44.6,192.5L44.6,192.5z"/>
<path class="st3" d="M55,188.8c0,0.5-0.1,0.9-0.1,1.1s0,0.4-0.1,0.8s-0.1,0.8-0.1,1.2v5c0,0.1,0,0.2-0.1,0.2
c-0.1,0-0.3-0.1-0.3-0.2l-0.4-0.3c-0.2-0.1-0.4-0.3-0.5-0.5c-0.1-0.1-0.2-0.3-0.2-0.4c0-0.3,0-0.7,0.1-1s0.1-0.6,0.1-0.7
c0.1-1,0.2-1.7,0.2-2.2v-2.5c-0.6,0.6-1.4,1.2-2.2,1.6c-0.2,0.1-0.4,0.2-0.6,0.3c-0.1,0,0-0.1,0.3-0.5c0.6-0.7,1.2-1.5,1.7-2.3
c0.5-0.8,1.1-2,1.8-3.6c0.1-0.2,0.1-0.4,0.2-0.6c0-0.2,0.1-0.4,0.1-0.6c0-0.1,0-0.2,0-0.4c0.4,0.1,0.7,0.3,1,0.5
c0.3,0.2,0.4,0.5,0.4,0.8c0,0.2,0,0.4-0.1,0.5c-0.4,1.1-1,2.1-1.7,3C54.6,188.4,54.9,188.6,55,188.8z M65.4,195
c0,0.4-0.5,0.8-1.5,1c-1.2,0.2-2.4,0.4-3.7,0.4c-0.5,0-1-0.2-1.4-0.5c-0.3-0.3-0.6-0.7-0.8-1.1c-0.1-0.4-0.2-0.9-0.2-1.3v-1.6
c-0.6,0.3-1.3,0.5-2,0.7c-0.1,0-0.2,0-0.3,0c-0.1,0-0.2,0-0.2-0.1s0.1-0.2,0.4-0.3c0.8-0.4,1.5-0.8,2.2-1.3v-6.1
c0-0.2,0-0.4-0.1-0.7c0-0.2-0.1-0.3-0.2-0.5c0.2,0,0.3,0,0.5,0.1c0.3,0.1,0.6,0.2,0.8,0.3c0.2,0.1,0.4,0.2,0.5,0.4
c0,0.5-0.1,2.3-0.2,5.4c0.8-0.6,1.8-1.5,3-2.5c0.2-0.2,0.3-0.4,0.4-0.6c0.1-0.2,0.2-0.4,0.2-0.6c0.2,0.1,0.4,0.3,0.6,0.6
c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.5-0.3,0.6c-1.2,1.3-2.6,2.4-4.1,3.2v1.5c0,0.6,0.1,1.2,0.3,1.7c0.2,0.4,0.6,0.6,1,0.6
c0.8,0,1.6-0.1,2.4-0.3c0.4-0.1,0.8-0.4,1-0.8c0.2-0.5,0.2-1,0.2-1.4v-0.8c0-0.1,0-0.2,0.1-0.3c0-0.1,0.1-0.1,0.2-0.1
c0.1,0,0.2,0.1,0.2,0.2c0,0.6,0.1,1.1,0.2,1.7c0.1,0.5,0.3,1.1,0.6,1.5C65.4,194.8,65.4,194.9,65.4,195z"/>
<path class="st3" d="M80.1,191.5c0.2,0.1,0.4,0.3,0.6,0.5c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.3,0.3c-0.9-0.2-1.7-0.3-2.6-0.2
c-0.9,0-2,0-3.2,0.1c0,0.5,0,1.4,0,2.7c0,0.3-0.1,0.7-0.2,1c-0.1,0.3-0.3,0.5-0.5,0.7c-0.2,0.2-0.4,0.2-0.6,0.2
c-0.2,0-0.3-0.1-0.4-0.2l-0.4-0.4c-0.2-0.2-0.4-0.5-0.6-0.6c-0.2-0.2-0.4-0.4-0.7-0.6c-0.1-0.1-0.1-0.1-0.1-0.1s0.1,0,0.2,0h0.6
c0.3,0,0.6,0,0.9-0.2c0.2-0.1,0.4-0.4,0.3-0.7v-0.9c0-0.1,0-0.2,0-0.4s0-0.3,0-0.5c-1.1,0.1-2.2,0.2-3.3,0.3s-1.8,0.2-2.2,0.3
s-0.5-0.1-0.7-0.4c-0.2-0.2-0.3-0.5-0.4-0.8c0.8,0,2.9-0.1,6.4-0.4c0-0.2-0.1-0.3-0.2-0.4c-0.1-0.2-0.2-0.4-0.4-0.5
c-0.1-0.1-0.3-0.3-0.4-0.3c0.2-0.1,0.3-0.2,0.5-0.2c0.2-0.1,0.4-0.1,0.7-0.1h0.3l0.8-1.1l0.1-0.2c0,0,0,0-0.1,0
c-1.5,0.4-2.6,0.7-3.3,0.9c-0.1,0-0.2,0-0.3,0.1c-0.2,0-0.4-0.1-0.6-0.3c-0.1-0.2-0.2-0.4-0.3-0.6c0-0.2,0-0.3,0-0.5
c0.3,0.1,0.7,0.1,1,0.1c0.7,0,1.3-0.1,2-0.3c1-0.2,1.6-0.3,1.8-0.4l0.2-0.1l0.1-0.1l1.3,1c-0.9,0.7-1.7,1.3-2.4,1.8
c0.1,0.4,0.2,0.7,0.2,1.1l2.6-0.2l1.4-0.1h0.7C79.5,191.3,79.8,191.3,80.1,191.5z M68,188.7c0-0.1-0.1-0.1-0.1-0.2
c0-0.1,0.1-0.2,0.1-0.3c0.2-0.2,0.3-0.4,0.4-0.6c0.1-0.2,0.2-0.4,0.3-0.6c0.1-0.1,0.1-0.3,0.1-0.5c0-0.2,0.1-0.4,0.1-0.6
c0-0.1,0-0.2,0-0.2c0.2,0.1,0.4,0.2,0.7,0.3c0.2,0.1,0.3,0.2,0.5,0.4l0,0c0.2,0.1,0.3,0.1,0.5,0.1c0.2,0,0.4,0.1,0.6,0.1
c1.2-0.1,2.4-0.2,3.5-0.4c0.3-0.4,0.8-1.2,1.4-2.1c0.1-0.2,0.2-0.4,0.3-0.6c0.1-0.2,0.1-0.4,0.1-0.6c0,0,0-0.1,0-0.1
c0.3,0.1,0.5,0.3,0.7,0.5c0.2,0.2,0.3,0.4,0.3,0.6c0,0.2-0.1,0.4-0.2,0.5c-0.4,0.6-0.9,1.1-1.4,1.5l1.1-0.2
c0.5-0.1,0.9-0.1,1.3-0.2c0.1-0.1,0.3-0.1,0.4-0.1l1.8,1.5c-0.5,0.3-0.9,0.5-1.4,0.7s-0.9,0.4-1.4,0.6c-0.2,0.1-0.4,0.1-0.6,0.1
c-0.1,0-0.1,0-0.1-0.1c0.1-0.2,0.2-0.4,0.3-0.6l0.6-0.8c0,0,0-0.1,0-0.1c0-0.1-0.1-0.1-0.2-0.1c-0.6,0-1.5,0.1-2.8,0.3
s-2.6,0.3-3.8,0.5h-0.2c-0.4,0-0.7-0.2-0.8-0.5v0.2c-0.1,0.4-0.3,0.8-0.5,1.1c-0.2,0.3-0.4,0.7-0.7,1.2c-0.2,0.2-0.3,0.3-0.3,0.3
s-0.1,0-0.1-0.1L68,188.7z M71.6,186.3c-0.1,0-0.2-0.1-0.3-0.2c-0.5-0.7-0.9-1.3-1.1-1.6c-0.1-0.2-0.3-0.4-0.3-0.7
c0-0.1,0-0.1,0.1-0.1c0.1,0,0.3,0.1,0.4,0.1l1.4,0.7c0.1,0.1,0.2,0.1,0.3,0.2c0,0.1,0,0.1,0,0.3C72,185.9,71.8,186.3,71.6,186.3z
M74.1,185.5c-0.1,0.2-0.3,0.3-0.4,0.3s-0.2-0.1-0.3-0.2c-0.4-0.8-0.8-1.6-1-2.4c0-0.1,0-0.1,0.1-0.1c0.1,0,0.3,0.1,0.4,0.2
l1.3,0.9c0.1,0,0.1,0.1,0.2,0.2c0,0,0.1,0.1,0.1,0.2c0,0.1,0,0.1,0,0.2C74.4,185,74.3,185.3,74.1,185.5z"/>
<path class="st3" d="M87.5,190.2l2.1,0.8c-0.2,0.1-0.3,0.4-0.5,0.8l-1,2.9c0.2,0.1,0.3,0.2,0.4,0.4c0.1,0.1,0.1,0.2,0.2,0.4
c0,0.1-0.1,0.2-0.3,0.2c-0.5-0.1-1-0.1-1.5-0.1c-0.6,0-1.3,0.1-1.9,0.2c0,0.1,0,0.2,0,0.3c0,0.1,0,0.3,0,0.4c0,0.1,0,0.1-0.1,0.1
c-0.1,0-0.2,0-0.3-0.1c-0.7-0.4-1.1-0.7-1-1.1c0-0.6,0-1.2-0.1-1.8c-0.1-0.8-0.2-1.3-0.3-1.7c-0.1-0.2-0.1-0.5-0.2-0.7
c-0.1-0.2-0.2-0.4-0.3-0.4c0.1,0,0.3,0,0.4,0c0.3,0,0.5,0,0.7,0.1c0.2,0.1,0.4,0.2,0.6,0.3c-0.1-0.1-0.1-0.2-0.1-0.4
c0.2,0,0.3,0.1,0.5,0.1c0.1,0,0.2,0,0.4,0c0.3-0.1,0.7-0.1,1-0.2c0.4-0.1,0.7-0.2,1-0.3C87.4,190.4,87.5,190.3,87.5,190.2z
M84.8,193.6c0,0.4,0.1,0.7,0.1,0.9v0.4c0.3,0,0.5-0.1,0.8-0.1l0.6-0.1l0.6-0.1l0.5-3.2v-0.1c0-0.1,0-0.1-0.1-0.1
c-0.2,0.1-0.4,0.1-0.6,0.2c-0.4,0.2-0.9,0.3-1.3,0.4h-0.1c-0.2,0-0.5-0.1-0.6-0.4C84.8,192.5,84.8,193.2,84.8,193.6z M85.8,184.8
c-0.1-0.2-0.1-0.3-0.3-0.4c0.1,0,0.3-0.1,0.4-0.1c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.4,0.2,0.6,0.3c0-0.1,0-0.1,0-0.2
c0.2,0,0.3,0.1,0.5,0.1h0.4l1.5-0.2c0.6-0.1,1.3-0.2,1.9-0.4c0.1,0,0.2-0.1,0.3-0.2l2.1,0.8c-0.2,0.1-0.4,0.3-0.5,0.8l-0.8,2.4
c0.1,0.1,0.3,0.2,0.4,0.4c0.1,0.1,0.1,0.2,0.1,0.4c0,0.2-0.1,0.2-0.3,0.2c-0.7-0.1-1.5-0.1-2.2-0.1c-0.9,0-1.8,0.1-2.7,0.2l0.1,0.8
c0,0.1,0,0.2-0.1,0.2c-0.1,0-0.2-0.1-0.3-0.1c-0.7-0.4-1.1-0.7-1-1.1c0-0.6,0-1.1-0.1-1.7c0-0.5-0.1-1-0.2-1.5
C86,185.3,85.9,185.1,85.8,184.8z M87.5,185.3l0.2,2.2v0.4c1.2,0,2.3-0.1,3.5-0.2l0.4-2.6V185c0-0.1,0-0.1-0.1-0.1
c-0.2,0.1-0.7,0.2-1.5,0.4c-0.8,0.2-1.3,0.3-1.7,0.4C87.9,185.6,87.6,185.5,87.5,185.3z M95.9,190.9c-0.1,0.2-0.2,0.3-0.2,0.5
l-0.9,2.9c0.2,0,0.4,0.1,0.5,0.2c0.2,0.1,0.3,0.2,0.4,0.4c0.1,0.1,0.1,0.2,0.2,0.4c0,0.1-0.1,0.2-0.3,0.2c-0.5-0.1-1.1-0.1-1.7-0.1
c-0.8,0-1.6,0.1-2.3,0.2c0,0.1,0,0.2,0,0.3c0,0.1,0,0.2,0,0.4c0,0.1,0,0.2-0.1,0.2c-0.1,0-0.2-0.1-0.3-0.1
c-0.7-0.4-1.1-0.7-1.1-1.1c0-0.6,0-1.3-0.1-1.9c-0.1-0.8-0.2-1.4-0.3-1.7c-0.1-0.2-0.1-0.5-0.2-0.7c-0.1-0.2-0.2-0.4-0.3-0.4
c0.1,0,0.3,0,0.4-0.1c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.4,0.2,0.6,0.3c-0.1-0.1-0.1-0.2-0.1-0.4c0.2,0,0.3,0.1,0.5,0.1h0.4
c0.3-0.1,0.7-0.1,1-0.2c0.3-0.1,0.7-0.2,1-0.3c0.1,0,0.2-0.1,0.3-0.2l2.1,0.8C96.1,190.7,96,190.7,95.9,190.9z M91.6,194.7
c0.7,0,1.3-0.1,2-0.2l0.5-3.4V191c0-0.1,0-0.1-0.1-0.1c-0.2,0.1-0.4,0.1-0.6,0.2c-0.4,0.2-0.9,0.3-1.3,0.4h-0.1
c-0.2,0-0.5-0.1-0.6-0.3C91.4,192.6,91.5,193.7,91.6,194.7z"/>
</g>
<g>
<path class="st3" d="M344.2,114.1c-0.2,2.3-0.7,4.6-1.5,6.9c-0.6,1.9-1.7,3.6-3.3,4.8c-0.2,0.2-0.3,0.3-0.6,0.3
c-0.1,0-0.1-0.2,0.2-0.6c1.1-1.5,1.9-3.2,2.4-5c0.6-2.1,1-4.3,1.2-6.4v-0.3c0-0.2,0-0.5-0.1-0.7c0-0.2-0.1-0.4-0.2-0.6h0.3
c0.5-0.1,1,0.2,1.4,0.6c1.3-0.1,2.9-0.3,4.7-0.6c1.3-0.2,2.7-0.5,4-0.8c0.1,0,0.3-0.1,0.4-0.1c0.3,0,0.5,0.1,0.7,0.2
c0.2,0.1,0.4,0.3,0.6,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2-0.1,0.3-0.3,0.3c-0.6,0.1-2.1,0.3-4.4,0.6c-1.7,0.2-3.4,0.4-5.1,0.8
C344.6,114.5,344.4,114.3,344.2,114.1z M355.1,122.7c0.3,0.2,0.5,0.4,0.7,0.6c0.2,0.2,0.3,0.4,0.3,0.7c0,0.2-0.1,0.4-0.4,0.4
c-1-0.3-2-0.4-3-0.3c-1.5,0-3.1,0.1-5,0.3s-3.2,0.3-4.1,0.5c-0.3,0-0.6-0.1-0.9-0.5c-0.2-0.3-0.4-0.6-0.5-1c1.2,0,3.2-0.2,5.9-0.4
c0.3,0,0.7-0.1,1.3-0.1c0-0.2,0.1-0.4,0.2-0.6c0.6-1.9,1.2-3.6,1.6-5.1c0.1-0.4,0.2-0.8,0.2-1.2c0-0.3,0-0.7-0.2-1
c0.6,0,1.1,0.2,1.6,0.5c0.4,0.3,0.7,0.7,0.6,1.2c0,0.2,0,0.4-0.1,0.5c-0.3,1-0.8,2-1.4,2.8c-0.6,1-1.3,1.9-2,2.7
c1.9-0.1,3.2-0.2,4.1-0.2C354.5,122.4,354.9,122.5,355.1,122.7z M347.4,119.7c0.1,0.1,0.2,0.2,0.3,0.3c0.1,0.1,0.1,0.2,0.1,0.2
c0,0.1-0.1,0.3-0.2,0.4l-0.3,0.3l-0.3,0.3c-0.1,0.2-0.3,0.3-0.4,0.4c-0.1,0.1-0.2,0.1-0.3,0.1c-0.2,0-0.3-0.2-0.5-0.6
c0-0.1-0.1-0.3-0.1-0.4s-0.1-0.2-0.1-0.3c-0.3-0.9-0.5-1.5-0.7-2c-0.1-0.3-0.2-0.7-0.2-1c0-0.1,0-0.2,0.1-0.2s0.3,0.1,0.5,0.4
L347.4,119.7z M349,112.3c-0.1,0-0.2-0.1-0.3-0.2c-0.9-0.8-1.5-1.5-1.8-1.9s-0.6-0.7-0.6-0.8s0-0.1,0.1-0.1c0.1,0,0.2,0,0.3,0.1
l2.3,0.6c0.1,0,0.3,0.1,0.4,0.2c0.1,0.1,0.1,0.2,0.1,0.4C349.5,111.7,349.3,112.3,349,112.3L349,112.3z M349.8,119.1l-0.3,0.3
c-0.1,0.2-0.3,0.3-0.4,0.4c-0.1,0.1-0.2,0.1-0.3,0.1c-0.2,0-0.4-0.2-0.5-0.5c0-0.1-0.1-0.3-0.1-0.4l-0.1-0.3
c-0.3-0.8-0.5-1.5-0.7-2c-0.1-0.3-0.2-0.7-0.2-1c0-0.1,0-0.2,0.1-0.2s0.3,0.1,0.5,0.4l2,1.8c0.1,0.1,0.2,0.2,0.3,0.3
c0,0.1,0.1,0.2,0.1,0.2c0,0.1-0.1,0.3-0.2,0.4L349.8,119.1z"/>
<path class="st3" d="M361,121.4c0.2,0.1,0.3,0.3,0.4,0.4c0.1,0.1,0.1,0.2,0.1,0.3c0,0.2-0.1,0.4-0.1,0.5c-0.2,0.4-0.4,0.8-0.6,1.1
c-0.2,0.4-0.6,0.8-1,1.3c-0.2,0.2-0.3,0.3-0.4,0.3s-0.1-0.1-0.1-0.2l-0.2-0.7c0-0.1,0-0.1-0.1-0.2c0-0.1,0-0.1,0-0.2
c0-0.1,0-0.1,0-0.2c0-0.1,0.1-0.2,0.1-0.3c0.4-0.4,0.8-0.8,1.1-1.4c0.1-0.2,0.2-0.4,0.2-0.6c0.1-0.2,0.1-0.4,0.1-0.6
C360.6,121.1,360.8,121.2,361,121.4z M361.7,120.4c-0.2-0.2-0.4-0.4-0.5-0.6c-0.1-0.2-0.2-0.4-0.2-0.5c1.3,0,3.8-0.2,7.4-0.6
c0.3-1.1,0.5-2.2,0.7-3.3l0,0c0-0.1,0-0.1,0-0.2c0,0,0-0.1,0,0c-0.9,0.2-1.9,0.4-2.9,0.4l-1.7,0.2c-0.9,0.1-1.5,0.2-1.9,0.3
s-0.3,0.1,0,0.1c-0.2,0-0.4-0.1-0.5-0.2c-0.1-0.1-0.3-0.3-0.4-0.5c-0.1-0.1-0.1-0.3-0.1-0.4c-0.4,0.2-0.7,0.4-1.1,0.5
c-0.3,0.1-0.6,0.2-0.9,0.3c-0.1,0,0-0.1,0-0.1l0.3-0.2l0.2-0.2c0.9-0.7,1.7-1.4,2.4-2.2c0.8-0.8,1.4-1.7,2-2.6
c0.2-0.3,0.3-0.6,0.3-1c0-0.2,0.1-0.3,0.2-0.3c0.2,0,0.3,0.1,0.5,0.2l0.3,0.1c0.2,0.1,0.4,0.1,0.6,0.1c0.1,0,0.2,0,0.2,0
c0.1,0.1,0.1,0.1,0.1,0.2c0,0.1,0,0.2-0.1,0.3c-0.2,0.5-0.5,0.9-0.8,1.3c0.8-0.1,1.6-0.2,2.5-0.4l0.3-0.1c0.1,0,0.1-0.1,0.2-0.1
l1.8,1.4c-0.5,0.3-1.1,0.8-1.9,1.3s-1.2,0.8-1.5,1c0.7-0.1,1.4-0.2,2.1-0.4l0.2-0.1l0.1-0.1l2,1.2c0,0.1-0.2,0.4-0.4,0.9
s-0.6,1.4-1.1,2.7c0.3,0.1,0.5,0.3,0.7,0.6c0.2,0.2,0.3,0.5,0.3,0.7c0,0.2-0.1,0.3-0.3,0.4c0,0-0.1,0-0.1,0
c-1.1-0.2-2.2-0.3-3.3-0.3c-1,0-2,0-3,0.2c-0.7,0-1.4,0.2-2,0.4C362.1,120.6,361.9,120.6,361.7,120.4L361.7,120.4z M365.7,114.7
l2-2.3c0.1-0.1,0.1-0.1,0.1-0.2c0,0,0-0.1-0.1-0.1c-0.3,0-0.5,0.1-0.7,0.2c-0.3,0.1-0.7,0.2-1,0.3l-0.5,0.2c-0.1,0-0.2,0.1-0.3,0.1
c-0.2,0-0.4-0.1-0.6-0.2c-0.9,1-2,1.8-3.2,2.4c0.2,0,0.4,0,0.5,0h0.4C362.8,115.2,363.8,115,365.7,114.7L365.7,114.7z M362.4,118.1
c-0.2-0.2-0.3-0.3-0.5-0.6c-0.1-0.1-0.2-0.3-0.2-0.4c0.5,0,1.1,0,1.5-0.1s0.9-0.1,1.3-0.2l0.8-0.1l1.7-0.3c0.3,0,0.5,0,0.7,0.2
c0.2,0.1,0.4,0.3,0.5,0.5c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.2,0.3c0,0-0.1,0-0.1,0c-0.8-0.1-1.6-0.2-2.5-0.2
c-1-0.1-1.9,0.1-2.9,0.4C362.8,118.3,362.6,118.2,362.4,118.1L362.4,118.1z M370.6,123.1c0.5,0.4,0.9,0.7,1.2,0.9
c0.2,0.2,0.5,0.4,0.7,0.6c0.1,0.1,0.2,0.3,0.1,0.4c0,0.2-0.1,0.3-0.2,0.4c-0.1,0.1-0.3,0.2-0.4,0.3c-0.9,0.2-1.8,0.3-2.7,0.3
c-1.2,0-2.3-0.2-3.4-0.6c-0.9-0.3-1.7-0.8-2.5-1.5c-0.6-0.5-1-1.2-1.3-1.9c0-0.1-0.1-0.2-0.1-0.4c0-0.1,0-0.1,0.1-0.1
s0.2,0.1,0.4,0.4c0.5,0.7,1.2,1.2,1.9,1.6c1.2,0.5,2.4,0.8,3.7,0.8c0.2,0,0.5,0,0.7,0c0.1,0,0.2-0.1,0.3-0.1
c0.1-0.1,0.1-0.2,0.1-0.3c0-0.1,0-0.1,0-0.2l-0.6-1.6c0-0.1-0.1-0.2-0.1-0.3l0,0l0.2,0.2C369.5,122.2,370,122.6,370.6,123.1
L370.6,123.1z M367.3,121.5c0.1,0.1,0.1,0.2,0,0.3c0,0.1,0,0.2-0.1,0.5c0,0.2-0.1,0.4-0.2,0.6c-0.1,0.1-0.1,0.2-0.2,0.2
c-0.1,0-0.3-0.1-0.4-0.2c-0.6-0.7-1.1-1.2-1.3-1.6c-0.2-0.2-0.3-0.4-0.4-0.6c0-0.1,0-0.1,0.1-0.1c0.2,0,0.3,0.1,0.5,0.1l1.5,0.6
C367,121.3,367.2,121.4,367.3,121.5L367.3,121.5z M373.9,121.3c0.1,0.1,0.1,0.3,0.1,0.4c0,0.1,0,0.3,0,0.6c0,0.2,0,0.5-0.1,0.7
c-0.1,0.2-0.2,0.3-0.3,0.3c-0.2,0-0.3-0.1-0.5-0.2c-1.9-1.5-2.8-2.4-2.8-2.6c0-0.1,0.1-0.1,0.2-0.1c0.3,0,0.5,0.1,0.8,0.2l2.1,0.6
C373.6,121.1,373.8,121.2,373.9,121.3L373.9,121.3z"/>
<path class="st3" d="M381.1,117c-0.3,0-0.7-0.2-0.8-0.5v0.1c-0.1,0.4-0.3,0.8-0.5,1.2c-0.2,0.3-0.5,0.8-0.9,1.5
c-0.1,0.1-0.1,0.1-0.1,0.2c-0.1,0.1-0.2,0.2-0.2,0.2s-0.1-0.1-0.2-0.2c-0.1-0.3-0.2-0.6-0.3-0.8l-0.2-0.4c0-0.1,0-0.2,0-0.2
c0-0.1,0.1-0.2,0.1-0.3c0.4-0.4,0.7-0.9,0.9-1.4c0.1-0.4,0.2-0.7,0.2-1.1c0-0.1,0-0.2,0-0.3c0.3,0.1,0.5,0.2,0.8,0.3
c0.2,0.1,0.4,0.3,0.6,0.5c0,0.1,0.1,0.1,0.1,0.2c0.3,0.1,0.7,0.2,1,0.2c0.5,0,1-0.1,1.5-0.1c0.7-0.1,1.5-0.2,2.4-0.3
c-1-0.9-1.5-1.4-1.5-1.6s0.1-0.1,0.2-0.1c0.1,0,0.3,0,0.4,0.1l1.5,0.3c0.1,0,0.2,0.1,0.3,0.1c0.1,0.1,0.1,0.2,0.1,0.3
c0,0.4,0,0.6,0,0.8c1.8-0.2,3.5-0.5,5.2-1l0.4-0.1l2,1.8c-0.8,0.4-1.6,0.8-2.4,1.1c-0.3,0.1-0.6,0.2-0.9,0.4
c-0.2,0.1-0.4,0.1-0.6,0.2c-0.2,0-0.1-0.2,0.2-0.6l0.9-1.1c0,0,0.1-0.1,0.1-0.1c0-0.1-0.1-0.1-0.2-0.1c-0.6,0-2.8,0.4-6.7,1l-3,0.4
L381.1,117z M378.6,115c0,0,0,0,0-0.2l0.3-0.4c0.5-0.6,0.9-1.1,1.2-1.6s0.7-1.2,1.2-1.9c0.2-0.4,0.3-0.8,0.3-1.3c0-0.1,0-0.2,0-0.3
c0.4,0.1,0.7,0.3,1,0.6c0.3,0.2,0.4,0.5,0.4,0.9c0,0.2,0,0.4-0.1,0.5l0,0l1.5-0.4c0.3,0,0.5,0,0.8,0.1c0.2,0.1,0.4,0.2,0.6,0.3
c0.1,0.1,0.2,0.2,0.2,0.4c0,0.1-0.1,0.2-0.5,0.2c-0.4,0-0.8,0-1.1,0.1c-0.3,0.1-0.7,0.2-1,0.3s-0.5,0.2-0.7,0.2h-0.1
c-0.1,0-0.2,0-0.3-0.1l-0.3,0.4l0.4,0.1l0.7,0.2l0.2,0.1c0.1,0,0.1,0.1,0.2,0.1c0,0.1,0.1,0.1,0,0.2c0,0.3,0,0.6-0.1,0.9
c0,0.3-0.1,0.4-0.3,0.4c-0.1,0-0.2-0.1-0.2-0.2c-0.2-0.2-0.3-0.3-0.3-0.4c-0.4-0.4-0.7-0.8-1-1.2c-0.3,0.3-0.7,0.6-1.1,0.8
c-0.4,0.2-0.9,0.5-1.4,0.8C379,114.9,378.8,114.9,378.6,115L378.6,115z M389.9,124.2c0.2,0.1,0.5,0.3,0.6,0.5
c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2-0.1,0.2-0.3,0.2c-1.5,0-3,0-4.5,0.1c-1,0-2,0.2-3,0.5H383v0.7c0,0.2,0,0.2-0.1,0.2
c-0.1,0-0.2,0-0.2-0.1l-0.2-0.1c-0.3-0.2-0.6-0.4-0.9-0.7c-0.3-0.2-0.4-0.5-0.4-0.8c0.3-1.6,0.4-3.1,0.4-4.7v-1.8
c0-0.3,0-0.5-0.1-0.8c0-0.2-0.1-0.4-0.3-0.6c0.1,0,0.1,0,0.2,0c0.3,0,0.6,0.1,0.8,0.2c0.3,0.1,0.6,0.2,0.8,0.4
c-0.1-0.1-0.1-0.2,0-0.3h0.3h0.4h0.3c0.4,0,0.7-0.1,1.1-0.2c0.3-0.1,0.9-0.2,1.8-0.5l0.4-0.1c0.1,0,0.2-0.1,0.3-0.2l2.4,0.9
c-0.1,0.1-0.2,0.1-0.2,0.2c-0.1,0.1-0.2,0.2-0.2,0.3c0,0.1-0.1,0.2-0.1,0.3l-0.6,1c0.2,0.1,0.4,0.2,0.6,0.4
c0.1,0.1,0.2,0.3,0.2,0.5c0,0.1,0,0.1-0.1,0.2c-0.1,0-0.1,0-0.2,0c-1.2,0-2.4,0-3.5,0.1c-0.8,0-1.6,0.2-2.4,0.5c-0.1,0-0.1,0-0.2,0
c0,0.4,0,0.8,0,1h0.5h0.3c0.6-0.1,1.2-0.2,1.8-0.3s1.2-0.3,2.1-0.5c0.1,0,0.2-0.1,0.3-0.2l2.4,0.9c-0.1,0-0.2,0.1-0.2,0.2
c-0.1,0.1-0.2,0.2-0.2,0.3c0,0.1-0.1,0.2-0.1,0.3l-0.6,1.1h0.1C389.4,124,389.7,124.1,389.9,124.2L389.9,124.2z M387.3,124.3
l0.5-1.7l0,0c0,0,0-0.1-0.1-0.1c0,0-0.1,0-0.1,0c-0.3,0-1,0.2-2.1,0.4c-0.6,0.2-1.1,0.3-1.6,0.4c-0.4,0-0.7-0.2-0.9-0.5v1.9
C384.4,124.7,385.9,124.6,387.3,124.3L387.3,124.3z M383.3,118.7l-0.1,1.4c0.6,0,1.1-0.1,1.7-0.2c0.5-0.1,1.2-0.2,2-0.3l0.4-1.4
l0,0c0,0,0-0.1-0.1-0.1c0,0-0.1,0-0.1,0c-0.5,0.1-1.1,0.2-1.6,0.4c-0.5,0.2-1,0.3-1.5,0.4C383.7,119,383.4,118.9,383.3,118.7
L383.3,118.7z M385.8,112.3c0.2-0.3,0.5-0.8,0.9-1.7c0.2-0.4,0.3-0.8,0.3-1.3c0-0.1,0-0.2,0-0.4c0.4,0.1,0.8,0.3,1.1,0.6
c0.3,0.2,0.4,0.5,0.4,0.9c0,0.2,0,0.3-0.1,0.5c0.6-0.1,1.4-0.3,2.3-0.5h0.2c0.2,0,0.4,0,0.6,0.1c0.2,0.1,0.3,0.2,0.5,0.3
c0.1,0.1,0.2,0.2,0.2,0.3c0,0.1,0,0.1-0.1,0.2c-0.1,0-0.2,0.1-0.3,0.1c-0.5,0-0.9,0-1.4,0.1c-0.4,0.1-0.9,0.2-1.4,0.3l-0.7,0.2
h-0.1c-0.2,0-0.3-0.1-0.5-0.2c-0.1,0.1-0.1,0.2-0.2,0.3l-0.2,0.2l0.4,0.1l0.4,0.1l0.9,0.2c0.1,0,0.2,0.1,0.3,0.1
c0.1,0.1,0.1,0.2,0.1,0.2c0,0.9-0.1,1.4-0.4,1.4c-0.1,0-0.2-0.1-0.2-0.1l-0.5-0.4c-0.7-0.7-1.1-1.1-1.3-1.3
c-0.6,0.5-1.2,0.9-1.9,1.1l-0.4,0.1l0,0c0,0,0.1-0.2,0.2-0.4C385.4,112.9,385.7,112.6,385.8,112.3z"/>
<path class="st3" d="M402.2,120.1c0.2,0,0.3,0,0.3,0.1s-0.1,0.2-0.2,0.3s-0.8,0.6-2.1,1.4c-1.5,1.1-2.5,1.7-2.9,1.9
c-0.2,0.1-0.3,0.1-0.5,0.1c-0.3,0-0.5-0.1-0.7-0.3c-0.2-0.2-0.4-0.4-0.5-0.7c-0.1-0.2-0.2-0.4-0.1-0.6l0.4,0.1c0.3,0,0.7-0.1,1-0.2
l1-0.4l0.1-1.6c0-0.3,0-0.6,0.1-1c0-0.4,0.1-0.9,0.1-1.4c-0.4,0.1-0.7,0.2-1.1,0.3c-0.2,0-0.5-0.1-0.6-0.3
c-0.1-0.2-0.2-0.4-0.3-0.7c0.7,0,1.3-0.1,2-0.3v-2.4c0-0.3-0.1-0.6-0.2-0.9c-0.3,0.1-0.6,0.2-0.9,0.3c-0.3,0-0.5-0.1-0.6-0.4
c-0.2-0.2-0.3-0.5-0.4-0.7c0.6,0,1.3-0.1,1.9-0.2c0.5-0.1,1-0.2,1.7-0.4l0.5-0.2c0.1,0,0.2,0,0.3,0c0.2,0,0.4,0.1,0.6,0.2
c0.2,0.1,0.4,0.2,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.4c0,0.1-0.1,0.2-0.3,0.2l-0.9,0.1l-0.7,0.1l-0.9,0.1c0.4,0.1,0.7,0.4,0.9,0.7
c0,0.4-0.1,0.9-0.1,1.6l-0.1,0.8l0.6-0.2c0.1,0,0.2,0,0.3,0c0.3,0,0.6,0.1,0.8,0.3c0.2,0.1,0.3,0.3,0.4,0.6c0,0.1-0.1,0.2-0.2,0.2
c-0.6,0.1-1.2,0.1-1.9,0.3v3.5c1.5-0.7,2.4-1,2.5-1C402,120.2,402.1,120.2,402.2,120.1z M412.2,123.3c0.3,0.2,0.5,0.4,0.7,0.6
c0.2,0.2,0.3,0.4,0.3,0.7c0,0.2-0.1,0.4-0.4,0.4c-1-0.2-2.1-0.3-3.1-0.3c-1.4,0-3,0.1-4.8,0.2s-3.1,0.3-3.9,0.4
c-0.4,0-0.7-0.2-0.9-0.5c-0.2-0.3-0.4-0.6-0.5-1c1,0,3.1-0.1,6.2-0.3v-1.8c-0.3,0-0.9,0.1-1.6,0.2l-0.7,0.1c-0.3,0-0.5-0.1-0.8-0.4
c-0.2-0.3-0.3-0.6-0.5-0.9c0.8,0,2-0.1,3.5-0.3v-2c-0.6,0.1-1.2,0.2-1.8,0.3l0.1,0.5c0,0.2,0,0.2-0.1,0.2c-0.2,0-0.3-0.1-0.5-0.2
c-0.4-0.2-0.7-0.4-1-0.6c-0.3-0.2-0.4-0.5-0.4-0.8v-1.9c0-0.3,0-0.6,0-1.1c0-0.7,0-1.4-0.1-2.1c0-0.3-0.1-0.5-0.2-0.8
c0-0.2-0.1-0.4-0.3-0.5c0.1,0,0.2,0,0.3,0c0.3,0,0.7,0.1,1,0.2c0.3,0.1,0.6,0.3,0.8,0.5c-0.1-0.2-0.1-0.4-0.1-0.6
c0.3,0.1,0.7,0.1,1,0.1c0.9-0.1,1.8-0.2,2.6-0.4c1.4-0.2,2.2-0.4,2.3-0.4l0.2-0.1l0.1-0.1l2,1.1c-0.2,0.3-0.3,0.6-0.4,1l-0.6,4.2
c-0.1,0.6-0.3,1.2-0.5,1.7c-0.3,0.5-0.5,0.7-0.8,0.7c-0.2,0-0.3-0.1-0.4-0.3l-0.2-0.4c-0.1-0.2-0.2-0.3-0.2-0.4c-0.3,0-0.8,0-1.4,0
v1.9c0.9-0.1,1.5-0.2,2.1-0.2c0.3,0,0.6,0,0.8,0.2c0.3,0.1,0.5,0.3,0.6,0.6c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.4,0.3
c-0.7-0.2-1.4-0.3-2.1-0.3c-0.4,0-0.9,0-1.3,0.1v1.8l3.4-0.2h0.6C411.6,123.1,411.9,123.2,412.2,123.3z M404.5,113
c-0.3,0-0.5-0.2-0.6-0.4v1.4c0,0.4,0,0.7,0,0.9c0.6,0,1,0,1.2-0.1s0.5-0.1,0.8-0.2v-1.6c0-0.1,0-0.2,0-0.4l-1.1,0.3
C404.7,113,404.6,113,404.5,113z M405.8,117.4v-1.6l-0.5,0.1c-0.2,0.1-0.4,0.1-0.6,0.1c-0.2,0-0.4-0.1-0.5-0.2
c-0.2-0.2-0.3-0.3-0.4-0.6c0,0.8,0,1.6,0.1,2.4L405.8,117.4z M409.5,112.1c-0.1,0-0.1,0-0.2,0l-2,0.3c0.1,0.1,0.2,0.2,0.3,0.3
c0,0.2,0,0.5,0,0.7s0,0.4-0.1,0.5l-0.1,0.6h0.2c0.3,0,0.5,0,0.8,0.1c0.2,0.1,0.4,0.2,0.6,0.4c0.1,0.1,0.2,0.3,0.2,0.5
c0,0.2-0.1,0.3-0.4,0.3c-0.5-0.1-1-0.2-1.5-0.2c0,0.4,0,0.8,0,1v0.8c0.8-0.1,1.3-0.1,1.6-0.1c0.1-0.1,0.1-0.2,0.2-0.4
c0.1-0.2,0.1-0.4,0.1-0.6l0.4-3.9C409.7,112.3,409.7,112.2,409.5,112.1C409.6,112.2,409.5,112.2,409.5,112.1L409.5,112.1z"/>
<path class="st3" d="M424,116.5c0.3,0.1,0.5,0.4,0.7,0.6c0.2,0.2,0.3,0.4,0.3,0.7c0,0.2-0.1,0.4-0.4,0.4c-0.6-0.2-1.2-0.2-1.8-0.2
c-1.1,0-2.2,0.1-3.3,0.3c-1.2,0.2-2.4,0.5-3.8,0.8h-0.2c-0.1,0-0.2,0-0.2,0.1c-0.3,0.1-0.6-0.1-0.8-0.5c-0.2-0.3-0.4-0.6-0.5-1
c0.9,0,1.8-0.1,2.8-0.3c1-0.2,2.2-0.4,3.8-0.7l0.5-1.2c0-0.1,0.1-0.2,0.1-0.3s0.1-0.2,0.2-0.3c0.2-0.4,0.2-0.7,0.2-1.1
c0-0.1,0-0.3-0.1-0.4c0.4,0.1,0.7,0.3,1,0.5c0.3,0.2,0.4,0.5,0.4,0.8c0,0.2,0,0.3-0.1,0.5c-0.2,0.5-0.4,0.9-0.7,1.3l1.1-0.2
C423.4,116.3,423.7,116.3,424,116.5z M422,118.8l2.7,1.2c-0.1,0.1-0.2,0.1-0.3,0.2c-0.1,0.1-0.2,0.3-0.2,0.4
c-0.1,0.2-0.1,0.3-0.2,0.3l-1.1,1.9c0.2,0.1,0.5,0.3,0.6,0.5c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.3,0.3
c-0.9-0.1-1.6-0.1-2.2-0.1c-0.8,0-1.5,0.1-2.3,0.2l0.1,0.5v0.4c0,0.2,0,0.3-0.2,0.3c-0.2,0-0.3-0.1-0.4-0.1c-1.1-0.5-1.6-1-1.6-1.4
c0-1-0.1-2.1-0.3-3.1c-0.1-0.3-0.2-0.6-0.3-0.9c-0.1-0.2-0.2-0.4-0.4-0.5c0.2-0.1,0.4-0.1,0.5-0.1c0.3,0,0.7,0.1,1,0.2
c0.3,0.1,0.6,0.3,0.9,0.5c-0.1-0.2-0.1-0.3-0.1-0.5c0.2,0,0.5,0,0.7,0.1c0.2,0,0.3,0,0.5,0c0.5-0.1,1.1-0.2,1.6-0.3l0.8-0.2
C421.8,119,421.9,118.9,422,118.8L422,118.8z M416.8,113.9c-0.2-0.2-0.3-0.4-0.5-0.7c-0.1-0.2-0.2-0.3-0.2-0.5c0.7,0,1.4,0,2.1-0.1
c0.6-0.1,1.4-0.2,2.4-0.3c0.6-0.1,1.3-0.2,1.9-0.3c0.3,0,0.6,0,0.9,0.2c0.3,0.1,0.5,0.3,0.7,0.6c0.1,0.2,0.2,0.4,0.3,0.6
c0,0.2-0.1,0.4-0.4,0.4c-0.6-0.2-1.3-0.3-2-0.3c-0.6,0-1.3,0.1-1.9,0.2c-0.6,0.1-1.4,0.3-2.2,0.4l-0.4,0.1
C417.2,114.1,417,114,416.8,113.9L416.8,113.9z M418.9,115.2c0.2,0.1,0.4,0.3,0.4,0.5c0,0.1,0,0.2-0.1,0.3l-0.3,0.5
c-0.1,0.2-0.2,0.4-0.4,0.5c-0.1,0.1-0.2,0.2-0.3,0.2c-0.1,0-0.3-0.1-0.4-0.4l-0.4-1.1c-0.2-0.6-0.4-1-0.5-1.2s0-0.3,0-0.3
c0.1,0,0.2,0.1,0.3,0.2l0.5,0.3L418.9,115.2z M418.5,121.5c0,0.3,0.1,0.7,0.2,1.1l0.1,0.5c0.4,0,0.7,0,1.1-0.1l1.3-0.2l0.7-2.4l0,0
c0-0.1-0.1-0.1-0.1-0.1c-0.1,0-0.1,0-0.2,0c-0.2,0-0.7,0.2-1.4,0.4l-0.7,0.2c-0.1,0-0.1,0-0.2,0c-0.4,0-0.7-0.3-0.9-0.6
C418.4,120.7,418.4,121.1,418.5,121.5L418.5,121.5z M420,111.2l-1.2-1.2c-0.2-0.2-0.3-0.3-0.3-0.4s0.1-0.1,0.2-0.1l0.7,0.1l1.4,0.2
c0.2,0,0.3,0.1,0.5,0.2c0.1,0.1,0.2,0.3,0.1,0.4c0,0.5-0.1,0.9-0.1,1.2s-0.2,0.4-0.3,0.4c-0.2,0-0.3-0.1-0.4-0.2L420,111.2z
M425.4,113.6c0.4,0,0.8,0.1,1.1,0.3c0.3,0.1,0.6,0.4,0.9,0.7c0,0.6-0.1,1.1-0.1,1.3c0,0.2,0,0.5-0.1,1s-0.1,1-0.1,1.5v8.6
c0,0.2-0.1,0.3-0.2,0.3c-0.2,0-0.4-0.1-0.6-0.2c-0.7-0.5-1.1-1-1.1-1.4c0-0.4,0-0.8,0.1-1.2c0.1-0.4,0.1-0.7,0.1-0.9
c0.1-1.2,0.2-2,0.2-2.6V115c0-0.3-0.1-0.5-0.1-0.8c0-0.2-0.1-0.4-0.3-0.6L425.4,113.6z M431.9,121.5c0,0.4-0.1,0.7-0.3,1.1
c-0.2,0.2-0.5,0.4-0.7,0.3c-0.6-0.1-1.2-0.3-1.7-0.7c-0.2-0.2-0.4-0.3-0.6-0.5c-0.2-0.2-0.5-0.5-0.8-0.9c-0.3-0.3-0.5-0.6-0.5-0.6
s0.2-0.1,0.7,0.1c0.5,0.3,1.1,0.5,1.7,0.6c0.4,0,0.5-0.2,0.5-0.6c0-0.1,0-0.2,0-0.2c-0.1-0.4-0.2-0.7-0.4-1
c-0.3-0.4-0.6-0.8-0.9-1.2c-0.3-0.2-0.5-0.5-0.7-0.8c0-0.1-0.1-0.2-0.1-0.3c0-0.2,0.1-0.3,0.1-0.5l1.6-3.9
c-0.6,0.3-1.2,0.5-1.9,0.7c-0.4,0.1-0.8,0.2-1.2,0.4c-0.1,0.1-0.3,0.1-0.4,0.1c-0.2,0-0.4-0.1-0.6-0.2c-0.2-0.1-0.3-0.3-0.4-0.5
c-0.1-0.1-0.1-0.3-0.1-0.5h0.3c0.3,0,0.6,0,0.9-0.1c0.6-0.1,1.2-0.3,1.9-0.5c0.4-0.1,0.8-0.3,1.2-0.4l0.4-0.2l1.7,1.4
c-0.5,0.5-1,1-1.4,1.6c-0.5,0.7-0.9,1.4-1.3,2.2c0,0.1,0,0.1,0,0.2c0,0.1,0,0.2,0.1,0.3l0.4,0.5c0.9,0.9,1.6,2,2.1,3.2
C431.9,120.9,431.9,121.2,431.9,121.5L431.9,121.5z"/>
</g>
<g>
<path class="st3" d="M698.6,14.8c-0.4,0.6-0.8,1.2-1.4,1.7c-0.6,0.6-1.3,1.1-2.1,1.5c-0.1,0.1-0.3,0.1-0.4,0.1
c-0.2,0-0.1-0.1,0.2-0.5c1.4-1.6,2.6-3.5,3.4-5.5c0,0,0.1-0.2,0.2-0.4c0.1-0.2,0.1-0.5,0.1-0.7c0-0.1,0-0.2,0-0.3
c0.4,0.1,0.7,0.3,1,0.6c0.2,0.2,0.4,0.5,0.4,0.9c0,0.2-0.1,0.4-0.2,0.6C699.5,13.5,699.1,14.2,698.6,14.8z M706,19.9
c0.1,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.1,0,0.2c-0.1,0.5-0.2,0.9-0.4,1.4c-0.2,0.4-0.3,0.6-0.5,0.6s-0.2-0.1-0.4-0.3l-1-1.5
c-3.6,0.8-5.6,1.3-6,1.4h-0.2c-0.2,0-0.4-0.1-0.6-0.3c-0.2-0.2-0.3-0.4-0.4-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0,0,0-0.1,0-0.1l0.2,0.1
c0.2,0,0.4,0,0.6-0.2c0.3-0.2,0.5-0.4,0.7-0.7c0.4-0.6,0.8-1.2,1.1-1.8c0.4-0.7,0.8-1.5,1.3-2.5c0.2-0.3,0.3-0.7,0.3-1
c0-0.1,0-0.3,0-0.4c0.3,0.1,0.6,0.3,0.8,0.5c0.2,0.2,0.4,0.4,0.5,0.7c0,0.1,0,0.1,0,0.2c0,0.2-0.1,0.4-0.2,0.6
c-0.9,1.5-1.6,2.5-2.1,3.1c-0.4,0.5-0.8,1-1.3,1.4c1.1-0.1,2.7-0.3,4.9-0.6l-0.5-0.8c-0.2-0.3-0.4-0.7-0.6-1
c-0.2-0.4-0.2-0.5,0-0.5c0.2,0,0.3,0.1,0.5,0.2l2.9,1.8C705.8,19.8,706,19.9,706,19.9z M709.3,16c0.2,0.1,0.2,0.2,0.2,0.3
s-0.1,0.1-0.2,0.1c-0.3,0-0.5,0-0.8,0h-1.9c-0.6,0-1.1-0.4-1.3-0.9c-0.3-0.5-0.7-1.1-1.1-1.8c-0.6-1-1.1-1.7-1.4-2.2
c-0.2-0.4-0.5-0.8-0.8-1.1c-0.2-0.1-0.3-0.3-0.5-0.5c-0.1-0.1-0.3-0.2-0.4-0.3c-0.1-0.1-0.2-0.1-0.3-0.1c-0.2-0.1-0.3-0.1-0.3-0.2
s0-0.1,0.2-0.1c0.1,0,0.3,0,0.4,0c0.2,0,0.4,0,0.6,0.1c0.2,0.1,0.3,0.2,0.5,0.3c0.3,0.2,0.6,0.5,0.9,0.8c0.3,0.3,0.7,0.8,1.2,1.3
c0.9,1,1.7,1.9,2.4,2.5c0.6,0.6,1.3,1.1,2.1,1.6C708.9,15.7,709.2,15.9,709.3,16z"/>
<path class="st3" d="M723.7,15.1c0.2,0,0.5,0.1,0.7,0.2c0.2,0.1,0.4,0.3,0.5,0.5c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2-0.1,0.3-0.3,0.3
c-1.1-0.2-2.2-0.3-3.2-0.2h-1.1c-0.3,1.1-0.9,2.2-1.6,3.1l3.6,1c0.2,0,0.3,0.1,0.4,0.2c0.1,0.1,0.1,0.2,0.1,0.3
c0,0.4,0,0.9-0.1,1.3c0,0.3-0.2,0.4-0.4,0.4c-0.1,0-0.2,0-0.3-0.1c-1.5-0.8-2.9-1.5-4.4-2.2c-1.7,1.3-3.9,1.9-6,1.8
c-0.3,0-0.5,0-0.5-0.1s0.2-0.1,0.4-0.2c1.7-0.3,3.3-1.1,4.7-2.1l-1.5-0.6l-0.7-0.3c-0.1,0-0.2-0.2-0.2-0.3c0-0.1,0-0.2,0.1-0.2
c0.3-0.6,0.6-1.2,0.8-1.8c-1.3,0.1-2.5,0.2-3.8,0.5c-0.3,0-0.6-0.1-0.7-0.4c-0.2-0.2-0.3-0.5-0.4-0.8l5.3-0.4l0.6-1.6
c0.1-0.4,0.2-0.7,0.2-1.1c0-0.2,0-0.3-0.1-0.5c1,0.2,1.4,0.6,1.4,1.3c0,0.2,0,0.4-0.1,0.6c-0.1,0.3-0.3,0.7-0.5,1.2l2.4-0.2
c0-0.2,0.1-0.3,0.1-0.5c0-0.1,0-0.1,0-0.2c0.4,0.1,0.7,0.3,1,0.7c1.7-0.1,2.8-0.1,3.2-0.2L723.7,15.1z M712.1,14.4l-0.2-0.4
l-0.2-0.4c0-0.1,0-0.2-0.1-0.2c0-0.1,0.1-0.2,0.1-0.3c0.2-0.2,0.3-0.4,0.5-0.7c0.1-0.2,0.2-0.4,0.3-0.7c0.1-0.2,0.1-0.3,0.2-0.5
c0-0.2,0-0.4,0-0.6c0-0.1,0-0.2,0-0.3c0.3,0.1,0.5,0.2,0.7,0.3c0.2,0.1,0.4,0.3,0.5,0.4c0.1,0.1,0.1,0.2,0.1,0.4
c0,0.2,0,0.4-0.1,0.5c-0.1,0.4-0.3,0.8-0.5,1.2c-0.2,0.3-0.4,0.8-0.8,1.4c-0.2,0.2-0.3,0.4-0.4,0.4s-0.1,0-0.2-0.1L712.1,14.4z
M715.3,12.4c-0.3,0-0.5-0.1-0.7-0.3c-0.1-0.2-0.2-0.4-0.2-0.6c0-0.1,0-0.2,0-0.2c0.2,0.1,0.3,0.1,0.5,0.1c0.2,0,0.4,0,0.6,0
c1-0.1,2-0.2,3-0.4l3.2-0.6c0.1-0.1,0.3-0.1,0.4-0.1l1.8,1.5c-1,0.6-2,1.2-3,1.7c-0.2,0.1-0.4,0.1-0.5,0.2c-0.1,0-0.1,0-0.1-0.1
c0.1-0.2,0.2-0.4,0.3-0.6l0.9-1.2c0,0,0.1-0.1,0.1-0.1c0-0.1-0.1-0.1-0.2-0.1c-0.6,0.1-1.8,0.2-3.3,0.5l-2.4,0.4L715.3,12.4z
M719,16.4c-1.1,0-2,0.1-2.5,0.1c-0.3,0.6-0.6,1.1-1,1.6c-0.1,0.1-0.1,0.1-0.1,0.2c0,0.1,0.1,0.2,0.2,0.2l1.8,0.5
C718,18.3,718.6,17.4,719,16.4L719,16.4z M716.3,9.3c-0.3-0.3-0.5-0.6-0.5-0.6s0-0.1,0.1-0.1l0.4,0.1l1.7,0.4
c0.1,0,0.2,0.1,0.4,0.1c0.1,0.1,0.1,0.2,0.1,0.3c0,0.4,0,0.7-0.1,1.1c0,0.3-0.2,0.4-0.3,0.4c-0.1,0-0.2-0.1-0.3-0.1
C717.1,10.1,716.6,9.6,716.3,9.3z"/>
</g>
<g>
<path class="st3" d="M695.6,62.4C695.6,62.4,695.6,62.4,695.6,62.4c0.2-0.1,0.2-0.1,0.3-0.1l1.7,0.4c0.1,0,0.2,0.1,0.3,0.1
c0.1,0.1,0.1,0.2,0.1,0.2c0,0.4,0,0.7-0.2,1c-0.1,0.3-0.3,0.5-0.5,0.5c-0.1,0-0.3-0.3-0.5-0.7c-0.1-0.1-0.1-0.3-0.2-0.4
C696,62.9,695.6,62.5,695.6,62.4z M699.4,64.3c0,0,0.1,0,0.1,0.1c0,0.1,0,0.3-0.1,0.4c0,0.1-0.2,0.8-0.6,1.9
c-0.6,1.9-0.9,3.1-1.1,3.6c-0.1,0.4-0.5,0.6-0.9,0.6c-0.2,0-0.5-0.1-0.7-0.2c-0.2-0.1-0.3-0.2-0.4-0.3c0.3-0.1,0.6-0.4,0.8-0.9
c1.6-3.1,2.4-4.7,2.6-4.9S699.3,64.3,699.4,64.3z M699.4,59.2c0.1,0.1,0.1,0.2,0.1,0.3c0,0.4,0,0.7-0.1,1.1c0,0.3-0.2,0.4-0.3,0.4
c-0.1,0-0.2-0.1-0.3-0.1c-0.7-0.7-1.3-1.2-1.6-1.5c-0.3-0.3-0.5-0.5-0.5-0.7s0-0.1,0.1-0.1l0.4,0.1L699,59
C699.2,59.1,699.3,59.1,699.4,59.2L699.4,59.2z M702.3,61.5c-0.1,0.2-0.1,0.3-0.2,0.5c0,0.1-0.1,0.1-0.2,0.2
c-0.1,0-0.2-0.1-0.4-0.3c-0.5-0.6-0.9-1.3-1.2-2.1c0-0.1,0-0.1,0.1-0.1c0,0,0,0,0,0c0.2,0,0.3,0.1,0.4,0.2l1.3,0.7
c0.2,0.1,0.4,0.2,0.4,0.4c0,0.1,0,0.1,0,0.2C702.5,61.2,702.4,61.3,702.3,61.5L702.3,61.5z M706.7,62.4l0.1,0l1.5,0.9
c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0.3-0.1,0.4v6c0,0.5-0.1,1-0.3,1.4c-0.2,0.4-0.4,0.6-0.6,0.6c-0.1,0-0.3-0.1-0.3-0.2
c-0.1-0.1-0.3-0.3-0.4-0.5c-0.2-0.3-0.5-0.6-0.6-0.7c-0.2-0.2-0.4-0.3-0.7-0.4c-0.1,0-0.2-0.1-0.2-0.1s0.1,0,0.3,0h0.5
c0.3,0,0.5,0,0.8-0.2c0.2-0.2,0.3-0.4,0.3-0.6v-2.4l-0.1-3.4c0-0.1,0-0.1-0.1-0.1c0,0-0.1,0-0.1,0l-1.1,0.2c-1,0.1-1.8,0.3-2.4,0.4
h-0.2c-0.2,0-0.4-0.1-0.5-0.3c0,0.2,0,0.5-0.1,0.9l-0.1,0.9c0.6,0,1.1-0.1,1.5-0.2s0.9-0.1,1.4-0.2c0.2,0,0.3,0,0.5,0.1
c0.1,0.1,0.3,0.2,0.4,0.4c0.1,0.1,0.1,0.2,0.2,0.4c0,0.2-0.1,0.2-0.2,0.2c-0.4-0.1-0.9-0.1-1.3-0.1c-0.7,0-1.4,0.1-2.1,0.3l0,0
c-0.1,0-0.2-0.1-0.3-0.2c0,0.1,0,0.3,0,0.6v1.1c0.7,0,1.2-0.1,1.7-0.2l1.5-0.2c0.2,0,0.3,0,0.5,0.1c0.2,0.1,0.3,0.2,0.4,0.3
c0.1,0.1,0.1,0.2,0.1,0.4c0,0.2-0.1,0.2-0.2,0.2c-0.5-0.1-1-0.1-1.6-0.2c-0.7,0-1.3,0.1-1.9,0.4c-0.2,0-0.3-0.1-0.5-0.3v3.4
c0,0.1,0,0.2-0.1,0.2c-0.1,0-0.1,0-0.2-0.1l-0.2-0.1c-0.3-0.2-0.5-0.3-0.8-0.6c-0.2-0.2-0.3-0.4-0.3-0.7c0.2-1.3,0.3-2.6,0.3-3.9
v-2.7c0-0.2,0-0.4-0.1-0.7c0-0.2-0.1-0.3-0.2-0.5h0.2c0.2,0,0.5,0.1,0.7,0.2c0.2,0.1,0.5,0.2,0.7,0.4c0-0.1,0-0.1,0-0.2h0.5h0.4
l0.9-0.1v-4.3c0-0.2,0-0.4-0.1-0.7c0-0.2-0.1-0.3-0.2-0.5h0.2c0.3,0,0.7,0.1,1,0.2c0.3,0.1,0.5,0.3,0.7,0.6c0,0.5-0.1,0.9-0.1,1.1
s0,0.4-0.1,0.8s-0.1,0.8-0.1,1.2v1.2c0.6,0,1.1-0.1,1.7-0.2L706.7,62.4z M708.4,58.8c0.2,0.2,0.3,0.4,0.3,0.7
c0,0.2-0.1,0.4-0.2,0.6c-0.3,0.3-0.7,0.6-1.1,0.8c-0.4,0.3-0.8,0.5-1.3,0.6c-0.2,0.1-0.3,0.1-0.5,0.1c-0.1,0-0.1,0,0-0.1
c0.1-0.1,0.2-0.3,0.3-0.4c0.2-0.2,0.4-0.5,0.6-0.7c0.2-0.2,0.4-0.6,0.7-0.9c0.1-0.2,0.3-0.4,0.3-0.7c0.1-0.2,0.1-0.4,0.1-0.6
C708,58.3,708.2,58.5,708.4,58.8L708.4,58.8z"/>
<path class="st3" d="M716.4,65.1c0,0.3,0,0.5-0.2,0.8c-0.1,0.2-0.3,0.3-0.5,0.3c-0.4,0-0.8-0.2-1.1-0.4c-0.3-0.3-0.7-0.6-0.9-0.9
c-0.2-0.2-0.3-0.3-0.3-0.4s0,0,0.1,0c0.1,0,0.3,0.1,0.4,0.1c0.2,0.1,0.4,0.2,0.6,0.2c0.1,0.1,0.3,0.1,0.4,0.1
c0.2,0,0.4-0.2,0.4-0.5c0-0.2-0.1-0.4-0.2-0.6c-0.1-0.3-0.3-0.5-0.5-0.8l-0.3-0.5c0-0.1-0.1-0.1,0-0.2c0-0.1,0-0.2,0.1-0.3l1-2.5
c0-0.1,0-0.1,0-0.1s-0.2,0.1-0.4,0.3c-0.2,0.2-0.5,0.4-0.7,0.5c-0.1,0-0.2,0.1-0.3,0.1c-0.1,0-0.3-0.1-0.4-0.2l-0.1,0.9
c-0.1,0.7-0.1,1.5-0.2,2.2v8.1c0,0.2-0.1,0.2-0.2,0.2c-0.2,0-0.3-0.1-0.5-0.2c-0.6-0.4-0.9-0.8-0.9-1.2s0-0.7,0.1-1
s0.1-0.6,0.1-0.7c0.1-1,0.2-1.7,0.2-2.2v-5.9c0-0.2,0-0.4-0.1-0.7c0-0.2-0.1-0.3-0.2-0.5h0.2c0.2,0,0.5,0,0.7,0.1
c0.2,0.1,0.5,0.2,0.7,0.4c0-0.1-0.1-0.2-0.1-0.3c0.3,0,0.5,0,0.8-0.1c0.3-0.1,0.6-0.2,0.9-0.3l0.3-0.2l0.2-0.2l1.1,0.9
c-0.3,0.3-0.6,0.6-0.8,1c-0.3,0.4-0.6,0.9-0.8,1.4c0,0,0,0.1,0,0.1c0,0.1,0,0.1,0.1,0.2c0.3,0.4,0.6,0.8,0.8,1.2
c0.2,0.4,0.4,0.8,0.5,1.2C716.4,64.7,716.4,64.9,716.4,65.1z M724.8,61.4c0.2,0.1,0.4,0.3,0.6,0.5c0.1,0.2,0.2,0.4,0.2,0.6
c0,0.2-0.1,0.3-0.3,0.3c-0.5-0.1-1.1-0.2-1.6-0.2c-1.2,0-2.5,0.1-3.7,0.3c0.3,0.2,0.4,0.5,0.4,0.8c0,0.2,0,0.3-0.1,0.4l-0.2,0.4
h0.1h0.4l1-0.2c0.2,0,0.4-0.1,0.6-0.2l0.2-0.1l0.1-0.1l1.5,0.9c-0.2,0.3-0.3,0.6-0.3,0.9c-0.1,0.3-0.2,0.8-0.3,1.5
s-0.2,1.1-0.2,1.4l-0.2,1.3c-0.1,0.4-0.2,0.8-0.5,1.2c-0.2,0.3-0.5,0.4-0.8,0.4c-0.2,0-0.3-0.1-0.4-0.2c-0.2-0.3-0.3-0.5-0.6-0.7
c-0.2-0.2-0.4-0.5-0.7-0.7c-0.1-0.1-0.2-0.1-0.2-0.2s0.1,0,0.3,0h0.5c0.2,0,0.5-0.1,0.7-0.2c0.2-0.2,0.4-0.4,0.4-0.7
c0.1-0.3,0.2-0.9,0.4-1.8c0.1-0.6,0.2-1.2,0.2-1.8v-0.1c0,0,0,0,0-0.1c0,0,0,0,0,0l-0.6,0.2c-0.3,0.1-0.6,0.2-0.9,0.2h-0.1
c-0.3,0-0.6-0.2-0.7-0.4c-0.5,1.3-1.2,2.4-2,3.5c-0.8,1-1.7,1.8-2.8,2.4c-0.2,0.1-0.4,0.2-0.6,0.3c-0.1,0,0-0.1,0.2-0.4
c0.9-1,1.7-2.1,2.4-3.3c0.7-1.1,1.2-2.3,1.5-3.6c0.1-0.3,0.1-0.6,0.2-0.9l-1.8,0.3c-0.3,0-0.5-0.1-0.7-0.4
c-0.2-0.2-0.3-0.5-0.4-0.8c0.6,0,1.2-0.1,2-0.1l3-0.4c1.6-0.2,2.6-0.3,3.2-0.4C724.4,61.2,724.6,61.3,724.8,61.4z M719.1,58.7
c-0.4-0.4-0.5-0.7-0.5-0.8s0.1-0.1,0.2-0.1c0.1,0,0.2,0,0.3,0.1l2,0.6c0.1,0,0.3,0.1,0.4,0.2c0.1,0.1,0.1,0.2,0.1,0.3
c0,1.2-0.2,1.8-0.5,1.8c-0.1,0-0.2-0.1-0.3-0.2C720,59.7,719.4,59.1,719.1,58.7z"/>
</g>
<g>
<path class="st3" d="M697.7,119.2c0.1,0.1,0.3,0.2,0.3,0.4c0,0.1,0.1,0.1,0.1,0.2c0,0.2,0,0.3-0.1,0.4c-0.2,0.3-0.3,0.7-0.5,1
c-0.2,0.3-0.5,0.7-0.8,1.1c-0.2,0.2-0.3,0.2-0.3,0.2s-0.1,0-0.1-0.1l-0.2-0.6v-0.2c0-0.1,0-0.1,0-0.2c0-0.1,0-0.1,0-0.2
c0-0.1,0-0.2,0.1-0.2c0.2-0.2,0.4-0.3,0.5-0.6c0.1-0.2,0.3-0.4,0.4-0.6c0.1-0.2,0.2-0.3,0.2-0.5c0-0.2,0.1-0.4,0.1-0.5
C697.4,119,697.5,119.1,697.7,119.2z M698.3,118.4c-0.2-0.1-0.3-0.3-0.4-0.5c-0.1-0.1-0.1-0.3-0.2-0.4c1.1,0,3.2-0.2,6.2-0.5
c0.2-0.9,0.4-1.8,0.5-2.7l0,0c0,0,0-0.1,0-0.1l0,0c-0.8,0.2-1.6,0.3-2.4,0.4l-1.4,0.2c-0.8,0.1-1.3,0.2-1.6,0.2s-0.3,0.1,0,0.1
c-0.2,0-0.3-0.1-0.4-0.2c-0.1-0.1-0.2-0.3-0.3-0.4c-0.1-0.1-0.1-0.2-0.1-0.4c-0.3,0.2-0.6,0.3-0.9,0.4c-0.2,0.1-0.5,0.2-0.7,0.2
c0,0,0,0,0-0.1l0.2-0.2c0.1,0,0.1-0.1,0.2-0.2c0.7-0.6,1.4-1.2,2-1.8c0.6-0.7,1.2-1.4,1.6-2.2c0.2-0.3,0.2-0.5,0.3-0.8
c0-0.2,0-0.2,0.2-0.2c0.1,0,0.3,0.1,0.4,0.1l0.3,0.1c0.2,0,0.3,0,0.5,0c0.1,0,0.1,0,0.2,0c0.1,0,0.1,0.1,0.1,0.2
c0,0.1,0,0.2-0.1,0.3c-0.2,0.4-0.4,0.7-0.7,1.1c0.7-0.1,1.3-0.2,2-0.4l0.2-0.1c0.1,0,0.1-0.1,0.2-0.1l1.5,1.2
c-0.4,0.3-0.9,0.7-1.5,1.1s-1,0.7-1.3,0.9c0.6-0.1,1.2-0.2,1.7-0.3l0.2-0.1l0.1-0.1l1.7,1l-0.3,0.7c-0.2,0.4-0.5,1.2-0.9,2.2
c0.2,0.1,0.4,0.3,0.6,0.5c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.3,0.3c-0.9-0.2-1.8-0.3-2.8-0.2c-0.8,0-1.7,0-2.5,0.1
c-0.6,0-1.1,0.1-1.6,0.3C698.6,118.5,698.4,118.5,698.3,118.4z M701.6,113.7l1.7-1.9c0.1,0,0.1-0.1,0.1-0.2c0,0,0,0-0.1,0
c-0.2,0-0.4,0.1-0.6,0.1l-0.8,0.3l-0.4,0.1c-0.1,0-0.2,0-0.3,0c-0.2,0-0.4-0.1-0.5-0.2c-0.8,0.8-1.7,1.5-2.7,2c0.2,0,0.3,0,0.5,0
h0.4C699.2,114,700.1,113.9,701.6,113.7z M698.8,116.4c-0.1-0.1-0.3-0.3-0.4-0.5c-0.1-0.1-0.1-0.2-0.2-0.3c0.5,0,0.9,0,1.3-0.1
s0.8-0.1,1.1-0.1l0.7-0.1l1.4-0.2c0.2,0,0.4,0,0.6,0.1c0.2,0.1,0.3,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.1-0.1,0.3-0.2,0.3
c0,0,0,0-0.1,0c-0.7-0.1-1.3-0.2-2-0.2c-0.8,0-1.6,0.1-2.4,0.4C699.1,116.6,699,116.6,698.8,116.4z M705.7,120.6
c0.4,0.3,0.8,0.6,1,0.8c0.2,0.1,0.4,0.3,0.5,0.5c0.1,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.3-0.1,0.4c-0.1,0.1-0.2,0.2-0.4,0.2
c-0.7,0.1-1.5,0.2-2.2,0.2c-1,0-1.9-0.1-2.9-0.5c-0.7-0.3-1.4-0.7-2-1.2c-0.5-0.4-0.8-1-1-1.6c0-0.1-0.1-0.2-0.1-0.3
c0-0.1,0-0.1,0.1-0.1s0.2,0.1,0.3,0.3c0.4,0.6,1,1,1.6,1.3c0.7,0.3,1.4,0.5,2.2,0.6c0.3,0,0.6,0,0.9,0c0.2,0,0.4,0,0.6,0
c0.1,0,0.2-0.1,0.3-0.1c0.1-0.1,0.1-0.1,0.1-0.2c0,0,0-0.1,0-0.1l-0.5-1.3c0-0.1-0.1-0.2-0.1-0.2l0,0l0.2,0.1
C704.7,119.8,705.2,120.2,705.7,120.6L705.7,120.6z M702.9,119.3c0,0,0.1,0.1,0,0.3s0,0.2-0.1,0.4c0,0.2-0.1,0.3-0.1,0.5
c0,0.1-0.1,0.2-0.2,0.2s-0.2-0.1-0.3-0.2c-0.5-0.6-0.9-1-1.1-1.3c-0.1-0.1-0.3-0.3-0.3-0.5c0,0,0-0.1,0.1-0.1
c0.1,0,0.3,0.1,0.4,0.1l1.3,0.5C702.7,119.1,702.8,119.2,702.9,119.3L702.9,119.3z M708.4,119.1c0.1,0.1,0.1,0.2,0.1,0.3
c0,0.1,0,0.3,0,0.5c0,0.2,0,0.4-0.1,0.6c0,0.1-0.1,0.2-0.2,0.2c-0.1,0-0.3-0.1-0.4-0.2c-1.6-1.2-2.3-2-2.3-2.2s0-0.1,0.2-0.1
c0.2,0,0.5,0.1,0.7,0.1l1.8,0.5C708.2,119,708.3,119,708.4,119.1L708.4,119.1z"/>
<path class="st3" d="M715.5,118.2v3.4c0,0.5-0.1,1-0.3,1.4c-0.2,0.4-0.4,0.6-0.6,0.6c-0.1,0-0.3-0.1-0.3-0.2
c-0.1-0.1-0.2-0.3-0.4-0.5c-0.2-0.3-0.4-0.5-0.6-0.8c-0.2-0.2-0.4-0.3-0.7-0.4c-0.1,0-0.2-0.1-0.2-0.1s0.1,0,0.3,0h0.5
c0.3,0,0.5,0,0.8-0.2c0.2-0.2,0.3-0.4,0.3-0.6v-3.1c-1.1,1.6-1.8,2.5-2.1,2.8c-0.2,0.2-0.4,0.3-0.6,0.3c-0.2,0-0.4-0.1-0.5-0.2
c-0.2-0.1-0.3-0.2-0.4-0.3c-0.1-0.1-0.2-0.2-0.2-0.3c0.1,0,0.3,0,0.4-0.1c0.2-0.1,0.4-0.2,0.6-0.4l0.2-0.2c0.2-0.9,0.3-1.8,0.4-2.8
c0-0.1,0-0.2,0-0.2c0-0.2,0-0.4-0.1-0.6c0-0.2-0.1-0.3-0.2-0.4c0.4,0,0.7,0,1.1,0.2c0.3,0.2,0.4,0.5,0.4,0.8c0,0.7-0.2,1.3-0.5,1.9
l0.5-0.5l0.8-0.7v-2.7c-0.3,0.1-0.7,0.2-1.2,0.3l-0.9,0.2c-0.2,0.1-0.5-0.1-0.7-0.3c-0.2-0.2-0.3-0.5-0.4-0.7
c1.1-0.1,2.1-0.3,3.2-0.5v-3.2c0-0.2,0-0.4-0.1-0.7c0-0.2-0.1-0.3-0.2-0.5h0.2c0.3,0,0.7,0.1,1,0.2c0.3,0.1,0.5,0.3,0.7,0.6
c0,0.2-0.1,0.6-0.2,1.1c-0.1,0.5-0.1,0.9-0.1,1.4v0.7l1.1-0.3h0.2c0.2,0,0.4,0.1,0.6,0.2c0.2,0.1,0.4,0.3,0.5,0.4
c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2-0.1,0.3-0.3,0.3c-0.3-0.1-0.7-0.2-1.1-0.1c-0.4,0-0.8,0-1.2,0.1v3.6l0.8-1.5l0.3-0.6
c0.1-0.2,0.1-0.3,0.2-0.5c0-0.2,0.1-0.3,0.1-0.5c0-0.1,0-0.1,0-0.2c0.3,0.1,0.6,0.2,0.8,0.4c0.2,0.1,0.3,0.4,0.3,0.6
c0,0.2,0,0.3-0.1,0.4c-0.4,0.6-0.9,1.2-1.4,1.7l1.8,1.2c0.1,0,0.2,0.1,0.2,0.2c0,0.1,0.1,0.1,0.1,0.2c0,0.1,0,0.2-0.1,0.2l-0.2,0.3
c-0.1,0.2-0.2,0.3-0.3,0.4c-0.1,0.1-0.1,0.2-0.2,0.2c-0.1,0-0.2-0.1-0.4-0.3c-0.7-1.1-1.1-1.8-1.3-2.1
C715.9,117.9,715.7,118.1,715.5,118.2z M717.4,112.1c-0.4-0.3-0.7-0.6-0.9-0.7c-0.2-0.2-0.3-0.3-0.3-0.4s0.1-0.1,0.2-0.1h0.3
l1.7,0.2c0.1,0,0.3,0,0.4,0.1c0.1,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2,0,0.5c0,0.2,0,0.4-0.1,0.5c0,0.1-0.1,0.2-0.2,0.2
c-0.1,0-0.2-0.1-0.3-0.2L717.4,112.1z M725.4,122.2c0.1,0.1,0.2,0.2,0.2,0.3s-0.1,0.1-0.2,0.1c-0.3,0-0.5,0-0.8,0h-1.6
c-0.3,0-0.5-0.1-0.7-0.2c-0.2-0.2-0.4-0.4-0.6-0.7c-0.3-0.4-0.6-0.9-0.9-1.5c-1,1.2-2.3,2-3.7,2.5c-0.1,0-0.2,0.1-0.4,0.1
c-0.1,0-0.1,0-0.1,0s0.1-0.1,0.3-0.2c0.6-0.4,1.2-0.9,1.7-1.4c0.6-0.6,1.1-1.3,1.5-2c-0.4-0.7-0.7-1.2-0.9-1.5
c-0.2-0.3-0.5-0.6-0.9-0.8l-0.2,0.1c-0.2,0.1-0.3,0.2-0.5,0.3l0,0c0-0.1,0.1-0.2,0.2-0.3l0.2-0.3l0,0c-0.2-0.1-0.3-0.1-0.3-0.2
s0.1-0.1,0.4-0.2h0.1c0.4-0.8,0.8-1.7,1.1-2.5c0.3-1,0.6-2,0.8-3c0-0.2,0-0.4,0-0.6c0-0.3,0-0.6-0.2-0.8c0.4,0,0.8,0.1,1.1,0.3
c0.3,0.2,0.4,0.5,0.4,0.9v0.2c-0.1,1-0.4,1.9-0.8,2.8c0.4,0,0.7-0.1,1.1-0.2c0.3-0.1,0.7-0.2,1.1-0.4s0.8-0.3,0.9-0.3
c0.1,0,0.2,0,0.3,0c0.2,0,0.4,0.1,0.6,0.1c0.2,0.1,0.3,0.2,0.5,0.3c0.1,0.1,0.2,0.2,0.2,0.4c0,0.1-0.1,0.2-0.2,0.3l-1.7,0.3
l-1.3,0.3c0.5,0.2,0.8,0.4,0.8,0.9c0,0.1,0,0.2,0,0.2c-0.2,1.3-0.7,2.5-1.3,3.6c0.5,0.5,1,1,1.5,1.5c0.5,0.5,1,0.9,1.6,1.2
C725,122,725.2,122.1,725.4,122.2z M720.7,118c0.4-0.8,0.7-1.7,0.9-2.6c0-0.1,0.1-0.3,0.1-0.4c0-0.2,0-0.4-0.1-0.6
c-0.3,0.1-0.5,0.1-0.8,0.2c-0.2,0-0.4-0.1-0.6-0.3c-0.4,0.7-0.8,1.4-1.4,2c0.1,0.1,0.3,0.1,0.4,0.2
C719.8,117,720.3,117.5,720.7,118L720.7,118z"/>
</g>
<g>
<path class="st3" d="M700.4,171.6v6.6c0,0.1,0,0.2-0.1,0.2c-0.1,0-0.3-0.1-0.3-0.2l-0.4-0.3c-0.2-0.1-0.4-0.3-0.5-0.5
c-0.1-0.1-0.2-0.3-0.2-0.4c0-0.3,0-0.7,0.1-1s0.1-0.6,0.1-0.7c0.1-1,0.2-1.7,0.2-2.2v-0.4c-1.2,1-2,1.6-2.4,1.9
c-0.2,0.1-0.3,0.2-0.5,0.2c-0.2,0-0.4-0.1-0.6-0.2c-0.2-0.1-0.3-0.3-0.5-0.5c-0.1-0.1-0.1-0.3-0.2-0.4c0.1,0,0.2,0,0.2,0
c0.4,0,0.7-0.1,1-0.3l2.9-1.6v-2.1c-0.7,0.3-1.4,0.6-2,1h-0.1c-0.3,0-0.7-0.3-1-1h0.1c0.2-0.1,0.4-0.2,0.6-0.4
c0.1-0.2,0.2-0.4,0.3-0.7l0.1-0.5c0-0.2,0-0.4,0-0.6c0-0.2-0.1-0.3-0.2-0.5c0.3,0,0.7,0,1,0.2c0.2,0.1,0.4,0.4,0.4,0.7
c0,0.2,0,0.4-0.1,0.6c-0.1,0.2-0.1,0.3-0.1,0.4v0.2c0,0.1,0,0.1,0.1,0.1c0,0,0,0,0,0c0.2-0.1,0.5-0.2,0.7-0.3l0.5-0.2v-3.3
c0-0.2,0-0.4-0.1-0.7c0-0.2-0.1-0.3-0.2-0.5h0.2c0.3,0,0.7,0.1,1,0.2c0.3,0.1,0.5,0.3,0.7,0.6c0,0.5-0.1,0.9-0.1,1.1s0,0.4-0.1,0.8
s-0.1,0.8-0.1,1.2l0,0l0,0c0.1,0,0.2,0,0.3,0c0.3,0,0.6,0.1,0.8,0.2c0.2,0.2,0.3,0.3,0.3,0.5s-0.1,0.2-0.3,0.2
c-0.4,0-0.8,0-1.2,0.1v1.8l0.5-0.2c0.1,0,0.2-0.1,0.2-0.1c0.1,0,0.2,0,0.2,0.1s-0.1,0.1-0.2,0.2L700.4,171.6z M709.1,168.7
c-0.2,0.3-0.3,0.6-0.3,0.9c-0.1,0.7-0.2,1.7-0.4,3s-0.3,2.4-0.5,3.3c0,0.4-0.2,0.8-0.5,1.1c-0.2,0.3-0.5,0.4-0.8,0.4
c-0.3,0-0.5-0.1-0.6-0.3c-0.3-0.4-0.7-0.8-1.2-1.2l-0.2-0.1c-0.1-0.1-0.1-0.1-0.1-0.1s0,0,0.1,0c0.1,0,0.2,0,0.3,0
c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.5-0.1,0.7-0.2c0.2-0.1,0.3-0.4,0.3-0.6c0.1-0.3,0.2-1.3,0.4-2.9s0.3-2.6,0.3-2.9c0,0,0-0.1-0.1-0.1
c0,0-0.1,0-0.1,0c-0.4,0.1-0.8,0.1-1.2,0.2s-0.7,0.1-0.9,0.2s-0.8,0.2-1.2,0.3c0.2,0.2,0.3,0.4,0.3,0.6c0,0.1,0,0.2-0.1,0.4
c-0.5,1.5-1.6,2.8-3,3.6c-0.1,0.1-0.3,0.1-0.4,0.2c0,0-0.1,0-0.1,0c0,0,0,0,0,0c0-0.1,0.1-0.2,0.2-0.3c0.4-0.4,0.7-0.9,1-1.4
c0.4-0.7,0.7-1.4,1-2.1c0.1-0.2,0.1-0.3,0.1-0.5c0-0.2,0-0.3,0-0.5l-0.1-0.1c-0.4,0.3-0.9,0.7-1.3,0.9c-0.2,0.1-0.3,0.2-0.5,0.2
c-0.1,0,0-0.2,0.2-0.6c0.4-0.6,0.8-1.1,1.2-1.7c0.5-0.8,1-1.6,1.5-2.6c0.1-0.2,0.2-0.4,0.2-0.6c0-0.2,0.1-0.4,0.1-0.6
c0-0.1,0-0.2,0-0.3c0.4,0.1,0.7,0.3,1,0.5c0.4,0.3,0.5,0.9,0.2,1.3c-0.5,1-1.2,2-2,2.8l0,0l0.6-0.1c1.1-0.1,2.1-0.3,3.1-0.6
c0,0,0.1-0.1,0.2-0.1l0.1-0.1L709.1,168.7z M706.1,169.8c0.3,0.2,0.4,0.5,0.4,0.8c0,0.1,0,0.3-0.1,0.4c-0.4,1.2-1.1,2.3-1.9,3.2
c-0.7,0.9-1.6,1.6-2.6,2.2c-0.2,0.1-0.3,0.2-0.5,0.2c-0.1,0-0.1,0-0.1-0.1c0.1-0.1,0.1-0.3,0.2-0.4c1.4-1.6,2.5-3.4,3.3-5.4
c0.1-0.3,0.2-0.6,0.2-0.9c0-0.2,0-0.4-0.1-0.6C705.4,169.4,705.8,169.5,706.1,169.8L706.1,169.8z"/>
<path class="st3" d="M712.6,171c-0.3,0-0.5-0.1-0.7-0.3c-0.2-0.2-0.4-0.4-0.5-0.6c-0.1-0.2-0.1-0.3-0.1-0.5c0,0,0,0,0.2,0h0.4
c0.3,0,0.5,0,0.8-0.1l1.9-0.7c0.6-0.2,1.1-0.4,1.4-0.5c0.1-0.1,0.3-0.1,0.5-0.2c0.1,0,0.1,0.1,0,0.1c-0.1,0.1-0.2,0.2-0.3,0.3
c-0.5,0.4-0.9,0.9-1.5,1.2c-0.5,0.4-1.1,0.8-1.6,1.1C712.9,170.9,712.8,171,712.6,171z M721.8,176.6c0.1,0.1,0.1,0.2,0.1,0.4
c0,0.4,0,0.7-0.1,1.1c0,0.3-0.2,0.4-0.4,0.4c-0.1,0-0.3-0.1-0.4-0.2l-0.6-0.5l-1.3-1.1c-0.7-0.5-1.2-0.9-1.4-1.2
c-0.3,0.5-0.7,1-1.2,1.3c-0.5,0.3-1.1,0.6-1.7,0.8c-0.7,0.2-1.5,0.4-2.2,0.6h-0.2c-0.1,0-0.1,0-0.1-0.1c0.1-0.1,0.3-0.1,0.4-0.2
c0.6-0.2,1.1-0.5,1.6-0.9c0.7-0.4,1.2-1,1.7-1.6c0.5-0.7,0.9-1.5,1-2.4c0-0.1,0.1-0.3,0-0.4c0-0.3,0-0.7-0.1-1
c0.4,0,0.8,0.1,1.1,0.3c0.3,0.2,0.4,0.5,0.4,0.8c0,0.1,0,0.2,0,0.3c-0.1,0.7-0.3,1.4-0.6,2.1l2.3,0.7l-0.1-0.1
c-0.2-0.2-0.3-0.5-0.4-0.7c-0.1-0.2-0.1-0.3-0.2-0.4c-0.1-0.2-0.2-0.3-0.3-0.4c-0.1-0.1-0.1-0.1-0.2-0.2l0,0h0.3h0.2
c0.2,0,0.3-0.1,0.5-0.2c0.1-0.2,0.2-0.5,0.2-0.7c0-0.6,0-1,0-1.3s-0.1-0.6-0.1-0.9c0,0,0-0.1-0.1-0.1c0,0-0.1,0-0.1,0
c-0.7,0.1-1.2,0.2-1.6,0.3c-0.3,0.1-0.9,0.3-1.6,0.5c-0.1,0-0.1,0-0.2,0c-0.2,0-0.4-0.2-0.6-0.5c-0.1,0.4-0.1,0.8-0.2,1.1
c0,0.4,0,1,0,1.8v1.6c0,0.1,0,0.2-0.1,0.2c-0.1,0-0.1,0-0.2-0.1l-0.2-0.1c-0.3-0.2-0.5-0.3-0.8-0.5c-0.2-0.2-0.3-0.4-0.3-0.7
c0.2-1.1,0.3-2.1,0.3-3.2l0,0c0-0.2,0-0.4-0.1-0.7c0-0.2-0.1-0.3-0.2-0.5h0.2c0.3,0,0.5,0.1,0.8,0.2c0.3,0.1,0.5,0.2,0.7,0.4
c0-0.1,0-0.2,0-0.2h0.5h0.4c0.3-0.1,1-0.2,2-0.4s1.5-0.4,1.5-0.4l0.2-0.1l0.1-0.1l1.5,1c-0.1,0.2-0.2,0.4-0.2,0.6
c-0.1,0.2-0.1,0.5-0.1,0.7v2c0,0.5-0.1,1-0.3,1.4c-0.2,0.4-0.4,0.6-0.6,0.6l0.9,0.3C721.7,176.2,721.8,176.4,721.8,176.6
L721.8,176.6z M713.5,166c-0.2-0.2-0.4-0.4-0.5-0.5s-0.2-0.2-0.2-0.2s0,0,0,0c0.1,0,0.2,0,0.2,0.1l1.7,0.4c0.1,0,0.2,0.1,0.3,0.1
c0.1,0.1,0.1,0.1,0.1,0.2c0,0.3,0,0.7-0.2,1c-0.1,0.3-0.3,0.4-0.5,0.4c-0.1,0-0.1-0.1-0.2-0.2l-0.2-0.5c-0.1-0.1-0.1-0.3-0.2-0.4
L713.5,166z M715.5,168L715.5,168c0.1-0.1,0.1-0.3,0.2-0.4c0.3-0.4,0.6-0.8,0.9-1.2c0.2-0.3,0.5-0.9,0.9-1.6
c0.3-0.4,0.4-0.9,0.4-1.4c0.3,0.1,0.6,0.3,0.8,0.5c0.2,0.2,0.3,0.4,0.3,0.7c0,0.2-0.1,0.4-0.2,0.6c-0.1,0.1-0.2,0.3-0.3,0.4
c0.4-0.1,0.8-0.2,1.2-0.3c0.4-0.1,0.8-0.3,1.3-0.5l0.2-0.1l0.2-0.1l0.3-0.1h0.1l1.2,1.4c-0.6,0.4-1.1,0.7-1.7,1.1l-0.7,0.5
c-0.1,0.1-0.3,0.2-0.4,0.2l0,0l0.2-0.4l0.7-1.4c0-0.1,0.1-0.1,0.1-0.2c0-0.1-0.1-0.1-0.2-0.1c-0.7,0.2-1.2,0.4-1.5,0.4
c-0.4,0.1-0.9,0.2-1.3,0.2c-0.1,0-0.1,0-0.2,0c-0.5,0.6-1.2,1.1-2,1.4C715.8,168,715.7,168,715.5,168L715.5,168z M725.8,170.8
c0,0.1-0.2,0.1-0.5,0.1h-1.8c-0.3,0-0.6,0-0.8-0.1c-0.3-0.1-0.6-0.3-0.8-0.5c-1.4-0.9-2.3-1.6-2.7-2c-0.4,0.5-0.9,1-1.4,1.4
c-0.5,0.3-1,0.5-1.6,0.6l-0.4,0.1l0,0l0.2-0.2c0.4-0.3,0.8-0.7,1.2-1.1c0.4-0.5,0.8-1.1,1.2-1.7c0.1-0.2,0.2-0.4,0.3-0.6
c0.1-0.2,0.1-0.4,0.1-0.5c0.2,0.1,0.5,0.3,0.7,0.5c0.1,0.1,0.2,0.3,0.2,0.5c0,0.1,0,0.2-0.1,0.3c0.8,0.5,1.6,1,2.4,1.5
c0.8,0.4,1.6,0.7,2.5,1C725.3,170.5,725.8,170.7,725.8,170.8z"/>
</g>
<g>
<path class="st3" d="M708.8,220.2c0.2,0.1,0.4,0.3,0.6,0.5c0.1,0.2,0.2,0.4,0.2,0.6c0,0.2-0.1,0.3-0.3,0.3
c-0.4-0.1-0.9-0.2-1.4-0.2c-0.4,0-0.8,0-1.2,0.1v7.5c0,0.5-0.1,1-0.3,1.4c-0.2,0.4-0.4,0.6-0.7,0.6c-0.1,0-0.3-0.1-0.3-0.2
c-0.1-0.1-0.3-0.3-0.4-0.5c-0.2-0.3-0.4-0.5-0.6-0.8c-0.2-0.2-0.4-0.3-0.7-0.4c-0.1,0-0.2-0.1-0.2-0.1c0-0.1,0.1-0.1,0.3,0h0.5
c0.3,0,0.5,0,0.8-0.2c0.2-0.2,0.3-0.4,0.3-0.6v-4.5c-0.6,0.8-1.3,1.5-2,2.2c-0.6,0.6-1.3,1.1-2,1.6c-0.1,0.1-0.3,0.2-0.5,0.2
c0,0.3,0,0.6-0.1,0.9c0,0.2-0.1,0.3-0.3,0.3c-0.1,0-0.2,0-0.2-0.1c-0.4-0.3-0.9-0.7-1.3-1.1c-0.3-0.3-0.6-0.6-0.8-0.9
c-0.3,0.6-0.7,1.1-1.2,1.6c-0.5,0.5-1.1,0.9-1.8,1.3c-0.1,0.1-0.3,0.2-0.4,0.2l0,0c0-0.1,0.1-0.2,0.3-0.3c0.6-0.6,1.1-1.2,1.5-1.9
c0.5-0.8,0.8-1.6,1-2.5c0.3-1.2,0.4-2.3,0.4-3.5c0-0.2,0-0.5-0.1-0.7c0-0.2-0.1-0.4-0.2-0.6c0.4-0.1,0.8,0,1.1,0.2
c0.3,0.2,0.4,0.6,0.3,0.9c0,1.7-0.2,3.4-0.8,5l2.1,0.9h0.1c0.1,0,0.1,0,0.2,0.1c0,0,0,0.1,0,0.1c0.1-0.1,0.1-0.2,0.2-0.2
c0.7-0.7,1.3-1.5,1.9-2.3c0.6-0.9,1.3-1.9,2.1-3.1l-1.6,0.4c-0.7,0.1-1.1,0.2-1.3,0.3s-0.6-0.2-0.9-0.7v2c0,0.4,0,0.8-0.2,1.1
c-0.1,0.3-0.2,0.5-0.4,0.8c-0.1,0.2-0.2,0.3-0.4,0.3c-0.1,0-0.3-0.1-0.3-0.2l-0.2-0.5c-0.2-0.5-0.3-0.9-0.5-1.1
c0-0.1-0.1-0.1-0.1-0.2l0,0l0.2,0.1c0.1,0,0.2-0.1,0.3-0.2c0.1-0.3,0.1-0.6,0.1-0.9v-0.6v-2.9c0-0.1,0-0.1-0.1-0.1c0,0-0.1,0-0.2,0
c-0.6,0-1.2,0.1-1.7,0.3c-0.1,0-0.2,0-0.3,0c-0.1,0-0.3,0-0.4-0.1c0,0.3,0,0.5,0,0.7s0,0.4,0,0.5c-0.1,0.9-0.1,1.6-0.1,2.1v3.4
c0,0.1,0,0.2-0.1,0.2c-0.1,0-0.2-0.1-0.3-0.2c-0.2-0.2-0.5-0.4-0.7-0.6c-0.2-0.2-0.3-0.5-0.3-0.7c0.1-0.5,0.1-1,0.2-1.6
c0-0.5,0-1.1,0-1.9v-1.9c0-0.2,0-0.5-0.1-0.7c0-0.2-0.1-0.4-0.2-0.5h0.2c0.3,0,0.5,0.1,0.7,0.2c0.2,0.1,0.5,0.2,0.7,0.4
c0-0.1,0-0.1,0-0.2h0.5h0.5c0.5-0.1,1-0.3,1.5-0.5l0.3-0.1l1.7,1c-0.1,0.1-0.2,0.3-0.3,0.5c-0.1,0.2-0.1,0.3-0.1,0.5v1.3
c1.4-0.1,2.8-0.3,4.1-0.6v-3.4c0-0.2,0-0.4-0.1-0.7c0-0.2-0.1-0.3-0.2-0.5h0.2c0.3,0,0.7,0.1,1,0.2c0.3,0.1,0.5,0.3,0.7,0.6
c-0.1,0.4-0.1,0.7-0.2,1.1c-0.1,0.5-0.1,0.9-0.1,1.4v1l1.3-0.2C708.3,220,708.6,220.1,708.8,220.2z"/>
<path class="st3" d="M725,229.2c0.1,0.1,0.2,0.2,0.2,0.3c0,0.1-0.1,0.1-0.2,0.1c-0.3,0-0.5,0-0.8,0h-1.6c-0.3,0-0.5-0.1-0.7-0.2
c-0.2-0.2-0.4-0.4-0.6-0.7c-0.3-0.4-0.7-1-1-1.7c-0.9,1.3-2.3,2.2-3.8,2.7c-0.1,0-0.2,0.1-0.4,0.1c0,0-0.1,0-0.1,0s0.1-0.1,0.3-0.2
c0.6-0.4,1.2-0.9,1.7-1.5c0.6-0.7,1.1-1.5,1.6-2.3c-0.3-0.5-0.5-0.9-0.7-1.2c-0.1-0.2-0.3-0.3-0.5-0.5c-0.2-0.2-0.4-0.3-0.5-0.4
l-0.3-0.1h-0.1l-0.2,0.2c-0.2,0.1-0.3,0.2-0.5,0.3l0,0c0-0.1,0.1-0.2,0.2-0.3l0.1-0.2c-0.4,0-0.7,0-1.1,0.1l-0.4,0.1h-0.1v2.9
l0.8-0.3c0.3-0.1,0.5-0.2,0.8-0.3h0.2c0.1,0,0.2,0,0.2,0.1s-0.1,0.1-0.2,0.2l-0.5,0.3c-0.7,0.4-1.5,1-2.4,1.5s-1.5,0.9-1.9,1.1
c-0.1,0.1-0.3,0.1-0.4,0.1c-0.2,0-0.5-0.1-0.6-0.3c-0.2-0.2-0.3-0.4-0.4-0.6c-0.1-0.1-0.1-0.3-0.1-0.5c0.1,0,0.2,0,0.3,0
c0.2,0,0.4,0,0.6-0.1c0.2-1.1,0.2-2.2,0.2-3.3v-0.9c0-0.2,0-0.4-0.1-0.7c0-0.2-0.1-0.3-0.2-0.5h0.2c0.3,0,0.7,0.1,1,0.2
c0.3,0.1,0.5,0.3,0.7,0.6c0,0.5-0.1,0.9-0.1,1.1s0,0.4-0.1,0.8s-0.1,0.8-0.1,1.2v0.9l1-0.4v-6.2c0-0.2,0-0.4-0.1-0.6l-0.5,0.1
c-0.4,0.1-0.7,0.2-1.1,0.3c-0.3,0-0.5-0.1-0.6-0.3c-0.2-0.2-0.3-0.5-0.4-0.7c0.6,0,1.1-0.1,1.7-0.2c0.5-0.1,1.2-0.3,1.9-0.5
s1.3-0.4,1.7-0.4c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2-0.1,0.3-0.3,0.3
c-0.3-0.1-0.6-0.1-0.9-0.1c-0.6,0-1.3,0.1-1.9,0.3c0.3,0.1,0.5,0.3,0.7,0.5c0,0.2,0,0.5,0,0.6s0,0.3,0,0.4c0,0.3-0.1,0.6-0.1,1.1
c0.2,0,0.4-0.1,0.6-0.2l0.4-0.1c0.3,0,0.6,0.1,0.8,0.4c0.8-1.6,1.4-3.3,1.7-5c0-0.2,0-0.4,0-0.6c0-0.3,0-0.6-0.2-0.9
c0.4,0,0.8,0.1,1.2,0.4c0.3,0.2,0.4,0.6,0.4,1c-0.1,0.9-0.3,1.8-0.7,2.6c0.5,0,0.9-0.1,1.3-0.2c0.4-0.1,0.8-0.2,1.4-0.4l0.7-0.2
c0.3-0.1,0.6-0.1,0.9,0.1c0.2,0.1,0.3,0.2,0.5,0.3c0.1,0.1,0.2,0.2,0.2,0.4c0,0.1-0.1,0.2-0.3,0.3c-0.4,0.1-1.1,0.2-2.1,0.4
l-0.7,0.1c0.3,0.1,0.6,0.5,0.6,0.8c0,0.1,0,0.2,0,0.2c-0.2,1.3-0.7,2.6-1.3,3.7c0.5,0.6,1.1,1.1,1.6,1.6c0.5,0.5,1.1,0.9,1.7,1.3
C724.6,228.9,724.8,229,725,229.2z M720.1,224.7c0.4-0.8,0.7-1.7,0.9-2.6c0-0.1,0-0.3,0-0.4c0-0.2,0-0.4-0.1-0.5
c-0.4,0.1-0.8,0.2-1.2,0.3c-0.2,0-0.4-0.1-0.5-0.2c-0.4,0.7-0.9,1.3-1.4,1.9c0.4,0,0.7,0.1,1,0.3
C719.3,223.9,719.7,224.3,720.1,224.7L720.1,224.7z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 97 KiB

1
src/assets/img/warn.svg Normal file
View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M512 632.32c-18.432 0-33.28-14.848-33.28-33.28V343.04c0-18.432 14.848-33.28 33.28-33.28s33.28 14.848 33.28 33.28v256c0 18.432-14.848 33.28-33.28 33.28zM461.824 716.8c0 27.648 22.528 50.176 50.176 50.176s50.176-22.528 50.176-50.176-22.528-50.176-50.176-50.176-50.176 22.528-50.176 50.176z" fill="#f4ea2a" /><path d="M849.408 889.344H174.592c-30.72 0-58.368-15.872-73.728-42.496-15.36-26.624-15.36-58.88 0-85.504L438.272 177.152c15.36-26.624 43.008-42.496 73.728-42.496s58.368 15.872 73.728 42.496l337.408 584.192c15.36 26.624 15.36 58.88 0 85.504-15.36 26.624-43.008 42.496-73.728 42.496zM493.568 209.408L156.16 793.6c-5.632 9.728-2.048 18.432 0 21.504 2.048 3.072 7.168 10.752 18.432 10.752h674.816c11.264 0 16.896-7.68 18.432-10.752 2.048-3.072 5.632-11.776 0-21.504L530.432 209.408c-5.632-9.728-14.848-10.752-18.432-10.752s-12.8 1.024-18.432 10.752z" fill="#ffd900" /></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

413
src/assets/map/bmap.js Normal file
View File

@ -0,0 +1,413 @@
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('echarts')) :
typeof define === 'function' && define.amd ? define(['exports', 'echarts'], factory) :
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.bmap = {}, global.echarts));
}(this, (function (exports, echarts) { 'use strict';
function BMapCoordSys(bmap, api) {
this._bmap = bmap;
this.dimensions = ['lng', 'lat'];
this._mapOffset = [0, 0];
this._api = api;
this._projection = new BMap.MercatorProjection();
}
BMapCoordSys.prototype.dimensions = ['lng', 'lat'];
BMapCoordSys.prototype.setZoom = function (zoom) {
this._zoom = zoom;
};
BMapCoordSys.prototype.setCenter = function (center) {
this._center = this._projection.lngLatToPoint(new BMap.Point(center[0], center[1]));
};
BMapCoordSys.prototype.setMapOffset = function (mapOffset) {
this._mapOffset = mapOffset;
};
BMapCoordSys.prototype.getBMap = function () {
return this._bmap;
};
BMapCoordSys.prototype.dataToPoint = function (data) {
var point = new BMap.Point(data[0], data[1]); // TODO mercator projection is toooooooo slow
// let mercatorPoint = this._projection.lngLatToPoint(point);
// let width = this._api.getZr().getWidth();
// let height = this._api.getZr().getHeight();
// let divider = Math.pow(2, 18 - 10);
// return [
// Math.round((mercatorPoint.x - this._center.x) / divider + width / 2),
// Math.round((this._center.y - mercatorPoint.y) / divider + height / 2)
// ];
var px = this._bmap.pointToOverlayPixel(point);
var mapOffset = this._mapOffset;
return [px.x - mapOffset[0], px.y - mapOffset[1]];
};
BMapCoordSys.prototype.pointToData = function (pt) {
var mapOffset = this._mapOffset;
pt = this._bmap.overlayPixelToPoint({
x: pt[0] + mapOffset[0],
y: pt[1] + mapOffset[1]
});
return [pt.lng, pt.lat];
};
BMapCoordSys.prototype.getViewRect = function () {
var api = this._api;
return new echarts.graphic.BoundingRect(0, 0, api.getWidth(), api.getHeight());
};
BMapCoordSys.prototype.getRoamTransform = function () {
return echarts.matrix.create();
};
BMapCoordSys.prototype.prepareCustoms = function () {
var rect = this.getViewRect();
return {
coordSys: {
// The name exposed to user is always 'cartesian2d' but not 'grid'.
type: 'bmap',
x: rect.x,
y: rect.y,
width: rect.width,
height: rect.height
},
api: {
coord: echarts.util.bind(this.dataToPoint, this),
size: echarts.util.bind(dataToCoordSize, this)
}
};
};
function dataToCoordSize(dataSize, dataItem) {
dataItem = dataItem || [0, 0];
return echarts.util.map([0, 1], function (dimIdx) {
var val = dataItem[dimIdx];
var halfSize = dataSize[dimIdx] / 2;
var p1 = [];
var p2 = [];
p1[dimIdx] = val - halfSize;
p2[dimIdx] = val + halfSize;
p1[1 - dimIdx] = p2[1 - dimIdx] = dataItem[1 - dimIdx];
return Math.abs(this.dataToPoint(p1)[dimIdx] - this.dataToPoint(p2)[dimIdx]);
}, this);
}
var Overlay; // For deciding which dimensions to use when creating list data
BMapCoordSys.dimensions = BMapCoordSys.prototype.dimensions;
function createOverlayCtor() {
function Overlay(root) {
this._root = root;
}
Overlay.prototype = new BMap.Overlay();
/**
* 初始化
*
* @param {BMap.Map} map
* @override
*/
Overlay.prototype.initialize = function (map) {
map.getPanes().labelPane.appendChild(this._root);
return this._root;
};
/**
* @override
*/
Overlay.prototype.draw = function () {};
return Overlay;
}
BMapCoordSys.create = function (ecModel, api) {
var bmapCoordSys;
var root = api.getDom(); // TODO Dispose
ecModel.eachComponent('bmap', function (bmapModel) {
var painter = api.getZr().painter;
var viewportRoot = painter.getViewportRoot();
if (typeof BMap === 'undefined') {
throw new Error('BMap api is not loaded');
}
Overlay = Overlay || createOverlayCtor();
if (bmapCoordSys) {
throw new Error('Only one bmap component can exist');
}
var bmap;
if (!bmapModel.__bmap) {
// Not support IE8
var bmapRoot = root.querySelector('.ec-extension-bmap');
if (bmapRoot) {
// Reset viewport left and top, which will be changed
// in moving handler in BMapView
viewportRoot.style.left = '0px';
viewportRoot.style.top = '0px';
root.removeChild(bmapRoot);
}
bmapRoot = document.createElement('div');
bmapRoot.className = 'ec-extension-bmap'; // fix #13424
bmapRoot.style.cssText = 'position:absolute;width:100%;height:100%';
root.appendChild(bmapRoot); // initializes bmap
var mapOptions = bmapModel.get('mapOptions');
if (mapOptions) {
mapOptions = echarts.util.clone(mapOptions); // Not support `mapType`, use `bmap.setMapType(MapType)` instead.
delete mapOptions.mapType;
}
bmap = bmapModel.__bmap = new BMap.Map(bmapRoot, mapOptions);
var overlay = new Overlay(viewportRoot);
bmap.addOverlay(overlay); // Override
painter.getViewportRootOffset = function () {
return {
offsetLeft: 0,
offsetTop: 0
};
};
}
bmap = bmapModel.__bmap; // Set bmap options
// centerAndZoom before layout and render
var center = bmapModel.get('center');
var zoom = bmapModel.get('zoom');
if (center && zoom) {
var bmapCenter = bmap.getCenter();
var bmapZoom = bmap.getZoom();
var centerOrZoomChanged = bmapModel.centerOrZoomChanged([bmapCenter.lng, bmapCenter.lat], bmapZoom);
if (centerOrZoomChanged) {
var pt = new BMap.Point(center[0], center[1]);
bmap.centerAndZoom(pt, zoom);
}
}
bmapCoordSys = new BMapCoordSys(bmap, api);
bmapCoordSys.setMapOffset(bmapModel.__mapOffset || [0, 0]);
bmapCoordSys.setZoom(zoom);
bmapCoordSys.setCenter(center);
bmapModel.coordinateSystem = bmapCoordSys;
});
ecModel.eachSeries(function (seriesModel) {
if (seriesModel.get('coordinateSystem') === 'bmap') {
seriesModel.coordinateSystem = bmapCoordSys;
}
});
};
function v2Equal(a, b) {
return a && b && a[0] === b[0] && a[1] === b[1];
}
echarts.extendComponentModel({
type: 'bmap',
getBMap: function () {
// __bmap is injected when creating BMapCoordSys
return this.__bmap;
},
setCenterAndZoom: function (center, zoom) {
this.option.center = center;
this.option.zoom = zoom;
},
centerOrZoomChanged: function (center, zoom) {
var option = this.option;
return !(v2Equal(center, option.center) && zoom === option.zoom);
},
defaultOption: {
center: [104.114129, 37.550339],
zoom: 5,
// 2.0 http://lbsyun.baidu.com/custom/index.htm
mapStyle: {},
// 3.0 http://lbsyun.baidu.com/index.php?title=open/custom
mapStyleV2: {},
// See https://lbsyun.baidu.com/cms/jsapi/reference/jsapi_reference.html#a0b1
mapOptions: {},
roam: false
}
});
function isEmptyObject(obj) {
for (var key in obj) {
if (obj.hasOwnProperty(key)) {
return false;
}
}
return true;
}
echarts.extendComponentView({
type: 'bmap',
render: function (bMapModel, ecModel, api) {
var rendering = true;
var bmap = bMapModel.getBMap();
var viewportRoot = api.getZr().painter.getViewportRoot();
var coordSys = bMapModel.coordinateSystem;
var moveHandler = function (type, target) {
if (rendering) {
return;
}
var offsetEl = viewportRoot.parentNode.parentNode.parentNode;
var mapOffset = [-parseInt(offsetEl.style.left, 10) || 0, -parseInt(offsetEl.style.top, 10) || 0]; // only update style when map offset changed
var viewportRootStyle = viewportRoot.style;
var offsetLeft = mapOffset[0] + 'px';
var offsetTop = mapOffset[1] + 'px';
if (viewportRootStyle.left !== offsetLeft) {
viewportRootStyle.left = offsetLeft;
}
if (viewportRootStyle.top !== offsetTop) {
viewportRootStyle.top = offsetTop;
}
coordSys.setMapOffset(mapOffset);
bMapModel.__mapOffset = mapOffset;
api.dispatchAction({
type: 'bmapRoam',
animation: {
duration: 0
}
});
};
function zoomEndHandler() {
if (rendering) {
return;
}
api.dispatchAction({
type: 'bmapRoam',
animation: {
duration: 0
}
});
}
bmap.removeEventListener('moving', this._oldMoveHandler);
bmap.removeEventListener('moveend', this._oldMoveHandler);
bmap.removeEventListener('zoomend', this._oldZoomEndHandler);
bmap.addEventListener('moving', moveHandler);
bmap.addEventListener('moveend', moveHandler);
bmap.addEventListener('zoomend', zoomEndHandler);
this._oldMoveHandler = moveHandler;
this._oldZoomEndHandler = zoomEndHandler;
var roam = bMapModel.get('roam');
if (roam && roam !== 'scale') {
bmap.enableDragging();
} else {
bmap.disableDragging();
}
if (roam && roam !== 'move') {
bmap.enableScrollWheelZoom();
bmap.enableDoubleClickZoom();
bmap.enablePinchToZoom();
} else {
bmap.disableScrollWheelZoom();
bmap.disableDoubleClickZoom();
bmap.disablePinchToZoom();
}
/* map 2.0 */
var originalStyle = bMapModel.__mapStyle;
var newMapStyle = bMapModel.get('mapStyle') || {}; // FIXME, Not use JSON methods
var mapStyleStr = JSON.stringify(newMapStyle);
if (JSON.stringify(originalStyle) !== mapStyleStr) {
// FIXME May have blank tile when dragging if setMapStyle
if (!isEmptyObject(newMapStyle)) {
bmap.setMapStyle(echarts.util.clone(newMapStyle));
}
bMapModel.__mapStyle = JSON.parse(mapStyleStr);
}
/* map 3.0 */
var originalStyle2 = bMapModel.__mapStyle2;
var newMapStyle2 = bMapModel.get('mapStyleV2') || {}; // FIXME, Not use JSON methods
var mapStyleStr2 = JSON.stringify(newMapStyle2);
if (JSON.stringify(originalStyle2) !== mapStyleStr2) {
// FIXME May have blank tile when dragging if setMapStyle
if (!isEmptyObject(newMapStyle2)) {
bmap.setMapStyleV2(echarts.util.clone(newMapStyle2));
}
bMapModel.__mapStyle2 = JSON.parse(mapStyleStr2);
}
rendering = false;
}
});
echarts.registerCoordinateSystem('bmap', BMapCoordSys); // Action
echarts.registerAction({
type: 'bmapRoam',
event: 'bmapRoam',
update: 'updateLayout'
}, function (payload, ecModel) {
ecModel.eachComponent('bmap', function (bMapModel) {
var bmap = bMapModel.getBMap();
var center = bmap.getCenter();
bMapModel.setCenterAndZoom([center.lng, center.lat], bmap.getZoom());
});
});
var version = '1.0.0';
exports.version = version;
Object.defineProperty(exports, '__esModule', { value: true });
})));
//# sourceMappingURL=bmap.js.map

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
{"type":"FeatureCollection","features":[{"type":"Feature","properties":{"adcode":420102,"name":"江岸区","center":[114.30304,30.594911],"centroid":[114.320896,30.642672],"childrenNum":0,"level":"district","acroutes":[100000,420000,420100],"parent":{"adcode":420100}},"geometry":{"type":"MultiPolygon","coordinates":[[[[114.303674,30.573439],[114.311622,30.584988],[114.316336,30.591747],[114.325174,30.603179],[114.340878,30.623476],[114.343763,30.627291],[114.35144,30.633303],[114.357217,30.637767],[114.360994,30.644544],[114.362754,30.648634],[114.366229,30.65734],[114.368721,30.661137],[114.371349,30.664966],[114.374831,30.666701],[114.383241,30.674228],[114.388454,30.677584],[114.394602,30.680768],[114.402797,30.683256],[114.401677,30.683454],[114.40054,30.684567],[114.39949,30.686177],[114.399143,30.68708],[114.397814,30.689507],[114.396644,30.691368],[114.39482,30.693513],[114.392832,30.694942],[114.392051,30.695544],[114.391183,30.695678],[114.390123,30.695495],[114.388576,30.694988],[114.386668,30.69483],[114.383714,30.695019],[114.3832,30.695178],[114.381611,30.6955],[114.371265,30.698808],[114.370039,30.698695],[114.369161,30.698412],[114.368893,30.69809],[114.365545,30.693395],[114.364902,30.69278],[114.363842,30.692047],[114.362945,30.691833],[114.361824,30.691642],[114.359686,30.691079],[114.357539,30.689709],[114.355557,30.688865],[114.352409,30.688024],[114.347872,30.685439],[114.343958,30.682854],[114.340803,30.680122],[114.339889,30.677777],[114.338619,30.675404],[114.336524,30.674386],[114.333968,30.673618],[114.331221,30.673726],[114.329464,30.67492],[114.327413,30.677618],[114.327239,30.678047],[114.323762,30.68246],[114.321449,30.683524],[114.318868,30.683605],[114.315303,30.682444],[114.311434,30.679434],[114.308739,30.677496],[114.307305,30.676651],[114.304254,30.675145],[114.301073,30.674578],[114.297883,30.674899],[114.296155,30.676495],[114.29346,30.680683],[114.292635,30.681701],[114.289509,30.684167],[114.28936,30.683109],[114.28956,30.681968],[114.292435,30.67555],[114.293113,30.673054],[114.292949,30.670046],[114.292532,30.669284],[114.28843,30.664018],[114.282107,30.659873],[114.279952,30.658302],[114.278788,30.657204],[114.276538,30.655343],[114.273822,30.653295],[114.272616,30.652288],[114.270244,30.64979],[114.268535,30.648278],[114.267675,30.647659],[114.265661,30.64666],[114.264124,30.645835],[114.262658,30.644971],[114.261287,30.644202],[114.256993,30.64163],[114.257731,30.640708],[114.257934,30.640784],[114.258106,30.640187],[114.258301,30.640231],[114.258318,30.639433],[114.258505,30.639235],[114.259129,30.639078],[114.259804,30.638806],[114.26051,30.638823],[114.261003,30.639193],[114.262268,30.637767],[114.263441,30.63855],[114.263722,30.638391],[114.26414,30.637904],[114.264788,30.63694],[114.264251,30.636588],[114.266699,30.633849],[114.264105,30.632288],[114.265731,30.630286],[114.26638,30.629715],[114.266227,30.629611],[114.267164,30.628588],[114.26722,30.628801],[114.267775,30.629161],[114.268013,30.629102],[114.268704,30.628432],[114.269306,30.628817],[114.270065,30.62872],[114.270865,30.626969],[114.270546,30.626785],[114.271151,30.62598],[114.271749,30.626227],[114.272097,30.625525],[114.271518,30.625297],[114.272415,30.623201],[114.273555,30.623451],[114.274978,30.620376],[114.275327,30.619727],[114.276729,30.61667],[114.276977,30.616241],[114.278317,30.614682],[114.279412,30.61327],[114.28036,30.61165],[114.280726,30.611299],[114.283108,30.60923],[114.283648,30.608677],[114.284304,30.607641],[114.285394,30.606225],[114.284654,30.605447],[114.278454,30.599737],[114.271594,30.596885],[114.272914,30.593618],[114.273816,30.591505],[114.280546,30.588565],[114.283152,30.587333],[114.284591,30.586442],[114.284829,30.586175],[114.285093,30.586203],[114.285107,30.585977],[114.285594,30.585738],[114.287851,30.583892],[114.289557,30.582446],[114.290918,30.581204],[114.294465,30.578494],[114.295232,30.578043],[114.295977,30.577318],[114.297385,30.576414],[114.297951,30.57627],[114.298862,30.575911],[114.299087,30.576266],[114.299564,30.576091],[114.299418,30.575864],[114.299656,30.575564],[114.303674,30.573439]]]]}}]}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

676
src/assets/map_style.json Normal file
View File

@ -0,0 +1,676 @@
[
{
"featureType": "land",
"elementType": "geometry",
"stylers": {
"color": "#081734"
}
},
{
"featureType": "building",
"elementType": "geometry",
"stylers": {
"color": "#04406F"
}
},
{
"featureType": "building",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "highway",
"elementType": "geometry",
"stylers": {
"color": "#015B99"
}
},
{
"featureType": "highway",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "arterial",
"elementType": "geometry",
"stylers": {
"color": "#003051"
}
},
{
"featureType": "arterial",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "green",
"elementType": "geometry",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "water",
"elementType": "geometry",
"stylers": {
"color": "#044161"
}
},
{
"featureType": "subway",
"elementType": "geometry.stroke",
"stylers": {
"color": "#003051"
}
},
{
"featureType": "subway",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "railway",
"elementType": "geometry",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "railway",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "all",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#313131"
}
},
{
"featureType": "all",
"elementType": "labels.text.fill",
"stylers": {
"color": "#FFFFFF"
}
},
{
"featureType": "manmade",
"elementType": "geometry",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "manmade",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "local",
"elementType": "geometry",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "local",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "subway",
"elementType": "geometry",
"stylers": {
"lightness": -65
}
},
{
"featureType": "railway",
"elementType": "all",
"stylers": {
"lightness": -40
}
},
{
"featureType": "boundary",
"elementType": "geometry",
"stylers": {
"color": "#8b8787",
"weight": "1",
"lightness": -29
}
},
{
"featureType": "transportationlabel",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "transportationlabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "transportationlabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "transportationlabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "educationlabel",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "educationlabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "educationlabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "educationlabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "transportation",
"elementType": "geometry",
"stylers": {
"color": "#113549ff"
}
},
{
"featureType": "airportlabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "airportlabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "scenicspotslabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "scenicspotslabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "medicallabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "medicallabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "medicallabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "scenicspotslabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "airportlabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "entertainmentlabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "entertainmentlabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "entertainmentlabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "estatelabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "estatelabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "estatelabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "businesstowerlabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "businesstowerlabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "businesstowerlabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "companylabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "companylabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "companylabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "governmentlabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "governmentlabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "governmentlabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "restaurantlabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "restaurantlabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "restaurantlabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "hotellabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "hotellabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "hotellabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "shoppinglabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "shoppinglabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "shoppinglabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "lifeservicelabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "lifeservicelabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "lifeservicelabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "carservicelabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "carservicelabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "carservicelabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "financelabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "financelabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "financelabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "otherlabel",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "otherlabel",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "otherlabel",
"elementType": "labels.icon",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "manmade",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "manmade",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "transportation",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "transportation",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "education",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "education",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "medical",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "medical",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "scenicspots",
"elementType": "labels.text.fill",
"stylers": {
"color": "#2dc4bbff"
}
},
{
"featureType": "scenicspots",
"elementType": "labels.text.stroke",
"stylers": {
"color": "#ffffff00"
}
},
{
"featureType": "hotellabel",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "shoppinglabel",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "restaurantlabel",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "scenicspotslabel",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "financelabel",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "companylabel",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "estatelabel",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "entertainmentlabel",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "village",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
},
{
"featureType": "town",
"elementType": "labels",
"stylers": {
"visibility": "off"
}
}
]

349
src/assets/theme.json Normal file
View File

@ -0,0 +1,349 @@
{
"color": ["#409eff", "#91cc75", "#fac858", "#ee6666", "#73c0de", "#3ba272", "#fc8452", "#9a60b4", "#ea7ccc"],
"backgroundColor": "#00000000",
"title": {
"textStyle": {
"color": "#ffffff",
"fontWeight": "normal"
},
"left": "center",
"subtextStyle": {
"color": "#6E7079"
}
},
"line": {
"itemStyle": {
"borderWidth": 1
},
"lineStyle": {
"width": 2
},
"symbolSize": 4,
"symbol": "emptyCircle",
"smooth": false
},
"radar": {
"itemStyle": {
"borderWidth": 1
},
"lineStyle": {
"width": 2
},
"symbolSize": 4,
"symbol": "emptyCircle",
"smooth": false
},
"bar": {
"itemStyle": {
"barBorderWidth": 0,
"barBorderColor": "#ccc"
}
},
"pie": {
"itemStyle": {
"borderWidth": 0,
"borderColor": "#ccc"
}
},
"scatter": {
"itemStyle": {
"borderWidth": 0,
"borderColor": "#ccc"
}
},
"boxplot": {
"itemStyle": {
"borderWidth": 0,
"borderColor": "#ccc"
}
},
"parallel": {
"itemStyle": {
"borderWidth": 0,
"borderColor": "#ccc"
}
},
"sankey": {
"itemStyle": {
"borderWidth": 0,
"borderColor": "#ccc"
}
},
"funnel": {
"itemStyle": {
"borderWidth": 0,
"borderColor": "#ccc"
}
},
"gauge": {
"itemStyle": {
"borderWidth": 0,
"borderColor": "#ccc"
}
},
"candlestick": {
"itemStyle": {
"color": "#eb5454",
"color0": "#47b262",
"borderColor": "#eb5454",
"borderColor0": "#47b262",
"borderWidth": 1
}
},
"graph": {
"itemStyle": {
"borderWidth": 0,
"borderColor": "#ccc"
},
"lineStyle": {
"width": 1,
"color": "#aaa"
},
"symbolSize": 4,
"symbol": "emptyCircle",
"smooth": false,
"color": ["#5470c6", "#91cc75", "#fac858", "#ee6666", "#73c0de", "#3ba272", "#fc8452", "#9a60b4", "#ea7ccc"],
"label": {
"color": "#eee"
}
},
"map": {
"itemStyle": {
"areaColor": "#eee",
"borderColor": "#444",
"borderWidth": 0.5
},
"label": {
"color": "#000"
},
"emphasis": {
"itemStyle": {
"areaColor": "rgba(255,215,0,0.8)",
"borderColor": "#444",
"borderWidth": 1
},
"label": {
"color": "rgb(100,0,0)"
}
}
},
"geo": {
"itemStyle": {
"areaColor": "#2E72BF",
"borderColor": "#333"
},
"label": {
"color": "#000"
},
"emphasis": {
"itemStyle": {
"areaColor": "#0C4271",
"borderColor": "#444",
"borderWidth": 1
},
"label": {
"color": "white"
},
"focus": "self"
}
},
"categoryAxis": {
"axisLine": {
"show": true,
"lineStyle": {
"color": "#ffffff"
}
},
"axisTick": {
"show": true,
"lineStyle": {
"color": "#ffffff"
}
},
"axisLabel": {
"show": true
},
"splitLine": {
"show": false,
"lineStyle": {
"color": ["#E0E6F1"]
}
},
"splitArea": {
"show": false,
"areaStyle": {
"color": ["rgba(250,250,250,0.2)", "rgba(210,219,238,0.2)"]
}
}
},
"valueAxis": {
"axisLine": {
"show": false,
"lineStyle": {
"color": "#6E7079"
}
},
"axisTick": {
"show": false,
"lineStyle": {
"color": "#6E7079"
}
},
"axisLabel": {
"show": true,
"color": "#ffffff"
},
"splitLine": {
"show": true,
"lineStyle": {
"color": ["#E0E6F1"]
}
},
"splitArea": {
"show": false,
"areaStyle": {
"color": ["rgba(250,250,250,0.2)", "rgba(210,219,238,0.2)"]
}
}
},
"logAxis": {
"axisLine": {
"show": false,
"lineStyle": {
"color": "#6E7079"
}
},
"axisTick": {
"show": false,
"lineStyle": {
"color": "#6E7079"
}
},
"axisLabel": {
"show": true,
"color": "#6E7079"
},
"splitLine": {
"show": true,
"lineStyle": {
"color": ["#E0E6F1"]
}
},
"splitArea": {
"show": false,
"areaStyle": {
"color": ["rgba(250,250,250,0.2)", "rgba(210,219,238,0.2)"]
}
}
},
"timeAxis": {
"axisLine": {
"show": true,
"lineStyle": {
"color": "#6E7079"
}
},
"axisTick": {
"show": true,
"lineStyle": {
"color": "#6E7079"
}
},
"axisLabel": {
"show": true,
"color": "#6E7079"
},
"splitLine": {
"show": false,
"lineStyle": {
"color": ["#E0E6F1"]
}
},
"splitArea": {
"show": false,
"areaStyle": {
"color": ["rgba(250,250,250,0.2)", "rgba(210,219,238,0.2)"]
}
}
},
"toolbox": {
"iconStyle": {
"borderColor": "#999"
},
"emphasis": {
"iconStyle": {
"borderColor": "#666"
}
}
},
"legend": {
"textStyle": {
"color": "#409eff",
"fontSize": 14
}
},
"tooltip": {
"axisPointer": {
"lineStyle": {
"color": "#ccc",
"width": 1
},
"crossStyle": {
"color": "#ccc",
"width": 1
}
}
},
"timeline": {
"lineStyle": {
"color": "#DAE1F5",
"width": 2
},
"itemStyle": {
"color": "#A4B1D7",
"borderWidth": 1
},
"controlStyle": {
"color": "#A4B1D7",
"borderColor": "#A4B1D7",
"borderWidth": 1
},
"checkpointStyle": {
"color": "#316bf3",
"borderColor": "fff"
},
"label": {
"color": "#A4B1D7"
},
"emphasis": {
"itemStyle": {
"color": "#FFF"
},
"controlStyle": {
"color": "#A4B1D7",
"borderColor": "#A4B1D7",
"borderWidth": 1
},
"label": {
"color": "#A4B1D7"
}
}
},
"visualMap": {
"color": ["#bf444c", "#d88273", "#f6efa6"]
},
"dataZoom": {
"handleSize": "undefined%",
"textStyle": {}
},
"markPoint": {
"label": {
"color": "#eee"
},
"emphasis": {
"label": {
"color": "#eee"
}
}
}
}

125
src/components/Dashed.vue Normal file
View File

@ -0,0 +1,125 @@
<template>
<canvas class="dashed"></canvas>
</template>
<script>
export default {
name: "Dashed",
mounted() {
this.dashed();
},
methods: {
dashed() {
var canvas = document.querySelector(".dashed");
var ctx = canvas.getContext("2d");
var w = (canvas.width = document.querySelector(".total").clientWidth);
var h = (canvas.height = (document.querySelector(".total").clientHeight / 3) * 2);
ctx.lineWidth = 3;
ctx.setLineDash([3, 3]);
ctx.fillStyle = "#93f8fb";
ctx.shadowOffsetX = 0;
// y
ctx.shadowOffsetY = 0;
//
ctx.shadowColor = "#93f8fb";
//
ctx.shadowBlur = 15;
ctx.save(); //
// 线
ctx.beginPath();
let grd = ctx.createLinearGradient((w / 11) * 2, h / 3, (w / 5) * 2, h);
grd.addColorStop(0, "#54e2e6");
grd.addColorStop(1, "#065261");
ctx.strokeStyle = grd;
ctx.moveTo((w / 5) * 2, h);
ctx.quadraticCurveTo(w / 5, (h / 6) * 5, (w / 11) * 2, h / 3);
ctx.stroke();
// 线
ctx.beginPath();
ctx.moveTo((w / 11) * 2, h / 3);
ctx.arc((w / 11) * 2, h / 3, 5, 0, Math.PI * 2);
ctx.fill();
ctx.restore();
ctx.save();
// 线
ctx.beginPath();
grd = ctx.createLinearGradient((w / 11) * 3.3, h / 2, (w / 3) * 1.1, (h / 6) * 5);
grd.addColorStop(0, "#e08d03");
grd.addColorStop(1, "#2e6a5c");
ctx.strokeStyle = grd;
ctx.moveTo((w / 3) * 1.1, (h / 6) * 5);
ctx.quadraticCurveTo((w / 5) * 1.5, (h / 6) * 4.2, (w / 11) * 3.3, h / 2);
ctx.stroke();
// 线
ctx.beginPath();
ctx.moveTo((w / 11) * 3.3, h / 2);
ctx.arc((w / 11) * 3.3, h / 2, 5, 0, Math.PI * 2);
ctx.fill();
ctx.restore();
ctx.save();
// 线
ctx.beginPath();
grd = ctx.createLinearGradient((w / 3) * 1.4, h / 5, (w / 5) * 2, h / 2);
grd.addColorStop(0, "#e08d03");
grd.addColorStop(1, "#2e6a5c");
ctx.strokeStyle = grd;
ctx.moveTo((w / 5) * 2, h / 2);
ctx.quadraticCurveTo((w / 3) * 1.2, (h / 4) * 1.4, (w / 3) * 1.4, h / 5);
ctx.stroke();
// 线
ctx.beginPath();
ctx.moveTo((w / 3) * 1.4, h / 5);
ctx.arc((w / 3) * 1.4, h / 5, 5, 0, Math.PI * 2);
ctx.fill();
ctx.restore();
ctx.save();
// 线
ctx.beginPath();
grd = ctx.createLinearGradient((w / 5) * 3.1, (h / 3) * 1.2, (w / 5) * 3.2, (h / 2) * 1.5);
grd.addColorStop(0, "#e08d03");
grd.addColorStop(1, "#2e6a5c");
ctx.strokeStyle = grd;
ctx.moveTo((w / 5) * 3.2, (h / 2) * 1.5);
ctx.quadraticCurveTo((w / 5) * 3.35, (h / 2) * 1.2, (w / 5) * 3.1, (h / 3) * 1.2);
ctx.stroke();
// 线
ctx.beginPath();
ctx.moveTo((w / 5) * 3.1, (h / 3) * 1.2);
ctx.arc((w / 5) * 3.1, (h / 3) * 1.2, 5, 0, Math.PI * 2);
ctx.fill();
ctx.restore();
ctx.save();
// 线
ctx.beginPath();
grd = ctx.createLinearGradient((w / 5) * 3.3, h / 4, (w / 5) * 3.2, (h / 2) * 1.9);
grd.addColorStop(0, "#e08d03");
grd.addColorStop(1, "#2e6a5c");
ctx.strokeStyle = grd;
ctx.moveTo((w / 5) * 3.03, (h / 2) * 1.9);
ctx.quadraticCurveTo((w / 5) * 3.8, (h / 2) * 1.2, (w / 5) * 3.3, h / 4);
ctx.stroke();
// 线
ctx.beginPath();
ctx.moveTo((w / 5) * 3.3, h / 4);
ctx.arc((w / 5) * 3.3, h / 4, 5, 0, Math.PI * 2);
ctx.fill();
ctx.restore();
ctx.save();
// 线
ctx.beginPath();
grd = ctx.createLinearGradient((w / 5) * 3.8, (h / 2) * 1.2, (w / 5) * 2.9, h);
grd.addColorStop(0, "#e08d03");
grd.addColorStop(1, "#2e6a5c");
ctx.strokeStyle = grd;
ctx.moveTo((w / 5) * 2.9, h);
ctx.quadraticCurveTo((w / 5) * 3.7, (h / 2) * 1.6, (w / 5) * 3.8, (h / 2) * 1.2);
ctx.stroke();
// 线
ctx.beginPath();
ctx.moveTo((w / 5) * 3.8, (h / 2) * 1.2);
ctx.arc((w / 5) * 3.8, (h / 2) * 1.2, 5, 0, Math.PI * 2);
ctx.fill();
},
},
};
</script>

View File

@ -0,0 +1,641 @@
<template>
<div class="container">
<div class="left-container">
<div class="main-container">
<dv-border-box-1 class="right-box">
<div class="chart" id="chart-main"></div>
<!-- 主地图 -->
</dv-border-box-1>
<dv-border-box-10 class="left-box">
<div class="chart" id="chart-2"></div>
<!-- 柱状数据图 -->
</dv-border-box-10>
</div>
<div class="bottom-container">
<div class="subtitle">地震应急避难场所有效性分析</div>
<div class="content">
<dv-border-box-12><div class="chart" id="circle-1"></div></dv-border-box-12>
<dv-border-box-12><div class="chart" id="circle-2"></div></dv-border-box-12>
<dv-border-box-12><div class="chart" id="circle-3"></div></dv-border-box-12>
</div>
</div>
</div>
<div class="right-bar">
<div style="width: 100%; height: 100%; display: flex; flex-direction: column">
<div class="subtitle">避难场所原始用途统计</div>
<dv-border-box-10>
<div class="chart" id="chart-1"></div>
</dv-border-box-10>
</div>
<div style="width: 100%; height: 100%; display: flex; flex-direction: column">
<div class="subtitle">应急避难场所适宜性评价对比</div>
<dv-border-box-10>
<div class="chart" id="chart-4"></div>
</dv-border-box-10>
</div>
</div>
</div>
</template>
<style lang="scss" scoped>
div {
box-sizing: border-box;
}
.subtitle {
font-size: 1rem;
color: #fff;
line-height: 2;
position: relative;
padding-left: 0.75rem;
text-align: start;
}
.subtitle:before {
position: absolute;
height: 1rem;
width: 4px;
background: #49bcf7;
border-radius: 2.5px;
content: "";
left: 0;
top: 50%;
margin-top: -0.5rem;
}
.content {
width: 100%;
height: 100%;
display: flex;
justify-content: space-between;
}
.chart {
width: 100%;
height: 100%;
}
.container {
width: 100%;
height: 100%;
display: flex;
flex-wrap: wrap;
overflow: hidden;
@media (max-width: 736px) {
& {
overflow: auto;
}
}
.left-container {
height: 100%;
flex: 7;
min-width: 375px;
display: flex;
flex-direction: column;
overflow: auto;
@media (max-width: 625px) {
& {
height: auto;
}
}
.main-container {
width: 100%;
flex: 7;
display: flex;
flex-wrap: wrap;
flex-direction: row-reverse;
.left-box {
flex: 3;
min-width: 250px;
height: 100%;
@media (max-width: 1168px) {
& {
height: auto;
min-height: 375px;
}
}
#chart-2 {
padding: 16px;
padding-left: 0;
}
}
.right-box {
flex: 7;
min-width: 375px;
height: 100%;
@media (max-width: 1168px) {
& {
height: auto;
min-height: 500px;
}
}
#chart-main {
width: 100%;
height: 100%;
}
}
}
.bottom-container {
width: 100%;
flex: 3;
display: flex;
flex-direction: column;
@media (max-width: 1168px) {
& {
height: auto;
min-height: 200px;
}
}
}
}
.right-bar {
height: 100%;
min-width: 161px;
display: flex;
flex: 3;
flex-direction: column;
@media (max-width: 736px) {
& {
height: auto;
min-height: 600px;
}
}
}
}
</style>
<script>
import * as echarts from "echarts";
import map from "../assets/map/wuhan.json";
import { getRegionDetail } from "../utils/mapUtils";
import { getName } from "../utils/mapUtils";
import { tooltipFormatter } from "../utils/tooltipFormatter";
export default {
name: "EarthquakeAnalysis",
data() {
return {
myChart: null,
mapOption: null,
CircleChartValues: [100, 100, 100],
CircleCharts: [],
Histogram: null,
CircleChartsData: [],
CircleChartsBaseOption: [],
HistogramOption: {},
currentDistrict: null,
useShortTitle: document.body.clientWidth < 1020,
district: [],
};
},
mounted() {
this.$axios.get("/region/").then((res) => {
this.district = res.data;
this.loadData();
});
echarts.registerTheme("customed", require("../assets/theme.json"));
this.myChart = echarts.init(document.querySelector("#chart-main"), "customed");
echarts.registerMap("wuhanMap", map);
window.addEventListener("resize", this.onResize);
},
beforeDestroy() {
this.myChart.dispose();
},
methods: {
onResize() {
this.useShortTitle = document.body.clientWidth < 1024;
this.myChart.resize();
this.Histogram.resize();
this.CircleCharts.forEach((item) => {
item.resize();
});
},
loadCircles() {
//
this.CircleCharts = [
echarts.init(document.querySelector("#circle-1"), "customed"),
echarts.init(document.querySelector("#circle-2"), "customed"),
echarts.init(document.querySelector("#circle-3"), "customed"),
];
this.Histogram = echarts.init(document.querySelector("#chart-4"), "customed");
this.CircleChartsData = [
{
value: this.CircleChartValues[0],
name: "避难场所数",
title: {
offsetCenter: ["0%", "-10%"],
},
detail: {
valueAnimation: true,
offsetCenter: ["0%", "20%"],
},
},
{
value: this.CircleChartValues[1],
name: "可避难面积",
title: {
offsetCenter: ["0%", "-10%"],
},
detail: {
valueAnimation: true,
offsetCenter: ["0%", "20%"],
},
},
{
value: this.CircleChartValues[2],
name: "可容纳人数",
title: {
offsetCenter: ["0%", "-10%"],
},
detail: {
valueAnimation: true,
offsetCenter: ["0%", "20%"],
},
},
];
this.CircleChartsBaseOption = {
series: [
{
type: "gauge",
startAngle: 90,
endAngle: -270,
pointer: {
show: false,
},
progress: {
show: true,
overlap: false,
roundCap: true,
clip: false,
},
axisLine: {
lineStyle: {
width: 15,
},
},
splitLine: {
show: false,
distance: 0,
length: 10,
},
axisTick: {
show: false,
},
axisLabel: {
show: false,
distance: 50,
},
data: this.CircleChartsData,
title: {
fontSize: this.useShortTitle ? 10 : 0.011 * document.body.clientWidth,
color: "#ffffff",
},
detail: {
width: this.useShortTitle ? 20 : 0.03 * document.body.clientWidth,
height: this.useShortTitle ? 5 : 0.008 * document.body.clientWidth,
fontSize: this.useShortTitle ? 10 : 0.01 * document.body.clientWidth,
color: "inherit",
borderColor: "inherit",
borderRadius: 20,
borderWidth: 1,
formatter: "{value}%",
},
},
],
};
this.CircleCharts.forEach((chart, index) => {
chart.setOption(this.CircleChartsBaseOption);
chart.setOption(
{
series: [
{
data: [this.CircleChartsData[index]],
pointer: {
show: false,
},
},
],
},
false
);
});
this.HistogramOption = {
xAxis: {
type: "category",
data: ["武汉市", "武汉市"],
},
yAxis: {
type: "value",
max: 10,
},
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
},
formatter: (item) => {
let scores = getRegionDetail(item[0].name).detail.score;
return `<b>${item[0].name}</b><br/>
有效性 B<sub>1</sub>: ${scores[0]}<br/>
安全性 B<sub>2</sub>: ${scores[1]}<br/>
可达性 B<sub>3</sub>: ${scores[2]}<br/>
保障性 B<sub>4</sub>: ${scores[3]}<br/>
总分: ${scores[4]}<br/>`;
},
},
grid: {
x: 48,
y: 32,
x2: 32,
y2: 32,
},
series: [
{
data: [getRegionDetail("武汉市").detail.score[4], getRegionDetail("武汉市").detail.score[4]],
type: "bar",
showBackground: true,
backgroundStyle: {
color: "rgba(180, 180, 180, 0.2)",
},
},
],
};
this.Histogram.setOption(this.HistogramOption);
},
loadGauge() {
this.loadCircles();
let Chart1 = echarts.init(document.querySelector("#chart-1"), "customed");
let Chart2 = echarts.init(document.querySelector("#chart-2"), "customed");
let Chart1Option = {
tooltip: {
trigger: "item",
},
series: [
{
type: "pie",
radius: ["40%", "70%"],
avoidLabelOverlap: false,
label: {
show: false,
position: "center",
},
emphasis: {
label: {
show: true,
fontSize: "40",
fontWeight: "bold",
},
},
labelLine: {
show: false,
},
legend: {
show: "true",
orient: "vertical",
right: "70%",
y: "center",
},
data: [
{ name: "学校", value: 20 },
{ name: "公园", value: 17 },
{ name: "广场", value: 44 },
{ name: "停车场", value: 48 },
{ name: "体育场", value: 16 },
{ name: "江滩", value: 5 },
{ name: "其他", value: 75 },
],
},
],
};
Chart1.setOption(Chart1Option);
let Chart2Option = {
title: {
text: "人口土地数据",
},
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
},
},
grid: {
top: "20%",
left: "5%",
right: "5%",
bottom: 0,
containLabel: true,
},
xAxis: {
type: "value",
boundaryGap: [0, 0.01],
},
yAxis: {
type: "category",
data: [],
},
dataZoom: {
type: "inside",
orient: "vertical",
},
legend: {
top: "7%",
textStyle: {
color: "#ffffff",
},
padding: 10,
selectedMode: "single",
},
series: [
{
name: "总土地面积",
type: "bar",
data: [],
},
{
name: "人口密度",
type: "bar",
data: [],
},
{
name: "常住人口数",
type: "bar",
data: [],
},
],
};
this.district.forEach((dist) => {
if (dist.name != "武汉市") {
Chart2Option.yAxis.data.push(dist.name);
Chart2Option.series[0].data.push(dist.area);
Chart2Option.series[1].data.push(dist.density);
Chart2Option.series[2].data.push(dist.population);
}
});
Chart2.setOption(Chart2Option);
},
loadData: async function () {
this.loadGauge();
this.mapOption = {
geo: {
type: "map",
map: "wuhanMap",
roam: true,
itemStyle: {
areaColor: "#2E72BF",
borderColor: "#333",
},
emphasis: {
label: {
color: "white",
},
focus: "self",
itemStyle: {
areaColor: "#0C4271",
},
},
},
tooltip: {
trigger: "item",
formatter: (params) => tooltipFormatter(params.data, "earthquake"),
backgroundColor: "#19324bd9",
borderWidth: 0,
confine: true, // tooltip
textStyle: {
color: "#ccc",
fontSize: 14,
},
},
legend: {
data: null,
top: "32px",
textStyle: {
color: "#409eff",
fontSize: 14,
},
},
series: [
{
data: null,
type: "scatter",
coordinateSystem: "geo",
itemStyle: {
normal: {
color: "#A2DBFA",
},
},
},
],
};
this.mapOption.series[0].data = (await this.$axios.get("/earthquake_shelter/?useRegionName=true")).data;
this.myChart.setOption(this.mapOption);
this.myChart.on("click", (res) => {
if (res.componentType == "geo") {
const regionInfo = getRegionDetail(res.name);
this.currentDistrict = res.name;
echarts.registerMap(regionInfo.key, regionInfo.data);
this.mapOption.geo = {
map: regionInfo.key,
};
this.mapOption.series[0].data = this.mapOption.series[0].data.filter(
(item) => getName(item.region) === regionInfo.key
);
this.myChart.setOption(this.mapOption);
this.CircleChartValues = [
this.mapOption.series[0].data.filter((item) => getName(item.region) === regionInfo.key).length,
this.mapOption.series[0].data
.filter((item) => getName(item.region) === regionInfo.key)
.reduce((sum, cur) => sum + cur.built_area, 0) / 40000,
this.mapOption.series[0].data
.filter((item) => getName(item.region) === regionInfo.key)
.reduce((sum, cur) => sum + cur.capacity, 0) / 20000,
].map((item) => (item > 100 ? 100 : Number(item.toFixed(1))));
this.setCharts();
}
});
this.myChart.on("dblclick", (res) => {
console.log(res);
this.myChart.dispose();
this.myChart = echarts.init(document.querySelector("#chart-main"), "customed");
echarts.registerMap("wuhanMap", map);
this.currentDistrict = "武汉市";
this.loadData();
this.CircleChartValues = [100, 100, 100];
this.setCharts();
});
},
setCharts() {
let regionDetail = getRegionDetail(this.currentDistrict);
this.CircleChartsData = [
{
value: this.CircleChartValues[0],
name: "避难场所数",
title: {
offsetCenter: ["0%", "-10%"],
},
detail: {
valueAnimation: true,
offsetCenter: ["0%", "20%"],
},
},
{
value: this.CircleChartValues[1],
name: "可避难面积",
title: {
offsetCenter: ["0%", "-10%"],
},
detail: {
valueAnimation: true,
offsetCenter: ["0%", "20%"],
},
},
{
value: this.CircleChartValues[2],
name: "可容纳人数",
title: {
offsetCenter: ["0%", "-10%"],
},
detail: {
valueAnimation: true,
offsetCenter: ["0%", "20%"],
},
},
];
this.CircleCharts.forEach((chart, index) => {
chart.setOption(this.CircleChartsBaseOption);
chart.setOption(
{
series: [
{
data: [this.CircleChartsData[index]],
pointer: {
show: false,
},
},
],
},
false
);
});
this.HistogramOption = {
xAxis: {
type: "category",
data: ["武汉市", this.currentDistrict],
},
series: [
{
data: [getRegionDetail("武汉市").detail.score[4], regionDetail.detail.score[4]],
type: "bar",
showBackground: true,
backgroundStyle: {
color: "rgba(180, 180, 180, 0.2)",
},
},
],
};
this.Histogram.setOption(this.HistogramOption);
},
},
};
</script>

View File

@ -0,0 +1,677 @@
<template>
<div class="container">
<div class="left">
<dv-border-box-1 style="height: 75%">
<!-- 地图 -->
<div class="chart" id="map"></div>
<!-- 重置缩放按钮 -->
<el-button id="reset" v-if="zoomed" type="primary" @click="resetGraph">查看所有危险源</el-button>
</dv-border-box-1>
<dv-border-box-10 style="height: 25%">
<h3>重大危险源态势感知</h3>
<div class="split-container">
<div class="warn-item-container">
<div
class="warn-item"
:class="{ active: currentIndex == index }"
v-for="(item, index) in warnList"
:key="item.id"
@click="handleSelect(item, index)"
>
<img src="../assets/img/warn.svg" alt="" />
<p>{{ item.name }}</p>
</div>
</div>
<div class="warn-detail" :style="{ 'text-align': currentWarnInfo ? 'left' : 'center' }">
<template v-if="currentWarnInfo">
<b>目标危险源附近可调度的应急资源不足</b><br />
主要问题表现在<br />
{{ currentWarnInfo }}<br />
建议的解决方案<br />
部署{{ currentSolution }}
</template>
<template v-else>从左侧选择一个危险源来查看建议</template>
</div>
</div>
</dv-border-box-10>
</div>
<div class="right">
<div class="subtitle">危险源详细信息</div>
<dv-border-box-10>
<!-- 详细信息 -->
<div class="info" v-if="currentInfo.name != ''">
<span>{{ currentInfo.name }}</span>
<span><strong>危险品名称</strong>{{ currentInfo.danger_chemical }}</span>
<span><strong>危险源类型</strong>{{ ["", "储存", "使用", "生产", "其他"][currentInfo.company_type] }}</span>
<span><strong>危害等级</strong>{{ currentInfo.danger_rank }}</span>
<span><strong>危险品区域</strong>{{ currentInfo.danger_unit }}</span>
<span><strong>数据更新时间</strong>{{ currentInfo.update_time }}</span>
</div>
<!-- 详细信息占位符 -->
<div class="info placeholder" v-else>选择一个危险源来查看详细信息</div>
</dv-border-box-10>
<div class="subtitle">危险源周围的应急设施</div>
<dv-border-box-10>
<div class="info column-list" v-if="currentInfo.name != ''">
<div class="column">
<div class="column-title">医院</div>
<div class="column-content">
<div v-for="(item, index) in filteredInfo.hospitals" :key="index">
{{ item.name }}
</div>
<span class="empty-prompt" v-if="filteredInfo.hospitals.length == 0"></span>
</div>
</div>
<div class="column">
<div class="column-title">派出所</div>
<div class="column-content">
<div v-for="(item, index) in filteredInfo.police" :key="index">
{{ item.name }}
</div>
<span class="empty-prompt" v-if="filteredInfo.police.length == 0"></span>
</div>
</div>
<div class="column">
<div class="column-title">消防局</div>
<div class="column-content">
<div v-for="(item, index) in filteredInfo.fire" :key="index">
{{ item.name }}
</div>
<span class="empty-prompt" v-if="filteredInfo.fire.length == 0"></span>
</div>
</div>
</div>
<div class="info placeholder" v-else>选择一个危险源来查看周围的应急设施</div>
</dv-border-box-10>
<div class="subtitle">应急设施数量占比</div>
<dv-border-box-10>
<div class="chart" id="bar"></div>
</dv-border-box-10>
</div>
</div>
</template>
<style lang="scss" scoped>
div {
box-sizing: border-box;
}
.container {
width: 100%;
height: 100%;
display: flex;
flex-wrap: wrap;
overflow-y: hidden;
@media (max-width: 900px) {
& {
overflow-y: scroll;
}
}
.left {
position: relative;
flex: 3;
min-width: 375px;
height: 100%;
display: flex;
flex-direction: column;
#reset {
position: absolute;
right: 20px;
bottom: 20px;
z-index: 100;
}
h3 {
margin: 12px;
font-weight: 400;
color: #fff;
font-size: 18px;
}
.split-container {
display: flex;
height: calc(100% - 50px);
}
.warn-item-container {
flex: 1;
overflow: auto;
height: 100%;
padding: 0 12px;
.warn-item {
display: flex;
align-items: center;
padding: 6px;
border-radius: 5px;
img {
width: 24px;
height: 24px;
margin-right: 12px;
}
p {
text-align: left;
}
&:hover {
cursor: pointer;
background-color: rgba(255, 255, 255, 0.1);
}
&.active {
background-color: rgba(64, 158, 255, 0.25);
}
}
}
.warn-detail {
flex: 1;
padding: 8px;
font-size: 1rem;
overflow: auto;
}
}
.right {
flex: 2;
min-width: 250px;
height: 100%;
display: flex;
flex-direction: column;
align-items: stretch;
.dv-border-box-10 {
flex: 1;
overflow: hidden;
}
}
.chart,
.info {
width: 100%;
height: 100%;
}
.info {
padding: 20px;
&.placeholder {
display: flex;
align-items: center;
justify-content: center;
font-size: 22px;
}
span {
display: block;
text-align: left;
&:first-child {
text-align: center;
font-size: larger;
font-weight: 500;
}
}
}
.info.column-list {
display: flex;
gap: 12px;
.column {
flex: 1;
display: flex;
flex-direction: column;
.column-title {
color: #fff;
font-weight: 500;
margin-top: -6px;
margin-bottom: 6px;
font-size: 1rem;
}
.column-content {
font-size: 14px;
overflow-y: auto;
padding-bottom: 32px;
mask: linear-gradient(180deg, #000 75%, transparent);
-webkit-mask: linear-gradient(180deg, #000 75%, transparent);
div {
margin-bottom: 4px;
}
span.empty-prompt {
color: rgb(255, 217, 0);
}
}
}
}
.subtitle {
font-size: 1rem;
color: #fff;
line-height: 2;
position: relative;
padding-left: 0.75rem;
text-align: start;
}
.subtitle:before {
position: absolute;
height: 1rem;
width: 4px;
background: #49bcf7;
border-radius: 2.5px;
content: "";
left: 0;
top: 50%;
margin-top: -0.5rem;
}
}
</style>
<script>
import * as echarts from "echarts";
import map from "../assets/map/wuhan.json";
import { getDistance } from "../utils/getDistance";
import { tooltipFormatter, dateFormat } from "../utils/tooltipFormatter";
export default {
name: "HazardAnalysis",
data() {
return {
/** echarts实例 */
charts: [null, null],
/** 地图的option */
mapOption: null,
/** 柱状图的option */
barOption: null,
/** 危险源列表 */
hazardList: [],
/** 警告列表 */
warnList: [],
/** 医院列表 */
hospitalList: [],
/** 警察局列表 */
policeStationList: [],
/** 消防局列表 */
fireStationList: [],
/** 选中的危险源的序号 */
currentIndex: -1,
/** 选中的危险源的信息 */
currentInfo: {
name: "",
company_type: "",
danger_chemical: "",
danger_rank: "",
danger_unit: "",
update_time: "",
},
currentWarnInfo: "",
currentSolution: "",
/** 筛选后的应急设施 */
filteredInfo: {
hospitals: [],
police: [],
fire: [],
},
/** 是否已聚焦某个危险源 */
zoomed: false,
};
},
mounted() {
//
Promise.all([
this.$axios.get("/hospital/"),
this.$axios.get("/police_station/"),
this.$axios.get("/fire_station/"),
this.$axios.get("/hazard/analysis"),
]).then((values) => {
this.hospitalList = values[0].data;
this.policeStationList = values[1].data;
this.fireStationList = values[2].data;
this.hazardList = values[3].data;
//
this.loadData();
this.warnList = this.hazardList.filter(
(item) =>
item.hospital_count < 5 - item.danger_rank ||
item.police_station_count < 5 - item.danger_rank ||
item.fire_station_count < 5 - item.danger_rank
);
});
//
echarts.registerTheme("customed", require("../assets/theme.json"));
//
this.charts[0] = echarts.init(document.querySelector("#map"), "customed");
this.charts[1] = echarts.init(document.querySelector("#bar"), "customed");
//
echarts.registerMap("wuhanMap", map);
//
this.loadMap();
window.addEventListener("resize", this.onResize);
},
beforeDestroy() {
// echarts
this.charts.forEach((ele) => ele.dispose());
},
methods: {
onResize() {
this.charts.forEach((ele) => ele.resize());
},
loadMap() {
this.mapOption = {
color: ["#ee6666", "#fc8452", "#fac858", "#3ba272"],
geo: {
type: "map",
map: "wuhanMap",
roam: true,
emphasis: {
focus: "none",
},
label: {
show: true,
color: "white",
},
},
tooltip: {
trigger: "item",
formatter: (params) => {
return tooltipFormatter(params.data, this.seriesIndexToLayerName(params.seriesIndex));
},
backgroundColor: "#19324bd9",
borderWidth: 0,
confine: true, // tooltip
textStyle: {
color: "#ccc",
fontSize: 14,
},
},
};
this.charts[0].setOption(this.mapOption);
},
loadData() {
//
let categories = [];
//
let legends = ["一级", "二级", "三级", "四级"];
legends.forEach((element) => {
categories.push({
name: element,
type: "effectScatter",
coordinateSystem: "geo",
data: [],
});
});
//
this.hazardList.forEach((item) => {
categories[item.danger_rank - 1].data.push(item);
});
//
this.charts[0].setOption({
legend: {
data: ["一级", "二级", "三级", "四级"],
top: "32px",
},
series: categories,
});
this.mapOption.legend = {
data: ["一级", "二级", "三级", "四级"],
top: "32px",
};
this.mapOption.series = categories;
//
this.barOption = {
xAxis: {
max: "dataMax",
},
yAxis: {
type: "category",
data: ["医院", "派出所", "消防局"],
},
grid: {
top: "24px",
bottom: "32px",
},
series: [
{
name: "总数",
type: "bar",
data: [this.hospitalList.length, this.policeStationList.length, this.fireStationList.length],
label: {
show: true,
},
},
],
tooltip: {
show: true,
},
};
this.charts[1].setOption(this.barOption, true);
//
this.charts[0].on("click", "series", (res) => this.handleSelect(res.data));
//
this.charts[0].on("legendselectchanged", (e) => {
if (!this.zoomed) {
return;
}
const map = {
医院: 2,
派出所: 4,
消防局: 6,
};
// /线
for (const key in e.selected) {
const enabled = e.selected[key];
if (key in map) {
this.mapOption.series[map[key]].lineStyle.width = enabled ? 2 : 0;
this.mapOption.series[map[key]].effect.show = enabled;
}
}
this.charts[0].setOption(this.mapOption);
});
//
this.charts[0].on("dblclick", this.resetGraph);
},
/** 添加应急设施到危险源的连线 */
addLine(newSeries, list, hazardLng, hazardLat) {
list.forEach((item) => {
newSeries.push({
name: item.name,
type: "scatter",
coordinateSystem: "geo",
itemStyle: {
color: item.color,
},
data: item.data,
});
this.mapOption.legend.data.push(item.name);
let linedata = [];
item.data.forEach((ele) => {
linedata.push({
coords: [
[ele.value[0], ele.value[1]],
[hazardLng, hazardLat],
], //
name: ele.name,
});
});
newSeries.push({
type: "lines", //线
coordinateSystem: "geo",
zlevel: 2,
effect: {
show: true,
constantSpeed: 15,
symbol: "pin",
symbolSize: 9,
trailLength: 0.1,
}, //
lineStyle: {
//线
color: item.color, //
width: 2,
opacity: 0.1,
curveness: 0.1,
},
tooltip: {
show: true,
formatter: (item) => item.data.name,
},
data: linedata, //
});
});
return newSeries;
},
/** 重置缩放 */
resetGraph() {
this.zoomed = false;
this.charts[0].dispose();
this.charts[0] = echarts.init(document.querySelector("#map"), "customed");
this.loadMap();
this.currentInfo.name = "";
this.currentIndex = -1;
this.currentWarnInfo = "";
this.loadData();
},
/** 将数据集的序号转成图层名 */
seriesIndexToLayerName(index) {
if (this.zoomed) {
return ["hazard", "hospital", "", "police", "", "fire", ""][index];
} else {
return "hazard";
}
},
handleSelect(item, index = -2) {
if (index == this.currentIndex || (index == -2 && this.zoomed)) {
return;
}
if (index >= 0) {
this.currentIndex = index;
}
this.currentInfo = JSON.parse(JSON.stringify(item));
this.currentInfo.update_time = dateFormat("YYYY-mm-dd HH:MM:SS", item.update_time);
const hazardLng = item.value[0];
const hazardLat = item.value[1];
let radius = 20;
switch (item.danger_rank) {
case 2:
radius = 10;
this.mapOption.geo.center = [hazardLng, hazardLat];
this.mapOption.geo.zoom = 5;
break;
case 3:
radius = 5;
this.mapOption.geo.center = [hazardLng, hazardLat];
this.mapOption.geo.zoom = 7;
break;
case 4:
radius = 3;
this.mapOption.geo.center = [hazardLng, hazardLat];
this.mapOption.geo.zoom = 10;
break;
default:
radius = 15;
this.mapOption.geo.center = [hazardLng, hazardLat];
this.mapOption.geo.zoom = 3;
break;
}
//
this.filteredInfo.hospitals = this.hospitalList.filter(
(item) => getDistance(hazardLat, hazardLng, item.value[1], item.value[0]) <= radius
);
this.filteredInfo.police = this.policeStationList.filter(
(item) => getDistance(hazardLat, hazardLng, item.value[1], item.value[0]) <= radius
);
this.filteredInfo.fire = this.fireStationList.filter(
(item) => getDistance(hazardLat, hazardLng, item.value[1], item.value[0]) <= radius
);
const list = [
{
name: "医院",
data: this.filteredInfo.hospitals,
color: "#fc8452",
},
{
name: "派出所",
data: this.filteredInfo.police,
color: "#91cc75",
},
{
name: "消防局",
data: this.filteredInfo.fire,
color: "#fac858",
},
];
let newSeries = [
{
name: "危险源",
type: "effectScatter",
coordinateSystem: "geo",
itemStyle: {
color: "#ee6666",
},
data: [item],
},
];
this.mapOption.legend.data = ["危险源"];
// 线
this.mapOption.series = this.addLine(newSeries, list, hazardLng, hazardLat);
this.charts[0].setOption(this.mapOption, true);
if (this.barOption.series.length == 1) {
this.barOption.series.push({
name: "已调用数量",
type: "bar",
data: [this.filteredInfo.hospitals.length, this.filteredInfo.police.length, this.filteredInfo.fire.length],
label: {
show: true,
},
});
} else {
this.barOption.series[1].data = [
this.filteredInfo.hospitals.length,
this.filteredInfo.police.length,
this.filteredInfo.fire.length,
];
}
this.charts[1].setOption(this.barOption);
this.zoomed = true;
this.analyzeHazard(item);
},
analyzeHazard(item) {
let warnInfo = "";
let shortage = 0;
let solution = "";
if (item.hospital_count < 5 - item.danger_rank) {
shortage |= 1;
}
if (item.police_station_count < 5 - item.danger_rank) {
shortage |= 2;
}
if (item.fire_station_count < 5 - item.danger_rank) {
shortage |= 4;
}
if (shortage > 0) {
warnInfo =
(shortage & 1 ? "医院" : "") +
(shortage == 3 || shortage == 5 || shortage == 7 ? "、" : "") +
(shortage & 2 ? "派出所" : "") +
(shortage == 6 || shortage == 7 ? "、" : "") +
(shortage & 4 ? "消防局" : "") +
"数量不足。";
solution =
(shortage & 1 ? `${5 - item.danger_rank - item.hospital_count}家医院` : "") +
(shortage == 3 || shortage == 5 || shortage == 7 ? "、" : "") +
(shortage & 2 ? `${5 - item.danger_rank - item.police_station_count}间派出所` : "") +
(shortage == 6 || shortage == 7 ? "、" : "") +
(shortage & 4 ? `${5 - item.danger_rank - item.fire_station_count}所消防局` : "");
}
this.currentWarnInfo = warnInfo;
this.currentSolution = solution;
},
},
};
</script>

54
src/components/Login.vue Normal file
View File

@ -0,0 +1,54 @@
<template>
<div class="login">
<div class="login_1"><img src="../assets/img/dy-img/001.png" /></div>
<div class="fl login_t">
<div><img src="../assets/img/dy-img/002.png" /></div>
<h3>AntiE<br />应急管理系统</h3>
</div>
<div class="fr login_rt">
<h4>登录<span>/Sign in</span></h4>
<form>
<div class="form_1">
<img src="../assets/img/dy-img/004.png" /><input name="" type="text" placeholder="输入账号" />
</div>
<div class="form_1">
<img src="../assets/img/dy-img/005.png" /><input name="" type="text" placeholder="输入密码" />
</div>
<div>
<div class="fl form_2">
<label>
<input class="form_mima_1" type="checkbox" name="demo-radio" />
<span class="form_mima_2"></span>记住密码
</label>
</div>
<div class="fr form_3"><a href="#">忘记密码</a></div>
<div class="clear"></div>
</div>
<div class="form_4">
<input name="" type="button" value="立即登录" @click="submit" />
</div>
</form>
<div class="login_2">没有账号<a @click="showReg">立即注册</a></div>
</div>
<div class="clear"></div>
</div>
</template>
<style scoped>
@import "../assets/css/dy-css/public.css";
@import "../assets/css/dy-css/style.css";
</style>
<script>
export default {
name: "Login",
methods: {
submit() {
this.$emit("loginSucceeded");
},
showReg() {
this.$emit("showReg");
},
},
};
</script>

80
src/components/Rain.vue Normal file
View File

@ -0,0 +1,80 @@
<template>
<canvas class="rain"></canvas>
</template>
<script>
export default {
name: "Rain",
mounted() {
this.rainBg();
},
methods: {
rainBg() {
var c = document.querySelector(".rain");
var ctx = c.getContext("2d"); //canvas
var w = (c.width = document.querySelector(".total").clientWidth);
var h = (c.height = document.querySelector(".total").clientHeight);
//canvas
function random(min, max) {
return Math.random() * (max - min) + min;
}
function RainDrop() {}
//
RainDrop.prototype = {
init: function () {
this.x = random(0, w); //x
this.y = h; //y
this.color = "hsl(180, 100%, 50%)"; //
this.vy = random(4, 5); //
this.hit = 0; //
this.size = 2; //
},
draw: function () {
if (this.y > this.hit) {
var linearGradient = ctx.createLinearGradient(this.x, this.y, this.x, this.y + this.size * 30);
//
linearGradient.addColorStop(0, "#14789c");
//
linearGradient.addColorStop(1, "#090723");
//
ctx.fillStyle = linearGradient;
ctx.fillRect(this.x, this.y, this.size, this.size * 50); //
}
this.update(); //
},
update: function () {
if (this.y > this.hit) {
this.y -= this.vy; //y
} else {
this.init();
}
},
};
//
var rs = [];
for (var i = 0; i < 10; i++) {
setTimeout(function () {
var r = new RainDrop();
r.init();
rs.push(r);
}, i * 300);
}
function anim() {
ctx.clearRect(0, 0, w, h); //clearRect
for (var i = 0; i < rs.length; i++) {
rs[i].draw(); //
}
requestAnimationFrame(anim); //
}
//
anim();
},
},
};
</script>

View File

@ -0,0 +1,59 @@
<template>
<div class="container">
<div class="login" v-if="!succeeded">
<div class="login_1"><img src="../assets/img/dy-img/001.png" /></div>
<div class="fl login_t">
<div><img src="../assets/img/dy-img/002.png" /></div>
<h3>AntiE<br />应急管理系统</h3>
</div>
<div class="fr login_rt">
<h4>注册<span>/register</span></h4>
<form>
<div class="form_1">
<img src="../assets/img/dy-img/004.png" /><input name="" type="text" placeholder="输入账号" />
</div>
<div class="form_1">
<img src="../assets/img/dy-img/005.png" /><input name="" type="text" placeholder="输入密码" />
</div>
<div class="form_1">
<img src="../assets/img/dy-img/005.png" /><input name="" type="text" placeholder="再次输入密码" />
</div>
<div class="form_4">
<input name="" type="button" value="立即注册" @click="submit" />
</div>
</form>
<div class="login_2">已经有账户了<a @click="login">立即登录</a></div>
</div>
<div class="clear"></div>
</div>
<div class="register" v-if="succeeded">
<div class="register_1"><img src="../assets/img/dy-img/002.png" /></div>
<h3>注册成功</h3>
<div class="register_2"><a @click="login">点击此登录</a></div>
</div>
</div>
</template>
<style scoped>
@import "../assets/css/dy-css/public.css";
@import "../assets/css/dy-css/style.css";
</style>
<script>
export default {
name: "Register",
data() {
return {
succeeded: false,
};
},
methods: {
login() {
this.$emit("showLogin");
},
submit() {
this.succeeded = true;
},
},
};
</script>

View File

@ -0,0 +1,365 @@
<template>
<div class="container">
<div class="left">
<dv-border-box-1 style="height: 75%">
<div class="chart" id="map"></div>
</dv-border-box-1>
<dv-border-box-10 style="height: 25%">
<h3>人防工程缓冲区态势感知</h3>
<div class="split-container">
<div class="warn-item-container">
<div
class="warn-item"
:class="{ active: currentIndex == index }"
v-for="(item, index) in warnList"
:key="item.id"
@click="handleSelect(item, index)"
>
<img src="../assets/img/warn.svg" alt="" />
<p>{{ item.name }}</p>
</div>
</div>
<div class="warn-detail" :style="{ 'text-align': currentWarnInfo ? 'left' : 'center' }">
<template v-if="currentWarnInfo">
<b>目标人防工程缓冲带的适应度过低</b><br />
主要问题表现在<br />
能容纳的人数过少<br />
建议的解决方案<br />
{{ currentWarnInfo }}附近建设人防工程
</template>
<template v-else>从左侧选择一个人防工程来查看建议</template>
</div>
</div>
</dv-border-box-10>
</div>
<div class="right">
<div class="subtitle">各区人防工程数量</div>
<dv-border-box-10>
<div class="chart" id="bar"></div>
</dv-border-box-10>
<div class="subtitle">各区人防工程可容纳人数</div>
<dv-border-box-10>
<div class="chart" id="pie"></div>
</dv-border-box-10>
</div>
</div>
</template>
<style lang="scss" scoped>
div {
box-sizing: border-box;
}
.container {
width: 100%;
height: 100%;
display: flex;
flex-wrap: wrap;
overflow-y: hidden;
@media (max-width: 900px) {
& {
overflow-y: scroll;
}
}
.left {
position: relative;
flex: 3;
min-width: 375px;
height: 100%;
display: flex;
flex-direction: column;
#reset {
position: absolute;
right: 20px;
bottom: 20px;
}
h3 {
margin: 12px;
font-weight: 400;
color: #fff;
font-size: 18px;
}
.split-container {
display: flex;
height: calc(100% - 50px);
}
.warn-item-container {
flex: 1;
overflow: auto;
height: 100%;
padding: 0 12px;
.warn-item {
display: flex;
align-items: center;
padding: 6px;
border-radius: 5px;
img {
width: 24px;
height: 24px;
margin-right: 12px;
}
p {
text-align: left;
}
&:hover {
cursor: pointer;
background-color: rgba(255, 255, 255, 0.1);
}
&.active {
background-color: rgba(64, 158, 255, 0.25);
}
}
}
.warn-detail {
flex: 1;
padding: 8px;
font-size: 1rem;
overflow: auto;
}
}
.right {
flex: 2;
min-width: 250px;
height: 100%;
display: flex;
flex-direction: column;
align-items: stretch;
}
.chart,
.info {
flex: 1;
width: 100%;
height: 100%;
}
.info {
padding: 20px;
&.placeholder {
display: flex;
align-items: center;
justify-content: center;
font-size: x-large;
}
span {
display: block;
text-align: left;
&:first-child {
text-align: center;
font-size: larger;
font-weight: 500;
}
}
}
.subtitle {
font-size: 1rem;
color: #fff;
line-height: 2;
position: relative;
padding-left: 0.75rem;
text-align: start;
}
.subtitle:before {
position: absolute;
height: 1rem;
width: 4px;
background: #49bcf7;
border-radius: 2.5px;
content: "";
left: 0;
top: 50%;
margin-top: -0.5rem;
}
}
</style>
<script>
import * as echarts from "echarts";
import map from "../assets/map/wuhan.json";
export default {
name: "ShelterAnalysis",
data() {
return {
charts: [null, null, null],
pieOption: null,
barOption: null,
district: [],
zoomed: false,
/** 警告列表 */
warnList: [],
currentIndex: -1,
currentWarnInfo: "",
currentSolution: "",
};
},
mounted() {
this.$axios.get("/region/").then((res) => {
this.district = res.data.filter((item) => item.name != "武汉市");
this.loadData();
});
echarts.registerTheme("customed", require("../assets/theme.json"));
this.charts[0] = echarts.init(document.querySelector("#map"), "customed");
this.charts[1] = echarts.init(document.querySelector("#pie"), "customed");
this.charts[2] = echarts.init(document.querySelector("#bar"), "customed");
echarts.registerMap("wuhanMap", map);
this.loadMap();
window.addEventListener("resize", this.onResize);
},
beforeDestroy() {
this.charts.forEach((ele) => ele.dispose());
},
methods: {
onResize() {
this.charts.forEach((ele) => ele.resize());
},
loadMap() {
let mapOption = {
title: {
text: "人防工程缓冲带图",
padding: 16,
},
geo: {
type: "map",
map: "wuhanMap",
roam: true,
emphasis: {
focus: "none",
},
label: {
show: true,
color: "white",
},
},
legend: {
selectedMode: false,
},
};
this.charts[0].setOption(mapOption);
},
loadData: async function () {
const list = (await this.$axios.get("/air_shelter/?fitness=1")).data;
let valueMin = Number.MAX_VALUE;
let valueMax = Number.MIN_VALUE;
let warnList = [];
list.forEach((ele) => {
if (ele.value[2] > valueMax) {
valueMax = ele.value[2];
}
if (ele.value[2] < valueMin) {
valueMin = ele.value[2];
}
let district = this.district.find((item) => item.id == ele.region);
if (Object.prototype.hasOwnProperty.call(district, "shelterInfo")) {
district.shelterInfo.count += 1;
district.shelterInfo.capacity += ele.capacity;
} else {
district.shelterInfo = {
count: 1,
capacity: ele.capacity,
};
}
if (ele.value[2] < 1) {
warnList.push(ele);
}
});
this.warnList = warnList;
this.charts[0].setOption({
visualMap: {
type: "continuous",
min: valueMin,
max: valueMax,
calculable: true,
realtime: false,
inRange: {
color: ["#005a88", "#04a4f6", "#00943e", "#fdf40f", "#cf2d14"],
},
right: "5%",
bottom: "5%",
orient: "vertical",
textStyle: {
color: "#fff",
},
formatter: (value) => {
if (value == valueMin) {
return "适应度低";
} else if (value == valueMax) {
return "适应度高";
} else {
return value.toFixed(2);
}
},
selectedMode: false,
},
series: [
{
type: "heatmap",
data: list.map((ele) => ele.value),
coordinateSystem: "geo",
progressive: 1000,
animation: false,
},
],
});
this.pieOption = {
tooltip: {
trigger: "item",
},
series: [
{
type: "pie",
radius: ["40%", "70%"],
avoidLabelOverlap: false,
label: {
show: true,
position: "outside",
color: "#fff",
},
data: this.district.map((ele) => {
return { name: ele.name, value: ele.shelterInfo.capacity };
}),
},
],
};
this.charts[1].setOption(this.pieOption, true);
this.barOption = {
xAxis: {
max: "dataMax",
},
yAxis: {
type: "category",
data: this.district.map((ele) => ele.name),
},
series: [
{
type: "bar",
data: this.district.map((ele) => ele.shelterInfo.count),
label: {
show: true,
},
},
],
grid: {
x: 64,
y: 16,
x2: 16,
y2: 32,
},
tooltip: {
show: "true",
},
};
this.charts[2].setOption(this.barOption, true);
},
handleSelect(item, index) {
this.currentIndex = index;
this.currentWarnInfo = item.address;
},
},
};
</script>

27
src/main.js Normal file
View File

@ -0,0 +1,27 @@
import Vue from "vue";
import { Menu, MenuItem, MenuItemGroup, Submenu, Button, Loading, Table, TableColumn } from "element-ui";
import { borderBox1, borderBox10, borderBox12 } from "@jiaminghi/data-view";
import App from "./App.vue";
import router from "./router";
import { instance } from "./api/index";
Vue.prototype.$axios = instance;
Vue.use(Menu);
Vue.use(MenuItem);
Vue.use(MenuItemGroup);
Vue.use(Submenu);
Vue.use(Button);
Vue.use(Loading);
Vue.use(Table);
Vue.use(TableColumn);
Vue.use(borderBox1);
Vue.use(borderBox10);
Vue.use(borderBox12);
Vue.config.productionTip = false;
new Vue({
router,
render: (h) => h(App),
}).$mount("#app");

45
src/router/index.js Normal file
View File

@ -0,0 +1,45 @@
import Vue from "vue";
import VueRouter from "vue-router";
import Home from "../views/Home.vue";
import Map from "../views/Map.vue";
import Analysis from "../views/Analysis.vue";
import Management from "../views/Management.vue";
import UAV from "../views/UAV.vue";
Vue.use(VueRouter);
const routes = [
{
path: "/",
name: "Home",
component: Home,
},
{
path: "/map/:layer",
name: "Map",
component: Map,
},
{
path: "/analysis/:layer",
name: "Analysis",
component: Analysis,
},
{
path: "/uav/:demo",
name: "UAV",
component: UAV,
},
{
path: "/management",
name: "Management",
component: Management,
},
];
const router = new VueRouter({
mode: "hash",
base: process.env.BASE_URL,
routes,
});
export default router;

32
src/utils/getDistance.js Normal file
View File

@ -0,0 +1,32 @@
/**
* @function 通过传入两个经纬度计算出实际距离单位km
* @param {number} lat1 纬度1
* @param {number} lng1 经度1
* @param {number} lat2 纬度2
* @param {number} lng2 经度2
* @return {number}
*/
export function getDistance(lat1, lng1, lat2, lng2) {
// 地球平均半径
const EARTH_RADIUS = 6378137;
// 把经纬度转为度(°)
// 纬度
let degree_lat1 = (lat1 * Math.PI) / 180.0;
let degree_lat2 = (lat2 * Math.PI) / 180.0;
let a = degree_lat1 - degree_lat2;
// 经度
let degree_lng1 = (lng1 * Math.PI) / 180.0;
let degree_lng2 = (lng2 * Math.PI) / 180.0;
let b = degree_lng1 - degree_lng2;
// 距离 (单位:千米)
let s =
2 *
Math.asin(
Math.sqrt(
Math.pow(Math.sin(a / 2), 2) + Math.cos(degree_lat1) * Math.cos(degree_lat2) * Math.pow(Math.sin(b / 2), 2)
)
);
s = s * EARTH_RADIUS;
s = Math.round(s * 10000) / 10000 / 1000;
return s;
}

72
src/utils/mapUtils.js Normal file
View File

@ -0,0 +1,72 @@
const nameConvert = {
蔡甸区: {
name: "caidian",
score: [6, 6.402, 4.633, 8, 6.015],
},
东西湖区: {
name: "dongxihu",
score: [4.1, 7.017, 3.744, 6.5, 5.366],
},
汉南区: {
name: "hannan",
score: [6.533, 5.966, 2.171, 7, 5.172],
},
汉阳区: {
name: "hanyang",
score: [4.5, 5.335, 6.2985, 6.875, 5.599],
},
洪山区: {
name: "hongshan",
score: [5.6, 5.115, 5.426, 5.75, 5.393],
},
黄陂区: {
name: "huangpi",
score: [3.6, 6.9425, 4.3605, 6.875, 5.4395],
},
江岸区: {
name: "jiangan",
score: [1.8, 8.088, 7.161, 5.0, 5.986],
},
江汉区: {
name: "jianghan",
score: [4.467, 4.887, 8.29, 8, 6.12],
},
江夏区: {
name: "jiangxia",
score: [6.533, 7.115, 2.914, 7.75, 5.891],
},
硚口区: {
name: "qiaokou",
score: [3.933, 5.548, 5.737, 5.75, 5.25],
},
青山区: {
name: "qingshan",
score: [8.6, 7.4905, 4.6845, 8, 7.032],
},
武昌区: {
name: "wuchang",
score: [5.2, 4.831, 5.902, 7, 5.483],
},
新洲区: {
name: "xinzhou",
score: [4.0, 9.345, 4.807, 7.25, 6.582],
},
武汉市: {
name: "wuhan",
score: [5.179, 6.213, 4.996, 7.035, 5.736],
},
};
export function getRegionDetail(res) {
// 将中文字符串转换为英文并返回其地图路径
return {
key: nameConvert[res].name,
data: require(`../assets/map/${nameConvert[res].name}.json`),
detail: nameConvert[res],
};
}
export function getName(res) {
if (nameConvert[res]) return nameConvert[res].name;
return "wuhan";
}

View File

@ -0,0 +1,58 @@
export function tooltipFormatter(item, layerName) {
let showHtm = `<strong>${item.name}</strong><br>`;
switch (layerName) {
case "earthquake":
showHtm += `面积:${item.built_area}<br>可疏散人数:${item.capacity}`;
break;
case "air":
showHtm += `建设单位:${item.constructor_name}<br>地址:${item.address}<br>平时用途:${item.purpose}`;
break;
case "rescueplan":
showHtm = `<strong>${item.company_name}</strong><br>`;
showHtm += `有效期:${item.valid_date_start}~${item.valid_date_end}<br>颁证单位:${item.issue_unit}<br>颁证时间:${item.issue_date}<br>批文编号:${item.license_number}`;
break;
case "hazard":
showHtm += `危化品及数量(吨)${item.danger_chemical}<br>类型:${
["储存", "使用", "生产", "其他"][item.company_type - 1]
}&nbsp;&nbsp;&nbsp;&nbsp;危险等级${["一级", "二级", "三级", "四级"][item.danger_rank - 1]}<br>重大危险源单元${
item.danger_unit
}`;
break;
case "enterprise":
showHtm += `抽查有效期:${item.check_time_start}~${item.check_time_end}`;
break;
case "fire":
showHtm += `地址:${item.address}`;
break;
case "hospital":
showHtm += `等级:${item.level}<br>类型:${item.classification}`;
break;
case "police":
showHtm += `地址:${item.address}`;
break;
default:
break;
}
showHtm += `<br>更新时间:${dateFormat("YYYY-mm-dd HH:MM:SS", item.update_time) || "未知"}`;
return showHtm;
}
export function dateFormat(fmt, date) {
date = new Date(date);
let ret;
const opt = {
"Y+": date.getFullYear().toString(), // 年
"m+": (date.getMonth() + 1).toString(), // 月
"d+": date.getDate().toString(), // 日
"H+": date.getHours().toString(), // 时
"M+": date.getMinutes().toString(), // 分
"S+": date.getSeconds().toString(), // 秒
};
for (let k in opt) {
ret = new RegExp("(" + k + ")").exec(fmt);
if (ret) {
fmt = fmt.replace(ret[1], ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, "0"));
}
}
return fmt;
}

45
src/views/Analysis.vue Normal file
View File

@ -0,0 +1,45 @@
<template>
<div class="container">
<!-- 地震应急避难场所分析 -->
<EarthquakeAnalysis v-if="layer == 'earthquake'"></EarthquakeAnalysis>
<!-- 危险化学品重大危险源 -->
<HazardAnalysis v-else-if="layer == 'hazard'"></HazardAnalysis>
<!-- 人防工程缓冲区分析 -->
<ShelterAnalysis v-else-if="layer == 'shelter'"></ShelterAnalysis>
</div>
</template>
<style scoped>
.container {
width: 100%;
height: 100%;
}
</style>
<script>
import EarthquakeAnalysis from "../components/EarthquakeAnalysis.vue";
import HazardAnalysis from "../components/HazardAnalysis.vue";
import ShelterAnalysis from "../components/ShelterAnalysis.vue";
export default {
name: "Analysis",
components: {
EarthquakeAnalysis,
HazardAnalysis,
ShelterAnalysis,
},
data() {
return {
layer: null,
};
},
mounted() {
this.layer = this.$route.params.layer;
},
watch: {
$route() {
this.layer = this.$route.params.layer;
},
},
};
</script>

80
src/views/Home.vue Normal file
View File

@ -0,0 +1,80 @@
<template>
<!-- 首屏 -->
<div class="home">
<img id="bg" src="../assets/img/bg.jpg" alt="" />
<div class="center">
<h2>智慧应急管理系统</h2>
<h3>赋能新时代智慧应急体系建设</h3>
</div>
</div>
</template>
<style lang="scss" scoped>
.home {
position: relative;
width: 100%;
height: 100%;
box-sizing: border-box;
#bg {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
opacity: 0.25;
filter: brightness(0.4);
width: 100%;
height: 100%;
object-fit: cover;
}
.center {
position: absolute;
top: 48%;
left: 50px;
transform: translateY(-50%);
text-align: left;
font-size: 14px;
@media (max-width: 900px) {
& {
font-size: 12px;
}
}
@media (max-width: 500px) {
& {
font-size: 11px;
left: 0;
width: 100%;
padding: 24px;
}
}
@media (max-width: 400px) {
& {
font-size: 10px;
left: 0;
width: 100%;
padding: 24px;
}
}
h1 {
font-size: 7em;
line-height: 0.9;
color: #fff;
font-style: italic;
}
h2 {
font-size: 4.5em;
color: #fff;
}
h3 {
color: #86ffff;
font-size: 2.5em;
}
}
}
</style>
<script>
export default {
name: "Home",
};
</script>

45
src/views/Index.vue Normal file
View File

@ -0,0 +1,45 @@
<template>
<div class="container">
<div class="register" v-if="status == 0">
<div class="register_1"><img src="../assets/img/dy-img/002.png" /></div>
<h3>AntiE应急管理系统</h3>
<!-- <div class="welcome_1"><a href="#">由此进入</a></div> -->
<div class="welcome_2">
<a @click="status = 1">立即登录</a>
</div>
</div>
<Login v-else-if="status == 1" @loginSucceeded="loginSucceeded" @showReg="status = 2"></Login>
<Register v-else-if="status == 2" @showLogin="status = 1"></Register>
</div>
</template>
<style scoped>
@import "../assets/css/dy-css/public.css";
@import "../assets/css/dy-css/style.css";
.container {
background: url(../assets/img/dy-img/bg.jpg);
background-size: cover;
}
</style>
<script>
import Login from "../components/Login.vue";
import Register from "../components/Register.vue";
export default {
name: "Index",
components: {
Login,
Register,
},
data() {
return {
status: 0,
};
},
methods: {
loginSucceeded() {
this.$emit("loginSucceeded");
},
},
};
</script>

300
src/views/Management.vue Normal file
View File

@ -0,0 +1,300 @@
<template>
<div class="cont">
<div class="total">
<Rain />
<Dashed />
<div class="sphere">
<div class="sphere-bg"></div>
<div class="center" @click="handleClick(-1)">
<span>{{ current == -1 ? "&nbsp;" : "应急管理" }}</span>
<p>{{ current == -1 ? "应急管理" : aspects[current] }}</p>
</div>
</div>
<div class="circle3"></div>
<div class="circle4"></div>
<div class="circle5"></div>
<div class="circle6"></div>
<div class="circle7"></div>
<div
class="circles"
v-for="(item, index) in displayList"
:key="index"
:style="{ animationDelay: -index * (24 / displayList.length) + 's' }"
@click="handleClick(index)"
>
<p :style="{ fontSize: current == -1 ? '1.5vw' : '0.9vw' }">{{ item }}</p>
</div>
</div>
<div class="chart">
<img class="process" src="../assets/img/process.svg" id="p1" alt="" />
<img class="process" src="../assets/img/process-mobile.svg" id="p2" alt="" />
</div>
</div>
</template>
<script>
import Rain from "../components/Rain.vue";
import Dashed from "../components/Dashed.vue";
export default {
name: "Management",
components: {
Rain,
Dashed,
},
data() {
return {
current: -1,
aspects: ["预防", "准备", "响应", "恢复", "学习", "监测"],
displayList: [],
zoomed: false,
};
},
mounted() {
this.displayList = this.aspects;
this.initTree();
},
methods: {
handleClick(index) {
if (this.zoomed || index == -1) {
this.current = -1;
this.displayList = this.aspects;
} else {
switch (index) {
case 0:
this.displayList = [
"地震和地质灾害",
"水旱灾害",
"森林、草原火灾",
"危险化学品",
"重大基础设施",
"安全生产事故",
];
break;
case 1:
this.displayList = ["应急机制", "应急预案", "物资储备", "队伍建设", "基础设施建设", "培训演练"];
break;
case 2:
this.displayList = ["事态研判", "信息报告", "决策部署", "组织部署", "综合调度", "舆论引导"];
break;
case 3:
this.displayList = ["物理恢复", "社会恢复", "心理恢复", "韧性恢复", "长期恢复", "短期恢复"];
break;
case 4:
this.displayList = ["反馈", "检查", "改进", "完善", "总结", "提升"];
break;
case 5:
this.displayList = ["卫星", "无人机", "勘测车", "大数据", "人工智能", "自动化"];
break;
default:
return;
}
this.current = index;
}
this.zoomed = !this.zoomed;
},
initTree() {},
},
};
</script>
<style lang="scss">
@import url(../assets/css/animation.css);
.cont {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
align-items: stretch;
background: url(../assets/img/53/53bg.png) no-repeat;
background-size: cover;
overflow-x: hidden;
.total {
flex: 3;
position: relative;
@media (max-width: 625px) {
& {
display: none;
}
}
.rain {
position: absolute;
left: 0;
top: 0;
z-index: 0;
}
.dashed {
position: absolute;
left: 0;
top: 0;
}
.sphere {
width: 25vw;
height: 25vw;
position: relative;
margin: 14% auto 0;
.sphere-bg {
position: absolute;
z-index: 100;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: url(../assets/img/53/53earth.png) no-repeat center;
background-size: contain;
}
.center {
position: absolute;
z-index: 100;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: url(../assets/img/53/53cloud.png) no-repeat center;
background-size: 55%;
span {
display: block;
margin-top: 30%;
color: #005a79;
font-size: 1vw;
}
p {
text-align: center;
color: #003c63;
font-size: 2vw;
cursor: pointer;
}
}
}
.circle3 {
width: 43.75vw;
height: 43.75vw;
background: url(../assets/img/53/circle.png) no-repeat center;
background-size: 100%;
position: absolute;
top: 20%;
left: 50%;
transform-style: preserve-3d;
transform: translateX(-50%) rotateX(75deg);
animation: rotate3 20s linear infinite;
}
.circle4 {
width: 6.25vw;
height: 6.25vw;
position: absolute;
top: 60%;
left: 50%;
transform-style: preserve-3d;
background: url(../assets/img/53/53gqright.png) no-repeat center;
background-size: 100%;
transform: translateX(-50%) rotateX(75deg);
animation: rotate3 2s linear infinite;
}
.circle5 {
width: 6.25vw;
height: 6.25vw;
position: absolute;
top: 62%;
left: 50%;
transform-style: preserve-3d;
background: url(../assets/img/53/53gqleft.png) no-repeat center;
background-size: 100%;
transform: translateX(-50%) rotateX(75deg);
animation: rotate4 2s linear infinite;
}
.circle6 {
width: 15vw;
height: 15vw;
position: absolute;
top: 70%;
left: 50%;
transform-style: preserve-3d;
background: url(../assets/img/53/535gqbottomright.png) no-repeat center;
background-size: 100%;
transform: translateX(-50%) rotateX(75deg);
animation: rotate3 2s linear infinite;
}
.circle7 {
width: 15vw;
height: 15vw;
position: absolute;
top: 72%;
left: 50%;
transform-style: preserve-3d;
background: url(../assets/img/53/53gqbottomleft.png) no-repeat center;
background-size: 100%;
transform: translateX(-50%) rotateX(75deg);
animation: rotate4 2s linear infinite;
}
.circles {
width: 6.25vw;
height: 6.25vw;
position: absolute;
background-size: 100%;
top: 50%;
left: 50%;
z-index: 100;
margin-left: -3.125vw;
border-radius: 50%;
animation: rotate5 24s linear infinite;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
p {
text-align: center;
font-size: 20px;
}
&:nth-child(odd) {
background-image: url(../assets/img/53/circle1.png);
color: #f29701;
}
&:nth-child(2n) {
background-image: url(../assets/img/53/circle2.png);
color: #0ac1c7;
}
}
}
.chart {
flex: 1;
display: flex;
justify-content: center;
padding: 12px;
.process {
box-sizing: border-box;
max-width: 100%;
max-height: 100%;
object-fit: contain;
&#p1 {
display: block;
}
&#p2 {
display: none;
}
@media (max-width: 600px) {
&#p1 {
display: none;
}
&#p2 {
display: block;
}
}
}
}
}
</style>

279
src/views/Map.vue Normal file
View File

@ -0,0 +1,279 @@
<template>
<div class="content">
<div id="main"></div>
<div class="list">
<el-table :data="list" height="100%">
<el-table-column type="index" width="50" label="序号"></el-table-column>
<el-table-column prop="name" label="名称"></el-table-column>
</el-table>
</div>
</div>
</template>
<style>
.content {
width: 100%;
height: 100%;
display: flex;
}
#main {
flex: 1;
}
.list {
width: 20%;
min-width: 250px;
height: 100%;
background: #16293a;
}
@media (max-width: 900px) {
.list {
display: none;
}
}
.el-table,
.el-table tr,
.el-table__body tr:hover > td.el-table__cell {
background-color: transparent !important;
}
.el-table--enable-row-transition .el-table__body td,
.el-table .cell {
color: #fff;
background-color: transparent;
}
.el-table td.el-table__cell {
border: none;
}
.el-table th.el-table__cell.is-leaf {
border-bottom: 1px solid #409eff;
}
.el-table::before {
left: 0;
bottom: 0;
width: 100%;
height: 0px;
}
.el-table th.el-table__cell {
background-color: transparent;
}
.anchorBL {
display: none;
}
.BMap_cpyCtrl {
display: none;
}
</style>
<script>
import * as echarts from "echarts";
require("echarts/extension/bmap/bmap"); //
import { tooltipFormatter } from "../utils/tooltipFormatter";
export default {
name: "Map",
data() {
return {
myChart: null,
list: [],
};
},
mounted() {
this.myChart = echarts.init(document.querySelector("#main"));
this.loadMap();
this.loadData(this.$route.params.layer);
window.addEventListener("resize", this.onResize);
},
beforeDestroy() {
this.myChart.dispose();
},
watch: {
$route() {
this.loadData(this.$route.params.layer);
},
},
methods: {
onResize() {
this.myChart.resize();
},
loadMap() {
let option = {
bmap: {
//
center: [114.309277, 30.572726],
//
zoom: 12,
// 'scale' 'move'
roam: true,
min: 12,
max: 18,
mapStyle: {
styleJson: require("../assets/map_style.json"),
},
},
tooltip: {
trigger: "item",
formatter: (params) => {
return tooltipFormatter(params.data, this.$route.params.layer);
},
backgroundColor: "#19324bd9",
borderWidth: 0,
confine: true, // tooltip
textStyle: {
color: "#ccc",
fontSize: 14,
},
},
};
this.myChart.setOption(option);
},
loadData: async function (layer) {
console.log(`loading layer:${layer}`);
let categories = [];
let legends = [];
switch (layer) {
case "earthquake":
this.list = await this.$axios.get("/earthquake_shelter/");
this.list = this.list.data;
legends = ["<=2000", "2000~5000", "5000~10000", "10000~50000", ">50000"];
legends.forEach((element) => {
categories.push({
name: element,
type: "effectScatter",
coordinateSystem: "bmap",
data: [],
});
});
for (let i = 0; i < this.list.length; i++) {
const element = this.list[i];
if (element.capacity <= 2000) {
categories[0].data.push(element);
} else if (element.capacity <= 5000) {
categories[1].data.push(element);
} else if (element.capacity <= 10000) {
categories[2].data.push(element);
} else if (element.capacity <= 50000) {
categories[3].data.push(element);
} else {
categories[4].data.push(element);
}
}
break;
case "air":
this.list = (await this.$axios.get("/air_shelter/")).data;
for (let i = 0; i < this.list.length; i++) {
if (legends.indexOf(this.list[i].purpose) == -1) {
legends.push(this.list[i].purpose);
categories.push({
name: this.list[i].purpose,
type: "effectScatter",
coordinateSystem: "bmap",
data: [this.list[i]],
});
} else {
categories[legends.indexOf(this.list[i].purpose)].data.push(this.list[i]);
}
}
break;
case "rescueplan":
categories = (await this.$axios.get("/rescue_plan/")).data;
break;
case "hazard":
this.list = (await this.$axios.get("/hazard/")).data;
legends = ["一级", "二级", "三级", "四级"];
legends.forEach((item, index) => {
categories.push({
name: item,
type: "effectScatter",
coordinateSystem: "bmap",
data: [],
color: ["#ee6666", "#fc8452", "#fac858", "#3ba272"][index],
});
});
for (let i = 0; i < this.list.length; i++) {
categories[this.list[i].danger_rank - 1].data.push(this.list[i]);
}
break;
case "enterprise":
categories = (await this.$axios.get("/enterprise/")).data;
break;
case "fire":
categories = (await this.$axios.get("/fire_station/")).data;
break;
default:
break;
}
this.myChart.setOption({
animation: false,
legend: {
data: legends,
top: "32px",
textStyle: {
color: "#409eff",
fontSize: 14,
},
},
series: (() => {
switch (layer) {
case "earthquake":
return categories;
case "hazard":
categories.push({
data: [],
});
return categories;
case "air":
const currentLength = categories.length;
// series
for (let i = 0; i < 5 - currentLength; i++) {
categories.push({
data: [],
});
}
return categories;
case "rescueplan":
case "enterprise":
case "fire":
return [
{
data: categories,
type: "effectScatter",
coordinateSystem: "bmap", //
itemStyle: {
normal: {
color: "rgb(251,200,88)",
},
},
},
// series
{
data: [],
},
{
data: [],
},
{
data: [],
},
{
data: [],
},
];
default:
break;
}
})(),
});
},
},
};
</script>

52
src/views/UAV.vue Normal file
View File

@ -0,0 +1,52 @@
<template>
<div
class="cont"
v-loading="loading"
element-loading-background="#16293a90"
element-loading-text="正在启动空地一体灾区协同监测感知模块"
>
<iframe :src="demo ? demoServer : fullServer" frameborder="0" id="iframe"></iframe>
</div>
</template>
<style lang="scss" scoped>
.cont {
width: 100%;
height: 100%;
position: relative;
iframe {
width: 100%;
height: 100%;
background: transparent;
}
}
</style>
<script>
export default {
name: "UAV",
data() {
return {
loading: true,
demo: this.$route.params.demo == "demo",
demoServer: "/uav_demo/",
fullServer: "/uav_full/",
};
},
mounted() {
document.querySelector("#iframe").onload = () => {
this.loading = false;
};
},
watch: {
$route() {
this.loading = true;
this.demo = this.$route.params.demo == "demo";
},
},
};
</script>

10
vue.config.js Normal file
View File

@ -0,0 +1,10 @@
module.exports = {
lintOnSave: false,
//引入百度地图的提前配置
configureWebpack: {
externals: {
BMap: "BMap",
BMap_Symbol_SHAPE_POINT: "BMap_Symbol_SHAPE_POINT",
},
},
};