From 6876084ffc4a01c1eca6a609dec8c176efc59aae Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期四, 22 一月 2026 15:16:45 +0800
Subject: [PATCH] 1

---
 zy-acs-cv/src/main/java/com/zy/asrs/service/impl/JobServiceImpl.java      |   17 
 zy-acs-cv/src/main/webapp/static/css/crn.css                              |   48 
 zy-acs-cv/src/main/resources/mapper/JobMapper.xml                         |   46 
 zy-acs-cv/src/main/java/com/zy/common/web/RouterController.java           |   38 
 zy-acs-cv/src/main/webapp/static/css/console-0.css                        |   87 
 zy-acs-cv/src/main/java/com/zy/core/thread/SiemensDevpThread.java         |    2 
 zy-acs-cv/src/main/webapp/views/monitor/css/lunbo.css                     |    2 
 zy-acs-cv/src/main/java/com/zy/asrs/entity/Job.java                       |   16 
 zy-acs-cv/src/main/resources/mapper/DevpMapper.xml                        |   44 
 zy-acs-cv/src/main/webapp/static/js/handlebars/handlebars-v4.5.3.js       | 9838 ++++++++++++++++------------
 zy-acs-cv/src/main/webapp/static/css/console.css                          |  818 +-
 zy-acs-cv/src/main/webapp/static/css/index.css                            |   25 
 zy-acs-cv/src/main/webapp/static/js/console.js                            |   99 
 zy-acs-cv/src/main/resources/wcs.sql                                      |  116 
 zy-acs-cv/src/main/java/com/zy/asrs/controller/vo/TaskDto.java            |   25 
 zy-acs-cv/src/main/java/com/zy/asrs/controller/CtuController.java         |    5 
 zy-acs-cv/src/main/webapp/static/css/rgv.css                              |   48 
 zy-acs-cv/src/main/webapp/static/layui/font/iconfont.svg                  |  950 +
 zy-acs-cv/src/main/webapp/views/pipeline.html                             |  664 -
 zy-acs-cv/src/main/webapp/static/js/cool.js                               |   65 
 zy-acs-cv/src/main/java/com/zy/asrs/entity/WrkLastno.java                 |    2 
 zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobLogMapper.java              |   13 
 zy-acs-cv/src/main/webapp/static/css/animsition.css                       | 4330 ++++++-----
 zy-acs-cv/src/main/webapp/static/css/normalize.css                        |  114 
 zy-acs-cv/src/main/webapp/views/monitor/css/Pacifico.css                  |    4 
 zy-acs-cv/src/main/resources/application.yml                              |   10 
 zy-acs-cv/src/main/webapp/views/monitor/css/monitor.css                   |  123 
 zy-acs-cv/src/main/java/com/zy/asrs/service/JobService.java               |    2 
 zy-acs-cv/src/main/webapp/views/monitor/js/monitor.js                     |   32 
 zy-acs-cv/src/main/java/com/zy/asrs/entity/JobLog.java                    |   93 
 zy-acs-cv/src/main/webapp/static/js/common.js                             |   38 
 zy-acs-cv/src/main/java/com/zy/asrs/controller/vo/OpenBusSubmitParam.java |   18 
 zy-acs-cv/src/main/webapp/static/css/render.css                           |  145 
 zy-acs-cv/src/main/webapp/static/js/jquery/jquery.animsition.js           |  447 
 zy-acs-cv/pom.xml                                                         |   10 
 zy-acs-cv/src/main/webapp/static/css/common.css                           |   76 
 zy-acs-cv/src/main/java/com/zy/asrs/scheduler/JobLogScheduler.java        |   39 
 zy-acs-cv/src/main/webapp/static/css/pipeline.css                         |   45 
 zy-acs-cv/src/main/webapp/static/css/car_vue.css                          |    1 
 zy-acs-cv/src/main/webapp/views/monitor/monitor.html                      |  665 
 zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobMapper.java                 |   13 
 zy-acs-cv/src/main/webapp/static/js/console.map.js                        |    6 
 zy-acs-cv/src/main/webapp/views/index.html                                |  132 
 zy-acs-cv/src/main/java/com/zy/asrs/service/CtuMainService.java           |    4 
 /dev/null                                                                 |  591 -
 zy-acs-cv/src/main/java/com/zy/core/CtuMainProcess.java                   |   10 
 zy-acs-cv/src/main/webapp/static/css/index-0.css                          |   16 
 zy-acs-cv/src/main/webapp/static/js/tools/md5.js                          |  230 
 zy-acs-cv/src/main/webapp/views/control.html                              |   41 
 zy-acs-cv/src/main/java/com/zy/asrs/service/impl/CtuMainServiceImpl.java  |  121 
 zy-acs-cv/src/main/webapp/views/monitor/js/md5.js                         |  230 
 zy-acs-cv/src/main/webapp/views/news.html                                 |   19 
 52 files changed, 11,402 insertions(+), 9,171 deletions(-)

diff --git a/zy-acs-cv/pom.xml b/zy-acs-cv/pom.xml
index 5162172..38bad6c 100644
--- a/zy-acs-cv/pom.xml
+++ b/zy-acs-cv/pom.xml
@@ -27,9 +27,9 @@
             <artifactId>spring-boot-starter-web</artifactId>
         </dependency>
         <!--<dependency>-->
-            <!--<groupId>org.springframework.boot</groupId>-->
-            <!--<artifactId>spring-boot-starter-tomcat</artifactId>-->
-            <!--<scope>provided</scope>-->
+        <!--<groupId>org.springframework.boot</groupId>-->
+        <!--<artifactId>spring-boot-starter-tomcat</artifactId>-->
+        <!--<scope>provided</scope>-->
         <!--</dependency>-->
         <dependency>
             <groupId>org.springframework.boot</groupId>
@@ -80,7 +80,7 @@
         <dependency>
             <groupId>org.projectlombok</groupId>
             <artifactId>lombok</artifactId>
-            <version>1.16.22</version>
+            <version>1.18.20</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
@@ -176,7 +176,7 @@
     </dependencies>
 
     <build>
-        <finalName>wcs</finalName>
+        <finalName>cv</finalName>
         <plugins>
             <plugin>
                 <groupId>org.springframework.boot</groupId>
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/controller/CtuController.java b/zy-acs-cv/src/main/java/com/zy/asrs/controller/CtuController.java
index f7cd95e..3401352 100644
--- a/zy-acs-cv/src/main/java/com/zy/asrs/controller/CtuController.java
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/controller/CtuController.java
@@ -54,11 +54,12 @@
             stationResponseParam = new StationResponseParam();
             stationResponseParam.setStaNo(staNo);
             stationResponseParam.setOccupied(staProtocol.isLoading());
-            stationResponseParam.setInEnable(staProtocol.isInEnable());
-            stationResponseParam.setOutEnable(staProtocol.isOutEnable());
+            stationResponseParam.setInEnable((staProtocol.isInEnable()&&staProtocol.getWorkNo() == 0 ? true : false));
+            stationResponseParam.setOutEnable((staProtocol.isOutEnable()&&staProtocol.getWorkNo() > 0 ? true : false));
             stationResponseParam.setOnline(staProtocol.isAutoing());
             list.add(stationResponseParam);
         }
+        log.info("绔欑偣鏌ヨ锛歿}", list);
         return R.ok(list);
     }
 
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/controller/vo/OpenBusSubmitParam.java b/zy-acs-cv/src/main/java/com/zy/asrs/controller/vo/OpenBusSubmitParam.java
new file mode 100644
index 0000000..535c718
--- /dev/null
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/controller/vo/OpenBusSubmitParam.java
@@ -0,0 +1,18 @@
+package com.zy.asrs.controller.vo;
+
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Created by vincent on 2023/6/12
+ */
+@Data
+public class OpenBusSubmitParam {
+
+    private String batch;
+
+    private List<TaskDto> taskList = new ArrayList<>();
+
+}
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/controller/vo/TaskDto.java b/zy-acs-cv/src/main/java/com/zy/asrs/controller/vo/TaskDto.java
new file mode 100644
index 0000000..ed1744a
--- /dev/null
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/controller/vo/TaskDto.java
@@ -0,0 +1,25 @@
+package com.zy.asrs.controller.vo;
+
+import lombok.Data;
+
+/**
+ * Created by vincent on 2023/6/12
+ */
+@Data
+public class TaskDto {
+
+    private String seqNum;
+
+    private String memo;
+
+    private String oriLoc;
+
+    private String oriSta;
+
+    private String destLoc;
+
+    private String destSta;
+
+    private Integer priority = 1;
+
+}
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/entity/Job.java b/zy-acs-cv/src/main/java/com/zy/asrs/entity/Job.java
index d3cd097..7a0fa52 100644
--- a/zy-acs-cv/src/main/java/com/zy/asrs/entity/Job.java
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/entity/Job.java
@@ -42,6 +42,16 @@
     @TableField("job_sts")
     private Integer jobSts;
     /**
+     * 鍏ュ簱鏃堕棿
+     */
+    @TableField("in_time")
+    private Date inTime;
+    /**
+     * 鍙戠敓浠诲姟鏃堕棿
+     */
+    @TableField("rcs_time")
+    private Date rcsTime;
+    /**
      * 鐘舵�� 1: 姝e父  0: 鍐荤粨
      */
     @ApiModelProperty(value = "鐘舵�� 1: 姝e父  0: 鍐荤粨  ")
@@ -89,11 +99,5 @@
     @ApiModelProperty(value = "澶囨敞")
     private String memo;
 
-    public Job() {
-    }
 
-    public Job(String seqNum, Integer jobNo) {
-        this.seqNum = seqNum;
-        this.jobNo = jobNo;
-    }
 }
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/entity/JobLog.java b/zy-acs-cv/src/main/java/com/zy/asrs/entity/JobLog.java
new file mode 100644
index 0000000..0442f16
--- /dev/null
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/entity/JobLog.java
@@ -0,0 +1,93 @@
+package com.zy.asrs.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@TableName("cv_job_log")
+@Data
+public class JobLog implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * ID
+     */
+    @ApiModelProperty(value = "ID")
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+
+    /**
+     * 浠诲姟鍙�
+     */
+    @TableField("seq_num")
+    private String seqNum;
+
+    /**
+     * 宸ヤ綔鍙凤紝绯荤粺鑷繁缁存姢
+     */
+    @TableField("job_no")
+    private Integer jobNo;
+
+    /**
+     * 宸ヤ綔鐘舵��
+     */
+    @TableField("job_sts")
+    private Integer jobSts;
+    /**
+     * 鐘舵�� 1: 姝e父  0: 鍐荤粨
+     */
+    @ApiModelProperty(value = "鐘舵�� 1: 姝e父  0: 鍐荤粨  ")
+    private Integer status;
+
+    /**
+     * 鏄惁鍒犻櫎 1: 鏄�  0: 鍚�
+     */
+    @ApiModelProperty(value = "鏄惁鍒犻櫎 1: 鏄�  0: 鍚�  ")
+    private Integer deleted;
+
+    /**
+     * 绉熸埛
+     */
+    @ApiModelProperty(value = "绉熸埛")
+    private Long tenantId;
+
+    /**
+     * 娣诲姞浜哄憳
+     */
+    @ApiModelProperty(value = "娣诲姞浜哄憳")
+    private Long createBy;
+
+    /**
+     * 娣诲姞鏃堕棿
+     */
+    @ApiModelProperty(value = "娣诲姞鏃堕棿")
+    private Date createTime;
+
+    /**
+     * 淇敼浜哄憳
+     */
+    @ApiModelProperty(value = "淇敼浜哄憳")
+    private Long updateBy;
+
+    /**
+     * 淇敼鏃堕棿
+     */
+    @ApiModelProperty(value = "淇敼鏃堕棿")
+    private Date updateTime;
+
+    /**
+     * 澶囨敞
+     */
+    @ApiModelProperty(value = "澶囨敞")
+    private String memo;
+
+
+}
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/entity/WrkLastno.java b/zy-acs-cv/src/main/java/com/zy/asrs/entity/WrkLastno.java
index bda0c41..1e7a783 100644
--- a/zy-acs-cv/src/main/java/com/zy/asrs/entity/WrkLastno.java
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/entity/WrkLastno.java
@@ -10,7 +10,7 @@
 import java.io.Serializable;
 import java.util.Date;
 
-@TableName("cv_wrk_lastno")
+@TableName("cv_work_lastno")
 @Data
 public class WrkLastno implements Serializable {
 
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobLogMapper.java b/zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobLogMapper.java
new file mode 100644
index 0000000..ff00d09
--- /dev/null
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobLogMapper.java
@@ -0,0 +1,13 @@
+package com.zy.asrs.mapper;
+
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import com.zy.asrs.entity.JobLog;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+@Mapper
+@Repository
+public interface JobLogMapper extends BaseMapper<JobLog> {
+
+
+}
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobMapper.java b/zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobMapper.java
index 0daa7f9..c238594 100644
--- a/zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobMapper.java
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/mapper/JobMapper.java
@@ -6,12 +6,21 @@
 import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 
+import java.util.List;
+
 @Mapper
 @Repository
 public interface JobMapper extends BaseMapper<Job> {
 
 
-    Job getJobBySeqNum(@Param("seqNum")String seqNum);
+    Job getJobBySeqNum(@Param("seqNum") String seqNum);
 
-    Job getJobByWorkNo(@Param("workNo")Integer workNo);
+    Job getJobByJobNo(@Param("workNo") Integer workNo);
+
+    Job getJobByJobNoAndJobSts(@Param("workNo") Integer workNo, @Param("jobSts") Integer jobSts);
+
+
+    List<Job> listJobByJobSts(@Param("jobSts") Integer jobSts);
+
+
 }
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/scheduler/JobLogScheduler.java b/zy-acs-cv/src/main/java/com/zy/asrs/scheduler/JobLogScheduler.java
new file mode 100644
index 0000000..98ba803
--- /dev/null
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/scheduler/JobLogScheduler.java
@@ -0,0 +1,39 @@
+package com.zy.asrs.scheduler;
+
+import com.zy.asrs.entity.Job;
+import com.zy.asrs.mapper.JobMapper;
+import com.zy.asrs.service.JobService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+
+@Slf4j
+@Component
+public class JobLogScheduler {
+
+
+    // job鏁版嵁淇濆瓨澶╂暟
+    public static final int JOB_SAVE_DAY = 3;
+
+    @Autowired
+    private JobService jobService;
+
+
+    @Autowired
+    private JobMapper jobMapper;
+
+
+    @Scheduled(cron = "0 0 2 * * ?")
+    public void autoToLog() {
+        List<Job> jobs = jobMapper.listJobByJobSts(5);
+        for (Job job : jobs) {
+            jobService.saveJobLog(job);
+        }
+    }
+
+
+}
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/service/CtuMainService.java b/zy-acs-cv/src/main/java/com/zy/asrs/service/CtuMainService.java
index ec91d0b..4f142ba 100644
--- a/zy-acs-cv/src/main/java/com/zy/asrs/service/CtuMainService.java
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/service/CtuMainService.java
@@ -19,12 +19,14 @@
      * @param mark 鏍囪
      */
     void fake(Integer mark);
+
     /**
      * 娓呴櫎鏁版嵁
      *
      * @param mark 鏍囪
      */
     void clear(Integer mark);
+
     /**
      * 鍏ュ簱寰�鍓嶈蛋涓�姝ワ紝绛夊緟ctu鏉ュ彇
      *
@@ -32,4 +34,6 @@
      */
     void waitTake(Integer mark);
 
+    void createTake(Integer mark);
+
 }
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/service/JobService.java b/zy-acs-cv/src/main/java/com/zy/asrs/service/JobService.java
index d153bf6..652e0c7 100644
--- a/zy-acs-cv/src/main/java/com/zy/asrs/service/JobService.java
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/service/JobService.java
@@ -5,5 +5,5 @@
 
 public interface JobService extends IService<Job> {
 
-
+    void saveJobLog(Job job);
 }
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/service/impl/CtuMainServiceImpl.java b/zy-acs-cv/src/main/java/com/zy/asrs/service/impl/CtuMainServiceImpl.java
index e040e4b..20af2ee 100644
--- a/zy-acs-cv/src/main/java/com/zy/asrs/service/impl/CtuMainServiceImpl.java
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/service/impl/CtuMainServiceImpl.java
@@ -3,9 +3,12 @@
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.core.common.DateUtils;
 import com.core.exception.CoolException;
 import com.zy.asrs.controller.requestParam.StationRequestParam;
+import com.zy.asrs.controller.vo.OpenBusSubmitParam;
 import com.zy.asrs.controller.vo.StationStatus;
+import com.zy.asrs.controller.vo.TaskDto;
 import com.zy.asrs.entity.Job;
 import com.zy.asrs.enums.WorkNoTypeType;
 import com.zy.asrs.mapper.JobMapper;
@@ -30,6 +33,7 @@
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
 import java.util.concurrent.TimeUnit;
 
@@ -54,6 +58,9 @@
     @Value("${ctu.station}")
     private String station;
 
+    @Value("${ctu.sendTask}")
+    private String sendTask;
+
 
     @Autowired
     private SlaveProperties slaveProperties;
@@ -67,6 +74,7 @@
     /**
      * 鍑哄簱鐨勬椂鍊欙紝璁惧涓婅蛋
      */
+    @Transactional
     public synchronized void out(Integer mark) {
         try {
             // 鏍规嵁杈撻�佺嚎plc閬嶅巻
@@ -86,7 +94,7 @@
                         continue;
                     }
                     //&& staProtocol.isOutEnable()
-                    if (staProtocol.isAutoing() && staProtocol.getWorkNo() == 0 ) {
+                    if (staProtocol.isAutoing() && staProtocol.getWorkNo() == 0) {
                         String seqNum = checkStationStatus(releaseSta.getStaNo());
                         if (seqNum != null) {
                             Job jobBySeqNum = jobMapper.getJobBySeqNum(seqNum);
@@ -95,7 +103,11 @@
                                 // 涓嬪彂绉诲姩 涓� 涓嬪彂plc鍛戒护
                                 staProtocol.setWorkNo(workNo);
                                 staProtocol.setStaNo(releaseSta.getTargetSta());
-                                if (jobMapper.insert(new Job(seqNum, workNo)) == 0) {
+                                Job job = new Job();
+                                job.setSeqNum(seqNum);
+                                job.setJobNo(workNo);
+                                job.setJobSts(2);
+                                if (jobMapper.insert(job) == 0) {
                                     throw new CoolException("鎻掑叆杈撻�佺嚎浠诲姟澶辫触," + jobBySeqNum + " - " + workNo);
                                 }
                                 devpThread.setPakMk(staProtocol.getSiteId(), false);
@@ -124,6 +136,7 @@
     /**
      * 浠庢嫞鏂欑珯鍒板叆搴撶珯锛圕TU鍙栬揣绔欙級
      */
+    @Transactional
     public synchronized void fake(Integer mark) {
         try {
             // 鏍规嵁杈撻�佺嚎plc閬嶅巻
@@ -139,12 +152,13 @@
                 return;
             }
             if (staProtocol.getWorkNo() > 0 && staProtocol.isAutoing()) {
-                Job jobByWorkNo = jobMapper.getJobByWorkNo(staProtocol.getWorkNo());
+                Job jobByWorkNo = jobMapper.getJobByJobNo(staProtocol.getWorkNo());
                 if (jobByWorkNo != null && jobByWorkNo.getJobSts() == 1) {
                     staProtocol.setStaNo(1006);
                     boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
                     if (result) {
-                        jobByWorkNo.setJobSts(2);
+                        jobByWorkNo.setJobSts(3);
+                        jobByWorkNo.setMemo("妯℃嫙鎸夋寜閽�");
                         jobMapper.updateById(jobByWorkNo);
                         log.info("鍏ュ簱杈撻�佺嚎涓嬪彂锛歿},{}", staProtocol.getWorkNo(), 1006);
                     }
@@ -175,7 +189,8 @@
                         return;
                     }
                     if (staProtocol.getWorkNo() > 0 && staProtocol.isAutoing()) {
-                        if (checkStationStatus(takeSta.getStaNo()) != null) {
+                        Job job = jobMapper.getJobByJobNo(staProtocol.getWorkNo());
+                        if (job != null && job.getJobSts() >= 5) {
                             staProtocol.setWorkNo(0);
                             staProtocol.setStaNo(0);
                             boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
@@ -192,7 +207,7 @@
         }
     }
 
-
+    @Transactional
     public synchronized void waitTake(Integer mark) {
         try {
             // 鏍规嵁杈撻�佺嚎plc閬嶅巻
@@ -214,11 +229,21 @@
                     if (staProtocol.getWorkNo() > 0 && staProtocol.isAutoing()) {
                         StaProtocol targetStaProtocol = devpThread.getStation().get(inSta.getTargetSta());
                         if (targetStaProtocol.getWorkNo() == 0 && targetStaProtocol.isAutoing() && !targetStaProtocol.isLoading()) {
-                            staProtocol.setWorkNo(staProtocol.getWorkNo());
-                            staProtocol.setStaNo(inSta.getTargetSta());
-                            boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
-                            if (result) {
-                                log.info("" + (mark + LOG_STEP) + "鍏ュ簱鍓嶈繘锛歿},{}", staProtocol.getWorkNo(), inSta.getTargetSta());
+                            Job job = jobMapper.getJobByJobNoAndJobSts(staProtocol.getWorkNo(), 2);
+                            if (job != null) {
+                                staProtocol.setWorkNo(staProtocol.getWorkNo());
+                                staProtocol.setStaNo(inSta.getTargetSta());
+                                boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
+                                if (result) {
+                                    job.setJobSts(4);
+                                    job.setInTime(new Date());
+                                    if (jobMapper.updateById(job) == 0) {
+                                        throw new CoolException("鏇存柊杈撻�佺嚎浠诲姟澶辫触," + " - " + staProtocol.getWorkNo());
+                                    }
+                                    log.info("" + (mark + LOG_STEP) + "鍏ュ簱鍓嶈繘锛歿},{}", staProtocol.getWorkNo(), inSta.getTargetSta());
+                                }
+                            } else {
+                                // 妯℃嫙鎿嶄綔閫昏緫
                             }
                         }
                     }
@@ -230,6 +255,78 @@
         }
     }
 
+    @Transactional
+    public synchronized void createTake(Integer mark) {
+        try {
+            // 鏍规嵁杈撻�佺嚎plc閬嶅巻
+            for (DevpSlave devp : slaveProperties.getDevp()) {
+                // 閬嶅巻鍏ュ簱鍙�
+                for (DevpSlave.Sta inSta : devp.getInSta()) {
+                    // 鏍规嵁杈撻�佺嚎plc閬嶅巻
+                    SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
+                    StaProtocol staProtocol = devpThread.getStation().get(inSta.getTargetSta());
+                    if (staProtocol == null) {
+                        return;
+                    } else {
+                        staProtocol = staProtocol.clone();
+                    }
+                    // 鍒ゆ柇鏄惁婊¤冻鏉′欢
+                    if (!staProtocol.isLoading()) {
+                        return;
+                    }
+                    if (staProtocol.getWorkNo() > 0 && staProtocol.isAutoing()) {
+                        Job job = jobMapper.getJobByJobNo(staProtocol.getWorkNo());
+                        if (job != null && job.getJobSts() == 4) {
+                            job.setJobSts(5);
+                            job.setRcsTime(new Date());
+                            jobMapper.updateById(job);
+                            if (!fakeWms(staProtocol)) {
+                                throw new CoolException("浠诲姟鍙戦�佺粰RCS澶辫触," + job.getSeqNum() + " - " + job.getSeqNum());
+                            }
+                        }
+                    }
+                }
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+        }
+    }
+
+    public boolean fakeWms(StaProtocol staProtocol) {
+        OpenBusSubmitParam openBusSubmitParam = new OpenBusSubmitParam();
+        openBusSubmitParam.setBatch(DateUtils.convert(new Date()));
+        List<TaskDto> taskList = new ArrayList<>();
+        TaskDto taskDto = new TaskDto();
+        taskDto.setSeqNum("SSX-RK" + staProtocol.getWorkNo());
+        taskDto.setOriSta("1007");
+        taskDto.setPriority(9527);
+        taskList.add(taskDto);
+        openBusSubmitParam.setTaskList(taskList);
+        return sendTask(openBusSubmitParam, staProtocol);
+    }
+
+    @Transactional
+    public boolean sendTask(OpenBusSubmitParam openBusSubmitParam, StaProtocol staProtocol) {
+        String response = "";
+        try {
+            response = new HttpHandler.Builder()
+                    .setUri(ctuUrl)
+                    .setPath(sendTask)
+                    .setTimeout(1200, TimeUnit.SECONDS)
+                    .setJson(JSON.toJSONString(openBusSubmitParam))
+                    .build()
+                    .doPost();
+            JSONObject jsonObject = JSON.parseObject(response);
+            if (jsonObject.getInteger("code").equals(200)) {
+                log.info("涓嬪彂浠诲姟杩斿洖鏁版嵁锛歿}", response);
+                return true;
+            }
+        } catch (Exception e) {
+            log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", ctuUrl + sendTask, JSON.toJSONString(openBusSubmitParam), response);
+        }
+        return false;
+    }
 
     /**
      * 妫�鏌ョ珯鐐圭姸鎬�
@@ -259,7 +356,7 @@
                 for (StationStatus object : stationStatuses) {
                     if (object.getStaNo().equals(staNo + "")) {
                         if (object.getConveyable()) {
-                            return object.getSeqNum();
+                            return object.getSeqNum() == null ? System.currentTimeMillis() + "" : object.getSeqNum();
                         } else {
                             log.info("绔欑偣锛歿}鐘舵�佷笉瀵�", staNo);
                             return null;
diff --git a/zy-acs-cv/src/main/java/com/zy/asrs/service/impl/JobServiceImpl.java b/zy-acs-cv/src/main/java/com/zy/asrs/service/impl/JobServiceImpl.java
index c22c358..ff1f893 100644
--- a/zy-acs-cv/src/main/java/com/zy/asrs/service/impl/JobServiceImpl.java
+++ b/zy-acs-cv/src/main/java/com/zy/asrs/service/impl/JobServiceImpl.java
@@ -2,12 +2,29 @@
 
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
 import com.zy.asrs.entity.Job;
+import com.zy.asrs.entity.JobLog;
+import com.zy.asrs.mapper.JobLogMapper;
 import com.zy.asrs.mapper.JobMapper;
 import com.zy.asrs.service.JobService;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 @Service
 public class JobServiceImpl extends ServiceImpl<JobMapper, Job> implements JobService {
 
+    @Autowired
+    private JobLogMapper jobLogMapper;
 
+
+    @Override
+    @Transactional
+    public void saveJobLog(Job job) {
+        JobLog jobLog = new JobLog();
+        BeanUtils.copyProperties(job, jobLog);
+        jobLogMapper.insert(jobLog);
+        baseMapper.deleteById(job.getId());
+
+    }
 }
diff --git a/zy-acs-cv/src/main/java/com/zy/common/model/PageParam.java b/zy-acs-cv/src/main/java/com/zy/common/model/PageParam.java
deleted file mode 100644
index 93dc425..0000000
--- a/zy-acs-cv/src/main/java/com/zy/common/model/PageParam.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.zy.common.model;
-
-
-/**
- * 鍒嗛〉鍙傛暟
- * Created by vincent on 2020-04-10
- */
-public class PageParam {
-
-    private int page = 1;
-
-    private int size = 10;
-
-    public Integer getPage() {
-        return page;
-    }
-
-    public void setPage(Integer page) {
-        this.page = page;
-    }
-
-    public Integer getSize() {
-        return size;
-    }
-
-    public void setSize(Integer size) {
-        this.size = size;
-    }
-
-}
diff --git a/zy-acs-cv/src/main/java/com/zy/common/model/SearchLocParam.java b/zy-acs-cv/src/main/java/com/zy/common/model/SearchLocParam.java
deleted file mode 100644
index 159024e..0000000
--- a/zy-acs-cv/src/main/java/com/zy/common/model/SearchLocParam.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.zy.common.model;
-
-import com.alibaba.fastjson.JSON;
-import lombok.Data;
-
-/**
- * Created by vincent on 2020/10/30
- */
-@Data
-public class SearchLocParam {
-
-    private Integer ioType;
-
-    private Integer sourceStaNo;
-
-    private String barcode;
-
-    // 搴撲綅瑙勬牸锛� 0:鏈煡, 1:浣庡簱浣�, 2:涓簱浣�, 3:楂樺簱浣� 锛�
-    private Short locType1;
-
-    public static void main(String[] args) {
-        SearchLocParam searchLocParam = new SearchLocParam();
-        searchLocParam.setIoType(1);
-        searchLocParam.setSourceStaNo(101);
-        searchLocParam.setBarcode("10001111");
-        searchLocParam.setLocType1((short) 1);
-        System.out.println(JSON.toJSONString(searchLocParam));
-    }
-
-}
diff --git a/zy-acs-cv/src/main/java/com/zy/common/model/Shelves.java b/zy-acs-cv/src/main/java/com/zy/common/model/Shelves.java
deleted file mode 100644
index 1720b4a..0000000
--- a/zy-acs-cv/src/main/java/com/zy/common/model/Shelves.java
+++ /dev/null
@@ -1,124 +0,0 @@
-package com.zy.common.model;
-
-import com.alibaba.fastjson.JSON;
-import com.core.exception.CoolException;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-/**
- * <strong>绔嬪簱璐ф灦瀹炰綋绫�</strong>
- * Created by vincent on 2020/6/11
- */
-public class Shelves {
-
-    // 璐ф灦鎺掓暟閲�
-    public final int size;
-
-    // 璐ф灦缁勬暟閲�
-    public final int group;
-
-    // 鍋忕Щ閲廩default:0]
-    public final int offset;
-
-    // 璐ф灦瀹炰緥鑺傜偣闆嗗悎
-    public List<List<Integer>> nodes;
-
-    public Shelves(int size, int group) {
-        this(size, group, 0);
-    }
-
-    /**
-     * @param size   璐ф灦鍗曟帓鎬绘暟
-     * @param group  璐ф灦缁勬暟閲�
-     * @param offset 搴忓垪鍙峰亸绉婚噺
-     */
-    public Shelves(int size, int group, int offset) {
-        this.size = size;
-        this.group = group;
-        this.offset = offset;
-        init();
-    }
-
-    /**
-     * 鍒濆鍖栨柟娉曘�愮鏈夈��
-     */
-    private void init() {
-        if (group == 0 || size % group != 0) {
-            throw new RuntimeException("shelves init fail!");
-        }
-        nodes = new ArrayList<>();
-        for (int g = 1; g <= this.group; g++) {
-            int unit = size / group;
-            List<Integer> node = new ArrayList<>();
-            for (int i = (g - 1) * unit + 1 + offset; i <= g * unit + offset; i++) {
-                node.add(i);
-            }
-            nodes.add(node);
-        }
-    }
-
-    /**
-     * 寮�濮嬭绠� =======>>>
-     * <p>
-     * 璐ф灦鍛戒腑瑙勫垯濡備笅锛�
-     * 瀹夎浣嶇疆锛�   [1]  [2]  |  [3]  [4]  --------  [5] [6]  |  [7] [8]
-     * 鍛戒腑椤哄簭锛�      1 -> 5 -> 4 -> 8 -> 2 -> 6 -> 3 -> 7 -> 1 ...
-     * <p>
-     * 1.璇ヨ鍒欓�備笉闄愬埗璐ф灦鏁伴噺锛屾�绘暟涓庣粍鍒湪鏋勯�犲櫒涓缃�
-     * 2.濡傛湁搴忓垪鍙疯捣濮嬮棶棰橈紝鐢ㄥ亸绉婚噺瑙勯伩鍗冲彲
-     *
-     * @param curSeq 褰撳墠璐ф灦鍙�
-     * @return 瑙勫垯鍛戒腑璐ф灦鍙�
-     */
-    public int start(int curSeq) {
-        Iterator<List<Integer>> iterator = nodes.iterator();
-        while (iterator.hasNext()) {
-            List<Integer> node = iterator.next();
-            if (node.contains(curSeq)) {
-                int idx = node.indexOf(curSeq);
-                // 鏄惁涓烘湯灏捐揣鏋�
-                if (iterator.hasNext()) {
-                    return iterator.next().get(idx);
-                } else {
-                    List<Integer> first = nodes.get(0);
-                    int val = first.get(idx);
-                    int res = size / group + 1 + offset - val;
-                    // 鍙嶅悜鍛戒腑璐ф灦鏃朵笉鍐嶆槸瀵圭珛涓嬫爣锛堢浉瀵逛簬宸烽亾锛�
-                    if (res < val) {
-                        // 杞鎵�鏈夎揣鏋跺悗閲嶆柊寮�濮嬪畾浣�
-                        if (val - res - offset == 1) {
-                            return first.get(0);
-                        }
-                        res = res + 1;
-                    }
-                    return res + offset;
-                }
-            }
-        }
-        return -1;
-    }
-
-    public Integer get(Integer curRow) {
-        for (List<Integer> node : nodes) {
-            if (node.contains(curRow)) {
-                return nodes.indexOf(node) + 1;
-            }
-        }
-        throw new CoolException("璐ф帓妫�绱㈢郴缁熸姤閿欙紝 node:" + JSON.toJSONString(nodes) + ", curRow:" + curRow);
-    }
-
-    public static void main(String[] args) throws InterruptedException {
-        Shelves shelves = new Shelves(8, 2);
-        System.out.println(shelves.nodes.toString());
-        int start = 1;
-        while (true) {
-            System.out.println(start);
-            start = shelves.start(start);
-            Thread.sleep(500L);
-        }
-    }
-
-}
-
diff --git a/zy-acs-cv/src/main/java/com/zy/common/model/annotations/bit.java b/zy-acs-cv/src/main/java/com/zy/common/model/annotations/bit.java
deleted file mode 100644
index 9543991..0000000
--- a/zy-acs-cv/src/main/java/com/zy/common/model/annotations/bit.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package com.zy.common.model.annotations;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * 鏍囪瘑娉ㄨВ绫�
- *
- * @author vincent
- */
-@Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.FIELD, ElementType.TYPE, ElementType.METHOD})
-public @interface bit {
-    int value();
-}
diff --git a/zy-acs-cv/src/main/java/com/zy/common/model/annotations/expr.java b/zy-acs-cv/src/main/java/com/zy/common/model/annotations/expr.java
deleted file mode 100644
index 0ee82f3..0000000
--- a/zy-acs-cv/src/main/java/com/zy/common/model/annotations/expr.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package com.zy.common.model.annotations;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * 鏍囪瘑娉ㄨВ绫�
- *
- * @author vincent
- */
-@Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.FIELD, ElementType.TYPE, ElementType.METHOD})
-public @interface expr {
-    String value();
-}
diff --git a/zy-acs-cv/src/main/java/com/zy/common/model/annotations/flag.java b/zy-acs-cv/src/main/java/com/zy/common/model/annotations/flag.java
deleted file mode 100644
index 082844e..0000000
--- a/zy-acs-cv/src/main/java/com/zy/common/model/annotations/flag.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package com.zy.common.model.annotations;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * 鏍囪瘑娉ㄨВ绫�
- *
- * @author vincent
- */
-@Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.FIELD, ElementType.TYPE, ElementType.METHOD})
-public @interface flag {
-    String value();
-}
diff --git a/zy-acs-cv/src/main/java/com/zy/common/model/annotations/little.java b/zy-acs-cv/src/main/java/com/zy/common/model/annotations/little.java
deleted file mode 100644
index db83a3b..0000000
--- a/zy-acs-cv/src/main/java/com/zy/common/model/annotations/little.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.zy.common.model.annotations;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * 灏忕妯″紡娉ㄨВ绫�
- *
- * @author vincent
- */
-@Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.FIELD, ElementType.TYPE, ElementType.METHOD})
-public @interface little {
-}
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/java/com/zy/common/model/annotations/size.java b/zy-acs-cv/src/main/java/com/zy/common/model/annotations/size.java
deleted file mode 100644
index 685796d..0000000
--- a/zy-acs-cv/src/main/java/com/zy/common/model/annotations/size.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package com.zy.common.model.annotations;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * 鏍囪瘑娉ㄨВ绫�
- *
- * @author vincent
- */
-@Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.FIELD, ElementType.TYPE, ElementType.METHOD})
-public @interface size {
-    int value();
-}
diff --git a/zy-acs-cv/src/main/java/com/zy/common/utils/Struct.java b/zy-acs-cv/src/main/java/com/zy/common/utils/Struct.java
deleted file mode 100644
index f68816a..0000000
--- a/zy-acs-cv/src/main/java/com/zy/common/utils/Struct.java
+++ /dev/null
@@ -1,513 +0,0 @@
-package com.zy.common.utils;
-
-import com.zy.common.model.annotations.*;
-import org.springframework.expression.EvaluationContext;
-import org.springframework.expression.Expression;
-import org.springframework.expression.ExpressionParser;
-import org.springframework.expression.spel.standard.SpelExpressionParser;
-import org.springframework.expression.spel.support.StandardEvaluationContext;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
-import java.lang.reflect.Array;
-import java.lang.reflect.Field;
-import java.nio.charset.StandardCharsets;
-import java.util.*;
-
-/**
- * Tcp鍗忚鎶ユ枃鍩虹被
- *
- * @author vincent
- */
-public class Struct implements java.io.Serializable {
-
-    private transient Map<String, byte[]> decodeByteMapping = new HashMap<>();
-    private transient Map<String, byte[]> encodeByteMapping = new HashMap<>();
-    // 瑙g爜鍓嶇殑鍘熺敓瀛楄妭鏁扮粍
-    private transient byte[] dataBytes = null;
-    private transient byte[] decodeBytes = null;
-    private transient byte[] encodeBytes = null;
-    private transient byte[] unusedBytes = null;
-
-    public Class getClassType(String name) {
-        return null;
-    }
-
-    /**
-     * 鍒ゆ柇澶у皬绔�
-     *
-     * @return true: 灏忕 / false: 澶х
-     */
-    public boolean isReverse() {
-        return this.getClass().getAnnotation(little.class) != null;
-    }
-
-    /**
-     * 鑾峰彇瀛楄妭鏁扮粍
-     */
-    public byte[] toBytes() throws Exception {
-        return encode(this);
-    }
-
-    public Map<String, String> toDecodeHexMapping() throws Exception {
-        if (this.decodeByteMapping == null) this.decodeByteMapping = new HashMap<>();
-        Map<String, String> mapping = getHex(this.decodeByteMapping);
-        if (this.decodeBytes != null) {
-            mapping.put("byte[]", Struct.toHex(this.decodeBytes));
-        }
-        return mapping;
-    }
-
-    public Map<String, String> toEncodeHexMapping() throws Exception {
-        if (this.encodeBytes == null) this.encode(this);
-        if (this.encodeByteMapping == null) this.encodeByteMapping = new HashMap<>();
-        Map<String, String> mapping = getHex(this.encodeByteMapping);
-        mapping.put("byte[]", Struct.toHex(this.encodeBytes));
-        return mapping;
-    }
-
-    public Map<String, String> getHex(Map<String, byte[]> bytemapping) throws Exception {
-        Map<String, String> map = new LinkedHashMap<>();
-        Field[] fields = this.getClass().getFields();
-        for (Field field : fields) {
-            byte[] bytes = bytemapping.get(field.getName());
-            if (bytes != null) {
-                map.put(field.getName(), Struct.toHex(bytes));
-            }
-        }
-        return map;
-    }
-
-    // 杞琷ava瀵硅薄鍒版暟缁�
-    public byte[] encode(Struct entity) throws Exception {
-        ByteArrayOutputStream baOs = new ByteArrayOutputStream();
-        write(new DataOutputStream(baOs), entity);
-        entity.encodeBytes = baOs.toByteArray();
-        return entity.encodeBytes;
-    }
-
-    /**
-     * 鍐欐暟鎹埌杈撳嚭娴�
-     *
-     * @param dos
-     * @param entity
-     */
-    public void write(DataOutputStream dos, Struct entity) throws Exception {
-        if (entity == null) return;
-        if (entity.encodeByteMapping == null) entity.encodeByteMapping = new HashMap<>();
-        Field[] fields = entity.getClass().getFields();
-        EvaluationContext context = new StandardEvaluationContext();
-        for (Field field : Objects.requireNonNull(ReflectUtils.removeStaticField(fields))) {
-            field.setAccessible(true);
-
-            String name = field.getName();
-            Class<?> type = field.getType();
-            String typeName = type.getSimpleName();
-            if (typeName.equals("Struct")) {
-                if (entity.getClassType(name) != null) {
-                    type = entity.getClassType(name);
-                    typeName = type.getSimpleName();
-                } else if (field.get(entity) != null) {
-                    type = field.get(entity).getClass();
-                    typeName = type.getSimpleName();
-                }
-            }
-
-            size size = field.getAnnotation(size.class);
-            bit bit = field.getAnnotation(bit.class);
-            expr expr = field.getAnnotation(expr.class);
-            flag flag = field.getAnnotation(flag.class);
-            if (size == null && bit == null && expr == null) {
-                continue;
-            }
-
-            int bited = 0;//宸插啓浣嶆暟
-            int length = 0;//瀹氫箟鐨勯暱搴�
-            if (size != null) {
-                length = size.value();
-                bited += size.value() * 8;
-            } else if (bit != null) {
-                //鎸変綅鍐欐柟寮忔湭瀹炵幇澶勭悊
-                throw new RuntimeException("鎸変綅鍐欐柟寮忔湭瀹炵幇澶勭悊");
-            } else if (expr != null) {
-                ExpressionParser parser = new SpelExpressionParser();
-                Expression exp = parser.parseExpression(expr.value());
-                Integer len = null;
-                try {
-                    len = CommonUtils.parseInt(exp.getValue(context, entity));
-                } catch (Exception e) {
-                    len = 0;
-                }
-                if (len != null) {
-                    if (len == -1) continue;
-                    length = len;
-                    bited += len * 8;
-                }
-            }
-            context.setVariable(name, field.get(entity));
-
-            byte[] bytes = new byte[length];
-
-            if (typeName.equals("int") || typeName.equals("Integer")) {
-                dos.write(bytes = convert(length, field.getInt(entity)));
-            } else if (typeName.equals("long") || typeName.equals("Long")) {
-                dos.write(bytes = convert(length, field.getLong(entity)));
-            } else if (typeName.equals("short") || typeName.equals("Short")) {
-                dos.write(bytes = convert(length, field.getShort(entity)));
-            } else if (typeName.equals("byte") || typeName.equals("Byte")) {
-                dos.write(bytes = convert(length, field.getByte(entity)));
-            } else if (typeName.equals("String")) {
-                String str = (String) field.get(entity);
-                if (str == null)
-                    str = "";
-                str = str.replaceAll("銆�", " ");
-
-                byte[] bts = null;
-                if (flag != null && flag.value().equals("ASCII")) {
-                    bts = Struct.StrToAsc(str);
-                } else if (flag != null && flag.value().equals("BCD")) {
-                    bts = Struct.str2Bcd(str);
-                } else {
-                    bts = str.getBytes();
-                }
-
-                if (length == 0) {//濡傛灉闀垮害鏈缃紝浠ュ綋鍓嶅疄闄呯殑瀛楄妭涓哄噯
-                    bytes = new byte[bts.length];
-                }
-                System.arraycopy(bts, 0, bytes, 0, bts.length);
-                dos.write(bytes);
-            } else if (typeName.equals("byte[]")) {
-                byte[] bts = (byte[]) field.get(entity);
-                if (bts != null) {
-                    if (length == 0) {//濡傛灉闀垮害鏈缃紝浠ュ綋鍓嶅疄闄呯殑瀛楄妭涓哄噯
-                        bytes = new byte[bts.length];
-                    }
-                    System.arraycopy(bts, 0, bytes, 0, bts.length);
-                    dos.write(bytes);
-                }
-            } else if (type.isArray()) {
-                ByteArrayOutputStream baOs1 = new ByteArrayOutputStream();
-                DataOutputStream dos1 = new DataOutputStream(baOs1);
-                for (Object object : (Object[]) field.get(entity)) {
-                    write(dos1, (Struct) object);
-                }
-                byte[] bts = baOs1.toByteArray();
-                if (length == 0) {//濡傛灉闀垮害鏈缃紝浠ュ綋鍓嶅疄闄呯殑瀛楄妭涓哄噯
-                    bytes = new byte[bts.length];
-                }
-                System.arraycopy(bts, 0, bytes, 0, bts.length);
-                dos.write(bytes);
-            } else {
-                byte[] bts = encode((Struct) field.get(entity));
-                if (length == 0) {//濡傛灉闀垮害鏈缃紝浠ュ綋鍓嶅疄闄呯殑瀛楄妭涓哄噯
-                    bytes = new byte[bts.length];
-                }
-                System.arraycopy(bts, 0, bytes, 0, bts.length);
-                dos.write(bytes);
-            }
-            entity.encodeByteMapping.put(name, bytes);
-        }
-    }
-
-
-    public byte[] convert(int size, long value) throws Exception {
-        ByteArrayOutputStream baOs = new ByteArrayOutputStream();
-        DataOutputStream dos = new DataOutputStream(baOs);
-        switch (size) {
-            case 1://byte
-                dos.write((byte) value);
-                break;
-            case 2://short
-                dos.writeShort(this.isReverse() ? Short.reverseBytes((short) value) : (short) value);
-                break;
-            case 4://int
-                dos.writeInt(this.isReverse() ? Integer.reverseBytes((int) value) : (int) value);
-                break;
-            case 8://long
-                dos.writeLong(this.isReverse() ? Long.reverseBytes((long) value) : (long) value);
-                break;
-        }
-        return baOs.toByteArray();
-    }
-
-    public long convertEx(long value, int size) throws Exception {
-        switch (size) {
-            case 1://byte
-                return value;
-            case 2://short
-                return (this.isReverse() ? Short.reverseBytes((short) value) : (short) value);
-            case 4://int
-                return (this.isReverse() ? Integer.reverseBytes((int) value) : (int) value);
-            case 8://long
-                return (this.isReverse() ? Long.reverseBytes((long) value) : (long) value);
-        }
-        return 0;
-    }
-
-    @SuppressWarnings({"unchecked", "rawtypes"})
-    public static <T extends Struct> T decode(Class<? extends Struct> cls, byte[] bytes) throws Exception {
-        Struct instance = cls.newInstance();
-        return instance.decode(bytes);
-    }
-
-    /**
-     * 瑙g爜锛� 瀛楄妭鏁扮粍 ====>> java瀵硅薄
-     */
-    @SuppressWarnings({"unchecked", "rawtypes"})
-    public <T extends Struct> T decode(byte[] bytes) throws Exception {
-        this.dataBytes = bytes;
-        Struct instance = this;
-        Class<? extends Struct> cls = this.getClass();
-        Field[] fields = cls.getFields();
-        if (this.decodeByteMapping == null) instance.decodeByteMapping = new HashMap();
-        // spring el琛ㄨ揪寮�
-        EvaluationContext context = new StandardEvaluationContext();
-        context.setVariable("_", bytes.length);
-        int bited = 0;//宸茶浣嶆暟
-        for (Field field : Objects.requireNonNull(ReflectUtils.removeStaticField(fields))) {
-            size size = field.getAnnotation(size.class);
-            bit bit = field.getAnnotation(bit.class);
-            expr expr = field.getAnnotation(expr.class);
-            flag flag = field.getAnnotation(flag.class);
-            // 娌℃湁size銆乥it銆乪xpr娉ㄨВ鐨勫彉閲忎笉杩涜瑙f瀽
-            if (size == null && bit == null && expr == null) {
-                continue;
-            }
-            String name = field.getName();
-            Class<?> type = field.getType();
-            String typeName = type.getSimpleName();
-            if (typeName.equals("Struct")) {
-                if (instance.getClassType(name) != null) {
-                    type = instance.getClassType(name);
-                    typeName = type.getSimpleName();
-                }
-            }
-            context.setVariable("__", bytes.length - bited / 8);
-            byte[] bts = null;
-            if (size != null) {
-                bts = new byte[size.value()];
-                System.arraycopy(bytes, bited / 8, bts, 0, size.value());
-                bited += size.value() * 8;
-            } else if (bit != null) {
-                int val = 0;
-                String strBin = "";
-                for (int i = bited; i < bited + bit.value(); i++) {//閫愪綅鎵弿
-                    if ((bytes[i / 8] & (1 << (i % 8))) != 0) {//濡傛灉浣嶄负1
-                        strBin += "1";
-                    } else {
-                        strBin += "0";
-                    }
-                    val = Integer.parseInt(strBin, 2);
-                }
-                byte[] result = new byte[4];
-                result[3] = (byte) (val);
-                result[2] = (byte) (val >> 8);
-                result[1] = (byte) (val >> 16);
-                result[0] = (byte) (val >> 24);
-                bts = new byte[(int) Math.ceil((double) bit.value() / 8.0)];
-                System.arraycopy(result, result.length - bts.length, bts, 0, bts.length);
-                bited += bit.value();
-            } else if (expr != null) {
-                ExpressionParser parser = new SpelExpressionParser();
-                Expression exp = parser.parseExpression(expr.value());
-                Integer len = CommonUtils.parseInt(exp.getValue(context, instance));
-                if (len != null) {
-                    if (len == -1) continue;
-                    bts = new byte[len];
-                    System.arraycopy(bytes, bited / 8, bts, 0, len);
-                    bited += len * 8;
-                }
-            }
-            if (bts.length == 0) continue;
-            DataInputStream dis = new DataInputStream(new ByteArrayInputStream(bts));
-            if (typeName.equals("int") || typeName.equals("Integer")) {
-                field.setInt(instance, (int) convertEx(dis.readInt(), 4));
-            } else if (typeName.equals("long") || typeName.equals("Long")) {
-                field.setLong(instance, convertEx(dis.readLong(), 8));
-            } else if (typeName.equals("short") || typeName.equals("Short")) {
-                field.setShort(instance, (short) convertEx(dis.readShort(), 2));
-            } else if (typeName.equals("byte") || typeName.equals("Byte")) {
-                field.setByte(instance, (byte) convertEx(dis.readByte(), 1));
-            } else if (typeName.equals("byte[]")) {
-                field.set(instance, bts);
-            } else if (typeName.equals("String")) {
-                String strStr = new String(bts, StandardCharsets.UTF_8);
-                if (flag != null && flag.value().equals("BCD")) {
-                    strStr = bcd2Str(bts);
-                } else if (flag != null && flag.value().equals("ASCII")) {
-                    strStr = Struct.AscToStr(bts);
-                }
-                strStr = strStr.replaceAll("[\u0000]", "");
-                field.set(instance, strStr);
-            } else if (type.isArray()) {
-                byte[] arrayBytes = bts;
-                List list = new ArrayList();
-                while (arrayBytes.length > 0 && list.size() < 256) {
-                    Struct item = decode((Class<? extends Struct>) type.getComponentType(), arrayBytes);
-                    list.add(item);
-                    arrayBytes = item.unusedBytes;
-                }
-                Object array = Array.newInstance(type.getComponentType(), list.size());
-                for (int i = 0; i < list.size(); i++) {
-                    Array.set(array, i, list.get(i));
-                }
-                field.set(instance, array);
-            } else if (type == Struct.class || Struct.class.isAssignableFrom(type)) {
-                byte[] arrayBytes = bts;
-                Struct item = decode((Class<? extends Struct>) type, arrayBytes);
-                field.set(instance, item);
-            } else {
-                throw new RuntimeException(cls.getSimpleName() + "瀛楁" + field.getName() + "绫诲瀷鏈煡");
-            }
-            instance.decodeByteMapping.put(name, bts);
-            context.setVariable(name, field.get(instance));
-        }
-        byte[] useBytes = new byte[bited / 8];
-        System.arraycopy(bytes, 0, useBytes, 0, bited / 8);
-        instance.decodeBytes = useBytes;
-        byte[] unusedBytes = new byte[bytes.length - (bited / 8)];
-        if (unusedBytes.length > 0) {
-            System.arraycopy(bytes, useBytes.length, unusedBytes, 0, unusedBytes.length);
-        }
-        instance.unusedBytes = unusedBytes;
-        return (T) instance;
-    }
-
-    // 瀛楄妭鏁扮粍 ===>> 杞负鍗佸叚杩涘埗瀛楃涓�
-    public static String toHex(byte[] bytes) {
-        StringBuilder buf = new StringBuilder(bytes.length * 2);
-        for (byte b : bytes) { // 浣跨敤String鐨刦ormat鏂规硶杩涜杞崲
-            buf.append(String.format("%02x", b & 0xff));
-        }
-        return buf.toString().toUpperCase();
-    }
-
-    public static byte[] toBytes(String str) {
-        if (str == null || str.trim().equals("")) return new byte[0];
-        byte[] bytes = new byte[str.length() / 2];
-        for (int i = 0; i < str.length() / 2; i++) {
-            String subStr = str.substring(i * 2, i * 2 + 2);
-            bytes[i] = (byte) Integer.parseInt(subStr, 16);
-        }
-        return bytes;
-    }
-
-
-    /**
-     * @鍔熻兘: BCD鐮佽浆涓�10杩涘埗涓�(闃挎媺浼暟鎹�)
-     * @鍙傛暟: BCD鐮�
-     * @缁撴灉: 10杩涘埗涓�
-     */
-    public static String bcd2Str(byte[] bytes) {
-        StringBuffer temp = new StringBuffer(bytes.length * 2);
-        for (int i = 0; i < bytes.length; i++) {
-            temp.append((byte) ((bytes[i] & 0xf0) >>> 4));
-            temp.append((byte) (bytes[i] & 0x0f));
-        }
-        return temp.toString().substring(0, 1).equalsIgnoreCase("0") ? temp
-                .toString().substring(1) : temp.toString();
-    }
-
-    /**
-     * @鍔熻兘: 10杩涘埗涓茶浆涓築CD鐮�
-     * @鍙傛暟: 10杩涘埗涓�
-     * @缁撴灉: BCD鐮�
-     */
-    public static byte[] str2Bcd(String asc) {
-        int len = asc.length();
-        int mod = len % 2;
-        if (mod != 0) {
-            asc = "0" + asc;
-            len = asc.length();
-        }
-        byte abt[] = new byte[len];
-        if (len >= 2) {
-            len = len / 2;
-        }
-        byte bbt[] = new byte[len];
-        abt = asc.getBytes();
-        int j, k;
-        for (int p = 0; p < asc.length() / 2; p++) {
-            if ((abt[2 * p] >= '0') && (abt[2 * p] <= '9')) {
-                j = abt[2 * p] - '0';
-            } else if ((abt[2 * p] >= 'a') && (abt[2 * p] <= 'z')) {
-                j = abt[2 * p] - 'a' + 0x0a;
-            } else {
-                j = abt[2 * p] - 'A' + 0x0a;
-            }
-            if ((abt[2 * p + 1] >= '0') && (abt[2 * p + 1] <= '9')) {
-                k = abt[2 * p + 1] - '0';
-            } else if ((abt[2 * p + 1] >= 'a') && (abt[2 * p + 1] <= 'z')) {
-                k = abt[2 * p + 1] - 'a' + 0x0a;
-            } else {
-                k = abt[2 * p + 1] - 'A' + 0x0a;
-            }
-            int a = (j << 4) + k;
-            byte b = (byte) a;
-            bbt[p] = b;
-        }
-        return bbt;
-    }
-
-    public static class TestMessage {
-        public @size(1) byte begin = 0x7e;//璧峰绗�
-        public @size(2) short type = 0;//娑堟伅ID
-        public @bit(2) byte retain;//娑堟伅浣撳睘鎬�>淇濈暀
-        public @bit(1) byte subpkg;//娑堟伅浣撳睘鎬�>鏄惁鍒嗗寘,0琛ㄧず涓嶅垎鍖�
-        public @bit(3) byte encrypt;//娑堟伅浣撳睘鎬�>鍔犲瘑鏂瑰紡,0琛ㄧず涓嶅姞瀵�
-        public @bit(10) short length;//娑堟伅浣撻暱搴�
-        public @size(6)
-        @flag("BCD") String number;//鎵嬫満鍙风爜
-        public @size(2) short serial;//娑堟伅娴佹按鍙�
-        public @expr("#subpkg==1?2:0") short pkgs;//鍒嗗寘鏁�
-        public @expr("#subpkg==1?2:0") short index;//鍖呭簭鍙�
-        public @expr("#length") byte[] data;//鏁版嵁閮ㄥ垎
-        public @size(1) byte verify;//鏍¢獙鐮�
-        public @size(1) byte end = 0x7e;//缁撴潫绗�
-    }
-
-    public static byte getXor(byte[] datas, int start, int end) {
-        byte temp = datas[start];
-        for (int i = start + 1; i < end; i++) {
-            temp ^= datas[i];
-        }
-        return temp;
-    }
-
-
-    /**
-     * 姹傛牎楠屽拰鐨勭畻娉�
-     *
-     * @param b 闇�瑕佹眰鏍¢獙鍜岀殑瀛楄妭鏁扮粍
-     * @return 鏍¢獙鍜�
-     */
-    public static byte sumCheck(byte[] b, int start, int end) {
-        int sum = 0;
-        for (int i = start; i < end; i++) {
-            sum = sum + b[i];
-        }
-        return (byte) (sum & 0xff);
-    }
-
-    //瀛楃涓茶浆鎹负ascii
-    public static byte[] StrToAsc(String content) {
-        try {
-            return content.getBytes(StandardCharsets.US_ASCII);
-        } catch (Exception e) {
-            e.printStackTrace();
-            return null;
-        }
-    }
-
-    //ascii杞崲涓簊tring
-    public static String AscToStr(byte[] bytes) {
-        StringBuffer sbu = new StringBuffer();
-        for (byte aByte : bytes) {
-            sbu.append(Character.toString((char) aByte));
-        }
-        return sbu.toString();
-    }
-
-}
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/java/com/zy/common/web/RouterController.java b/zy-acs-cv/src/main/java/com/zy/common/web/RouterController.java
index 5d3a0db..cf5720c 100644
--- a/zy-acs-cv/src/main/java/com/zy/common/web/RouterController.java
+++ b/zy-acs-cv/src/main/java/com/zy/common/web/RouterController.java
@@ -1,7 +1,7 @@
 package com.zy.common.web;
 
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import javax.servlet.http.HttpServletResponse;
@@ -13,10 +13,13 @@
 public class RouterController {
 
 
+    @Value("${server.servlet.context-path}")
+    private String contextPath;
+
     @RequestMapping("/")
     public void index(HttpServletResponse response) {
         try {
-            response.sendRedirect("/views/index.html");
+            response.sendRedirect(contextPath + "/views/index.html");
         } catch (Exception ex) {
             ex.printStackTrace();
         }
@@ -25,40 +28,11 @@
     @RequestMapping("/login")
     public void login(HttpServletResponse response) {
         try {
-            response.sendRedirect("/views/login.html");
+            response.sendRedirect(contextPath + "/views/login.html");
         } catch (Exception ex) {
             ex.printStackTrace();
         }
     }
 
-    @RequestMapping("/control")
-    public void control(HttpServletResponse response) {
-        try {
-            response.sendRedirect("/views/control.html");
-        } catch (Exception ex) {
-            ex.printStackTrace();
-        }
-    }
-
-    @RequestMapping("/monitor/{cnrId}/{ledId}")
-    public void monitor(@PathVariable("cnrId") Integer cnrId,
-                        @PathVariable("ledId") Integer ledId,
-                        HttpServletResponse response) {
-        try {
-            response.sendRedirect("/views/monitor/monitor.html" + "?" + "crnId=" + cnrId + "&" + "ledId=" + ledId);
-        } catch (Exception ex) {
-            ex.printStackTrace();
-        }
-    }
-
-    @RequestMapping("/monitor0/{ledId}")
-    public void monitor(@PathVariable("ledId") Integer ledId,
-                        HttpServletResponse response) {
-        try {
-            response.sendRedirect("/views/monitor/monitor0.html" + "?" + "crnId=" + 2 + "&" + "ledId=" + ledId);
-        } catch (Exception ex) {
-            ex.printStackTrace();
-        }
-    }
 
 }
diff --git a/zy-acs-cv/src/main/java/com/zy/core/CtuMainProcess.java b/zy-acs-cv/src/main/java/com/zy/core/CtuMainProcess.java
index d84245c..4393840 100644
--- a/zy-acs-cv/src/main/java/com/zy/core/CtuMainProcess.java
+++ b/zy-acs-cv/src/main/java/com/zy/core/CtuMainProcess.java
@@ -40,12 +40,17 @@
                     if (!SystemProperties.WCS_RUNNING_STATUS.get()) {
                         continue;
                     }
+                    /**
+                     * 鍑哄簱鏃讹紝鍏堟彃鍏ュ簱涓�鏉ob鐘舵�佷负1锛岀劧鍚庡線鍑哄簱绔欙紙鎷f枡绔欙級绉诲姩
+                     * 鐢ㄦ埛鍑哄叆搴撳畬鎴愬悗锛屾寜涓嬫寜閽紝鎵爜
+                     */
+
 
                     //鍑哄簱娴佺▼锛歝tu鏀捐揣绔欏埌鍑哄簱绔欙紙鎷f枡绔欙級
                     ctuMainService.out(10);
 
                     // 妯℃嫙鍏ュ簱娴佺▼锛氱粍鎵樻垨鎷f枡瀹屾垚,鐢ㄦ埛鎸変笅鍏ュ簱鎸夐挳锛涘疄闄呬笟鍔″満涓嬶紝鏄敤鎴锋搷浣滄寜涓嬫寜閽�
-                    ctuMainService.fake(20);
+                    //ctuMainService.fake(20);
 
                     // 娓呴櫎ctu鍙栬揣绔欑殑淇″彿
                     ctuMainService.clear(30);
@@ -53,7 +58,8 @@
                     // 鍏ュ簱娴佺▼锛氬幓ctu鍙栬揣绛夊緟绔�
                     ctuMainService.waitTake(40);
 
-
+                    // 鍒涘缓浠诲姟
+                    ctuMainService.createTake(50);
 
 
                 } catch (Exception e) {
diff --git a/zy-acs-cv/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/zy-acs-cv/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index 57a9799..c165896 100644
--- a/zy-acs-cv/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/zy-acs-cv/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -151,7 +151,7 @@
             staProtocol.setInEnable(false);     // 鍙叆
             staProtocol.setOutEnable(false);    // 鍙嚭
             staProtocol.setEmptyMk(false);      // 绌烘澘淇″彿
-            staProtocol.setStaNo( 0);     // 鐩爣绔�
+            staProtocol.setStaNo(0);     // 鐩爣绔�
 
             if (!staProtocol.isPakMk() && !staProtocol.isLoading()) {
                 staProtocol.setPakMk(true);
diff --git a/zy-acs-cv/src/main/resources/application.yml b/zy-acs-cv/src/main/resources/application.yml
index f33583b..3554a4f 100644
--- a/zy-acs-cv/src/main/resources/application.yml
+++ b/zy-acs-cv/src/main/resources/application.yml
@@ -1,10 +1,12 @@
 server:
   port: 9090
+  servlet:
+    context-path: /cv
 
 
 spring:
   application:
-    name: @pom.build.finalName@
+    name: cv
   datasource:
     driver-class-name: com.mysql.jdbc.Driver
     #url: jdbc:mysql://127.0.0.1:3306/rcs_ctu_stable?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
@@ -16,7 +18,7 @@
 
 
 ctu:
-  url: 192.168.3.216:8088
+  url: 10.10.10.200:8088
   station: /api/open/station/convey
   locSync: /api/open/loc/sync
   sendTask: /api/open/bus/submit
@@ -29,7 +31,7 @@
 #    field-strategy: 0
 
 logging:
-  path: stock/out/@pom.build.finalName@/logs
+  path: /stock/out/cv/logs
 
 super:
   pwd: xltys1995
@@ -56,7 +58,7 @@
     # ctu鍏ュ簱绔欑偣
     inSta[0]:
       # 鏈珯鐐�
-      staNo: 1006
+      staNo: 1005
       # 鐩爣绔欑偣
       targetSta: 1007
     # ctu鍙栬揣绔欑偣
diff --git a/zy-acs-cv/src/main/resources/mapper/DevpMapper.xml b/zy-acs-cv/src/main/resources/mapper/DevpMapper.xml
index 0e53c14..76ccff7 100644
--- a/zy-acs-cv/src/main/resources/mapper/DevpMapper.xml
+++ b/zy-acs-cv/src/main/resources/mapper/DevpMapper.xml
@@ -4,38 +4,36 @@
 
     <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
     <resultMap id="BaseResultMap" type="com.zy.asrs.entity.Devp">
-        <id column="dev_no" property="devNo" />
-        <result column="dec_desc" property="decDesc" />
-        <result column="dev_mk" property="devMk" />
-        <result column="in_enable" property="inEnable" />
-        <result column="out_enable" property="outEnable" />
-        <result column="autoing" property="autoing" />
-        <result column="loading" property="loading" />
-        <result column="canining" property="canining" />
-        <result column="canouting" property="canouting" />
-        <result column="wrk_no" property="wrkNo" />
-        <result column="barcode" property="barcode" />
+        <id column="dev_no" property="devNo"/>
+        <result column="dec_desc" property="decDesc"/>
+        <result column="dev_mk" property="devMk"/>
+        <result column="in_enable" property="inEnable"/>
+        <result column="out_enable" property="outEnable"/>
+        <result column="autoing" property="autoing"/>
+        <result column="loading" property="loading"/>
+        <result column="canining" property="canining"/>
+        <result column="canouting" property="canouting"/>
+        <result column="wrk_no" property="wrkNo"/>
+        <result column="barcode" property="barcode"/>
     </resultMap>
 
     <select id="getAvailableInSite" resultType="java.lang.Integer">
-        select
-        abd.dev_no
+        select abd.dev_no
         from asr_bas_devp abd
-        left join asr_sta_desc asd on abd.dev_no = asd.stn_no
-        where 1=1
-        and asd.type_no = #{typeNo}
-        and abd.in_enable = 'Y'
+                 left join asr_sta_desc asd on abd.dev_no = asd.stn_no
+        where 1 = 1
+          and asd.type_no = #{typeNo}
+          and abd.in_enable = 'Y'
         group by abd.dev_no
     </select>
 
     <select id="getAvailableOutSite" resultType="java.lang.Integer">
-        select
-        abd.dev_no
+        select abd.dev_no
         from asr_bas_devp abd
-        left join asr_sta_desc asd on abd.dev_no = asd.stn_no
-        where 1=1
-        and asd.type_no = #{typeNo}
-        and abd.out_enable = 'Y'
+                 left join asr_sta_desc asd on abd.dev_no = asd.stn_no
+        where 1 = 1
+          and asd.type_no = #{typeNo}
+          and abd.out_enable = 'Y'
         group by abd.dev_no
     </select>
 
diff --git a/zy-acs-cv/src/main/resources/mapper/JobMapper.xml b/zy-acs-cv/src/main/resources/mapper/JobMapper.xml
index df450a8..c73e8d1 100644
--- a/zy-acs-cv/src/main/resources/mapper/JobMapper.xml
+++ b/zy-acs-cv/src/main/resources/mapper/JobMapper.xml
@@ -2,15 +2,49 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.zy.asrs.mapper.JobMapper">
 
-    <select id="getJobBySeqNum" resultType="com.zy.asrs.entity.Job">
-        select * from
-            select * from cv_job where seq_num = #{seqNum}
+    <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+    <resultMap id="BaseResultMap" type="com.zy.asrs.entity.Job">
+        <id column="id" property="id"/>
+        <result column="seq_num" property="seqNum"/>
+        <result column="job_no" property="jobNo"/>
+        <result column="job_sts" property="jobSts"/>
+        <result column="in_time" property="inTime"/>
+        <result column="rcs_time" property="rcsTime"/>
+        <result column="status" property="status"/>
+        <result column="deleted" property="deleted"/>
+        <result column="tenant_id" property="tenantId"/>
+        <result column="create_by" property="createBy"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_by" property="updateBy"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="memo" property="memo"/>
+    </resultMap>
+
+    <select id="getJobBySeqNum" resultMap="BaseResultMap">
+        select *
+        from cv_job
+        where seq_num = #{seqNum}
     </select>
 
 
-    <select id="getJobByWorkNo" resultType="com.zy.asrs.entity.Job">
-        select * from
-            select * from cv_job where work_no = #{workNo}
+    <select id="getJobByJobNo" resultMap="BaseResultMap">
+        select *
+        from cv_job
+        where job_no = #{workNo}
+    </select>
+
+    <select id="getJobByJobNoAndJobSts" resultMap="BaseResultMap">
+        select *
+        from cv_job
+        where job_no = #{workNo}
+          and job_sts = #{jobSts}
+    </select>
+
+
+    <select id="listJobByJobSts" resultMap="BaseResultMap">
+        select *
+        from cv_job
+        where job_sts = #{jobSts}
     </select>
 
 </mapper>
diff --git a/zy-acs-cv/src/main/resources/wcs.sql b/zy-acs-cv/src/main/resources/wcs.sql
index 580fef0..69ad83c 100644
--- a/zy-acs-cv/src/main/resources/wcs.sql
+++ b/zy-acs-cv/src/main/resources/wcs.sql
@@ -15,34 +15,36 @@
 */
 
 SET NAMES utf8mb4;
-SET FOREIGN_KEY_CHECKS = 0;
+SET
+FOREIGN_KEY_CHECKS = 0;
 
 -- ----------------------------
 -- Table structure for cv_devp
 -- ----------------------------
 DROP TABLE IF EXISTS `cv_devp`;
-CREATE TABLE `cv_devp`  (
-  `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID',
-  `dev_no` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '缂栧彿',
-  `dec_desc` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鍚嶇О(*)',
-  `in_enable` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鍙叆',
-  `out_enable` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鍙嚭',
-  `autoing` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鑷姩',
-  `loading` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鏈夌墿',
-  `canining` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鑳藉叆',
-  `canouting` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鑳藉嚭',
-  `wrk_no` int(11) NULL DEFAULT NULL COMMENT '宸ヤ綔鍙�',
-  `barcode` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鏉$爜',
-  `loc_type` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '搴撲綅绫诲瀷',
-  `status` int(1) NOT NULL DEFAULT 1 COMMENT '鐘舵�亄1:姝e父,0:鍐荤粨}',
-  `deleted` int(1) NOT NULL DEFAULT 0 COMMENT '鏄惁鍒犻櫎{1:鏄�,0:鍚',
-  `tenant_id` bigint(20) NULL DEFAULT NULL COMMENT '绉熸埛[sys_tenant]',
-  `create_by` bigint(20) NULL DEFAULT NULL COMMENT '娣诲姞浜哄憳[sys_user]',
-  `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '娣诲姞鏃堕棿',
-  `update_by` bigint(20) NULL DEFAULT NULL COMMENT '淇敼浜哄憳[sys_user]',
-  `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '淇敼鏃堕棿',
-  `memo` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '澶囨敞',
-  PRIMARY KEY (`id`) USING BTREE
+CREATE TABLE `cv_devp`
+(
+    `id`          bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID',
+    `dev_no`      varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '缂栧彿',
+    `dec_desc`    varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鍚嶇О(*)',
+    `in_enable`   varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鍙叆',
+    `out_enable`  varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鍙嚭',
+    `autoing`     varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鑷姩',
+    `loading`     varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鏈夌墿',
+    `canining`    varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鑳藉叆',
+    `canouting`   varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鑳藉嚭',
+    `wrk_no`      int(11) NULL DEFAULT NULL COMMENT '宸ヤ綔鍙�',
+    `barcode`     varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '鏉$爜',
+    `loc_type`    varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '搴撲綅绫诲瀷',
+    `status`      int(1) NOT NULL DEFAULT 1 COMMENT '鐘舵�亄1:姝e父,0:鍐荤粨}',
+    `deleted`     int(1) NOT NULL DEFAULT 0 COMMENT '鏄惁鍒犻櫎{1:鏄�,0:鍚',
+    `tenant_id`   bigint(20) NULL DEFAULT NULL COMMENT '绉熸埛[sys_tenant]',
+    `create_by`   bigint(20) NULL DEFAULT NULL COMMENT '娣诲姞浜哄憳[sys_user]',
+    `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '娣诲姞鏃堕棿',
+    `update_by`   bigint(20) NULL DEFAULT NULL COMMENT '淇敼浜哄憳[sys_user]',
+    `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '淇敼鏃堕棿',
+    `memo`        varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '澶囨敞',
+    PRIMARY KEY (`id`) USING BTREE
 ) ENGINE = InnoDB AUTO_INCREMENT = 17 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
 
 -- ----------------------------
@@ -53,21 +55,22 @@
 -- Table structure for cv_job
 -- ----------------------------
 DROP TABLE IF EXISTS `cv_job`;
-CREATE TABLE `cv_job`  (
-  `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID',
-  `seq_num` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '缂栧彿',
-  `work_no` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '鍚嶇О(*)',
-  `job_sts` int(11) NULL DEFAULT 1 COMMENT '浠诲姟鐘舵��',
-  `status` int(1) NOT NULL DEFAULT 1 COMMENT '鐘舵�亄1:姝e父,0:鍐荤粨}',
-  `deleted` int(1) NOT NULL DEFAULT 0 COMMENT '鏄惁鍒犻櫎{1:鏄�,0:鍚',
-  `tenant_id` bigint(20) NULL DEFAULT NULL COMMENT '绉熸埛[sys_tenant]',
-  `create_by` bigint(20) NULL DEFAULT NULL COMMENT '娣诲姞浜哄憳[sys_user]',
-  `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '娣诲姞鏃堕棿',
-  `update_by` bigint(20) NULL DEFAULT NULL COMMENT '淇敼浜哄憳[sys_user]',
-  `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '淇敼鏃堕棿',
-  `memo` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '澶囨敞',
-  PRIMARY KEY (`id`) USING BTREE,
-  UNIQUE INDEX `uq_cv_job_seq_num`(`seq_num`) USING BTREE
+CREATE TABLE `cv_job`
+(
+    `id`          bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID',
+    `seq_num`     varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '缂栧彿',
+    `work_no`     varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '鍚嶇О(*)',
+    `job_sts`     int(11) NULL DEFAULT 1 COMMENT '浠诲姟鐘舵��',
+    `status`      int(1) NOT NULL DEFAULT 1 COMMENT '鐘舵�亄1:姝e父,0:鍐荤粨}',
+    `deleted`     int(1) NOT NULL DEFAULT 0 COMMENT '鏄惁鍒犻櫎{1:鏄�,0:鍚',
+    `tenant_id`   bigint(20) NULL DEFAULT NULL COMMENT '绉熸埛[sys_tenant]',
+    `create_by`   bigint(20) NULL DEFAULT NULL COMMENT '娣诲姞浜哄憳[sys_user]',
+    `create_time` timestamp                                               NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '娣诲姞鏃堕棿',
+    `update_by`   bigint(20) NULL DEFAULT NULL COMMENT '淇敼浜哄憳[sys_user]',
+    `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '淇敼鏃堕棿',
+    `memo`        varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '澶囨敞',
+    PRIMARY KEY (`id`) USING BTREE,
+    UNIQUE INDEX `uq_cv_job_seq_num`(`seq_num`) USING BTREE
 ) ENGINE = InnoDB AUTO_INCREMENT = 19 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
 
 -- ----------------------------
@@ -78,26 +81,29 @@
 -- Table structure for cv_work_lastno
 -- ----------------------------
 DROP TABLE IF EXISTS `cv_work_lastno`;
-CREATE TABLE `cv_work_lastno`  (
-  `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID',
-  `type` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '缂栧彿',
-  `wrk_no` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '褰撳墠宸ヤ綔鍙�',
-  `s_no` int(11) NULL DEFAULT NULL COMMENT '璧峰宸ヤ綔鍙�',
-  `e_no` int(11) NULL DEFAULT NULL COMMENT '缁撴潫宸ヤ綔鍙�',
-  `status` int(1) NOT NULL DEFAULT 1 COMMENT '鐘舵�亄1:姝e父,0:鍐荤粨}',
-  `deleted` int(1) NOT NULL DEFAULT 0 COMMENT '鏄惁鍒犻櫎{1:鏄�,0:鍚',
-  `tenant_id` bigint(20) NULL DEFAULT NULL COMMENT '绉熸埛[sys_tenant]',
-  `create_by` bigint(20) NULL DEFAULT NULL COMMENT '娣诲姞浜哄憳[sys_user]',
-  `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '娣诲姞鏃堕棿',
-  `update_by` bigint(20) NULL DEFAULT NULL COMMENT '淇敼浜哄憳[sys_user]',
-  `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '淇敼鏃堕棿',
-  `memo` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '澶囨敞',
-  PRIMARY KEY (`id`) USING BTREE
+CREATE TABLE `cv_work_lastno`
+(
+    `id`          bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID',
+    `type`        varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '缂栧彿',
+    `wrk_no`      varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '褰撳墠宸ヤ綔鍙�',
+    `s_no`        int(11) NULL DEFAULT NULL COMMENT '璧峰宸ヤ綔鍙�',
+    `e_no`        int(11) NULL DEFAULT NULL COMMENT '缁撴潫宸ヤ綔鍙�',
+    `status`      int(1) NOT NULL DEFAULT 1 COMMENT '鐘舵�亄1:姝e父,0:鍐荤粨}',
+    `deleted`     int(1) NOT NULL DEFAULT 0 COMMENT '鏄惁鍒犻櫎{1:鏄�,0:鍚',
+    `tenant_id`   bigint(20) NULL DEFAULT NULL COMMENT '绉熸埛[sys_tenant]',
+    `create_by`   bigint(20) NULL DEFAULT NULL COMMENT '娣诲姞浜哄憳[sys_user]',
+    `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '娣诲姞鏃堕棿',
+    `update_by`   bigint(20) NULL DEFAULT NULL COMMENT '淇敼浜哄憳[sys_user]',
+    `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '淇敼鏃堕棿',
+    `memo`        varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '澶囨敞',
+    PRIMARY KEY (`id`) USING BTREE
 ) ENGINE = InnoDB AUTO_INCREMENT = 17 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
 
 -- ----------------------------
 -- Records of cv_work_lastno
 -- ----------------------------
-INSERT INTO `cv_work_lastno` VALUES (1, '1', '1', 1, 9990, 1, 0, NULL, NULL, '2026-01-20 08:15:11', NULL, '2026-01-20 08:15:11', NULL);
+INSERT INTO `cv_work_lastno`
+VALUES (1, '1', '1', 1, 9990, 1, 0, NULL, NULL, '2026-01-20 08:15:11', NULL, '2026-01-20 08:15:11', NULL);
 
-SET FOREIGN_KEY_CHECKS = 1;
+SET
+FOREIGN_KEY_CHECKS = 1;
diff --git a/zy-acs-cv/src/main/webapp/static/css/animsition.css b/zy-acs-cv/src/main/webapp/static/css/animsition.css
index 7792686..7d025ab 100644
--- a/zy-acs-cv/src/main/webapp/static/css/animsition.css
+++ b/zy-acs-cv/src/main/webapp/static/css/animsition.css
@@ -8,2537 +8,2777 @@
 
 .animsition,
 .animsition-overlay {
-  position: relative;
-  opacity: 0;
+    position: relative;
+    opacity: 0;
 
-  -webkit-animation-fill-mode: both;
-       -o-animation-fill-mode: both;
-          animation-fill-mode: both;
+    -webkit-animation-fill-mode: both;
+    -o-animation-fill-mode: both;
+    animation-fill-mode: both;
 }
+
 .animsition-loading {
-  position: fixed;
-  top: 0;
-  z-index: 100;
-  width: 100%;
-  height: 100%;
-  background: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2032%2032%22%20width%3D%2232%22%20height%3D%2232%22%20fill%3D%22%23ccc%22%3E%0A%20%20%3Cpath%20opacity%3D%22.25%22%20d%3D%22M16%200%20A16%2016%200%200%200%2016%2032%20A16%2016%200%200%200%2016%200%20M16%204%20A12%2012%200%200%201%2016%2028%20A12%2012%200%200%201%2016%204%22/%3E%0A%20%20%3Cpath%20d%3D%22M16%200%20A16%2016%200%200%201%2032%2016%20L28%2016%20A12%2012%200%200%200%2016%204z%22%3E%0A%20%20%20%20%3CanimateTransform%20attributeName%3D%22transform%22%20type%3D%22rotate%22%20from%3D%220%2016%2016%22%20to%3D%22360%2016%2016%22%20dur%3D%220.8s%22%20repeatCount%3D%22indefinite%22%20/%3E%0A%20%20%3C/path%3E%0A%3C/svg%3E%0A%0A) center center no-repeat;
+    position: fixed;
+    top: 0;
+    z-index: 100;
+    width: 100%;
+    height: 100%;
+    background: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2032%2032%22%20width%3D%2232%22%20height%3D%2232%22%20fill%3D%22%23ccc%22%3E%0A%20%20%3Cpath%20opacity%3D%22.25%22%20d%3D%22M16%200%20A16%2016%200%200%200%2016%2032%20A16%2016%200%200%200%2016%200%20M16%204%20A12%2012%200%200%201%2016%2028%20A12%2012%200%200%201%2016%204%22/%3E%0A%20%20%3Cpath%20d%3D%22M16%200%20A16%2016%200%200%201%2032%2016%20L28%2016%20A12%2012%200%200%200%2016%204z%22%3E%0A%20%20%20%20%3CanimateTransform%20attributeName%3D%22transform%22%20type%3D%22rotate%22%20from%3D%220%2016%2016%22%20to%3D%22360%2016%2016%22%20dur%3D%220.8s%22%20repeatCount%3D%22indefinite%22%20/%3E%0A%20%20%3C/path%3E%0A%3C/svg%3E%0A%0A) center center no-repeat;
 
-  -webkit-animation-fill-mode: both;
-       -o-animation-fill-mode: both;
-          animation-fill-mode: both;
+    -webkit-animation-fill-mode: both;
+    -o-animation-fill-mode: both;
+    animation-fill-mode: both;
 }
+
 .animsition-loading:after {
-  position: fixed;
-  top: 50%;
-  width: 100%;
-  margin-top: 20px;
-  font-size: 16px;
-  color: #aaa;
-  text-align: center;
-  content: "Loading";
+    position: fixed;
+    top: 50%;
+    width: 100%;
+    margin-top: 20px;
+    font-size: 16px;
+    color: #aaa;
+    text-align: center;
+    content: "Loading";
 }
+
 .animsition-overlay-slide {
-  position: fixed;
-  z-index: 1;
-  width: 100%;
-  height: 100%;
-  background-color: #ddd;
+    position: fixed;
+    z-index: 1;
+    width: 100%;
+    height: 100%;
+    background-color: #ddd;
 }
+
 @-webkit-keyframes fade-in {
-  0% {
-    opacity: 0;
-  }
-  100% {
-    opacity: 1;
-  }
+    0% {
+        opacity: 0;
+    }
+    100% {
+        opacity: 1;
+    }
 }
+
 @-o-keyframes fade-in {
-  0% {
-    opacity: 0;
-  }
-  100% {
-    opacity: 1;
-  }
+    0% {
+        opacity: 0;
+    }
+    100% {
+        opacity: 1;
+    }
 }
+
 @keyframes fade-in {
-  0% {
-    opacity: 0;
-  }
-  100% {
-    opacity: 1;
-  }
+    0% {
+        opacity: 0;
+    }
+    100% {
+        opacity: 1;
+    }
 }
+
 .fade-in {
-  -webkit-animation-name: fade-in;
-       -o-animation-name: fade-in;
-          animation-name: fade-in;
+    -webkit-animation-name: fade-in;
+    -o-animation-name: fade-in;
+    animation-name: fade-in;
 }
+
 @-webkit-keyframes fade-out {
-  0% {
-    opacity: 1;
-  }
-  100% {
-    opacity: 0;
-  }
+    0% {
+        opacity: 1;
+    }
+    100% {
+        opacity: 0;
+    }
 }
+
 @-o-keyframes fade-out {
-  0% {
-    opacity: 1;
-  }
-  100% {
-    opacity: 0;
-  }
+    0% {
+        opacity: 1;
+    }
+    100% {
+        opacity: 0;
+    }
 }
+
 @keyframes fade-out {
-  0% {
-    opacity: 1;
-  }
-  100% {
-    opacity: 0;
-  }
+    0% {
+        opacity: 1;
+    }
+    100% {
+        opacity: 0;
+    }
 }
+
 .fade-out {
-  -webkit-animation-name: fade-out;
-       -o-animation-name: fade-out;
-          animation-name: fade-out;
+    -webkit-animation-name: fade-out;
+    -o-animation-name: fade-out;
+    animation-name: fade-out;
 }
+
 @-webkit-keyframes fade-in-up {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateY(500px);
-            transform: translateY(500px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-            transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateY(500px);
+        transform: translateY(500px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 @-o-keyframes fade-in-up {
-  0% {
-    opacity: 0;
-    -o-transform: translateY(500px);
-       transform: translateY(500px);
-  }
-  100% {
-    opacity: 1;
-    -o-transform: translateY(0);
-       transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -o-transform: translateY(500px);
+        transform: translateY(500px);
+    }
+    100% {
+        opacity: 1;
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 @keyframes fade-in-up {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateY(500px);
-         -o-transform: translateY(500px);
-            transform: translateY(500px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-         -o-transform: translateY(0);
-            transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateY(500px);
+        -o-transform: translateY(500px);
+        transform: translateY(500px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 .fade-in-up {
-  -webkit-animation-name: fade-in-up;
-       -o-animation-name: fade-in-up;
-          animation-name: fade-in-up;
+    -webkit-animation-name: fade-in-up;
+    -o-animation-name: fade-in-up;
+    animation-name: fade-in-up;
 }
+
 @-webkit-keyframes fade-out-up {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-            transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateY(-500px);
-            transform: translateY(-500px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateY(-500px);
+        transform: translateY(-500px);
+    }
 }
+
 @-o-keyframes fade-out-up {
-  0% {
-    opacity: 1;
-    -o-transform: translateY(0);
-       transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -o-transform: translateY(-500px);
-       transform: translateY(-500px);
-  }
+    0% {
+        opacity: 1;
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -o-transform: translateY(-500px);
+        transform: translateY(-500px);
+    }
 }
+
 @keyframes fade-out-up {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-         -o-transform: translateY(0);
-            transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateY(-500px);
-         -o-transform: translateY(-500px);
-            transform: translateY(-500px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateY(-500px);
+        -o-transform: translateY(-500px);
+        transform: translateY(-500px);
+    }
 }
+
 .fade-out-up {
-  -webkit-animation-name: fade-out-up;
-       -o-animation-name: fade-out-up;
-          animation-name: fade-out-up;
+    -webkit-animation-name: fade-out-up;
+    -o-animation-name: fade-out-up;
+    animation-name: fade-out-up;
 }
+
 @-webkit-keyframes fade-in-up-sm {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateY(100px);
-            transform: translateY(100px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-            transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateY(100px);
+        transform: translateY(100px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 @-o-keyframes fade-in-up-sm {
-  0% {
-    opacity: 0;
-    -o-transform: translateY(100px);
-       transform: translateY(100px);
-  }
-  100% {
-    opacity: 1;
-    -o-transform: translateY(0);
-       transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -o-transform: translateY(100px);
+        transform: translateY(100px);
+    }
+    100% {
+        opacity: 1;
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 @keyframes fade-in-up-sm {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateY(100px);
-         -o-transform: translateY(100px);
-            transform: translateY(100px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-         -o-transform: translateY(0);
-            transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateY(100px);
+        -o-transform: translateY(100px);
+        transform: translateY(100px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 .fade-in-up-sm {
-  -webkit-animation-name: fade-in-up-sm;
-       -o-animation-name: fade-in-up-sm;
-          animation-name: fade-in-up-sm;
+    -webkit-animation-name: fade-in-up-sm;
+    -o-animation-name: fade-in-up-sm;
+    animation-name: fade-in-up-sm;
 }
+
 @-webkit-keyframes fade-out-up-sm {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-            transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateY(-100px);
-            transform: translateY(-100px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateY(-100px);
+        transform: translateY(-100px);
+    }
 }
+
 @-o-keyframes fade-out-up-sm {
-  0% {
-    opacity: 1;
-    -o-transform: translateY(0);
-       transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -o-transform: translateY(-100px);
-       transform: translateY(-100px);
-  }
+    0% {
+        opacity: 1;
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -o-transform: translateY(-100px);
+        transform: translateY(-100px);
+    }
 }
+
 @keyframes fade-out-up-sm {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-         -o-transform: translateY(0);
-            transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateY(-100px);
-         -o-transform: translateY(-100px);
-            transform: translateY(-100px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateY(-100px);
+        -o-transform: translateY(-100px);
+        transform: translateY(-100px);
+    }
 }
+
 .fade-out-up-sm {
-  -webkit-animation-name: fade-out-up-sm;
-       -o-animation-name: fade-out-up-sm;
-          animation-name: fade-out-up-sm;
+    -webkit-animation-name: fade-out-up-sm;
+    -o-animation-name: fade-out-up-sm;
+    animation-name: fade-out-up-sm;
 }
+
 @-webkit-keyframes fade-in-up-lg {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateY(1000px);
-            transform: translateY(1000px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-            transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateY(1000px);
+        transform: translateY(1000px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 @-o-keyframes fade-in-up-lg {
-  0% {
-    opacity: 0;
-    -o-transform: translateY(1000px);
-       transform: translateY(1000px);
-  }
-  100% {
-    opacity: 1;
-    -o-transform: translateY(0);
-       transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -o-transform: translateY(1000px);
+        transform: translateY(1000px);
+    }
+    100% {
+        opacity: 1;
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 @keyframes fade-in-up-lg {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateY(1000px);
-         -o-transform: translateY(1000px);
-            transform: translateY(1000px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-         -o-transform: translateY(0);
-            transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateY(1000px);
+        -o-transform: translateY(1000px);
+        transform: translateY(1000px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 .fade-in-up-lg {
-  -webkit-animation-name: fade-in-up-lg;
-       -o-animation-name: fade-in-up-lg;
-          animation-name: fade-in-up-lg;
+    -webkit-animation-name: fade-in-up-lg;
+    -o-animation-name: fade-in-up-lg;
+    animation-name: fade-in-up-lg;
 }
+
 @-webkit-keyframes fade-out-up-lg {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-            transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateY(-1000px);
-            transform: translateY(-1000px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateY(-1000px);
+        transform: translateY(-1000px);
+    }
 }
+
 @-o-keyframes fade-out-up-lg {
-  0% {
-    opacity: 1;
-    -o-transform: translateY(0);
-       transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -o-transform: translateY(-1000px);
-       transform: translateY(-1000px);
-  }
+    0% {
+        opacity: 1;
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -o-transform: translateY(-1000px);
+        transform: translateY(-1000px);
+    }
 }
+
 @keyframes fade-out-up-lg {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-         -o-transform: translateY(0);
-            transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateY(-1000px);
-         -o-transform: translateY(-1000px);
-            transform: translateY(-1000px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateY(-1000px);
+        -o-transform: translateY(-1000px);
+        transform: translateY(-1000px);
+    }
 }
+
 .fade-out-up-lg {
-  -webkit-animation-name: fade-out-up-lg;
-       -o-animation-name: fade-out-up-lg;
-          animation-name: fade-out-up-lg;
+    -webkit-animation-name: fade-out-up-lg;
+    -o-animation-name: fade-out-up-lg;
+    animation-name: fade-out-up-lg;
 }
+
 @-webkit-keyframes fade-in-down {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateY(-500px);
-            transform: translateY(-500px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-            transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateY(-500px);
+        transform: translateY(-500px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 @-o-keyframes fade-in-down {
-  0% {
-    opacity: 0;
-    -o-transform: translateY(-500px);
-       transform: translateY(-500px);
-  }
-  100% {
-    opacity: 1;
-    -o-transform: translateY(0);
-       transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -o-transform: translateY(-500px);
+        transform: translateY(-500px);
+    }
+    100% {
+        opacity: 1;
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 @keyframes fade-in-down {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateY(-500px);
-         -o-transform: translateY(-500px);
-            transform: translateY(-500px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-         -o-transform: translateY(0);
-            transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateY(-500px);
+        -o-transform: translateY(-500px);
+        transform: translateY(-500px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 .fade-in-down {
-  -webkit-animation-name: fade-in-down;
-       -o-animation-name: fade-in-down;
-          animation-name: fade-in-down;
+    -webkit-animation-name: fade-in-down;
+    -o-animation-name: fade-in-down;
+    animation-name: fade-in-down;
 }
+
 @-webkit-keyframes fade-out-down {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-            transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateY(500px);
-            transform: translateY(500px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateY(500px);
+        transform: translateY(500px);
+    }
 }
+
 @-o-keyframes fade-out-down {
-  0% {
-    opacity: 1;
-    -o-transform: translateY(0);
-       transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -o-transform: translateY(500px);
-       transform: translateY(500px);
-  }
+    0% {
+        opacity: 1;
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -o-transform: translateY(500px);
+        transform: translateY(500px);
+    }
 }
+
 @keyframes fade-out-down {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-         -o-transform: translateY(0);
-            transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateY(500px);
-         -o-transform: translateY(500px);
-            transform: translateY(500px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateY(500px);
+        -o-transform: translateY(500px);
+        transform: translateY(500px);
+    }
 }
+
 .fade-out-down {
-  -webkit-animation-name: fade-out-down;
-       -o-animation-name: fade-out-down;
-          animation-name: fade-out-down;
+    -webkit-animation-name: fade-out-down;
+    -o-animation-name: fade-out-down;
+    animation-name: fade-out-down;
 }
+
 @-webkit-keyframes fade-in-down-sm {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateY(-100px);
-            transform: translateY(-100px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-            transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateY(-100px);
+        transform: translateY(-100px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 @-o-keyframes fade-in-down-sm {
-  0% {
-    opacity: 0;
-    -o-transform: translateY(-100px);
-       transform: translateY(-100px);
-  }
-  100% {
-    opacity: 1;
-    -o-transform: translateY(0);
-       transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -o-transform: translateY(-100px);
+        transform: translateY(-100px);
+    }
+    100% {
+        opacity: 1;
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 @keyframes fade-in-down-sm {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateY(-100px);
-         -o-transform: translateY(-100px);
-            transform: translateY(-100px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-         -o-transform: translateY(0);
-            transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateY(-100px);
+        -o-transform: translateY(-100px);
+        transform: translateY(-100px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 .fade-in-down-sm {
-  -webkit-animation-name: fade-in-down-sm;
-       -o-animation-name: fade-in-down-sm;
-          animation-name: fade-in-down-sm;
+    -webkit-animation-name: fade-in-down-sm;
+    -o-animation-name: fade-in-down-sm;
+    animation-name: fade-in-down-sm;
 }
+
 @-webkit-keyframes fade-out-down-sm {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-            transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateY(100px);
-            transform: translateY(100px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateY(100px);
+        transform: translateY(100px);
+    }
 }
+
 @-o-keyframes fade-out-down-sm {
-  0% {
-    opacity: 1;
-    -o-transform: translateY(0);
-       transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -o-transform: translateY(100px);
-       transform: translateY(100px);
-  }
+    0% {
+        opacity: 1;
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -o-transform: translateY(100px);
+        transform: translateY(100px);
+    }
 }
+
 @keyframes fade-out-down-sm {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-         -o-transform: translateY(0);
-            transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateY(100px);
-         -o-transform: translateY(100px);
-            transform: translateY(100px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateY(100px);
+        -o-transform: translateY(100px);
+        transform: translateY(100px);
+    }
 }
+
 .fade-out-down-sm {
-  -webkit-animation-name: fade-out-down-sm;
-       -o-animation-name: fade-out-down-sm;
-          animation-name: fade-out-down-sm;
+    -webkit-animation-name: fade-out-down-sm;
+    -o-animation-name: fade-out-down-sm;
+    animation-name: fade-out-down-sm;
 }
+
 @-webkit-keyframes fade-in-down-lg {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateY(-1000px);
-            transform: translateY(-1000px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-            transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateY(-1000px);
+        transform: translateY(-1000px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 @-o-keyframes fade-in-down-lg {
-  0% {
-    opacity: 0;
-    -o-transform: translateY(-1000px);
-       transform: translateY(-1000px);
-  }
-  100% {
-    opacity: 1;
-    -o-transform: translateY(0);
-       transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -o-transform: translateY(-1000px);
+        transform: translateY(-1000px);
+    }
+    100% {
+        opacity: 1;
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 @keyframes fade-in-down-lg {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateY(-1000px);
-         -o-transform: translateY(-1000px);
-            transform: translateY(-1000px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-         -o-transform: translateY(0);
-            transform: translateY(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateY(-1000px);
+        -o-transform: translateY(-1000px);
+        transform: translateY(-1000px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
 }
+
 .fade-in-down-lg {
-  -webkit-animation-name: fade-in-down;
-       -o-animation-name: fade-in-down;
-          animation-name: fade-in-down;
+    -webkit-animation-name: fade-in-down;
+    -o-animation-name: fade-in-down;
+    animation-name: fade-in-down;
 }
+
 @-webkit-keyframes fade-out-down-lg {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-            transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateY(1000px);
-            transform: translateY(1000px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateY(1000px);
+        transform: translateY(1000px);
+    }
 }
+
 @-o-keyframes fade-out-down-lg {
-  0% {
-    opacity: 1;
-    -o-transform: translateY(0);
-       transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -o-transform: translateY(1000px);
-       transform: translateY(1000px);
-  }
+    0% {
+        opacity: 1;
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -o-transform: translateY(1000px);
+        transform: translateY(1000px);
+    }
 }
+
 @keyframes fade-out-down-lg {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateY(0);
-         -o-transform: translateY(0);
-            transform: translateY(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateY(1000px);
-         -o-transform: translateY(1000px);
-            transform: translateY(1000px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateY(0);
+        -o-transform: translateY(0);
+        transform: translateY(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateY(1000px);
+        -o-transform: translateY(1000px);
+        transform: translateY(1000px);
+    }
 }
+
 .fade-out-down-lg {
-  -webkit-animation-name: fade-out-down-lg;
-       -o-animation-name: fade-out-down-lg;
-          animation-name: fade-out-down-lg;
+    -webkit-animation-name: fade-out-down-lg;
+    -o-animation-name: fade-out-down-lg;
+    animation-name: fade-out-down-lg;
 }
+
 @-webkit-keyframes fade-in-left {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateX(-500px);
-            transform: translateX(-500px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-            transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateX(-500px);
+        transform: translateX(-500px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 @-o-keyframes fade-in-left {
-  0% {
-    opacity: 0;
-    -o-transform: translateX(-500px);
-       transform: translateX(-500px);
-  }
-  100% {
-    opacity: 1;
-    -o-transform: translateX(0);
-       transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -o-transform: translateX(-500px);
+        transform: translateX(-500px);
+    }
+    100% {
+        opacity: 1;
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 @keyframes fade-in-left {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateX(-500px);
-         -o-transform: translateX(-500px);
-            transform: translateX(-500px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-         -o-transform: translateX(0);
-            transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateX(-500px);
+        -o-transform: translateX(-500px);
+        transform: translateX(-500px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 .fade-in-left {
-  -webkit-animation-name: fade-in-left;
-       -o-animation-name: fade-in-left;
-          animation-name: fade-in-left;
+    -webkit-animation-name: fade-in-left;
+    -o-animation-name: fade-in-left;
+    animation-name: fade-in-left;
 }
+
 @-webkit-keyframes fade-out-left {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-            transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateX(-500px);
-            transform: translateX(-500px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateX(-500px);
+        transform: translateX(-500px);
+    }
 }
+
 @-o-keyframes fade-out-left {
-  0% {
-    opacity: 1;
-    -o-transform: translateX(0);
-       transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -o-transform: translateX(-500px);
-       transform: translateX(-500px);
-  }
+    0% {
+        opacity: 1;
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -o-transform: translateX(-500px);
+        transform: translateX(-500px);
+    }
 }
+
 @keyframes fade-out-left {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-         -o-transform: translateX(0);
-            transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateX(-500px);
-         -o-transform: translateX(-500px);
-            transform: translateX(-500px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateX(-500px);
+        -o-transform: translateX(-500px);
+        transform: translateX(-500px);
+    }
 }
+
 .fade-out-left {
-  -webkit-animation-name: fade-out-left;
-       -o-animation-name: fade-out-left;
-          animation-name: fade-out-left;
+    -webkit-animation-name: fade-out-left;
+    -o-animation-name: fade-out-left;
+    animation-name: fade-out-left;
 }
+
 @-webkit-keyframes fade-in-left-sm {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateX(-100px);
-            transform: translateX(-100px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-            transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateX(-100px);
+        transform: translateX(-100px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 @-o-keyframes fade-in-left-sm {
-  0% {
-    opacity: 0;
-    -o-transform: translateX(-100px);
-       transform: translateX(-100px);
-  }
-  100% {
-    opacity: 1;
-    -o-transform: translateX(0);
-       transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -o-transform: translateX(-100px);
+        transform: translateX(-100px);
+    }
+    100% {
+        opacity: 1;
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 @keyframes fade-in-left-sm {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateX(-100px);
-         -o-transform: translateX(-100px);
-            transform: translateX(-100px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-         -o-transform: translateX(0);
-            transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateX(-100px);
+        -o-transform: translateX(-100px);
+        transform: translateX(-100px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 .fade-in-left-sm {
-  -webkit-animation-name: fade-in-left-sm;
-       -o-animation-name: fade-in-left-sm;
-          animation-name: fade-in-left-sm;
+    -webkit-animation-name: fade-in-left-sm;
+    -o-animation-name: fade-in-left-sm;
+    animation-name: fade-in-left-sm;
 }
+
 @-webkit-keyframes fade-out-left-sm {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-            transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateX(-100px);
-            transform: translateX(-100px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateX(-100px);
+        transform: translateX(-100px);
+    }
 }
+
 @-o-keyframes fade-out-left-sm {
-  0% {
-    opacity: 1;
-    -o-transform: translateX(0);
-       transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -o-transform: translateX(-100px);
-       transform: translateX(-100px);
-  }
+    0% {
+        opacity: 1;
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -o-transform: translateX(-100px);
+        transform: translateX(-100px);
+    }
 }
+
 @keyframes fade-out-left-sm {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-         -o-transform: translateX(0);
-            transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateX(-100px);
-         -o-transform: translateX(-100px);
-            transform: translateX(-100px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateX(-100px);
+        -o-transform: translateX(-100px);
+        transform: translateX(-100px);
+    }
 }
+
 .fade-out-left-sm {
-  -webkit-animation-name: fade-out-left-sm;
-       -o-animation-name: fade-out-left-sm;
-          animation-name: fade-out-left-sm;
+    -webkit-animation-name: fade-out-left-sm;
+    -o-animation-name: fade-out-left-sm;
+    animation-name: fade-out-left-sm;
 }
+
 @-webkit-keyframes fade-in-left-lg {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateX(-1500px);
-            transform: translateX(-1500px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-            transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateX(-1500px);
+        transform: translateX(-1500px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 @-o-keyframes fade-in-left-lg {
-  0% {
-    opacity: 0;
-    -o-transform: translateX(-1500px);
-       transform: translateX(-1500px);
-  }
-  100% {
-    opacity: 1;
-    -o-transform: translateX(0);
-       transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -o-transform: translateX(-1500px);
+        transform: translateX(-1500px);
+    }
+    100% {
+        opacity: 1;
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 @keyframes fade-in-left-lg {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateX(-1500px);
-         -o-transform: translateX(-1500px);
-            transform: translateX(-1500px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-         -o-transform: translateX(0);
-            transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateX(-1500px);
+        -o-transform: translateX(-1500px);
+        transform: translateX(-1500px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 .fade-in-left-lg {
-  -webkit-animation-name: fade-in-left-lg;
-       -o-animation-name: fade-in-left-lg;
-          animation-name: fade-in-left-lg;
+    -webkit-animation-name: fade-in-left-lg;
+    -o-animation-name: fade-in-left-lg;
+    animation-name: fade-in-left-lg;
 }
+
 @-webkit-keyframes fade-out-left-lg {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-            transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateX(-1500px);
-            transform: translateX(-1500px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateX(-1500px);
+        transform: translateX(-1500px);
+    }
 }
+
 @-o-keyframes fade-out-left-lg {
-  0% {
-    opacity: 1;
-    -o-transform: translateX(0);
-       transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -o-transform: translateX(-1500px);
-       transform: translateX(-1500px);
-  }
+    0% {
+        opacity: 1;
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -o-transform: translateX(-1500px);
+        transform: translateX(-1500px);
+    }
 }
+
 @keyframes fade-out-left-lg {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-         -o-transform: translateX(0);
-            transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateX(-1500px);
-         -o-transform: translateX(-1500px);
-            transform: translateX(-1500px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateX(-1500px);
+        -o-transform: translateX(-1500px);
+        transform: translateX(-1500px);
+    }
 }
+
 .fade-out-left-lg {
-  -webkit-animation-name: fade-out-left-lg;
-       -o-animation-name: fade-out-left-lg;
-          animation-name: fade-out-left-lg;
+    -webkit-animation-name: fade-out-left-lg;
+    -o-animation-name: fade-out-left-lg;
+    animation-name: fade-out-left-lg;
 }
+
 @-webkit-keyframes fade-in-right {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateX(500px);
-            transform: translateX(500px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-            transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateX(500px);
+        transform: translateX(500px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 @-o-keyframes fade-in-right {
-  0% {
-    opacity: 0;
-    -o-transform: translateX(500px);
-       transform: translateX(500px);
-  }
-  100% {
-    opacity: 1;
-    -o-transform: translateX(0);
-       transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -o-transform: translateX(500px);
+        transform: translateX(500px);
+    }
+    100% {
+        opacity: 1;
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 @keyframes fade-in-right {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateX(500px);
-         -o-transform: translateX(500px);
-            transform: translateX(500px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-         -o-transform: translateX(0);
-            transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateX(500px);
+        -o-transform: translateX(500px);
+        transform: translateX(500px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 .fade-in-right {
-  -webkit-animation-name: fade-in-right;
-       -o-animation-name: fade-in-right;
-          animation-name: fade-in-right;
+    -webkit-animation-name: fade-in-right;
+    -o-animation-name: fade-in-right;
+    animation-name: fade-in-right;
 }
+
 @-webkit-keyframes fade-out-right {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-            transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateX(500px);
-            transform: translateX(500px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateX(500px);
+        transform: translateX(500px);
+    }
 }
+
 @-o-keyframes fade-out-right {
-  0% {
-    opacity: 1;
-    -o-transform: translateX(0);
-       transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -o-transform: translateX(500px);
-       transform: translateX(500px);
-  }
+    0% {
+        opacity: 1;
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -o-transform: translateX(500px);
+        transform: translateX(500px);
+    }
 }
+
 @keyframes fade-out-right {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-         -o-transform: translateX(0);
-            transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateX(500px);
-         -o-transform: translateX(500px);
-            transform: translateX(500px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateX(500px);
+        -o-transform: translateX(500px);
+        transform: translateX(500px);
+    }
 }
+
 .fade-out-right {
-  -webkit-animation-name: fade-out-right;
-       -o-animation-name: fade-out-right;
-          animation-name: fade-out-right;
+    -webkit-animation-name: fade-out-right;
+    -o-animation-name: fade-out-right;
+    animation-name: fade-out-right;
 }
+
 @-webkit-keyframes fade-in-right-sm {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateX(100px);
-            transform: translateX(100px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-            transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateX(100px);
+        transform: translateX(100px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 @-o-keyframes fade-in-right-sm {
-  0% {
-    opacity: 0;
-    -o-transform: translateX(100px);
-       transform: translateX(100px);
-  }
-  100% {
-    opacity: 1;
-    -o-transform: translateX(0);
-       transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -o-transform: translateX(100px);
+        transform: translateX(100px);
+    }
+    100% {
+        opacity: 1;
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 @keyframes fade-in-right-sm {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateX(100px);
-         -o-transform: translateX(100px);
-            transform: translateX(100px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-         -o-transform: translateX(0);
-            transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateX(100px);
+        -o-transform: translateX(100px);
+        transform: translateX(100px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 .fade-in-right-sm {
-  -webkit-animation-name: fade-in-right-sm;
-       -o-animation-name: fade-in-right-sm;
-          animation-name: fade-in-right-sm;
+    -webkit-animation-name: fade-in-right-sm;
+    -o-animation-name: fade-in-right-sm;
+    animation-name: fade-in-right-sm;
 }
+
 @-webkit-keyframes fade-out-right-sm {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-            transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateX(100px);
-            transform: translateX(100px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateX(100px);
+        transform: translateX(100px);
+    }
 }
+
 @-o-keyframes fade-out-right-sm {
-  0% {
-    opacity: 1;
-    -o-transform: translateX(0);
-       transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -o-transform: translateX(100px);
-       transform: translateX(100px);
-  }
+    0% {
+        opacity: 1;
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -o-transform: translateX(100px);
+        transform: translateX(100px);
+    }
 }
+
 @keyframes fade-out-right-sm {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-         -o-transform: translateX(0);
-            transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateX(100px);
-         -o-transform: translateX(100px);
-            transform: translateX(100px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateX(100px);
+        -o-transform: translateX(100px);
+        transform: translateX(100px);
+    }
 }
+
 .fade-out-right-sm {
-  -webkit-animation-name: fade-out-right-sm;
-       -o-animation-name: fade-out-right-sm;
-          animation-name: fade-out-right-sm;
+    -webkit-animation-name: fade-out-right-sm;
+    -o-animation-name: fade-out-right-sm;
+    animation-name: fade-out-right-sm;
 }
+
 @-webkit-keyframes fade-in-right-lg {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateX(1500px);
-            transform: translateX(1500px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-            transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateX(1500px);
+        transform: translateX(1500px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 @-o-keyframes fade-in-right-lg {
-  0% {
-    opacity: 0;
-    -o-transform: translateX(1500px);
-       transform: translateX(1500px);
-  }
-  100% {
-    opacity: 1;
-    -o-transform: translateX(0);
-       transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -o-transform: translateX(1500px);
+        transform: translateX(1500px);
+    }
+    100% {
+        opacity: 1;
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 @keyframes fade-in-right-lg {
-  0% {
-    opacity: 0;
-    -webkit-transform: translateX(1500px);
-         -o-transform: translateX(1500px);
-            transform: translateX(1500px);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-         -o-transform: translateX(0);
-            transform: translateX(0);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: translateX(1500px);
+        -o-transform: translateX(1500px);
+        transform: translateX(1500px);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
 }
+
 .fade-in-right-lg {
-  -webkit-animation-name: fade-in-right-lg;
-       -o-animation-name: fade-in-right-lg;
-          animation-name: fade-in-right-lg;
+    -webkit-animation-name: fade-in-right-lg;
+    -o-animation-name: fade-in-right-lg;
+    animation-name: fade-in-right-lg;
 }
+
 @-webkit-keyframes fade-out-right-lg {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-            transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateX(1500px);
-            transform: translateX(1500px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateX(1500px);
+        transform: translateX(1500px);
+    }
 }
+
 @-o-keyframes fade-out-right-lg {
-  0% {
-    opacity: 1;
-    -o-transform: translateX(0);
-       transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -o-transform: translateX(1500px);
-       transform: translateX(1500px);
-  }
+    0% {
+        opacity: 1;
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -o-transform: translateX(1500px);
+        transform: translateX(1500px);
+    }
 }
+
 @keyframes fade-out-right-lg {
-  0% {
-    opacity: 1;
-    -webkit-transform: translateX(0);
-         -o-transform: translateX(0);
-            transform: translateX(0);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: translateX(1500px);
-         -o-transform: translateX(1500px);
-            transform: translateX(1500px);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: translateX(0);
+        -o-transform: translateX(0);
+        transform: translateX(0);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: translateX(1500px);
+        -o-transform: translateX(1500px);
+        transform: translateX(1500px);
+    }
 }
+
 .fade-out-right-lg {
-  -webkit-animation-name: fade-out-right-lg;
-       -o-animation-name: fade-out-right-lg;
-          animation-name: fade-out-right-lg;
+    -webkit-animation-name: fade-out-right-lg;
+    -o-animation-name: fade-out-right-lg;
+    animation-name: fade-out-right-lg;
 }
+
 @-webkit-keyframes rotate-in {
-  0% {
-    opacity: 0;
-    -webkit-transform: rotate(-90deg);
-            transform: rotate(-90deg);
-    -webkit-transform-origin: center center;
-            transform-origin: center center;
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: rotate(0);
-            transform: rotate(0);
-    -webkit-transform-origin: center center;
-            transform-origin: center center;
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: rotate(-90deg);
+        transform: rotate(-90deg);
+        -webkit-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: rotate(0);
+        transform: rotate(0);
+        -webkit-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 @-o-keyframes rotate-in {
-  0% {
-    opacity: 0;
-    -o-transform: rotate(-90deg);
-       transform: rotate(-90deg);
-    -o-transform-origin: center center;
-       transform-origin: center center;
-  }
-  100% {
-    opacity: 1;
-    -o-transform: rotate(0);
-       transform: rotate(0);
-    -o-transform-origin: center center;
-       transform-origin: center center;
-  }
+    0% {
+        opacity: 0;
+        -o-transform: rotate(-90deg);
+        transform: rotate(-90deg);
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 1;
+        -o-transform: rotate(0);
+        transform: rotate(0);
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 @keyframes rotate-in {
-  0% {
-    opacity: 0;
-    -webkit-transform: rotate(-90deg);
-         -o-transform: rotate(-90deg);
-            transform: rotate(-90deg);
-    -webkit-transform-origin: center center;
-         -o-transform-origin: center center;
-            transform-origin: center center;
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: rotate(0);
-         -o-transform: rotate(0);
-            transform: rotate(0);
-    -webkit-transform-origin: center center;
-         -o-transform-origin: center center;
-            transform-origin: center center;
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: rotate(-90deg);
+        -o-transform: rotate(-90deg);
+        transform: rotate(-90deg);
+        -webkit-transform-origin: center center;
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: rotate(0);
+        -o-transform: rotate(0);
+        transform: rotate(0);
+        -webkit-transform-origin: center center;
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 .rotate-in {
-  -webkit-animation-name: rotate-in;
-       -o-animation-name: rotate-in;
-          animation-name: rotate-in;
+    -webkit-animation-name: rotate-in;
+    -o-animation-name: rotate-in;
+    animation-name: rotate-in;
 }
+
 @-webkit-keyframes rotate-out {
-  0% {
-    opacity: 1;
-    -webkit-transform: rotate(0);
-            transform: rotate(0);
-    -webkit-transform-origin: center center;
-            transform-origin: center center;
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: rotate(90deg);
-            transform: rotate(90deg);
-    -webkit-transform-origin: center center;
-            transform-origin: center center;
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: rotate(0);
+        transform: rotate(0);
+        -webkit-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: rotate(90deg);
+        transform: rotate(90deg);
+        -webkit-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 @-o-keyframes rotate-out {
-  0% {
-    opacity: 1;
-    -o-transform: rotate(0);
-       transform: rotate(0);
-    -o-transform-origin: center center;
-       transform-origin: center center;
-  }
-  100% {
-    opacity: 0;
-    -o-transform: rotate(90deg);
-       transform: rotate(90deg);
-    -o-transform-origin: center center;
-       transform-origin: center center;
-  }
+    0% {
+        opacity: 1;
+        -o-transform: rotate(0);
+        transform: rotate(0);
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 0;
+        -o-transform: rotate(90deg);
+        transform: rotate(90deg);
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 @keyframes rotate-out {
-  0% {
-    opacity: 1;
-    -webkit-transform: rotate(0);
-         -o-transform: rotate(0);
-            transform: rotate(0);
-    -webkit-transform-origin: center center;
-         -o-transform-origin: center center;
-            transform-origin: center center;
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: rotate(90deg);
-         -o-transform: rotate(90deg);
-            transform: rotate(90deg);
-    -webkit-transform-origin: center center;
-         -o-transform-origin: center center;
-            transform-origin: center center;
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: rotate(0);
+        -o-transform: rotate(0);
+        transform: rotate(0);
+        -webkit-transform-origin: center center;
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: rotate(90deg);
+        -o-transform: rotate(90deg);
+        transform: rotate(90deg);
+        -webkit-transform-origin: center center;
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 .rotate-out {
-  -webkit-animation-name: rotate-out;
-       -o-animation-name: rotate-out;
-          animation-name: rotate-out;
+    -webkit-animation-name: rotate-out;
+    -o-animation-name: rotate-out;
+    animation-name: rotate-out;
 }
+
 @-webkit-keyframes rotate-in-sm {
-  0% {
-    opacity: 0;
-    -webkit-transform: rotate(-45deg);
-            transform: rotate(-45deg);
-    -webkit-transform-origin: center center;
-            transform-origin: center center;
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: rotate(0);
-            transform: rotate(0);
-    -webkit-transform-origin: center center;
-            transform-origin: center center;
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: rotate(-45deg);
+        transform: rotate(-45deg);
+        -webkit-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: rotate(0);
+        transform: rotate(0);
+        -webkit-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 @-o-keyframes rotate-in-sm {
-  0% {
-    opacity: 0;
-    -o-transform: rotate(-45deg);
-       transform: rotate(-45deg);
-    -o-transform-origin: center center;
-       transform-origin: center center;
-  }
-  100% {
-    opacity: 1;
-    -o-transform: rotate(0);
-       transform: rotate(0);
-    -o-transform-origin: center center;
-       transform-origin: center center;
-  }
+    0% {
+        opacity: 0;
+        -o-transform: rotate(-45deg);
+        transform: rotate(-45deg);
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 1;
+        -o-transform: rotate(0);
+        transform: rotate(0);
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 @keyframes rotate-in-sm {
-  0% {
-    opacity: 0;
-    -webkit-transform: rotate(-45deg);
-         -o-transform: rotate(-45deg);
-            transform: rotate(-45deg);
-    -webkit-transform-origin: center center;
-         -o-transform-origin: center center;
-            transform-origin: center center;
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: rotate(0);
-         -o-transform: rotate(0);
-            transform: rotate(0);
-    -webkit-transform-origin: center center;
-         -o-transform-origin: center center;
-            transform-origin: center center;
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: rotate(-45deg);
+        -o-transform: rotate(-45deg);
+        transform: rotate(-45deg);
+        -webkit-transform-origin: center center;
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: rotate(0);
+        -o-transform: rotate(0);
+        transform: rotate(0);
+        -webkit-transform-origin: center center;
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 .rotate-in-sm {
-  -webkit-animation-name: rotate-in-sm;
-       -o-animation-name: rotate-in-sm;
-          animation-name: rotate-in-sm;
+    -webkit-animation-name: rotate-in-sm;
+    -o-animation-name: rotate-in-sm;
+    animation-name: rotate-in-sm;
 }
+
 @-webkit-keyframes rotate-out-sm {
-  0% {
-    opacity: 1;
-    -webkit-transform: rotate(0);
-            transform: rotate(0);
-    -webkit-transform-origin: center center;
-            transform-origin: center center;
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: rotate(45deg);
-            transform: rotate(45deg);
-    -webkit-transform-origin: center center;
-            transform-origin: center center;
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: rotate(0);
+        transform: rotate(0);
+        -webkit-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: rotate(45deg);
+        transform: rotate(45deg);
+        -webkit-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 @-o-keyframes rotate-out-sm {
-  0% {
-    opacity: 1;
-    -o-transform: rotate(0);
-       transform: rotate(0);
-    -o-transform-origin: center center;
-       transform-origin: center center;
-  }
-  100% {
-    opacity: 0;
-    -o-transform: rotate(45deg);
-       transform: rotate(45deg);
-    -o-transform-origin: center center;
-       transform-origin: center center;
-  }
+    0% {
+        opacity: 1;
+        -o-transform: rotate(0);
+        transform: rotate(0);
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 0;
+        -o-transform: rotate(45deg);
+        transform: rotate(45deg);
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 @keyframes rotate-out-sm {
-  0% {
-    opacity: 1;
-    -webkit-transform: rotate(0);
-         -o-transform: rotate(0);
-            transform: rotate(0);
-    -webkit-transform-origin: center center;
-         -o-transform-origin: center center;
-            transform-origin: center center;
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: rotate(45deg);
-         -o-transform: rotate(45deg);
-            transform: rotate(45deg);
-    -webkit-transform-origin: center center;
-         -o-transform-origin: center center;
-            transform-origin: center center;
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: rotate(0);
+        -o-transform: rotate(0);
+        transform: rotate(0);
+        -webkit-transform-origin: center center;
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: rotate(45deg);
+        -o-transform: rotate(45deg);
+        transform: rotate(45deg);
+        -webkit-transform-origin: center center;
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 .rotate-out-sm {
-  -webkit-animation-name: rotate-out-sm;
-       -o-animation-name: rotate-out-sm;
-          animation-name: rotate-out-sm;
+    -webkit-animation-name: rotate-out-sm;
+    -o-animation-name: rotate-out-sm;
+    animation-name: rotate-out-sm;
 }
+
 @-webkit-keyframes rotate-in-lg {
-  0% {
-    opacity: 0;
-    -webkit-transform: rotate(-180deg);
-            transform: rotate(-180deg);
-    -webkit-transform-origin: center center;
-            transform-origin: center center;
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: rotate(0);
-            transform: rotate(0);
-    -webkit-transform-origin: center center;
-            transform-origin: center center;
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: rotate(-180deg);
+        transform: rotate(-180deg);
+        -webkit-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: rotate(0);
+        transform: rotate(0);
+        -webkit-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 @-o-keyframes rotate-in-lg {
-  0% {
-    opacity: 0;
-    -o-transform: rotate(-180deg);
-       transform: rotate(-180deg);
-    -o-transform-origin: center center;
-       transform-origin: center center;
-  }
-  100% {
-    opacity: 1;
-    -o-transform: rotate(0);
-       transform: rotate(0);
-    -o-transform-origin: center center;
-       transform-origin: center center;
-  }
+    0% {
+        opacity: 0;
+        -o-transform: rotate(-180deg);
+        transform: rotate(-180deg);
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 1;
+        -o-transform: rotate(0);
+        transform: rotate(0);
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 @keyframes rotate-in-lg {
-  0% {
-    opacity: 0;
-    -webkit-transform: rotate(-180deg);
-         -o-transform: rotate(-180deg);
-            transform: rotate(-180deg);
-    -webkit-transform-origin: center center;
-         -o-transform-origin: center center;
-            transform-origin: center center;
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: rotate(0);
-         -o-transform: rotate(0);
-            transform: rotate(0);
-    -webkit-transform-origin: center center;
-         -o-transform-origin: center center;
-            transform-origin: center center;
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: rotate(-180deg);
+        -o-transform: rotate(-180deg);
+        transform: rotate(-180deg);
+        -webkit-transform-origin: center center;
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: rotate(0);
+        -o-transform: rotate(0);
+        transform: rotate(0);
+        -webkit-transform-origin: center center;
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 .rotate-in-lg {
-  -webkit-animation-name: rotate-in-lg;
-       -o-animation-name: rotate-in-lg;
-          animation-name: rotate-in-lg;
+    -webkit-animation-name: rotate-in-lg;
+    -o-animation-name: rotate-in-lg;
+    animation-name: rotate-in-lg;
 }
+
 @-webkit-keyframes rotate-out-lg {
-  0% {
-    opacity: 1;
-    -webkit-transform: rotate(0);
-            transform: rotate(0);
-    -webkit-transform-origin: center center;
-            transform-origin: center center;
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: rotate(180deg);
-            transform: rotate(180deg);
-    -webkit-transform-origin: center center;
-            transform-origin: center center;
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: rotate(0);
+        transform: rotate(0);
+        -webkit-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: rotate(180deg);
+        transform: rotate(180deg);
+        -webkit-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 @-o-keyframes rotate-out-lg {
-  0% {
-    opacity: 1;
-    -o-transform: rotate(0);
-       transform: rotate(0);
-    -o-transform-origin: center center;
-       transform-origin: center center;
-  }
-  100% {
-    opacity: 0;
-    -o-transform: rotate(180deg);
-       transform: rotate(180deg);
-    -o-transform-origin: center center;
-       transform-origin: center center;
-  }
+    0% {
+        opacity: 1;
+        -o-transform: rotate(0);
+        transform: rotate(0);
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 0;
+        -o-transform: rotate(180deg);
+        transform: rotate(180deg);
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 @keyframes rotate-out-lg {
-  0% {
-    opacity: 1;
-    -webkit-transform: rotate(0);
-         -o-transform: rotate(0);
-            transform: rotate(0);
-    -webkit-transform-origin: center center;
-         -o-transform-origin: center center;
-            transform-origin: center center;
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: rotate(180deg);
-         -o-transform: rotate(180deg);
-            transform: rotate(180deg);
-    -webkit-transform-origin: center center;
-         -o-transform-origin: center center;
-            transform-origin: center center;
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: rotate(0);
+        -o-transform: rotate(0);
+        transform: rotate(0);
+        -webkit-transform-origin: center center;
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: rotate(180deg);
+        -o-transform: rotate(180deg);
+        transform: rotate(180deg);
+        -webkit-transform-origin: center center;
+        -o-transform-origin: center center;
+        transform-origin: center center;
+    }
 }
+
 .rotate-out-lg {
-  -webkit-animation-name: rotate-out-lg;
-       -o-animation-name: rotate-out-lg;
-          animation-name: rotate-out-lg;
+    -webkit-animation-name: rotate-out-lg;
+    -o-animation-name: rotate-out-lg;
+    animation-name: rotate-out-lg;
 }
+
 @-webkit-keyframes flip-in-x {
-  0% {
-    opacity: 0;
-    -webkit-transform: perspective(550px) rotateX(90deg);
-            transform: perspective(550px) rotateX(90deg);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: perspective(550px) rotateX(0deg);
-            transform: perspective(550px) rotateX(0deg);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: perspective(550px) rotateX(90deg);
+        transform: perspective(550px) rotateX(90deg);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: perspective(550px) rotateX(0deg);
+        transform: perspective(550px) rotateX(0deg);
+    }
 }
+
 @-o-keyframes flip-in-x {
-  0% {
-    opacity: 0;
-    transform: perspective(550px) rotateX(90deg);
-  }
-  100% {
-    opacity: 1;
-    transform: perspective(550px) rotateX(0deg);
-  }
+    0% {
+        opacity: 0;
+        transform: perspective(550px) rotateX(90deg);
+    }
+    100% {
+        opacity: 1;
+        transform: perspective(550px) rotateX(0deg);
+    }
 }
+
 @keyframes flip-in-x {
-  0% {
-    opacity: 0;
-    -webkit-transform: perspective(550px) rotateX(90deg);
-            transform: perspective(550px) rotateX(90deg);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: perspective(550px) rotateX(0deg);
-            transform: perspective(550px) rotateX(0deg);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: perspective(550px) rotateX(90deg);
+        transform: perspective(550px) rotateX(90deg);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: perspective(550px) rotateX(0deg);
+        transform: perspective(550px) rotateX(0deg);
+    }
 }
+
 .flip-in-x {
-  -webkit-animation-name: flip-in-x;
-       -o-animation-name: flip-in-x;
-          animation-name: flip-in-x;
+    -webkit-animation-name: flip-in-x;
+    -o-animation-name: flip-in-x;
+    animation-name: flip-in-x;
 
-  -webkit-backface-visibility: visible !important;
-          backface-visibility: visible !important;
+    -webkit-backface-visibility: visible !important;
+    backface-visibility: visible !important;
 }
+
 @-webkit-keyframes flip-out-x {
-  0% {
-    opacity: 1;
-    -webkit-transform: perspective(550px) rotateX(0deg);
-            transform: perspective(550px) rotateX(0deg);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: perspective(550px) rotateX(90deg);
-            transform: perspective(550px) rotateX(90deg);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: perspective(550px) rotateX(0deg);
+        transform: perspective(550px) rotateX(0deg);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: perspective(550px) rotateX(90deg);
+        transform: perspective(550px) rotateX(90deg);
+    }
 }
+
 @-o-keyframes flip-out-x {
-  0% {
-    opacity: 1;
-    transform: perspective(550px) rotateX(0deg);
-  }
-  100% {
-    opacity: 0;
-    transform: perspective(550px) rotateX(90deg);
-  }
+    0% {
+        opacity: 1;
+        transform: perspective(550px) rotateX(0deg);
+    }
+    100% {
+        opacity: 0;
+        transform: perspective(550px) rotateX(90deg);
+    }
 }
+
 @keyframes flip-out-x {
-  0% {
-    opacity: 1;
-    -webkit-transform: perspective(550px) rotateX(0deg);
-            transform: perspective(550px) rotateX(0deg);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: perspective(550px) rotateX(90deg);
-            transform: perspective(550px) rotateX(90deg);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: perspective(550px) rotateX(0deg);
+        transform: perspective(550px) rotateX(0deg);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: perspective(550px) rotateX(90deg);
+        transform: perspective(550px) rotateX(90deg);
+    }
 }
+
 .flip-out-x {
-  -webkit-animation-name: flip-out-x;
-       -o-animation-name: flip-out-x;
-          animation-name: flip-out-x;
+    -webkit-animation-name: flip-out-x;
+    -o-animation-name: flip-out-x;
+    animation-name: flip-out-x;
 
-  -webkit-backface-visibility: visible !important;
-          backface-visibility: visible !important;
+    -webkit-backface-visibility: visible !important;
+    backface-visibility: visible !important;
 }
+
 @-webkit-keyframes flip-in-x-nr {
-  0% {
-    opacity: 0;
-    -webkit-transform: perspective(100px) rotateX(90deg);
-            transform: perspective(100px) rotateX(90deg);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: perspective(100px) rotateX(0deg);
-            transform: perspective(100px) rotateX(0deg);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: perspective(100px) rotateX(90deg);
+        transform: perspective(100px) rotateX(90deg);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: perspective(100px) rotateX(0deg);
+        transform: perspective(100px) rotateX(0deg);
+    }
 }
+
 @-o-keyframes flip-in-x-nr {
-  0% {
-    opacity: 0;
-    transform: perspective(100px) rotateX(90deg);
-  }
-  100% {
-    opacity: 1;
-    transform: perspective(100px) rotateX(0deg);
-  }
+    0% {
+        opacity: 0;
+        transform: perspective(100px) rotateX(90deg);
+    }
+    100% {
+        opacity: 1;
+        transform: perspective(100px) rotateX(0deg);
+    }
 }
+
 @keyframes flip-in-x-nr {
-  0% {
-    opacity: 0;
-    -webkit-transform: perspective(100px) rotateX(90deg);
-            transform: perspective(100px) rotateX(90deg);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: perspective(100px) rotateX(0deg);
-            transform: perspective(100px) rotateX(0deg);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: perspective(100px) rotateX(90deg);
+        transform: perspective(100px) rotateX(90deg);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: perspective(100px) rotateX(0deg);
+        transform: perspective(100px) rotateX(0deg);
+    }
 }
+
 .flip-in-x-nr {
-  -webkit-animation-name: flip-in-x-nr;
-       -o-animation-name: flip-in-x-nr;
-          animation-name: flip-in-x-nr;
+    -webkit-animation-name: flip-in-x-nr;
+    -o-animation-name: flip-in-x-nr;
+    animation-name: flip-in-x-nr;
 
-  -webkit-backface-visibility: visible !important;
-          backface-visibility: visible !important;
+    -webkit-backface-visibility: visible !important;
+    backface-visibility: visible !important;
 }
+
 @-webkit-keyframes flip-out-x-nr {
-  0% {
-    opacity: 1;
-    -webkit-transform: perspective(100px) rotateX(0deg);
-            transform: perspective(100px) rotateX(0deg);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: perspective(100px) rotateX(90deg);
-            transform: perspective(100px) rotateX(90deg);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: perspective(100px) rotateX(0deg);
+        transform: perspective(100px) rotateX(0deg);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: perspective(100px) rotateX(90deg);
+        transform: perspective(100px) rotateX(90deg);
+    }
 }
+
 @-o-keyframes flip-out-x-nr {
-  0% {
-    opacity: 1;
-    transform: perspective(100px) rotateX(0deg);
-  }
-  100% {
-    opacity: 0;
-    transform: perspective(100px) rotateX(90deg);
-  }
+    0% {
+        opacity: 1;
+        transform: perspective(100px) rotateX(0deg);
+    }
+    100% {
+        opacity: 0;
+        transform: perspective(100px) rotateX(90deg);
+    }
 }
+
 @keyframes flip-out-x-nr {
-  0% {
-    opacity: 1;
-    -webkit-transform: perspective(100px) rotateX(0deg);
-            transform: perspective(100px) rotateX(0deg);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: perspective(100px) rotateX(90deg);
-            transform: perspective(100px) rotateX(90deg);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: perspective(100px) rotateX(0deg);
+        transform: perspective(100px) rotateX(0deg);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: perspective(100px) rotateX(90deg);
+        transform: perspective(100px) rotateX(90deg);
+    }
 }
+
 .flip-out-x-nr {
-  -webkit-animation-name: flip-out-x-nr;
-       -o-animation-name: flip-out-x-nr;
-          animation-name: flip-out-x-nr;
+    -webkit-animation-name: flip-out-x-nr;
+    -o-animation-name: flip-out-x-nr;
+    animation-name: flip-out-x-nr;
 
-  -webkit-backface-visibility: visible !important;
-          backface-visibility: visible !important;
+    -webkit-backface-visibility: visible !important;
+    backface-visibility: visible !important;
 }
+
 @-webkit-keyframes flip-in-x-fr {
-  0% {
-    opacity: 0;
-    -webkit-transform: perspective(1000px) rotateX(90deg);
-            transform: perspective(1000px) rotateX(90deg);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: perspective(1000px) rotateX(0deg);
-            transform: perspective(1000px) rotateX(0deg);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: perspective(1000px) rotateX(90deg);
+        transform: perspective(1000px) rotateX(90deg);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: perspective(1000px) rotateX(0deg);
+        transform: perspective(1000px) rotateX(0deg);
+    }
 }
+
 @-o-keyframes flip-in-x-fr {
-  0% {
-    opacity: 0;
-    transform: perspective(1000px) rotateX(90deg);
-  }
-  100% {
-    opacity: 1;
-    transform: perspective(1000px) rotateX(0deg);
-  }
+    0% {
+        opacity: 0;
+        transform: perspective(1000px) rotateX(90deg);
+    }
+    100% {
+        opacity: 1;
+        transform: perspective(1000px) rotateX(0deg);
+    }
 }
+
 @keyframes flip-in-x-fr {
-  0% {
-    opacity: 0;
-    -webkit-transform: perspective(1000px) rotateX(90deg);
-            transform: perspective(1000px) rotateX(90deg);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: perspective(1000px) rotateX(0deg);
-            transform: perspective(1000px) rotateX(0deg);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: perspective(1000px) rotateX(90deg);
+        transform: perspective(1000px) rotateX(90deg);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: perspective(1000px) rotateX(0deg);
+        transform: perspective(1000px) rotateX(0deg);
+    }
 }
+
 .flip-in-x-fr {
-  -webkit-animation-name: flip-in-x-fr;
-       -o-animation-name: flip-in-x-fr;
-          animation-name: flip-in-x-fr;
+    -webkit-animation-name: flip-in-x-fr;
+    -o-animation-name: flip-in-x-fr;
+    animation-name: flip-in-x-fr;
 
-  -webkit-backface-visibility: visible !important;
-          backface-visibility: visible !important;
+    -webkit-backface-visibility: visible !important;
+    backface-visibility: visible !important;
 }
+
 @-webkit-keyframes flip-out-x-fr {
-  0% {
-    opacity: 1;
-    -webkit-transform: perspective(1000px) rotateX(0deg);
-            transform: perspective(1000px) rotateX(0deg);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: perspective(1000px) rotateX(90deg);
-            transform: perspective(1000px) rotateX(90deg);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: perspective(1000px) rotateX(0deg);
+        transform: perspective(1000px) rotateX(0deg);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: perspective(1000px) rotateX(90deg);
+        transform: perspective(1000px) rotateX(90deg);
+    }
 }
+
 @-o-keyframes flip-out-x-fr {
-  0% {
-    opacity: 1;
-    transform: perspective(1000px) rotateX(0deg);
-  }
-  100% {
-    opacity: 0;
-    transform: perspective(1000px) rotateX(90deg);
-  }
+    0% {
+        opacity: 1;
+        transform: perspective(1000px) rotateX(0deg);
+    }
+    100% {
+        opacity: 0;
+        transform: perspective(1000px) rotateX(90deg);
+    }
 }
+
 @keyframes flip-out-x-fr {
-  0% {
-    opacity: 1;
-    -webkit-transform: perspective(1000px) rotateX(0deg);
-            transform: perspective(1000px) rotateX(0deg);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: perspective(1000px) rotateX(90deg);
-            transform: perspective(1000px) rotateX(90deg);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: perspective(1000px) rotateX(0deg);
+        transform: perspective(1000px) rotateX(0deg);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: perspective(1000px) rotateX(90deg);
+        transform: perspective(1000px) rotateX(90deg);
+    }
 }
+
 .flip-out-x-fr {
-  -webkit-animation-name: flip-out-x-fr;
-       -o-animation-name: flip-out-x-fr;
-          animation-name: flip-out-x-fr;
+    -webkit-animation-name: flip-out-x-fr;
+    -o-animation-name: flip-out-x-fr;
+    animation-name: flip-out-x-fr;
 
-  -webkit-backface-visibility: visible !important;
-          backface-visibility: visible !important;
+    -webkit-backface-visibility: visible !important;
+    backface-visibility: visible !important;
 }
+
 @-webkit-keyframes flip-in-y {
-  0% {
-    opacity: 0;
-    -webkit-transform: perspective(550px) rotateY(90deg);
-            transform: perspective(550px) rotateY(90deg);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: perspective(550px) rotateY(0deg);
-            transform: perspective(550px) rotateY(0deg);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: perspective(550px) rotateY(90deg);
+        transform: perspective(550px) rotateY(90deg);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: perspective(550px) rotateY(0deg);
+        transform: perspective(550px) rotateY(0deg);
+    }
 }
+
 @-o-keyframes flip-in-y {
-  0% {
-    opacity: 0;
-    transform: perspective(550px) rotateY(90deg);
-  }
-  100% {
-    opacity: 1;
-    transform: perspective(550px) rotateY(0deg);
-  }
+    0% {
+        opacity: 0;
+        transform: perspective(550px) rotateY(90deg);
+    }
+    100% {
+        opacity: 1;
+        transform: perspective(550px) rotateY(0deg);
+    }
 }
+
 @keyframes flip-in-y {
-  0% {
-    opacity: 0;
-    -webkit-transform: perspective(550px) rotateY(90deg);
-            transform: perspective(550px) rotateY(90deg);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: perspective(550px) rotateY(0deg);
-            transform: perspective(550px) rotateY(0deg);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: perspective(550px) rotateY(90deg);
+        transform: perspective(550px) rotateY(90deg);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: perspective(550px) rotateY(0deg);
+        transform: perspective(550px) rotateY(0deg);
+    }
 }
+
 .flip-in-y {
-  -webkit-animation-name: flip-in-y;
-       -o-animation-name: flip-in-y;
-          animation-name: flip-in-y;
+    -webkit-animation-name: flip-in-y;
+    -o-animation-name: flip-in-y;
+    animation-name: flip-in-y;
 
-  -webkit-backface-visibility: visible !important;
-          backface-visibility: visible !important;
+    -webkit-backface-visibility: visible !important;
+    backface-visibility: visible !important;
 }
+
 @-webkit-keyframes flip-out-y {
-  0% {
-    opacity: 1;
-    -webkit-transform: perspective(550px) rotateY(0deg);
-            transform: perspective(550px) rotateY(0deg);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: perspective(550px) rotateY(90deg);
-            transform: perspective(550px) rotateY(90deg);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: perspective(550px) rotateY(0deg);
+        transform: perspective(550px) rotateY(0deg);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: perspective(550px) rotateY(90deg);
+        transform: perspective(550px) rotateY(90deg);
+    }
 }
+
 @-o-keyframes flip-out-y {
-  0% {
-    opacity: 1;
-    transform: perspective(550px) rotateY(0deg);
-  }
-  100% {
-    opacity: 0;
-    transform: perspective(550px) rotateY(90deg);
-  }
+    0% {
+        opacity: 1;
+        transform: perspective(550px) rotateY(0deg);
+    }
+    100% {
+        opacity: 0;
+        transform: perspective(550px) rotateY(90deg);
+    }
 }
+
 @keyframes flip-out-y {
-  0% {
-    opacity: 1;
-    -webkit-transform: perspective(550px) rotateY(0deg);
-            transform: perspective(550px) rotateY(0deg);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: perspective(550px) rotateY(90deg);
-            transform: perspective(550px) rotateY(90deg);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: perspective(550px) rotateY(0deg);
+        transform: perspective(550px) rotateY(0deg);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: perspective(550px) rotateY(90deg);
+        transform: perspective(550px) rotateY(90deg);
+    }
 }
+
 .flip-out-y {
-  -webkit-animation-name: flip-out-y;
-       -o-animation-name: flip-out-y;
-          animation-name: flip-out-y;
+    -webkit-animation-name: flip-out-y;
+    -o-animation-name: flip-out-y;
+    animation-name: flip-out-y;
 
-  -webkit-backface-visibility: visible !important;
-          backface-visibility: visible !important;
+    -webkit-backface-visibility: visible !important;
+    backface-visibility: visible !important;
 }
+
 @-webkit-keyframes flip-in-y-nr {
-  0% {
-    opacity: 0;
-    -webkit-transform: perspective(100px) rotateY(90deg);
-            transform: perspective(100px) rotateY(90deg);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: perspective(100px) rotateY(0deg);
-            transform: perspective(100px) rotateY(0deg);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: perspective(100px) rotateY(90deg);
+        transform: perspective(100px) rotateY(90deg);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: perspective(100px) rotateY(0deg);
+        transform: perspective(100px) rotateY(0deg);
+    }
 }
+
 @-o-keyframes flip-in-y-nr {
-  0% {
-    opacity: 0;
-    transform: perspective(100px) rotateY(90deg);
-  }
-  100% {
-    opacity: 1;
-    transform: perspective(100px) rotateY(0deg);
-  }
+    0% {
+        opacity: 0;
+        transform: perspective(100px) rotateY(90deg);
+    }
+    100% {
+        opacity: 1;
+        transform: perspective(100px) rotateY(0deg);
+    }
 }
+
 @keyframes flip-in-y-nr {
-  0% {
-    opacity: 0;
-    -webkit-transform: perspective(100px) rotateY(90deg);
-            transform: perspective(100px) rotateY(90deg);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: perspective(100px) rotateY(0deg);
-            transform: perspective(100px) rotateY(0deg);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: perspective(100px) rotateY(90deg);
+        transform: perspective(100px) rotateY(90deg);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: perspective(100px) rotateY(0deg);
+        transform: perspective(100px) rotateY(0deg);
+    }
 }
+
 .flip-in-y-nr {
-  -webkit-animation-name: flip-in-y-nr;
-       -o-animation-name: flip-in-y-nr;
-          animation-name: flip-in-y-nr;
+    -webkit-animation-name: flip-in-y-nr;
+    -o-animation-name: flip-in-y-nr;
+    animation-name: flip-in-y-nr;
 
-  -webkit-backface-visibility: visible !important;
-          backface-visibility: visible !important;
+    -webkit-backface-visibility: visible !important;
+    backface-visibility: visible !important;
 }
+
 @-webkit-keyframes flip-out-y-nr {
-  0% {
-    opacity: 1;
-    -webkit-transform: perspective(100px) rotateY(0deg);
-            transform: perspective(100px) rotateY(0deg);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: perspective(100px) rotateY(90deg);
-            transform: perspective(100px) rotateY(90deg);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: perspective(100px) rotateY(0deg);
+        transform: perspective(100px) rotateY(0deg);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: perspective(100px) rotateY(90deg);
+        transform: perspective(100px) rotateY(90deg);
+    }
 }
+
 @-o-keyframes flip-out-y-nr {
-  0% {
-    opacity: 1;
-    transform: perspective(100px) rotateY(0deg);
-  }
-  100% {
-    opacity: 0;
-    transform: perspective(100px) rotateY(90deg);
-  }
+    0% {
+        opacity: 1;
+        transform: perspective(100px) rotateY(0deg);
+    }
+    100% {
+        opacity: 0;
+        transform: perspective(100px) rotateY(90deg);
+    }
 }
+
 @keyframes flip-out-y-nr {
-  0% {
-    opacity: 1;
-    -webkit-transform: perspective(100px) rotateY(0deg);
-            transform: perspective(100px) rotateY(0deg);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: perspective(100px) rotateY(90deg);
-            transform: perspective(100px) rotateY(90deg);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: perspective(100px) rotateY(0deg);
+        transform: perspective(100px) rotateY(0deg);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: perspective(100px) rotateY(90deg);
+        transform: perspective(100px) rotateY(90deg);
+    }
 }
+
 .flip-out-y-nr {
-  -webkit-animation-name: flip-out-y-nr;
-       -o-animation-name: flip-out-y-nr;
-          animation-name: flip-out-y-nr;
+    -webkit-animation-name: flip-out-y-nr;
+    -o-animation-name: flip-out-y-nr;
+    animation-name: flip-out-y-nr;
 
-  -webkit-backface-visibility: visible !important;
-          backface-visibility: visible !important;
+    -webkit-backface-visibility: visible !important;
+    backface-visibility: visible !important;
 }
+
 @-webkit-keyframes flip-in-y-fr {
-  0% {
-    opacity: 0;
-    -webkit-transform: perspective(1000px) rotateY(90deg);
-            transform: perspective(1000px) rotateY(90deg);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: perspective(1000px) rotateY(0deg);
-            transform: perspective(1000px) rotateY(0deg);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: perspective(1000px) rotateY(90deg);
+        transform: perspective(1000px) rotateY(90deg);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: perspective(1000px) rotateY(0deg);
+        transform: perspective(1000px) rotateY(0deg);
+    }
 }
+
 @-o-keyframes flip-in-y-fr {
-  0% {
-    opacity: 0;
-    transform: perspective(1000px) rotateY(90deg);
-  }
-  100% {
-    opacity: 1;
-    transform: perspective(1000px) rotateY(0deg);
-  }
+    0% {
+        opacity: 0;
+        transform: perspective(1000px) rotateY(90deg);
+    }
+    100% {
+        opacity: 1;
+        transform: perspective(1000px) rotateY(0deg);
+    }
 }
+
 @keyframes flip-in-y-fr {
-  0% {
-    opacity: 0;
-    -webkit-transform: perspective(1000px) rotateY(90deg);
-            transform: perspective(1000px) rotateY(90deg);
-  }
-  100% {
-    opacity: 1;
-    -webkit-transform: perspective(1000px) rotateY(0deg);
-            transform: perspective(1000px) rotateY(0deg);
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: perspective(1000px) rotateY(90deg);
+        transform: perspective(1000px) rotateY(90deg);
+    }
+    100% {
+        opacity: 1;
+        -webkit-transform: perspective(1000px) rotateY(0deg);
+        transform: perspective(1000px) rotateY(0deg);
+    }
 }
+
 .flip-in-y-fr {
-  -webkit-animation-name: flip-in-y-fr;
-       -o-animation-name: flip-in-y-fr;
-          animation-name: flip-in-y-fr;
+    -webkit-animation-name: flip-in-y-fr;
+    -o-animation-name: flip-in-y-fr;
+    animation-name: flip-in-y-fr;
 
-  -webkit-backface-visibility: visible !important;
-          backface-visibility: visible !important;
+    -webkit-backface-visibility: visible !important;
+    backface-visibility: visible !important;
 }
+
 @-webkit-keyframes flip-out-y-fr {
-  0% {
-    opacity: 1;
-    -webkit-transform: perspective(1000px) rotateY(0deg);
-            transform: perspective(1000px) rotateY(0deg);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: perspective(1000px) rotateY(90deg);
-            transform: perspective(1000px) rotateY(90deg);
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: perspective(1000px) rotateY(0deg);
+        transform: perspective(1000px) rotateY(0deg);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: perspective(1000px) rotateY(90deg);
+        transform: perspective(1000px) rotateY(90deg);
+    }
 }
-@-o-keyframes flip-out-y-fr {
-  0% {
-    opacity: 1;
-    transform: perspective(1000px) rotateY(0deg);
-  }
-  100% {
-    opacity: 0;
-    transform: perspective(1000px) rotateY(90deg);
-  }
-}
-@keyframes flip-out-y-fr {
-  0% {
-    opacity: 1;
-    -webkit-transform: perspective(1000px) rotateY(0deg);
-            transform: perspective(1000px) rotateY(0deg);
-  }
-  100% {
-    opacity: 0;
-    -webkit-transform: perspective(1000px) rotateY(90deg);
-            transform: perspective(1000px) rotateY(90deg);
-  }
-}
-.flip-out-y-fr {
-  -webkit-animation-name: flip-out-y-fr;
-       -o-animation-name: flip-out-y-fr;
-          animation-name: flip-out-y-fr;
 
-  -webkit-backface-visibility: visible !important;
-          backface-visibility: visible !important;
+@-o-keyframes flip-out-y-fr {
+    0% {
+        opacity: 1;
+        transform: perspective(1000px) rotateY(0deg);
+    }
+    100% {
+        opacity: 0;
+        transform: perspective(1000px) rotateY(90deg);
+    }
 }
+
+@keyframes flip-out-y-fr {
+    0% {
+        opacity: 1;
+        -webkit-transform: perspective(1000px) rotateY(0deg);
+        transform: perspective(1000px) rotateY(0deg);
+    }
+    100% {
+        opacity: 0;
+        -webkit-transform: perspective(1000px) rotateY(90deg);
+        transform: perspective(1000px) rotateY(90deg);
+    }
+}
+
+.flip-out-y-fr {
+    -webkit-animation-name: flip-out-y-fr;
+    -o-animation-name: flip-out-y-fr;
+    animation-name: flip-out-y-fr;
+
+    -webkit-backface-visibility: visible !important;
+    backface-visibility: visible !important;
+}
+
 @-webkit-keyframes zoom-in {
-  0% {
-    opacity: 0;
-    -webkit-transform: scale(.7);
-            transform: scale(.7);
-  }
-  100% {
-    opacity: 1;
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: scale(.7);
+        transform: scale(.7);
+    }
+    100% {
+        opacity: 1;
+    }
 }
+
 @-o-keyframes zoom-in {
-  0% {
-    opacity: 0;
-    -o-transform: scale(.7);
-       transform: scale(.7);
-  }
-  100% {
-    opacity: 1;
-  }
+    0% {
+        opacity: 0;
+        -o-transform: scale(.7);
+        transform: scale(.7);
+    }
+    100% {
+        opacity: 1;
+    }
 }
+
 @keyframes zoom-in {
-  0% {
-    opacity: 0;
-    -webkit-transform: scale(.7);
-         -o-transform: scale(.7);
-            transform: scale(.7);
-  }
-  100% {
-    opacity: 1;
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: scale(.7);
+        -o-transform: scale(.7);
+        transform: scale(.7);
+    }
+    100% {
+        opacity: 1;
+    }
 }
+
 .zoom-in {
-  -webkit-animation-name: zoom-in;
-       -o-animation-name: zoom-in;
-          animation-name: zoom-in;
+    -webkit-animation-name: zoom-in;
+    -o-animation-name: zoom-in;
+    animation-name: zoom-in;
 }
+
 @-webkit-keyframes zoom-out {
-  0% {
-    opacity: 1;
-    -webkit-transform: scale(1);
-            transform: scale(1);
-  }
-  50% {
-    opacity: 0;
-    -webkit-transform: scale(.7);
-            transform: scale(.7);
-  }
-  100% {
-    opacity: 0;
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: scale(1);
+        transform: scale(1);
+    }
+    50% {
+        opacity: 0;
+        -webkit-transform: scale(.7);
+        transform: scale(.7);
+    }
+    100% {
+        opacity: 0;
+    }
 }
+
 @-o-keyframes zoom-out {
-  0% {
-    opacity: 1;
-    -o-transform: scale(1);
-       transform: scale(1);
-  }
-  50% {
-    opacity: 0;
-    -o-transform: scale(.7);
-       transform: scale(.7);
-  }
-  100% {
-    opacity: 0;
-  }
+    0% {
+        opacity: 1;
+        -o-transform: scale(1);
+        transform: scale(1);
+    }
+    50% {
+        opacity: 0;
+        -o-transform: scale(.7);
+        transform: scale(.7);
+    }
+    100% {
+        opacity: 0;
+    }
 }
+
 @keyframes zoom-out {
-  0% {
-    opacity: 1;
-    -webkit-transform: scale(1);
-         -o-transform: scale(1);
-            transform: scale(1);
-  }
-  50% {
-    opacity: 0;
-    -webkit-transform: scale(.7);
-         -o-transform: scale(.7);
-            transform: scale(.7);
-  }
-  100% {
-    opacity: 0;
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: scale(1);
+        -o-transform: scale(1);
+        transform: scale(1);
+    }
+    50% {
+        opacity: 0;
+        -webkit-transform: scale(.7);
+        -o-transform: scale(.7);
+        transform: scale(.7);
+    }
+    100% {
+        opacity: 0;
+    }
 }
+
 .zoom-out {
-  -webkit-animation-name: zoom-out;
-       -o-animation-name: zoom-out;
-          animation-name: zoom-out;
+    -webkit-animation-name: zoom-out;
+    -o-animation-name: zoom-out;
+    animation-name: zoom-out;
 }
+
 @-webkit-keyframes zoom-in-sm {
-  0% {
-    opacity: 0;
-    -webkit-transform: scale(.95);
-            transform: scale(.95);
-  }
-  100% {
-    opacity: 1;
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: scale(.95);
+        transform: scale(.95);
+    }
+    100% {
+        opacity: 1;
+    }
 }
+
 @-o-keyframes zoom-in-sm {
-  0% {
-    opacity: 0;
-    -o-transform: scale(.95);
-       transform: scale(.95);
-  }
-  100% {
-    opacity: 1;
-  }
+    0% {
+        opacity: 0;
+        -o-transform: scale(.95);
+        transform: scale(.95);
+    }
+    100% {
+        opacity: 1;
+    }
 }
+
 @keyframes zoom-in-sm {
-  0% {
-    opacity: 0;
-    -webkit-transform: scale(.95);
-         -o-transform: scale(.95);
-            transform: scale(.95);
-  }
-  100% {
-    opacity: 1;
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: scale(.95);
+        -o-transform: scale(.95);
+        transform: scale(.95);
+    }
+    100% {
+        opacity: 1;
+    }
 }
+
 .zoom-in-sm {
-  -webkit-animation-name: zoom-in-sm;
-       -o-animation-name: zoom-in-sm;
-          animation-name: zoom-in-sm;
+    -webkit-animation-name: zoom-in-sm;
+    -o-animation-name: zoom-in-sm;
+    animation-name: zoom-in-sm;
 }
+
 @-webkit-keyframes zoom-out-sm {
-  0% {
-    opacity: 1;
-    -webkit-transform: scale(1);
-            transform: scale(1);
-  }
-  50% {
-    opacity: 0;
-    -webkit-transform: scale(.95);
-            transform: scale(.95);
-  }
-  100% {
-    opacity: 0;
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: scale(1);
+        transform: scale(1);
+    }
+    50% {
+        opacity: 0;
+        -webkit-transform: scale(.95);
+        transform: scale(.95);
+    }
+    100% {
+        opacity: 0;
+    }
 }
+
 @-o-keyframes zoom-out-sm {
-  0% {
-    opacity: 1;
-    -o-transform: scale(1);
-       transform: scale(1);
-  }
-  50% {
-    opacity: 0;
-    -o-transform: scale(.95);
-       transform: scale(.95);
-  }
-  100% {
-    opacity: 0;
-  }
+    0% {
+        opacity: 1;
+        -o-transform: scale(1);
+        transform: scale(1);
+    }
+    50% {
+        opacity: 0;
+        -o-transform: scale(.95);
+        transform: scale(.95);
+    }
+    100% {
+        opacity: 0;
+    }
 }
+
 @keyframes zoom-out-sm {
-  0% {
-    opacity: 1;
-    -webkit-transform: scale(1);
-         -o-transform: scale(1);
-            transform: scale(1);
-  }
-  50% {
-    opacity: 0;
-    -webkit-transform: scale(.95);
-         -o-transform: scale(.95);
-            transform: scale(.95);
-  }
-  100% {
-    opacity: 0;
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: scale(1);
+        -o-transform: scale(1);
+        transform: scale(1);
+    }
+    50% {
+        opacity: 0;
+        -webkit-transform: scale(.95);
+        -o-transform: scale(.95);
+        transform: scale(.95);
+    }
+    100% {
+        opacity: 0;
+    }
 }
+
 .zoom-out-sm {
-  -webkit-animation-name: zoom-out-sm;
-       -o-animation-name: zoom-out-sm;
-          animation-name: zoom-out-sm;
+    -webkit-animation-name: zoom-out-sm;
+    -o-animation-name: zoom-out-sm;
+    animation-name: zoom-out-sm;
 }
+
 @-webkit-keyframes zoom-in-lg {
-  0% {
-    opacity: 0;
-    -webkit-transform: scale(.4);
-            transform: scale(.4);
-  }
-  100% {
-    opacity: 1;
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: scale(.4);
+        transform: scale(.4);
+    }
+    100% {
+        opacity: 1;
+    }
 }
+
 @-o-keyframes zoom-in-lg {
-  0% {
-    opacity: 0;
-    -o-transform: scale(.4);
-       transform: scale(.4);
-  }
-  100% {
-    opacity: 1;
-  }
+    0% {
+        opacity: 0;
+        -o-transform: scale(.4);
+        transform: scale(.4);
+    }
+    100% {
+        opacity: 1;
+    }
 }
+
 @keyframes zoom-in-lg {
-  0% {
-    opacity: 0;
-    -webkit-transform: scale(.4);
-         -o-transform: scale(.4);
-            transform: scale(.4);
-  }
-  100% {
-    opacity: 1;
-  }
+    0% {
+        opacity: 0;
+        -webkit-transform: scale(.4);
+        -o-transform: scale(.4);
+        transform: scale(.4);
+    }
+    100% {
+        opacity: 1;
+    }
 }
+
 .zoom-in-lg {
-  -webkit-animation-name: zoom-in-lg;
-       -o-animation-name: zoom-in-lg;
-          animation-name: zoom-in-lg;
+    -webkit-animation-name: zoom-in-lg;
+    -o-animation-name: zoom-in-lg;
+    animation-name: zoom-in-lg;
 }
+
 @-webkit-keyframes zoom-out-lg {
-  0% {
-    opacity: 1;
-    -webkit-transform: scale(1);
-            transform: scale(1);
-  }
-  50% {
-    opacity: 0;
-    -webkit-transform: scale(.4);
-            transform: scale(.4);
-  }
-  100% {
-    opacity: 0;
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: scale(1);
+        transform: scale(1);
+    }
+    50% {
+        opacity: 0;
+        -webkit-transform: scale(.4);
+        transform: scale(.4);
+    }
+    100% {
+        opacity: 0;
+    }
 }
+
 @-o-keyframes zoom-out-lg {
-  0% {
-    opacity: 1;
-    -o-transform: scale(1);
-       transform: scale(1);
-  }
-  50% {
-    opacity: 0;
-    -o-transform: scale(.4);
-       transform: scale(.4);
-  }
-  100% {
-    opacity: 0;
-  }
+    0% {
+        opacity: 1;
+        -o-transform: scale(1);
+        transform: scale(1);
+    }
+    50% {
+        opacity: 0;
+        -o-transform: scale(.4);
+        transform: scale(.4);
+    }
+    100% {
+        opacity: 0;
+    }
 }
+
 @keyframes zoom-out-lg {
-  0% {
-    opacity: 1;
-    -webkit-transform: scale(1);
-         -o-transform: scale(1);
-            transform: scale(1);
-  }
-  50% {
-    opacity: 0;
-    -webkit-transform: scale(.4);
-         -o-transform: scale(.4);
-            transform: scale(.4);
-  }
-  100% {
-    opacity: 0;
-  }
+    0% {
+        opacity: 1;
+        -webkit-transform: scale(1);
+        -o-transform: scale(1);
+        transform: scale(1);
+    }
+    50% {
+        opacity: 0;
+        -webkit-transform: scale(.4);
+        -o-transform: scale(.4);
+        transform: scale(.4);
+    }
+    100% {
+        opacity: 0;
+    }
 }
+
 .zoom-out-lg {
-  -webkit-animation-name: zoom-out-lg;
-       -o-animation-name: zoom-out-lg;
-          animation-name: zoom-out-lg;
+    -webkit-animation-name: zoom-out-lg;
+    -o-animation-name: zoom-out-lg;
+    animation-name: zoom-out-lg;
 }
+
 .blink-slow {
-  -webkit-animation-name: blink-slow;
-       -o-animation-name: blink-slow;
-          animation-name: blink-slow;
-  -webkit-animation-duration: .3s;
-       -o-animation-duration: .3s;
-          animation-duration: .3s;
-  -webkit-animation-timing-function: ease-in-out;
-       -o-animation-timing-function: ease-in-out;
-          animation-timing-function: ease-in-out;
-  -webkit-animation-iteration-count: infinite;
-       -o-animation-iteration-count: infinite;
-          animation-iteration-count: infinite;
-  -webkit-animation-direction: alternate;
-       -o-animation-direction: alternate;
-          animation-direction: alternate;
+    -webkit-animation-name: blink-slow;
+    -o-animation-name: blink-slow;
+    animation-name: blink-slow;
+    -webkit-animation-duration: .3s;
+    -o-animation-duration: .3s;
+    animation-duration: .3s;
+    -webkit-animation-timing-function: ease-in-out;
+    -o-animation-timing-function: ease-in-out;
+    animation-timing-function: ease-in-out;
+    -webkit-animation-iteration-count: infinite;
+    -o-animation-iteration-count: infinite;
+    animation-iteration-count: infinite;
+    -webkit-animation-direction: alternate;
+    -o-animation-direction: alternate;
+    animation-direction: alternate;
 }
+
 @-webkit-keyframes blink-slow {
-  0% {
-    opacity: .4;
-  }
-  50% {
-    opacity: .7;
-  }
-  100% {
-    opacity: 1;
-  }
+    0% {
+        opacity: .4;
+    }
+    50% {
+        opacity: .7;
+    }
+    100% {
+        opacity: 1;
+    }
 }
+
 @-o-keyframes blink-slow {
-  0% {
-    opacity: .4;
-  }
-  50% {
-    opacity: .7;
-  }
-  100% {
-    opacity: 1;
-  }
+    0% {
+        opacity: .4;
+    }
+    50% {
+        opacity: .7;
+    }
+    100% {
+        opacity: 1;
+    }
 }
+
 @keyframes blink-slow {
-  0% {
-    opacity: .4;
-  }
-  50% {
-    opacity: .7;
-  }
-  100% {
-    opacity: 1;
-  }
+    0% {
+        opacity: .4;
+    }
+    50% {
+        opacity: .7;
+    }
+    100% {
+        opacity: 1;
+    }
 }
+
 @-webkit-keyframes overlay-slide-in-top {
-  0% {
-    height: 100%;
-  }
-  100% {
-    height: 0;
-  }
+    0% {
+        height: 100%;
+    }
+    100% {
+        height: 0;
+    }
 }
+
 @-o-keyframes overlay-slide-in-top {
-  0% {
-    height: 100%;
-  }
-  100% {
-    height: 0;
-  }
+    0% {
+        height: 100%;
+    }
+    100% {
+        height: 0;
+    }
 }
+
 @keyframes overlay-slide-in-top {
-  0% {
-    height: 100%;
-  }
-  100% {
-    height: 0;
-  }
+    0% {
+        height: 100%;
+    }
+    100% {
+        height: 0;
+    }
 }
+
 .overlay-slide-in-top {
-  top: 0;
-  height: 0;
-  -webkit-animation-name: overlay-slide-in-top;
-       -o-animation-name: overlay-slide-in-top;
-          animation-name: overlay-slide-in-top;
+    top: 0;
+    height: 0;
+    -webkit-animation-name: overlay-slide-in-top;
+    -o-animation-name: overlay-slide-in-top;
+    animation-name: overlay-slide-in-top;
 }
+
 @-webkit-keyframes overlay-slide-out-top {
-  0% {
-    height: 0;
-  }
-  100% {
-    height: 100%;
-  }
+    0% {
+        height: 0;
+    }
+    100% {
+        height: 100%;
+    }
 }
+
 @-o-keyframes overlay-slide-out-top {
-  0% {
-    height: 0;
-  }
-  100% {
-    height: 100%;
-  }
+    0% {
+        height: 0;
+    }
+    100% {
+        height: 100%;
+    }
 }
+
 @keyframes overlay-slide-out-top {
-  0% {
-    height: 0;
-  }
-  100% {
-    height: 100%;
-  }
+    0% {
+        height: 0;
+    }
+    100% {
+        height: 100%;
+    }
 }
+
 .overlay-slide-out-top {
-  top: 0;
-  height: 100%;
-  -webkit-animation-name: overlay-slide-out-top;
-       -o-animation-name: overlay-slide-out-top;
-          animation-name: overlay-slide-out-top;
+    top: 0;
+    height: 100%;
+    -webkit-animation-name: overlay-slide-out-top;
+    -o-animation-name: overlay-slide-out-top;
+    animation-name: overlay-slide-out-top;
 }
+
 @-webkit-keyframes overlay-slide-in-bottom {
-  0% {
-    height: 100%;
-  }
-  100% {
-    height: 0;
-  }
+    0% {
+        height: 100%;
+    }
+    100% {
+        height: 0;
+    }
 }
+
 @-o-keyframes overlay-slide-in-bottom {
-  0% {
-    height: 100%;
-  }
-  100% {
-    height: 0;
-  }
+    0% {
+        height: 100%;
+    }
+    100% {
+        height: 0;
+    }
 }
+
 @keyframes overlay-slide-in-bottom {
-  0% {
-    height: 100%;
-  }
-  100% {
-    height: 0;
-  }
+    0% {
+        height: 100%;
+    }
+    100% {
+        height: 0;
+    }
 }
+
 .overlay-slide-in-bottom {
-  bottom: 0;
-  height: 0;
-  -webkit-animation-name: overlay-slide-in-bottom;
-       -o-animation-name: overlay-slide-in-bottom;
-          animation-name: overlay-slide-in-bottom;
+    bottom: 0;
+    height: 0;
+    -webkit-animation-name: overlay-slide-in-bottom;
+    -o-animation-name: overlay-slide-in-bottom;
+    animation-name: overlay-slide-in-bottom;
 }
+
 @-webkit-keyframes overlay-slide-out-bottom {
-  0% {
-    height: 0;
-  }
-  100% {
-    height: 100%;
-  }
+    0% {
+        height: 0;
+    }
+    100% {
+        height: 100%;
+    }
 }
+
 @-o-keyframes overlay-slide-out-bottom {
-  0% {
-    height: 0;
-  }
-  100% {
-    height: 100%;
-  }
+    0% {
+        height: 0;
+    }
+    100% {
+        height: 100%;
+    }
 }
+
 @keyframes overlay-slide-out-bottom {
-  0% {
-    height: 0;
-  }
-  100% {
-    height: 100%;
-  }
+    0% {
+        height: 0;
+    }
+    100% {
+        height: 100%;
+    }
 }
+
 .overlay-slide-out-bottom {
-  bottom: 0;
-  height: 100%;
-  -webkit-animation-name: overlay-slide-out-bottom;
-       -o-animation-name: overlay-slide-out-bottom;
-          animation-name: overlay-slide-out-bottom;
+    bottom: 0;
+    height: 100%;
+    -webkit-animation-name: overlay-slide-out-bottom;
+    -o-animation-name: overlay-slide-out-bottom;
+    animation-name: overlay-slide-out-bottom;
 }
+
 @-webkit-keyframes overlay-slide-in-left {
-  0% {
-    width: 100%;
-  }
-  100% {
-    width: 0;
-  }
+    0% {
+        width: 100%;
+    }
+    100% {
+        width: 0;
+    }
 }
+
 @-o-keyframes overlay-slide-in-left {
-  0% {
-    width: 100%;
-  }
-  100% {
-    width: 0;
-  }
+    0% {
+        width: 100%;
+    }
+    100% {
+        width: 0;
+    }
 }
+
 @keyframes overlay-slide-in-left {
-  0% {
-    width: 100%;
-  }
-  100% {
-    width: 0;
-  }
+    0% {
+        width: 100%;
+    }
+    100% {
+        width: 0;
+    }
 }
+
 .overlay-slide-in-left {
-  width: 0;
-  -webkit-animation-name: overlay-slide-in-left;
-       -o-animation-name: overlay-slide-in-left;
-          animation-name: overlay-slide-in-left;
+    width: 0;
+    -webkit-animation-name: overlay-slide-in-left;
+    -o-animation-name: overlay-slide-in-left;
+    animation-name: overlay-slide-in-left;
 }
+
 @-webkit-keyframes overlay-slide-out-left {
-  0% {
-    width: 0;
-  }
-  100% {
-    width: 100%;
-  }
+    0% {
+        width: 0;
+    }
+    100% {
+        width: 100%;
+    }
 }
+
 @-o-keyframes overlay-slide-out-left {
-  0% {
-    width: 0;
-  }
-  100% {
-    width: 100%;
-  }
+    0% {
+        width: 0;
+    }
+    100% {
+        width: 100%;
+    }
 }
+
 @keyframes overlay-slide-out-left {
-  0% {
-    width: 0;
-  }
-  100% {
-    width: 100%;
-  }
+    0% {
+        width: 0;
+    }
+    100% {
+        width: 100%;
+    }
 }
+
 .overlay-slide-out-left {
-  left: 0;
-  width: 100%;
-  -webkit-animation-name: overlay-slide-out-left;
-       -o-animation-name: overlay-slide-out-left;
-          animation-name: overlay-slide-out-left;
+    left: 0;
+    width: 100%;
+    -webkit-animation-name: overlay-slide-out-left;
+    -o-animation-name: overlay-slide-out-left;
+    animation-name: overlay-slide-out-left;
 }
+
 @-webkit-keyframes overlay-slide-in-right {
-  0% {
-    width: 100%;
-  }
-  100% {
-    width: 0;
-  }
+    0% {
+        width: 100%;
+    }
+    100% {
+        width: 0;
+    }
 }
+
 @-o-keyframes overlay-slide-in-right {
-  0% {
-    width: 100%;
-  }
-  100% {
-    width: 0;
-  }
+    0% {
+        width: 100%;
+    }
+    100% {
+        width: 0;
+    }
 }
+
 @keyframes overlay-slide-in-right {
-  0% {
-    width: 100%;
-  }
-  100% {
-    width: 0;
-  }
+    0% {
+        width: 100%;
+    }
+    100% {
+        width: 0;
+    }
 }
+
 .overlay-slide-in-right {
-  right: 0;
-  width: 0;
-  -webkit-animation-name: overlay-slide-in-right;
-       -o-animation-name: overlay-slide-in-right;
-          animation-name: overlay-slide-in-right;
+    right: 0;
+    width: 0;
+    -webkit-animation-name: overlay-slide-in-right;
+    -o-animation-name: overlay-slide-in-right;
+    animation-name: overlay-slide-in-right;
 }
+
 @-webkit-keyframes overlay-slide-out-right {
-  0% {
-    width: 0;
-  }
-  100% {
-    width: 100%;
-  }
+    0% {
+        width: 0;
+    }
+    100% {
+        width: 100%;
+    }
 }
+
 @-o-keyframes overlay-slide-out-right {
-  0% {
-    width: 0;
-  }
-  100% {
-    width: 100%;
-  }
+    0% {
+        width: 0;
+    }
+    100% {
+        width: 100%;
+    }
 }
+
 @keyframes overlay-slide-out-right {
-  0% {
-    width: 0;
-  }
-  100% {
-    width: 100%;
-  }
+    0% {
+        width: 0;
+    }
+    100% {
+        width: 100%;
+    }
 }
+
 .overlay-slide-out-right {
-  right: 0;
-  width: 100%;
-  -webkit-animation-name: overlay-slide-out-right;
-       -o-animation-name: overlay-slide-out-right;
-          animation-name: overlay-slide-out-right;
+    right: 0;
+    width: 100%;
+    -webkit-animation-name: overlay-slide-out-right;
+    -o-animation-name: overlay-slide-out-right;
+    animation-name: overlay-slide-out-right;
 }
+
 /*# sourceMappingURL=animsition.css.map */
diff --git a/zy-acs-cv/src/main/webapp/static/css/car_vue.css b/zy-acs-cv/src/main/webapp/static/css/car_vue.css
index fe3d15f..9bdd27f 100644
--- a/zy-acs-cv/src/main/webapp/static/css/car_vue.css
+++ b/zy-acs-cv/src/main/webapp/static/css/car_vue.css
@@ -8,6 +8,7 @@
     text-align: center;
 
 }
+
 .bg-orgin {
     color: white;
     background-color: #FF5722;
diff --git a/zy-acs-cv/src/main/webapp/static/css/common.css b/zy-acs-cv/src/main/webapp/static/css/common.css
index f388ea3..b6ca322 100644
--- a/zy-acs-cv/src/main/webapp/static/css/common.css
+++ b/zy-acs-cv/src/main/webapp/static/css/common.css
@@ -5,12 +5,14 @@
     margin: 0;
     padding: 0;
 }
+
 html {
     line-height: 1.5;
     font-size: 15px;
     font-family: sans-serif;
     height: 100%;
 }
+
 body {
     height: 100%;
 }
@@ -25,25 +27,63 @@
     display: table;
     clear: both;
 }
+
 .col-md3:empty {
-    background:rgba(0,0,0,0.04);
-    border: 1px solid rgba(0,0,0,.3);
-    min-height:32px;
+    background: rgba(0, 0, 0, 0.04);
+    border: 1px solid rgba(0, 0, 0, .3);
+    min-height: 32px;
     height: inherit;
-    z-index:1;
+    z-index: 1;
 }
-.col-md1,.col-md10,.col-md11,.col-md12,.col-md2,.col-md3,.col-md4,.col-md5,.col-md6,.col-md7,.col-md8,.col-md9{
-    float:left;
+
+.col-md1, .col-md10, .col-md11, .col-md12, .col-md2, .col-md3, .col-md4, .col-md5, .col-md6, .col-md7, .col-md8, .col-md9 {
+    float: left;
 }
-.col-md1{width:8.33333333%}
-.col-md2{width:16.66666667%}
-.col-md3{width:25%}
-.col-md4{width:33.33333333%}
-.col-md5{width:41.66666667%}
-.col-md6{width:50%}
-.col-md7{width:58.33333333%}
-.col-md8{width:66.66666667%}
-.col-md9{width:75%}
-.col-md10{width:83.33333333%}
-.col-md11{width:91.66666667%}
-.col-md12{width:100%}
\ No newline at end of file
+
+.col-md1 {
+    width: 8.33333333%
+}
+
+.col-md2 {
+    width: 16.66666667%
+}
+
+.col-md3 {
+    width: 25%
+}
+
+.col-md4 {
+    width: 33.33333333%
+}
+
+.col-md5 {
+    width: 41.66666667%
+}
+
+.col-md6 {
+    width: 50%
+}
+
+.col-md7 {
+    width: 58.33333333%
+}
+
+.col-md8 {
+    width: 66.66666667%
+}
+
+.col-md9 {
+    width: 75%
+}
+
+.col-md10 {
+    width: 83.33333333%
+}
+
+.col-md11 {
+    width: 91.66666667%
+}
+
+.col-md12 {
+    width: 100%
+}
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/webapp/static/css/console-0.css b/zy-acs-cv/src/main/webapp/static/css/console-0.css
index 7b1a5f0..78c0c93 100644
--- a/zy-acs-cv/src/main/webapp/static/css/console-0.css
+++ b/zy-acs-cv/src/main/webapp/static/css/console-0.css
@@ -6,19 +6,20 @@
     height: 100%;
     background-color: #f1f1f1;
     border-radius: 5px;
-    box-shadow: 0 0 3px rgba(0,0,0,.3);
+    box-shadow: 0 0 3px rgba(0, 0, 0, .3);
     padding: 10px;
 }
 
 /* ------------------------------------ 澶撮儴 ------------------------------------*/
 header {
     border-radius: 5px;
-    box-shadow: 0 0 3px rgba(0,0,0,.3);
+    box-shadow: 0 0 3px rgba(0, 0, 0, .3);
     background-color: #fff;
     height: 17%;
     opacity: 0.8;
     position: relative;
 }
+
 /* 鍒嗗壊绾� */
 .header-hr {
     border-radius: 5px;
@@ -27,6 +28,7 @@
     position: absolute;
     bottom: 0;
 }
+
 /* 绯荤粺杩愯鐘舵�� */
 .system-state {
     float: left;
@@ -36,18 +38,21 @@
     text-align: center;
     color: #2d6aff;
 }
+
 #system-icon {
     display: inline-block;
     width: 70%;
     height: 70%;
     background-repeat: no-repeat;
-    background-size:100% 100%;
+    background-size: 100% 100%;
     background-position: top center;
     cursor: pointer;
 }
+
 .system-icon-open {
     background-image: url("../image/stop48.png");
 }
+
 .system-icon-close {
     background-image: url("../image/start48.png");
 }
@@ -58,7 +63,7 @@
     padding-top: 10px;
     font-weight: bold;
     overflow: hidden;
-    text-overflow:ellipsis;
+    text-overflow: ellipsis;
     white-space: nowrap;
 }
 
@@ -69,6 +74,7 @@
     width: 70%;
     text-align: center;
 }
+
 .data-window h1 {
     font-size: 3em;
     margin: 0;
@@ -82,20 +88,24 @@
     bottom: 7%;
     left: 10%;
 }
+
 .tips-item {
     margin-bottom: 0;
     font-size: 0;
     text-align: left;
 }
+
 .tips-item label {
     display: inline-block;
     width: 130px;
     text-align: right;
     font-size: xx-small;
 }
+
 .item-group {
     display: inline-block;
 }
+
 .item-group span {
     font-size: xx-small;
     padding: 0 10px;
@@ -105,7 +115,7 @@
 main {
     margin-top: 8px;
     border-radius: 5px;
-    box-shadow: 0 0 3px rgba(0,0,0,.3);
+    box-shadow: 0 0 3px rgba(0, 0, 0, .3);
     background-color: #fff;
     height: 82%;
     position: relative;
@@ -116,11 +126,13 @@
     position: absolute;
     top: 122px;
 }
+
 /* 杈撻�佺嚎绗�0鍒� */
 .site-row-0 {
     top: 162px;
     left: 140px;
 }
+
 .site-row-0 .site {
     width: 80px;
 }
@@ -130,6 +142,7 @@
     top: 188px;
     left: 120px;
 }
+
 .site-row-1 .site {
     width: 70px;
 }
@@ -139,6 +152,7 @@
     top: 188px;
     left: 190px;
 }
+
 .site-row-2 .site {
     width: 70px;
 }
@@ -148,6 +162,7 @@
     top: 229px;
     left: 260px;
 }
+
 .site-row-3 .site {
     width: 70px;
 }
@@ -157,6 +172,7 @@
     top: 188px;
     left: 260px;
 }
+
 .site-row-4 .site {
     /*width: 80px;*/
 }
@@ -166,6 +182,7 @@
     top: 55px;
     left: 400px;
 }
+
 .site-row-5 .site {
     width: 70px;
 }
@@ -174,6 +191,7 @@
     top: 55px;
     left: 470px;
 }
+
 .site-row-6 .site {
     width: 70px;
 }
@@ -189,8 +207,9 @@
     background-color: #21ff3a;
     font-size: 13px;
 }
+
 /*绌虹珯鐐�*/
-.site-1{
+.site-1 {
     color: #333;
     height: 20px;
     border: 1px solid #fff;
@@ -200,6 +219,7 @@
     background-color: #ffffff;
     font-size: 13px;
 }
+
 /* 鏃犳晥绔欑偣锛堝繀椤诲湪site涓嬮潰锛� */
 
 .site-none {
@@ -207,22 +227,27 @@
     background-color: transparent;
     cursor: default;
 }
+
 /* 鑷姩 */
 .site-auto {
-    background-color: rgb(42,253,47);
+    background-color: rgb(42, 253, 47);
 }
+
 /* 闈炶嚜鍔�/鏀跺埌 */
 .site-unauto {
     background-color: #aaaaaa;
 }
+
 /* 鑷姩+鏈夌墿+ID */
 .site-auto-run-id {
     background-color: red;
 }
+
 /* 鑷姩+鏈夌墿 */
 .site-auto-run {
     background-color: #fc29f8;
 }
+
 /* 鑷姩+鏈夌墿+ID */
 .site-auto-id {
     background-color: yellow;
@@ -234,6 +259,7 @@
     position: absolute;
     /*background: url(../image/bg.jpg);*/
 }
+
 #car-track-1 {
     text-align: center;
     top: 122px;
@@ -241,6 +267,7 @@
     width: 100px;
     height: 180px;
 }
+
 #car-track-1 div {
     height: 100%;
     display: inline-block;
@@ -253,6 +280,7 @@
 .car {
     position: absolute;
 }
+
 #site-8 {
     top: 122px;
     left: 100px;
@@ -268,9 +296,11 @@
     top: 10px;
     left: 540px;
 }
+
 .main-part .lane {
     /*margin-bottom: 30px;*/
 }
+
 /* 鎺掑彿 */
 .row-no {
     font-size: 14px;
@@ -281,25 +311,29 @@
 /* 搴撲綅缁� */
 .stock-group .item {
     float: left;
-    border-top: 1px solid #333!important;
-    border-bottom: 1px solid #333!important;
-    border-left: 1px solid #333!important;
-    border-right: 1px solid #333!important;
+    border-top: 1px solid #333 !important;
+    border-bottom: 1px solid #333 !important;
+    border-left: 1px solid #333 !important;
+    border-right: 1px solid #333 !important;
     border-right: none;
     cursor: inherit;
 }
+
 .stock-group .item:last-child {
     /*border-right: 1px solid #333!important;*/
 }
+
 .stock-group::after, .stock-group::before {
     content: "";
     display: table;
     clear: both;
 }
+
 .stock-group .site {
     width: 80px;
     float: left;
 }
+
 button.item {
     font-size: 13px;
     padding: 1px 1px 1px 1px;
@@ -311,6 +345,7 @@
     background-color: transparent;
     transition: 0.4s;
 }
+
 button.item:hover {
     background-color: #333;
     color: #fff;
@@ -325,7 +360,7 @@
     width: 80px;
     background-image: url("../image/Crane_auto.png");
     background-repeat: no-repeat;
-    background-size:100% 100%;
+    background-size: 100% 100%;
     background-position: top center;
     cursor: pointer;
 }
@@ -334,67 +369,80 @@
 .machine-pakin {
     background-image: url("../image/Crane_store.png");
 }
+
 /* 鍑哄簱 */
 .machine-pakout {
     background-image: url("../image/Crane_retrieve.png");
 }
+
 /* 搴撳埌搴� */
 .machine-stock-move {
     background-image: url("../image/Crane_loctoloc.png");
 }
+
 /* 绔欏埌绔� */
 .machine-site-move {
     background-image: url("../image/Crane_stntostn.png");
 }
+
 /* p to p */
 .machine-p-move {
     background-image: url("../image/Crane_hptoohp.png");
 }
+
 /* 寮傚父 */
 .machine-error {
     background-image: url("../image/Crane_error.png");
 }
+
 /* 鑷姩 */
 .machine-auto {
     background-image: url("../image/Crane_auto.png");
 }
+
 /* 闈炶嚜鍔�/鏀跺埌 */
 .machine-un-auto {
     background-image: url("../image/Crane_manual.png");
 }
 
 
-
 /* 鍏ュ簱 */
 .machine-put-flag {
     background-color: #90d0f3;
 }
+
 /* 鍑哄簱 */
 .machine-take-flag {
     background-color: yellow;
 }
+
 /* 搴撳埌搴� */
 .machine-stock-move-flag {
     background-color: #0c24fb;
     color: #fff;
 }
+
 /* 绔欏埌绔� */
 .machine-site-move-flag {
     background-color: #faa328;
 }
+
 /* PToP */
 .machine-p-move-flag {
     background-color: #128014;
     color: #fff;
 }
+
 /* 寮傚父 */
 .machine-error-flag {
     background-color: red;
 }
+
 /* 鑷姩 */
 .machine-auto-flag {
-    background-color: rgb(42,253,47);
+    background-color: rgb(42, 253, 47);
 }
+
 /* 闈炶嚜鍔�/鏀跺埌 */
 .machine-unauto-flag {
     background-color: #aaaaaa;
@@ -405,7 +453,7 @@
     margin-left: 30px;
     border: 1px solid #333;
     position: absolute;
-    background-color:#333!important;
+    background-color: #333 !important;
     color: #333 !important;
     width: 100%;
     margin-top: 10px;
@@ -456,16 +504,19 @@
     display: inline-block;
     /*transform: scale(0.90);*/
 }
+
 /* 鎵爜鍣�1 */
 #code-decoder-1 {
     top: 267px;
     left: 1780px;
 }
+
 /* 鎵爜鍣ㄦ暟鎹�1 */
 #code-decoder-data-1 {
     font-size: xx-small;
     margin-left: 35px;
 }
+
 /* 纾呯Г */
 .scale {
     position: absolute;
@@ -473,9 +524,10 @@
     height: 20px;
     /*background-image: url("../image/bscanner.png");*/
     background-repeat: no-repeat;
-    background-size:100% 60%;
+    background-size: 100% 60%;
     background-position: top center;
 }
+
 /* 纾呯Г1 */
 #scale-1 {
     top: 290px;
@@ -488,6 +540,7 @@
     padding-top: 10px;
     padding-left: 5px;
 }
+
 form .form-item-label {
     float: left;
     text-align: right;
@@ -495,11 +548,13 @@
     display: inline-block;
     vertical-align: middle;
 }
+
 form .form-item-input {
     display: inline-block;
     float: left;
     vertical-align: middle;
 }
+
 form .form-item-input input {
     height: 1.5rem;
     padding-left: 0.5rem;
diff --git a/zy-acs-cv/src/main/webapp/static/css/console.css b/zy-acs-cv/src/main/webapp/static/css/console.css
index 0a074b9..146cd5c 100644
--- a/zy-acs-cv/src/main/webapp/static/css/console.css
+++ b/zy-acs-cv/src/main/webapp/static/css/console.css
@@ -1,539 +1,609 @@
 * {
-	margin: 0;
-	overflow: hidden;
+    margin: 0;
+    overflow: hidden;
 }
-html,body {
-	height: 100%;
+
+html, body {
+    height: 100%;
 }
+
 #root {
-	width: 100%;
-	height: 100%;
-	background-color: rgb(108,167,168);
+    width: 100%;
+    height: 100%;
+    background-color: rgb(108, 167, 168);
 }
+
 .head {
-	height: 10%;
-	width: 100%;
-	color: #FFFFFF;
+    height: 10%;
+    width: 100%;
+    color: #FFFFFF;
 }
+
 .head-left {
-	height: 100%;
-	width: 20%;
-	display: inline-block;
+    height: 100%;
+    width: 20%;
+    display: inline-block;
 }
+
 .head-right {
-	height: 100%;
-	width: 30%;
-	display: inline-block;
-	float: right;
+    height: 100%;
+    width: 30%;
+    display: inline-block;
+    float: right;
 }
+
 .head h1 {
-	margin-top: 2%;
-	margin-left: 2%;
-	font-weight: 400;
-	letter-spacing:3px;
+    margin-top: 2%;
+    margin-left: 2%;
+    font-weight: 400;
+    letter-spacing: 3px;
 }
+
 .head h6 {
-	margin-left: 2%;
-	font-weight: 400;
+    margin-left: 2%;
+    font-weight: 400;
 }
 
 img {
-	float: right;
-	margin-top: 10px;
-	margin-right: 10px;
+    float: right;
+    margin-top: 10px;
+    margin-right: 10px;
 }
+
 #body {
-	width: 100%;
-	height: 23%	;
-	position: absolute;
-	bottom: 2.5%;
+    width: 100%;
+    height: 23%;
+    position: absolute;
+    bottom: 2.5%;
 }
+
 /* 鎺у埗寮�鍏� */
 .system-state {
-	display: inline-block;
-	width: 15%;
-	height: 100%;
-	background-color: rgba(0, 0, 0, 0.3);
-	border-radius: 15px;
-	margin-left: 1%;
+    display: inline-block;
+    width: 15%;
+    height: 100%;
+    background-color: rgba(0, 0, 0, 0.3);
+    border-radius: 15px;
+    margin-left: 1%;
 }
+
 /* 鍫嗗灈鏈虹姸鎬� */
 .machine-status {
-	display: inline-block;
-	width: 15%;
-	height: 100%;
-	background-color: rgba(0, 0, 0, 0.3);
-	border-radius: 15px;
-	margin-left: 1%;
+    display: inline-block;
+    width: 15%;
+    height: 100%;
+    background-color: rgba(0, 0, 0, 0.3);
+    border-radius: 15px;
+    margin-left: 1%;
 }
+
 .state-ss {
-	margin-left: 60px;
+    margin-left: 60px;
 
 }
-
-
-
 
 
 /* 杈撻�佺嚎鐘舵�� */
 .line-status {
-	display: inline-block;
-	width: 15%;
-	height: 100%;
-	background-color: rgba(0, 0, 0, 0.3);
-	border-radius: 15px;
-	margin-left: 1%;
-}
-.line-ss {
-	display: inline-block;
-	float: right;
-	height: 15px;
-	width: 40px;
-	margin-top: 10px;
-	margin-right: 15px;
-	line-height: 15px;
-	text-align: center;
-	background-color: rgba(5, 5, 5, 0.3);
-	color: #ffdd00;
-}
-/* 鏉$爜鎵弿鍣� */
-.bar-code {
-	display: inline-block;
-	width: 49%;
-	height: 100%;
-	background-color: rgba(0, 0, 0, 0.3);
-	border-radius: 15px;
-	margin-left: 1%;
-}
-/*鎵爜琛ㄥ崟*/
-.tablebox {
-	display: inline-block;
-	width: 290px;
-	height: 162px;
-	margin-left: 1.5%;
-	color: white;
-	font-size: 14px;
-	list-style: none;
-	line-height: 27px;
-	text-indent: 10px;
-}
-.table-head {
-	width: 100%;
-	height: 27px;
-	background:linear-gradient(to right, rgb(94, 193, 184),rgb(12,71,63));
-}
-.right {
-	float: right;
-	text-indent: 10px;
-	padding-right: 10px;
-}
-.table-body li {
-	background-color: #5D7677;
-}
-.table-body li:nth-child(even) {
-	background-color: #4A6565;
+    display: inline-block;
+    width: 15%;
+    height: 100%;
+    background-color: rgba(0, 0, 0, 0.3);
+    border-radius: 15px;
+    margin-left: 1%;
 }
 
+.line-ss {
+    display: inline-block;
+    float: right;
+    height: 15px;
+    width: 40px;
+    margin-top: 10px;
+    margin-right: 15px;
+    line-height: 15px;
+    text-align: center;
+    background-color: rgba(5, 5, 5, 0.3);
+    color: #ffdd00;
+}
+
+/* 鏉$爜鎵弿鍣� */
+.bar-code {
+    display: inline-block;
+    width: 49%;
+    height: 100%;
+    background-color: rgba(0, 0, 0, 0.3);
+    border-radius: 15px;
+    margin-left: 1%;
+}
+
+/*鎵爜琛ㄥ崟*/
+.tablebox {
+    display: inline-block;
+    width: 290px;
+    height: 162px;
+    margin-left: 1.5%;
+    color: white;
+    font-size: 14px;
+    list-style: none;
+    line-height: 27px;
+    text-indent: 10px;
+}
+
+.table-head {
+    width: 100%;
+    height: 27px;
+    background: linear-gradient(to right, rgb(94, 193, 184), rgb(12, 71, 63));
+}
+
+.right {
+    float: right;
+    text-indent: 10px;
+    padding-right: 10px;
+}
+
+.table-body li {
+    background-color: #5D7677;
+}
+
+.table-body li:nth-child(even) {
+    background-color: #4A6565;
+}
 
 
 /* 鎺у埗琛ㄥご */
 .body-head {
-	height: 35px;
-	width: 100%;
-	background-image: url(../images/status_bar_1.png);
-	background-repeat: no-repeat;
-	margin-left: 5%;
-	margin-top: 20px;
-	text-indent: 25px;
-	color: white;
+    height: 35px;
+    width: 100%;
+    background-image: url(../images/status_bar_1.png);
+    background-repeat: no-repeat;
+    margin-left: 5%;
+    margin-top: 20px;
+    text-indent: 25px;
+    color: white;
 }
 
 
 .system-icon-open {
-	width: 153px;
-	height: 153px;
-	background-image: url(../images/start48.png);
-	display: inline-block;
-}
-.system-icon-close {
-	width: 153px;
-	height: 153px;
-	background-image: url(../images/stop48.png);
-	display: inline-block;
-}
-.switch_r {
-	color: #FFFFFF;
-	font-size: 14px;
-	width: 130px;
-	height: 153px;
-	float: right;
-	padding-top: 30px;
-}
-#system-run-desc {
-	font-size: 20px;
-	margin-top: 15px;
-}
-.state {
-	height: 34px;
-	width: 200px;
-	background-color: rgba(255,255,255,0.1);
-	background-image: url(../images/stacker.png);
-	background-repeat: no-repeat;
-	border-radius: 17px 0 0 17px;
-	padding-left: 50px;
-	line-height: 34px;
-	margin-bottom: 10px;
-	margin-left: 5%;
-	color: #FFFFFF;
-	font-size: 10px;
-}
-.states {
-	background-image: url(../images/line.png);
-	margin-bottom:54px;
-}
-.button {
-	margin-left: 5%;
-	font-size: 14px;
-	color: #FFFFFF;
-}
-/* 绔欑偣 */
-.site {
-	color: #333;
-	height: 18px;
-	border: 1px solid rgb(108,167,168);
-	cursor: pointer;
-	width: 50px;
-	text-align: center;
-	background-color: rgb(120,255,129);
-	font-size: 13px;
-}
-/*绌虹珯鐐�*/
-.site-k {
-	border: 1px solid rgb(108,167,168);
-	background-color: rgb(108, 167, 168);
-}
-/* 鍏ュ簱 */
-.machine-put-flag {
-	padding: 0 10px;
-	background-color: rgb(163,214,242);
-}
-/* 鍑哄簱 */
-.machine-take-flag {
-	padding: 0 10px;
-	background-color: rgb(151,180,0);
-}
-/* 搴撳埌搴� */
-.machine-stock-move-flag {
-	padding: 0 10px;
-	background-color: rgb(58,77,249);
-}
-/* 绔欏埌绔� */
-.machine-site-move-flag {
-	padding: 0 10px;
-	background-color: rgb(240,140,10);
-}
-/* PToP */
-.machine-p-move-flag {
-	padding: 0 10px;
-	background-color: rgb(29,152,23);
-}
-/* 寮傚父 */
-.machine-error-flag {
-	padding: 0 10px;
-	background-color: rgb(252,48,48);
-}
-/* 鑷姩 */
-.machine-auto-flag {
-	padding: 0 10px;
-	background-color: rgb(132,255,115);
-}
-/* 闈炶嚜鍔�/鎵嬪姩 */
-.machine-unauto-flag {
-	padding: 0 10px;
-	background-color: rgb(184,184,184);
-}
-/* 鑷姩+鏈夌墿+ID */
-.site-auto-run-id {
-	background-color: rgb(252,48,48);
-}
-/* 鑷姩+鏈夌墿 */
-.site-auto-run {
-	background-color: rgb(250,81,246);
-}
-/* 鑷姩+ID */
-.site-auto-id {
-	background-color: rgb(196,196,0);
-}
-/* 鑷姩 */
-.site-auto {
-	background-color: rgb(120,255,129);
-}
-/* 闈炶嚜鍔�/鎵嬪姩 */
-.site-unauto {
-	background-color: rgb(184,184,184);
-}
-#code {
-	background-image: url(../images/status_bar_2.png);
-	background-repeat: no-repeat;
-	margin-left: 2%;
+    width: 153px;
+    height: 153px;
+    background-image: url(../images/start48.png);
+    display: inline-block;
 }
 
+.system-icon-close {
+    width: 153px;
+    height: 153px;
+    background-image: url(../images/stop48.png);
+    display: inline-block;
+}
+
+.switch_r {
+    color: #FFFFFF;
+    font-size: 14px;
+    width: 130px;
+    height: 153px;
+    float: right;
+    padding-top: 30px;
+}
+
+#system-run-desc {
+    font-size: 20px;
+    margin-top: 15px;
+}
+
+.state {
+    height: 34px;
+    width: 200px;
+    background-color: rgba(255, 255, 255, 0.1);
+    background-image: url(../images/stacker.png);
+    background-repeat: no-repeat;
+    border-radius: 17px 0 0 17px;
+    padding-left: 50px;
+    line-height: 34px;
+    margin-bottom: 10px;
+    margin-left: 5%;
+    color: #FFFFFF;
+    font-size: 10px;
+}
+
+.states {
+    background-image: url(../images/line.png);
+    margin-bottom: 54px;
+}
+
+.button {
+    margin-left: 5%;
+    font-size: 14px;
+    color: #FFFFFF;
+}
+
+/* 绔欑偣 */
+.site {
+    color: #333;
+    height: 18px;
+    border: 1px solid rgb(108, 167, 168);
+    cursor: pointer;
+    width: 50px;
+    text-align: center;
+    background-color: rgb(120, 255, 129);
+    font-size: 13px;
+}
+
+/*绌虹珯鐐�*/
+.site-k {
+    border: 1px solid rgb(108, 167, 168);
+    background-color: rgb(108, 167, 168);
+}
+
+/* 鍏ュ簱 */
+.machine-put-flag {
+    padding: 0 10px;
+    background-color: rgb(163, 214, 242);
+}
+
+/* 鍑哄簱 */
+.machine-take-flag {
+    padding: 0 10px;
+    background-color: rgb(151, 180, 0);
+}
+
+/* 搴撳埌搴� */
+.machine-stock-move-flag {
+    padding: 0 10px;
+    background-color: rgb(58, 77, 249);
+}
+
+/* 绔欏埌绔� */
+.machine-site-move-flag {
+    padding: 0 10px;
+    background-color: rgb(240, 140, 10);
+}
+
+/* PToP */
+.machine-p-move-flag {
+    padding: 0 10px;
+    background-color: rgb(29, 152, 23);
+}
+
+/* 寮傚父 */
+.machine-error-flag {
+    padding: 0 10px;
+    background-color: rgb(252, 48, 48);
+}
+
+/* 鑷姩 */
+.machine-auto-flag {
+    padding: 0 10px;
+    background-color: rgb(132, 255, 115);
+}
+
+/* 闈炶嚜鍔�/鎵嬪姩 */
+.machine-unauto-flag {
+    padding: 0 10px;
+    background-color: rgb(184, 184, 184);
+}
+
+/* 鑷姩+鏈夌墿+ID */
+.site-auto-run-id {
+    background-color: rgb(252, 48, 48);
+}
+
+/* 鑷姩+鏈夌墿 */
+.site-auto-run {
+    background-color: rgb(250, 81, 246);
+}
+
+/* 鑷姩+ID */
+.site-auto-id {
+    background-color: rgb(196, 196, 0);
+}
+
+/* 鑷姩 */
+.site-auto {
+    background-color: rgb(120, 255, 129);
+}
+
+/* 闈炶嚜鍔�/鎵嬪姩 */
+.site-unauto {
+    background-color: rgb(184, 184, 184);
+}
+
+#code {
+    background-image: url(../images/status_bar_2.png);
+    background-repeat: no-repeat;
+    margin-left: 2%;
+}
 
 
 /* ------------------ 杈撻�佺嚎鎬绘垚 ------------------ */
 .site-row {
-	position: absolute;
-	top: 122px;
+    position: absolute;
+    top: 122px;
 }
+
 /* 杈撻�佺嚎绗竴鍒� */
 .site-row-1 {
-	top: 28px;
-	left: 1270px;
+    top: 28px;
+    left: 1270px;
 }
+
 .site-row-1 .site {
-	width: 80px;
+    width: 80px;
 }
 
 /* 杈撻�佺嚎绗簩鍒� */
 .site-row-2 {
-	top: 28px;
-	left: 1352px;
+    top: 28px;
+    left: 1352px;
 }
+
 .site-row-2 .site {
-	width: 80px;
+    width: 80px;
 }
+
 .site-row-3 {
-	top: 28px;
-	left: 1434px;
-	/*width: 164px;*/
+    top: 28px;
+    left: 1434px;
+    /*width: 164px;*/
 }
+
 .site-row-3 .site {
-	width: 80px;
+    width: 80px;
 }
 
 .site-row-4 {
-	top: 109px;
-	left: 1516px;
+    top: 109px;
+    left: 1516px;
 }
+
 .site-row-4 .site {
-	width: 80px;
+    width: 80px;
 }
+
 .site-row-5 {
-	top: 71px;
-	left: 530px;
+    top: 71px;
+    left: 530px;
 }
+
 .site-row-5 .site {
-	width: 80px;
+    width: 80px;
 }
+
 .site-row-6 {
-	top: 71px;
-	left: 612px;
+    top: 71px;
+    left: 612px;
 }
+
 .site-row-6 .site {
-	width: 80px;
+    width: 80px;
 }
 
 
 /* ------------------ 璐ф灦鎬绘垚 ------------------ */
 .main-part {
-	position: absolute;
-	top: 20px;
-	left: 300px;
+    position: absolute;
+    top: 20px;
+    left: 300px;
 }
+
 .main-part .lane {
-	margin-top: 30px;
+    margin-top: 30px;
 }
+
 /* 搴撲綅缁� */
 .stock-group .item {
-	float: left;
-	border-top: 1px solid rgb(194,76,65);
-	border-bottom: 1px solid rgb(194,76,65);
-	border-left: 1px solid rgb(194,76,65);
-	border-right: 1px solid rgb(194,76,65);
-	border-right: none;
-	cursor: inherit;
-	color: rgb(194,76,65);
+    float: left;
+    border-top: 1px solid rgb(194, 76, 65);
+    border-bottom: 1px solid rgb(194, 76, 65);
+    border-left: 1px solid rgb(194, 76, 65);
+    border-right: 1px solid rgb(194, 76, 65);
+    border-right: none;
+    cursor: inherit;
+    color: rgb(194, 76, 65);
 }
+
 .stock-group .site {
-	width: 80px;
-	float: left;
+    width: 80px;
+    float: left;
 }
+
 .stock-group::after, .stock-group::before {
-	content: "";
-	display: table;
-	clear: both;
+    content: "";
+    display: table;
+    clear: both;
 }
+
 /* 鍫嗗灈鏈鸿建閬� */
 .pathway {
-	margin-left: 30px;
-	border: 1px solid #333;
-	position: absolute;
-	background-color:#333!important;
-	color: #333 !important;
-	width: 100%;
-	margin-top: 10px;
+    margin-left: 30px;
+    border: 1px solid #333;
+    position: absolute;
+    background-color: #333 !important;
+    color: #333 !important;
+    width: 100%;
+    margin-top: 10px;
 }
 
 /* 鍫嗗灈鏈� */
 .machine {
-	margin-left: 30px;
-	position: relative;
-	background-color: rgb(108,167,168);
-	height: 20px;
-	width: 80px;
-	background-image: url("../images/Crane_auto.png");
-	background-repeat: no-repeat;
-	background-size:100% 100%;
-	background-position: top center;
-	cursor: pointer;
+    margin-left: 30px;
+    position: relative;
+    background-color: rgb(108, 167, 168);
+    height: 20px;
+    width: 80px;
+    background-image: url("../images/Crane_auto.png");
+    background-repeat: no-repeat;
+    background-size: 100% 100%;
+    background-position: top center;
+    cursor: pointer;
 
 }
+
 /* 鍏ュ簱 */
 .machine-pakin {
-	background-image: url("../images/Crane_store.png");
+    background-image: url("../images/Crane_store.png");
 }
+
 /* 鍑哄簱 */
 .machine-pakout {
-	background-image: url("../images/Crane_retrieve.png");
+    background-image: url("../images/Crane_retrieve.png");
 }
+
 /* 搴撳埌搴� */
 .machine-stock-move {
-	background-image: url("../images/Crane_loctoloc.png");
+    background-image: url("../images/Crane_loctoloc.png");
 }
+
 /* 绔欏埌绔� */
 .machine-site-move {
-	background-image: url("../images/Crane_stntostn.png");
+    background-image: url("../images/Crane_stntostn.png");
 }
+
 /* p to p */
 .machine-p-move {
-	background-image: url("../images/Crane_hptoohp.png");
+    background-image: url("../images/Crane_hptoohp.png");
 }
+
 /* 寮傚父 */
 .machine-error {
-	background-image: url("../images/Crane_error.png");
+    background-image: url("../images/Crane_error.png");
 }
+
 /* 鑷姩 */
 .machine-auto {
-	background-image: url("../images/Crane_auto.png");
+    background-image: url("../images/Crane_auto.png");
 }
+
 /* 闈炶嚜鍔�/鏀跺埌 */
 .machine-un-auto {
-	background-image: url("../images/Crane_manual.png");
+    background-image: url("../images/Crane_manual.png");
 }
 
 
 /* 鍫嗗灈鏈哄脊绐� */
 #crnWindow {
-	width: 291px;
-	height: 365px;
-	background-image: url(../images/Popup-yellow.png);
+    width: 291px;
+    height: 365px;
+    background-image: url(../images/Popup-yellow.png);
 
-	position: fixed;
-	color:white;
-	left: 50%;
-	top: 50%;
-	transform: translate(-50%,-50%);
+    position: fixed;
+    color: white;
+    left: 50%;
+    top: 50%;
+    transform: translate(-50%, -50%);
 }
+
 /* 杈撻�佽澶囧脊绐� */
 #siteWindow {
-	width: 291px;
-	height: 336px;
-	background-image: url(../images/Popup-green.png);
-	position: fixed;
-	color:white;
-	left: 50%;
-	top: 50%;
-	transform: translate(-50%,-50%);
+    width: 291px;
+    height: 336px;
+    background-image: url(../images/Popup-green.png);
+    position: fixed;
+    color: white;
+    left: 50%;
+    top: 50%;
+    transform: translate(-50%, -50%);
 }
+
 #siteWindow-head {
-	width: 291px;
-	height: 55px;
-	line-height: 55px;
-	margin-left: 25px;
-	color: #000000;
-	font-weight: 700;
-	letter-spacing: 2px;
+    width: 291px;
+    height: 55px;
+    line-height: 55px;
+    margin-left: 25px;
+    color: #000000;
+    font-weight: 700;
+    letter-spacing: 2px;
 }
+
 #siteWindow-head .detailed {
-	display: inline-block;
+    display: inline-block;
 }
+
 #siteWindow-head button {
-	width: 25px;
-	height: 25px;
-	padding: 0px;
-	border: none;
-	border-radius: 25px;
-	background-image: url(../images/siteclose.png);
-	display: inline-block;
-	float: right;
-	margin-top: 15px;
-	margin-right: 50px;
+    width: 25px;
+    height: 25px;
+    padding: 0px;
+    border: none;
+    border-radius: 25px;
+    background-image: url(../images/siteclose.png);
+    display: inline-block;
+    float: right;
+    margin-top: 15px;
+    margin-right: 50px;
 }
+
 #crnWindow-head {
-	width: 291px;
-	height: 55px;
-	line-height: 55px;
-	margin-left: 55px;
-	color: #000000;
-	font-weight: 700;
-	letter-spacing: 2px;
+    width: 291px;
+    height: 55px;
+    line-height: 55px;
+    margin-left: 55px;
+    color: #000000;
+    font-weight: 700;
+    letter-spacing: 2px;
 
 }
+
 #crnWindow-head .detailed {
-	display: inline-block;
-}
-#crnWindow-head button {
-	width: 25px;
-	height: 25px;
-	padding: 0px;
-	border: none;
-	border-radius: 25px;
-	background-image: url(../images/siteclose.png);
-	display: inline-block;
-	float: right;
-	margin-top: 15px;
-	margin-right: 80px;
+    display: inline-block;
 }
 
+#crnWindow-head button {
+    width: 25px;
+    height: 25px;
+    padding: 0px;
+    border: none;
+    border-radius: 25px;
+    background-image: url(../images/siteclose.png);
+    display: inline-block;
+    float: right;
+    margin-top: 15px;
+    margin-right: 80px;
+}
 
 
 /* 寮圭獥 */
 form .form-item {
-	display: inline-block;
-	padding-left: 10px;
+    display: inline-block;
+    padding-left: 10px;
 }
+
 form .form-item-label {
-	display: inline-block;
-	width: 90px;
-	font-size: 10px;
+    display: inline-block;
+    width: 90px;
+    font-size: 10px;
 }
+
 form .form-item-input {
-	display: inline-block;
-	width: 180px;
+    display: inline-block;
+    width: 180px;
 
 }
+
 form .form-item-input input {
-	background-color: rgba(255,255,255,.3);
-	color: #FFFFFF;
-	padding: 0;
-	border: none;
-	border-radius: 2px;
-	height: 18px;
-	padding-left: 10px;
+    background-color: rgba(255, 255, 255, .3);
+    color: #FFFFFF;
+    padding: 0;
+    border: none;
+    border-radius: 2px;
+    height: 18px;
+    padding-left: 10px;
 }
+
 /* checkbox */
 form .form-item-checkbox {
-	display: inline-block;
-	padding-left: 10px;
-	width: 20%;
+    display: inline-block;
+    padding-left: 10px;
+    width: 20%;
 }
+
 form .form-item-label-checkbox {
-	display: inline-block;
-	width: auto;
-	font-size: 14px;
+    display: inline-block;
+    width: auto;
+    font-size: 14px;
 }
+
 form .form-item-input-checkbox {
-	display: inline-block;
-	width: auto;
+    display: inline-block;
+    width: auto;
 
 }
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/webapp/static/css/crn.css b/zy-acs-cv/src/main/webapp/static/css/crn.css
index ded525a..8070199 100644
--- a/zy-acs-cv/src/main/webapp/static/css/crn.css
+++ b/zy-acs-cv/src/main/webapp/static/css/crn.css
@@ -1,6 +1,7 @@
 body {
     background-color: #6CA7A8;
 }
+
 .button-window {
     float: left;
     width: 100%;
@@ -9,11 +10,12 @@
     border-radius: 5px;
     box-shadow: 0 0 3px rgba(0 0 0 .3);
 }
+
 /* -------------------- 绗竴妯″潡 -------------------- */
 .log-board {
     background-color: #fff;
     border-radius: 5px;
-    box-shadow: 0 0 3px rgba(0,0,0,.3);
+    box-shadow: 0 0 3px rgba(0, 0, 0, .3);
     height: 25%;
 }
 
@@ -24,17 +26,21 @@
     width: 20%;
     text-align: center;
 }
+
 .command-log h2 {
     padding: 10px;
 }
+
 .crn-command-item {
     padding: 4px 0;
 }
+
 .crn-command-item label {
     font-size: 20px;
     font-weight: bold;
     vertical-align: middle;
 }
+
 .crn-command-item span {
     display: inline-block;
     width: 20px;
@@ -43,6 +49,7 @@
     border-radius: 5px;
     vertical-align: middle;
 }
+
 .crn-command-item input {
     vertical-align: middle;
     outline: none;
@@ -56,6 +63,7 @@
     width: 80%;
     overflow: auto;
 }
+
 /* 鍫嗗灈鏈虹姸鎬佽〃 */
 #crn-state-table {
     font-size: 12px;
@@ -63,18 +71,22 @@
     margin: 0 auto;
     text-align: center;
 }
+
 #crn-state-table td, #crn-state-table th {
     border: 1px solid #cad9ea;
     color: #666;
     height: 25px;
 }
+
 #crn-state-table thead th {
     background-color: #CCE8EB;
     width: 300px;
 }
+
 #crn-state-table tr:nth-child(odd) {
     background: #fff;
 }
+
 #crn-state-table tr:nth-child(even) {
     background: #F5FAFA;
 }
@@ -86,8 +98,9 @@
     height: 23%;
     background-color: #fff;
     border-radius: 5px;
-    box-shadow: 0 0 3px rgba(0,0,0,.3);
+    box-shadow: 0 0 3px rgba(0, 0, 0, .3);
 }
+
 /* 鍫嗗灈鏈虹姸鎬佷俊鎭〃 */
 #crn-msg-table {
     font-size: 12px;
@@ -95,18 +108,22 @@
     margin: 0 auto;
     text-align: center;
 }
+
 #crn-msg-table td, #crn-msg-table th {
     border: 1px solid #f1f1f1;
     color: #666;
     height: 30px;
 }
+
 #crn-msg-table thead th {
     background-color: #fff;
     width: 400px;
 }
+
 #crn-msg-table tr:nth-child(odd) {
     background: #fff;
 }
+
 #crn-msg-table tr:nth-child(even) {
     background: #fff;
 }
@@ -118,7 +135,7 @@
     height: 25%;
     background-color: #fff;
     border-radius: 5px;
-    box-shadow: 0 0 3px rgba(0,0,0,.3);
+    box-shadow: 0 0 3px rgba(0, 0, 0, .3);
 }
 
 /* 浠诲姟璁惧閫夋嫨妗� */
@@ -127,6 +144,7 @@
     overflow: hidden;
     padding: 20px 0 10px 20px;
 }
+
 .operator-item {
     display: inline-block;
     height: 100%;
@@ -136,6 +154,7 @@
     vertical-align: middle;
     padding: 10px 0px 10px 50px;
 }
+
 .operator-item .select-title {
     display: inline-block;
     position: absolute;
@@ -150,28 +169,37 @@
     padding: 5px;
     z-index: 999;
 }
+
 .operator-item .select-container {
     padding: 10px 0;
     height: 100%;
     border: 1px solid #8d8d8d;
     border-radius: 5px;
 }
+
 #crn-select .select-container label {
     display: inline-block;
     padding: 0 20px;
-    vertical-align: middle; margin-top:-2px; margin-bottom:1px;
+    vertical-align: middle;
+    margin-top: -2px;
+    margin-bottom: 1px;
 
 }
+
 .select-container input {
     display: inline-block;
     font-size: 12px;
-    vertical-align: middle; margin-top:-2px; margin-bottom:1px;
+    vertical-align: middle;
+    margin-top: -2px;
+    margin-bottom: 1px;
 }
+
 .select-container-item {
     display: inline-block;
     margin: 0px auto;
     padding: 0;
 }
+
 .select-container-item input {
     height: 20px;
     border: 1px solid #8D8D8D;
@@ -186,18 +214,21 @@
     overflow: hidden;
     padding: 0 20px 10px 20px;
 }
+
 .task-operator fieldset {
     padding: 15px 20px 5px 50px;
     border-width: 1px;
     border-style: solid;
     height: 100%;
 }
+
 .task-operator legend {
     margin-left: 20px;
     padding: 0 10px;
     font-size: 16px;
     font-weight: 300;
 }
+
 button.item {
     border: 1px solid #333;
     font-size: 13px;
@@ -211,6 +242,7 @@
     margin-right: 5px;
     border-radius: 5px;
 }
+
 button.item:hover {
     background-color: #333;
     color: #fff;
@@ -225,6 +257,7 @@
     text-align: center;
     padding: 80px 0;
 }
+
 .crn-operation-shade-span {
     font-size: xx-large;
     font-weight: bold;
@@ -237,8 +270,9 @@
     height: 20%;
     background-color: #fff;
     border-radius: 5px;
-    box-shadow: 0 0 3px rgba(0,0,0,.3);
+    box-shadow: 0 0 3px rgba(0, 0, 0, .3);
 }
+
 #crn-output {
     border-left: none;
     border-right: none;
@@ -247,6 +281,6 @@
     width: 100%;
     height: 100%;
     overflow: auto;
-    resize:none;
+    resize: none;
     color: #666;
 }
diff --git a/zy-acs-cv/src/main/webapp/static/css/index-0.css b/zy-acs-cv/src/main/webapp/static/css/index-0.css
index 6790946..232ae41 100644
--- a/zy-acs-cv/src/main/webapp/static/css/index-0.css
+++ b/zy-acs-cv/src/main/webapp/static/css/index-0.css
@@ -1,9 +1,11 @@
 html {
     overflow: hidden;
 }
+
 body {
     overflow: hidden;
 }
+
 /* 瀵艰埅 */
 .nav {
     background-color: #fff; /*todo*/
@@ -12,13 +14,15 @@
     position: fixed;
     width: 100%;
     overflow: hidden;
-    box-shadow: 0 1px 2px 0 rgba(0,0,0,.1);
+    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .1);
 
 }
+
 .nav li {
     float: left;
     border-right: 1px solid #f1f1f1; /*todo*/
 }
+
 .nav li a {
     font-size: 15px;
     letter-spacing: 1px;
@@ -28,9 +32,11 @@
     text-align: center;
     font-weight: bold;
 }
+
 .nav li a:hover {
     color: #000;
 }
+
 .nav li.right {
     float: right;
 }
@@ -38,8 +44,9 @@
 .nav-unselect {
     color: #666;
 }
+
 .nav-select {
-    background-color: #f1f1f1;  /*todo*/
+    background-color: #f1f1f1; /*todo*/
     color: #000;
 }
 
@@ -59,8 +66,8 @@
     right: 0;
     left: 0;
     text-align: center;
-    font: 14px Helvetica Neue,Helvetica,PingFang SC,\5FAE\8F6F\96C5\9ED1,Tahoma,Arial,sans-serif;
-    box-shadow: 0 -1px 2px 0 rgba(0,0,0,.0);
+    font: 14px Helvetica Neue, Helvetica, PingFang SC, \5FAE\8F6F\96C5\9ED1, Tahoma, Arial, sans-serif;
+    box-shadow: 0 -1px 2px 0 rgba(0, 0, 0, .0);
     box-sizing: border-box;
     background-color: #fff;
     z-index: 999;
@@ -68,6 +75,7 @@
     font-size: 13px;
     line-height: 30px;
 }
+
 footer a {
     color: #3573ab;
     font-weight: bold;
diff --git a/zy-acs-cv/src/main/webapp/static/css/index.css b/zy-acs-cv/src/main/webapp/static/css/index.css
index 7c5a292..b594f3c 100644
--- a/zy-acs-cv/src/main/webapp/static/css/index.css
+++ b/zy-acs-cv/src/main/webapp/static/css/index.css
@@ -2,9 +2,11 @@
     margin: 0;
     overflow: hidden;
 }
-html,body {
+
+html, body {
     height: 100%;
 }
+
 /*.nav {*/
 /*    width: 100%;*/
 /*    height: 90px;*/
@@ -22,6 +24,7 @@
     margin-top: 1%;
 
 }
+
 #about {
     width: 47px;
     height: 47px;
@@ -37,20 +40,24 @@
     top: 50%;
     transform: translateY(-50%);
 }
+
 .nav ul {
     font-size: 1.25em;
     font-weight: 500;
     padding-left: 5%;
 }
+
 .nav a {
     position: relative;
     text-decoration: none;
     margin-left: 0.625em;
     font-weight: 500;
 }
+
 .nav a:hover {
-    color:  #fff;
+    color: #fff;
 }
+
 /* Effect 1: Brackets */
 .cl-effect-4 a {
     padding: 0 0 0.625em;
@@ -81,6 +88,7 @@
     -moz-transform: translateY(0px);
     transform: translateY(0px);
 }
+
 /* Effect 1: Brackets 馃憜*/
 /*.sidebar ul {*/
 /*    font-size: 20px;*/
@@ -98,15 +106,14 @@
 /*}*/
 
 
-
 .nav-unselect {
     color: #FFFFFF;
 }
+
 .nav-select {
     font-weight: 900;
-    color:  #fff;
+    color: #fff;
 }
-
 
 
 /* 涓讳綋 */
@@ -115,6 +122,7 @@
     height: 100%;
     border-width: 0;
 }
+
 /* 搴曢儴 */
 footer {
     /* border-top: 1px solid #e3e3e3; */
@@ -123,15 +131,16 @@
     right: 0;
     left: 0;
     text-align: center;
-    font: 14px Helvetica Neue,Helvetica,PingFang SC,\5FAE\8F6F\96C5\9ED1,Tahoma,Arial,sans-serif;
-    box-shadow: 0 -1px 2px 0 rgba(0,0,0,.0);
+    font: 14px Helvetica Neue, Helvetica, PingFang SC, \5FAE\8F6F\96C5\9ED1, Tahoma, Arial, sans-serif;
+    box-shadow: 0 -1px 2px 0 rgba(0, 0, 0, .0);
     box-sizing: border-box;
-    background-color: rgba(255,255,255,.05);
+    background-color: rgba(255, 255, 255, .05);
     z-index: 999;
     height: 20px;
     font-size: 13px;
     line-height: 20px;
 }
+
 footer a {
     color: #3573ab;
     font-weight: bold;
diff --git a/zy-acs-cv/src/main/webapp/static/css/normalize.css b/zy-acs-cv/src/main/webapp/static/css/normalize.css
index b0c1902..6a89b17 100644
--- a/zy-acs-cv/src/main/webapp/static/css/normalize.css
+++ b/zy-acs-cv/src/main/webapp/static/css/normalize.css
@@ -9,8 +9,8 @@
  */
 
 html {
-  line-height: 1.15; /* 1 */
-  -webkit-text-size-adjust: 100%; /* 2 */
+    line-height: 1.15; /* 1 */
+    -webkit-text-size-adjust: 100%; /* 2 */
 }
 
 /* Sections
@@ -21,7 +21,7 @@
  */
 
 body {
-  margin: 0;
+    margin: 0;
 }
 
 /**
@@ -29,7 +29,7 @@
  */
 
 main {
-  display: block;
+    display: block;
 }
 
 /**
@@ -38,8 +38,8 @@
  */
 
 h1 {
-  font-size: 2em;
-  margin: 0.67em 0;
+    font-size: 2em;
+    margin: 0.67em 0;
 }
 
 /* Grouping content
@@ -51,9 +51,9 @@
  */
 
 hr {
-  box-sizing: content-box; /* 1 */
-  height: 0; /* 1 */
-  overflow: visible; /* 2 */
+    box-sizing: content-box; /* 1 */
+    height: 0; /* 1 */
+    overflow: visible; /* 2 */
 }
 
 /**
@@ -62,8 +62,8 @@
  */
 
 pre {
-  font-family: monospace, monospace; /* 1 */
-  font-size: 1em; /* 2 */
+    font-family: monospace, monospace; /* 1 */
+    font-size: 1em; /* 2 */
 }
 
 /* Text-level semantics
@@ -74,7 +74,7 @@
  */
 
 a {
-  background-color: transparent;
+    background-color: transparent;
 }
 
 /**
@@ -83,9 +83,9 @@
  */
 
 abbr[title] {
-  border-bottom: none; /* 1 */
-  text-decoration: underline; /* 2 */
-  text-decoration: underline dotted; /* 2 */
+    border-bottom: none; /* 1 */
+    text-decoration: underline; /* 2 */
+    text-decoration: underline dotted; /* 2 */
 }
 
 /**
@@ -94,7 +94,7 @@
 
 b,
 strong {
-  font-weight: bolder;
+    font-weight: bolder;
 }
 
 /**
@@ -105,8 +105,8 @@
 code,
 kbd,
 samp {
-  font-family: monospace, monospace; /* 1 */
-  font-size: 1em; /* 2 */
+    font-family: monospace, monospace; /* 1 */
+    font-size: 1em; /* 2 */
 }
 
 /**
@@ -114,7 +114,7 @@
  */
 
 small {
-  font-size: 80%;
+    font-size: 80%;
 }
 
 /**
@@ -124,18 +124,18 @@
 
 sub,
 sup {
-  font-size: 75%;
-  line-height: 0;
-  position: relative;
-  vertical-align: baseline;
+    font-size: 75%;
+    line-height: 0;
+    position: relative;
+    vertical-align: baseline;
 }
 
 sub {
-  bottom: -0.25em;
+    bottom: -0.25em;
 }
 
 sup {
-  top: -0.5em;
+    top: -0.5em;
 }
 
 /* Embedded content
@@ -146,7 +146,7 @@
  */
 
 img {
-  border-style: none;
+    border-style: none;
 }
 
 /* Forms
@@ -162,10 +162,10 @@
 optgroup,
 select,
 textarea {
-  font-family: inherit; /* 1 */
-  font-size: 100%; /* 1 */
-  line-height: 1.15; /* 1 */
-  margin: 0; /* 2 */
+    font-family: inherit; /* 1 */
+    font-size: 100%; /* 1 */
+    line-height: 1.15; /* 1 */
+    margin: 0; /* 2 */
 }
 
 /**
@@ -175,7 +175,7 @@
 
 button,
 input { /* 1 */
-  overflow: visible;
+    overflow: visible;
 }
 
 /**
@@ -185,7 +185,7 @@
 
 button,
 select { /* 1 */
-  text-transform: none;
+    text-transform: none;
 }
 
 /**
@@ -196,7 +196,7 @@
 [type="button"],
 [type="reset"],
 [type="submit"] {
-  -webkit-appearance: button;
+    -webkit-appearance: button;
 }
 
 /**
@@ -207,8 +207,8 @@
 [type="button"]::-moz-focus-inner,
 [type="reset"]::-moz-focus-inner,
 [type="submit"]::-moz-focus-inner {
-  border-style: none;
-  padding: 0;
+    border-style: none;
+    padding: 0;
 }
 
 /**
@@ -219,7 +219,7 @@
 [type="button"]:-moz-focusring,
 [type="reset"]:-moz-focusring,
 [type="submit"]:-moz-focusring {
-  outline: 1px dotted ButtonText;
+    outline: 1px dotted ButtonText;
 }
 
 /**
@@ -227,7 +227,7 @@
  */
 
 fieldset {
-  padding: 0.35em 0.75em 0.625em;
+    padding: 0.35em 0.75em 0.625em;
 }
 
 /**
@@ -238,12 +238,12 @@
  */
 
 legend {
-  box-sizing: border-box; /* 1 */
-  color: inherit; /* 2 */
-  display: table; /* 1 */
-  max-width: 100%; /* 1 */
-  padding: 0; /* 3 */
-  white-space: normal; /* 1 */
+    box-sizing: border-box; /* 1 */
+    color: inherit; /* 2 */
+    display: table; /* 1 */
+    max-width: 100%; /* 1 */
+    padding: 0; /* 3 */
+    white-space: normal; /* 1 */
 }
 
 /**
@@ -251,7 +251,7 @@
  */
 
 progress {
-  vertical-align: baseline;
+    vertical-align: baseline;
 }
 
 /**
@@ -259,7 +259,7 @@
  */
 
 textarea {
-  overflow: auto;
+    overflow: auto;
 }
 
 /**
@@ -269,8 +269,8 @@
 
 [type="checkbox"],
 [type="radio"] {
-  box-sizing: border-box; /* 1 */
-  padding: 0; /* 2 */
+    box-sizing: border-box; /* 1 */
+    padding: 0; /* 2 */
 }
 
 /**
@@ -279,7 +279,7 @@
 
 [type="number"]::-webkit-inner-spin-button,
 [type="number"]::-webkit-outer-spin-button {
-  height: auto;
+    height: auto;
 }
 
 /**
@@ -288,8 +288,8 @@
  */
 
 [type="search"] {
-  -webkit-appearance: textfield; /* 1 */
-  outline-offset: -2px; /* 2 */
+    -webkit-appearance: textfield; /* 1 */
+    outline-offset: -2px; /* 2 */
 }
 
 /**
@@ -297,7 +297,7 @@
  */
 
 [type="search"]::-webkit-search-decoration {
-  -webkit-appearance: none;
+    -webkit-appearance: none;
 }
 
 /**
@@ -306,8 +306,8 @@
  */
 
 ::-webkit-file-upload-button {
-  -webkit-appearance: button; /* 1 */
-  font: inherit; /* 2 */
+    -webkit-appearance: button; /* 1 */
+    font: inherit; /* 2 */
 }
 
 /* Interactive
@@ -318,7 +318,7 @@
  */
 
 details {
-  display: block;
+    display: block;
 }
 
 /*
@@ -326,7 +326,7 @@
  */
 
 summary {
-  display: list-item;
+    display: list-item;
 }
 
 /* Misc
@@ -337,7 +337,7 @@
  */
 
 template {
-  display: none;
+    display: none;
 }
 
 /**
@@ -345,5 +345,5 @@
  */
 
 [hidden] {
-  display: none;
+    display: none;
 }
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/webapp/static/css/pipeline.css b/zy-acs-cv/src/main/webapp/static/css/pipeline.css
index 80aa317..382ab21 100644
--- a/zy-acs-cv/src/main/webapp/static/css/pipeline.css
+++ b/zy-acs-cv/src/main/webapp/static/css/pipeline.css
@@ -2,13 +2,15 @@
     /*padding: 10px;*/
     background-color: #6CA7A8;
 }
+
 main {
     background-color: #fff;
     height: 85%;
     border-radius: 5px;
-    box-shadow: 0 0 3px rgba(0,0,0,.3);
+    box-shadow: 0 0 3px rgba(0, 0, 0, .3);
     margin-bottom: 8px;
 }
+
 .button-window {
     float: left;
     width: 100%;
@@ -17,6 +19,7 @@
     border-radius: 5px;
     box-shadow: 0 0 3px rgba(0 0 0 .3);
 }
+
 .main-board {
     padding-left: 1%;
     float: left;
@@ -24,6 +27,7 @@
     height: 100%;
     overflow: auto;
 }
+
 .main-board:first-child {
     border-right: 1px solid #cad9ea;
 }
@@ -32,6 +36,7 @@
 .plc-log-header {
     height: 15%;
 }
+
 .plc-log-body {
     height: 100%;
     overflow: auto;
@@ -43,12 +48,14 @@
     /*overflow: hidden;*/
     padding: 10px 20px;
 }
+
 .io-mode-oper fieldset {
     padding: 15px 0 10px 0;
     border-width: 1px;
     border-style: solid;
     height: 100%;
 }
+
 .io-mode-oper legend {
     text-align: center;
     padding: 0 10px;
@@ -63,22 +70,25 @@
     margin: 0 auto;
     text-align: center;
 }
+
 #site-table td, #site-table th {
     border: 1px solid #cad9ea;
     color: #666;
     height: 25px;
 }
+
 #site-table thead th {
     background-color: #CCE8EB;
     width: 100px;
 }
+
 #site-table tr:nth-child(odd) {
     background: #fff;
 }
+
 #site-table tr:nth-child(even) {
     background: #F5FAFA;
 }
-
 
 
 /* plc寮傚父琛ㄦ牸 */
@@ -87,6 +97,7 @@
     border-collapse: collapse;
     margin: 0 auto;
 }
+
 #plc-error-table td, #plc-error-table th {
     border: 1px solid #cad9ea;
     color: #666;
@@ -94,16 +105,20 @@
     text-align: left;
     padding-left: 5px;
 }
+
 #plc-error-table thead th {
     background-color: #CCE8EB;
     width: 100px;
 }
+
 #plc-error-table td {
     color: red;
 }
+
 #plc-error-table tr:nth-child(odd) {
     background: #fff;
 }
+
 #plc-error-table tr:nth-child(even) {
     background: #F5FAFA;
 }
@@ -114,15 +129,16 @@
     height: 11%;
     background-color: #fff;
     border-radius: 5px;
-    box-shadow: 0 0 3px rgba(0,0,0,.3);
+    box-shadow: 0 0 3px rgba(0, 0, 0, .3);
 }
+
 #output {
     color: #666;
     border: 1px solid #b9b9b9;
     width: 100%;
     height: 100%;
     overflow: auto;
-    resize:none;
+    resize: none;
 }
 
 
@@ -131,23 +147,28 @@
     padding: 30px 10px 0 25px;
     overflow: hidden;
 }
+
 #site-detl form {
     overflow: hidden;
 }
+
 .form-item {
     margin-bottom: 10px;
 }
+
 .form-label {
     display: inline-block;
     width: 70px;
     text-align: right;
 }
+
 .form-input {
     display: inline-block;
     padding-left: 15px;
 }
+
 .form-input input {
-    outline-style: none ;
+    outline-style: none;
     border: 1px solid #ccc;
     border-radius: 3px;
     padding: 5px 8px;
@@ -155,21 +176,24 @@
     font-size: 14px;
     font-weight: bolder;
 }
-.form-input input:focus{
+
+.form-input input:focus {
     border-color: #66afe9;
     outline: 0;
-    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);
-    box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)
+    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, .6);
+    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, .6)
 }
+
 .form-button-container {
     text-align: center;
 }
+
 .form-button {
     margin: 10px 10px;
     width: 50px;
     height: 30px;
-    color:white;
-    background-color:cornflowerblue;
+    color: white;
+    background-color: cornflowerblue;
     border-radius: 3px;
     border-width: 0;
     outline: none;
@@ -177,6 +201,7 @@
     text-align: center;
     cursor: pointer;
 }
+
 .form-button:hover {
     opacity: 0.7;
 }
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/webapp/static/css/render.css b/zy-acs-cv/src/main/webapp/static/css/render.css
index c397e0e..82c8ad4 100644
--- a/zy-acs-cv/src/main/webapp/static/css/render.css
+++ b/zy-acs-cv/src/main/webapp/static/css/render.css
@@ -3,38 +3,45 @@
     padding: 0;
     overflow: hidden;
 }
+
 body {
     height: 1080px;
     width: 1920px;
 }
+
 #main {
     height: 100%;
     width: 100%;
-    background-color: rgb(108,167,168);
+    background-color: rgb(108, 167, 168);
 }
+
 .head {
     height: 10%;
     width: 100%;
     color: #FFFFFF;
 }
+
 .head-left {
     height: 100%;
     width: 20%;
     display: inline-block;
 }
+
 .head-right {
     height: 100%;
     width: 30%;
     display: inline-block;
     float: right;
 }
+
 .head h1 {
     display: inline;
     margin-top: 2%;
     margin-left: 2%;
     font-weight: 400;
-    letter-spacing:3px;
+    letter-spacing: 3px;
 }
+
 .head h6 {
     display: inline;
     margin-left: 2%;
@@ -46,10 +53,12 @@
     margin-top: 10px;
     margin-right: 10px;
 }
+
 .rack {
     position: absolute;
     display: inline-block;
 }
+
 .rackDescs {
     height: 100%;
     width: 100%;
@@ -57,33 +66,38 @@
     display: inline-block;
     text-align: center;
 }
+
 .stn {
     text-align: center;
-    background-color: rgb(120,255,129);
+    background-color: rgb(120, 255, 129);
     position: absolute;
 }
+
 .crn {
     position: absolute;
     display: inline-block;
     background-color: #00ff90;
     z-index: 999;
 }
+
 .track {
     position: absolute;
     display: inline-block;
     background-color: #000000;
     z-index: 5;
 }
+
 .item {
-    border: 1px solid rgb(194,76,65);
-    color: rgb(194,76,65);
+    border: 1px solid rgb(194, 76, 65);
+    color: rgb(194, 76, 65);
     height: 100%;
     width: 100%;
 }
+
 .barcode {
     position: absolute;
     color: #a19c9c;
-    border: 1px solid rgb(108,167,168);
+    border: 1px solid rgb(108, 167, 168);
     cursor: pointer;
     text-align: center;
     background-color: rgb(157, 217, 162);
@@ -100,18 +114,20 @@
     font-size: 24px;
     font-weight: 500;
     letter-spacing: 5px;
-    cursor:pointer;
+    cursor: pointer;
     transition: all 0.3s ease;
     font-family: 'Lato', sans-serif;
     background: transparent;
     box-shadow: inset 2px 2px 2px 0px rgba(255, 255, 255, 0.5), 7px 7px 20px 0px rgba(0, 0, 0, 0.1),
     4px 4px 5px 0px rgba(0, 0, 0, 0.1);
 }
+
 /* 16 */
 .btn-16 {
     border: none;
     color: #fff;
 }
+
 .btn-16:after {
     position: absolute;
     content: '';
@@ -125,30 +141,30 @@
     4px 4px 5px 0px #0001;
     transition: all 0.3s ease;
 }
+
 .btn-16:hover {
     color: #323131;
 }
+
 .btn-16:hover:after {
     left: auto;
     right: 0;
     width: 100%;
 }
+
 .btn-16:active {
     top: 2px;
 }
 
 
-
-
-
-
 /*鎿嶄綔鏄剧ず鏍�*/
 #body {
     width: 100%;
-    height: 23%	;
+    height: 23%;
     position: absolute;
     bottom: 2.5%;
 }
+
 /* 鎺у埗寮�鍏� */
 .system-state {
     display: inline-block;
@@ -158,6 +174,7 @@
     border-radius: 15px;
     margin-left: 1%;
 }
+
 /* 鍫嗗灈鏈虹姸鎬� */
 .machine-status {
     display: inline-block;
@@ -167,6 +184,7 @@
     border-radius: 15px;
     margin-left: 1%;
 }
+
 .state-ss {
     margin-left: 60px;
 
@@ -181,6 +199,7 @@
     border-radius: 15px;
     margin-left: 1%;
 }
+
 .line-ss {
     display: inline-block;
     float: right;
@@ -193,6 +212,7 @@
     background-color: rgba(5, 5, 5, 0.3);
     color: #ffdd00;
 }
+
 /* 鏉$爜鎵弿鍣� */
 .bar-code {
     display: inline-block;
@@ -202,6 +222,7 @@
     border-radius: 15px;
     margin-left: 1%;
 }
+
 /*鎵爜琛ㄥ崟*/
 .tablebox {
     display: inline-block;
@@ -214,23 +235,26 @@
     line-height: 27px;
     text-indent: 10px;
 }
+
 .table-head {
     width: 100%;
     height: 27px;
-    background:linear-gradient(to right, rgb(94, 193, 184),rgb(12,71,63));
+    background: linear-gradient(to right, rgb(94, 193, 184), rgb(12, 71, 63));
 }
+
 .right {
     float: right;
     text-indent: 10px;
     padding-right: 10px;
 }
+
 .table-body li {
     background-color: #5D7677;
 }
+
 .table-body li:nth-child(even) {
     background-color: #4A6565;
 }
-
 
 
 /* 鎺у埗琛ㄥご */
@@ -252,12 +276,14 @@
     background-image: url(../images/start48.png);
     display: inline-block;
 }
+
 .system-icon-close {
     width: 153px;
     height: 153px;
     background-image: url(../images/stop48.png);
     display: inline-block;
 }
+
 .switch_r {
     color: #FFFFFF;
     font-size: 14px;
@@ -266,14 +292,16 @@
     float: right;
     padding-top: 30px;
 }
+
 #system-run-desc {
     font-size: 20px;
     margin-top: 15px;
 }
+
 .state {
     height: 34px;
     width: 200px;
-    background-color: rgba(255,255,255,0.1);
+    background-color: rgba(255, 255, 255, 0.1);
     background-image: url(../images/stacker.png);
     background-repeat: no-repeat;
     border-radius: 17px 0 0 17px;
@@ -284,137 +312,164 @@
     color: #FFFFFF;
     font-size: 10px;
 }
+
 .states {
     background-image: url(../images/line.png);
-    margin-bottom:54px;
+    margin-bottom: 54px;
 }
+
 .button {
     margin-left: 5%;
     font-size: 14px;
     color: #FFFFFF;
 }
+
 /* 绔欑偣 */
 .site {
     position: absolute;
     color: #333;
     cursor: pointer;
     text-align: center;
-    background-color: rgb(120,255,129);
+    background-color: rgb(120, 255, 129);
     font-size: 14px;
     z-index: 9;
 }
+
 /*绌虹珯鐐�*/
 .site-k {
-    border: 1px solid rgb(108,167,168);
+    border: 1px solid rgb(108, 167, 168);
     background-color: rgb(108, 167, 168);
 }
+
 /* 鍏ュ簱 */
 .machine-put-flag {
     padding: 0 10px;
-    background-color: rgb(163,214,242);
+    background-color: rgb(163, 214, 242);
 }
+
 /* 鍑哄簱 */
 .machine-take-flag {
     padding: 0 10px;
-    background-color: rgb(151,180,0);
+    background-color: rgb(151, 180, 0);
 }
+
 /* 搴撳埌搴� */
 .machine-stock-move-flag {
     padding: 0 10px;
-    background-color: rgb(58,77,249);
+    background-color: rgb(58, 77, 249);
 }
+
 /* 绔欏埌绔� */
 .machine-site-move-flag {
     padding: 0 10px;
-    background-color: rgb(240,140,10);
+    background-color: rgb(240, 140, 10);
 }
+
 /* PToP */
 .machine-p-move-flag {
     padding: 0 10px;
-    background-color: rgb(29,152,23);
+    background-color: rgb(29, 152, 23);
 }
+
 /* 寮傚父 */
 .machine-error-flag {
     padding: 0 10px;
-    background-color: rgb(252,48,48);
+    background-color: rgb(252, 48, 48);
 }
+
 /* 鑷姩 */
 .machine-auto-flag {
     padding: 0 10px;
-    background-color: rgb(132,255,115);
+    background-color: rgb(132, 255, 115);
 }
+
 /* 闈炶嚜鍔�/鎵嬪姩 */
 .machine-unauto-flag {
     padding: 0 10px;
-    background-color: rgb(184,184,184);
+    background-color: rgb(184, 184, 184);
 }
+
 /* 鑷姩+鏈夌墿+ID */
 .site-auto-run-id {
-    background-color: rgb(252,48,48);
+    background-color: rgb(252, 48, 48);
 }
+
 /* 鑷姩+鏈夌墿 */
 .site-auto-run {
-    background-color: rgb(250,81,246);
+    background-color: rgb(250, 81, 246);
 }
+
 /* 鑷姩+ID */
 .site-auto-id {
-    background-color: rgb(196,196,0);
+    background-color: rgb(196, 196, 0);
 }
+
 /* 鑷姩 */
 .site-auto {
-    background-color: rgb(120,255,129);
+    background-color: rgb(120, 255, 129);
 }
+
 /* 闈炶嚜鍔�/鎵嬪姩 */
 .site-unauto {
-    background-color: rgb(184,184,184);
+    background-color: rgb(184, 184, 184);
 }
+
 #code {
     background-image: url(../images/status_bar_2.png);
     background-repeat: no-repeat;
     margin-left: 2%;
 }
+
 /* 鍫嗗灈鏈� */
 .machine {
     position: absolute;
-    background-color: rgb(108,167,168);
+    background-color: rgb(108, 167, 168);
     /*margin-left: 1116px;*/
     height: 20px;
     width: 80px;
     background-image: url("../images/Crane_auto.png");
     background-repeat: no-repeat;
-    background-size:100% 100%;
+    background-size: 100% 100%;
     background-position: top center;
     cursor: pointer;
     z-index: 99;
 }
+
 /* 鍏ュ簱 */
 .machine-pakin {
     background-image: url("../images/Crane_store.png");
 }
+
 /* 鍑哄簱 */
 .machine-pakout {
     background-image: url("../images/Crane_retrieve.png");
 }
+
 /* 搴撳埌搴� */
 .machine-stock-move {
     background-image: url("../images/Crane_loctoloc.png");
 }
+
 /* 绔欏埌绔� */
 .machine-site-move {
     background-image: url("../images/Crane_stntostn.png");
 }
+
 /* p to p */
 .machine-p-move {
     background-image: url("../images/Crane_hptoohp.png");
 }
+
 /* 寮傚父 */
 .machine-error {
     background-image: url("../images/Crane_error.png");
 }
+
 /* 鑷姩 */
 .machine-auto {
     background-image: url("../images/Crane_auto.png");
 }
+
 /* 闈炶嚜鍔�/鏀跺埌 */
 .machine-un-auto {
     background-image: url("../images/Crane_manual.png");
@@ -426,24 +481,26 @@
     height: 365px;
     background-image: url(../images/Popup-yellow.png);
     position: fixed;
-    color:white;
+    color: white;
     left: 50%;
     top: 50%;
-    transform: translate(-50%,-50%);
+    transform: translate(-50%, -50%);
     z-index: 101;
 }
+
 /* 杈撻�佽澶囧脊绐� */
 #siteWindow {
     width: 291px;
     height: 336px;
     background-image: url(../images/Popup-green.png);
     position: fixed;
-    color:white;
+    color: white;
     left: 50%;
     top: 50%;
-    transform: translate(-50%,-50%);
+    transform: translate(-50%, -50%);
     z-index: 101;
 }
+
 #siteWindow-head {
     width: 291px;
     height: 55px;
@@ -453,9 +510,11 @@
     font-weight: 700;
     letter-spacing: 2px;
 }
+
 #siteWindow-head .detailed {
     display: inline-block;
 }
+
 #siteWindow-head button {
     width: 25px;
     height: 25px;
@@ -468,6 +527,7 @@
     margin-top: 15px;
     margin-right: 50px;
 }
+
 #crnWindow-head {
     width: 291px;
     height: 55px;
@@ -478,9 +538,11 @@
     letter-spacing: 2px;
 
 }
+
 #crnWindow-head .detailed {
     display: inline-block;
 }
+
 #crnWindow-head button {
     width: 25px;
     height: 25px;
@@ -495,24 +557,26 @@
 }
 
 
-
 /* 寮圭獥 */
 form .form-item {
     display: inline-block;
     padding-left: 10px;
 }
+
 form .form-item-label {
     display: inline-block;
     width: 90px;
     font-size: 10px;
 }
+
 form .form-item-input {
     display: inline-block;
     width: 180px;
 
 }
+
 form .form-item-input input {
-    background-color: rgba(255,255,255,.3);
+    background-color: rgba(255, 255, 255, .3);
     color: #FFFFFF;
     padding: 0;
     border: none;
@@ -520,17 +584,20 @@
     height: 18px;
     padding-left: 10px;
 }
+
 /* checkbox */
 form .form-item-checkbox {
     display: inline-block;
     padding-left: 10px;
     width: 20%;
 }
+
 form .form-item-label-checkbox {
     display: inline-block;
     width: auto;
     font-size: 14px;
 }
+
 form .form-item-input-checkbox {
     display: inline-block;
     width: auto;
diff --git a/zy-acs-cv/src/main/webapp/static/css/rgv.css b/zy-acs-cv/src/main/webapp/static/css/rgv.css
index bd49d5b..3a4d1dc 100644
--- a/zy-acs-cv/src/main/webapp/static/css/rgv.css
+++ b/zy-acs-cv/src/main/webapp/static/css/rgv.css
@@ -1,6 +1,7 @@
 body {
     background-color: #6CA7A8;
 }
+
 .button-window {
     float: left;
     width: 100%;
@@ -9,11 +10,12 @@
     border-radius: 5px;
     box-shadow: 0 0 3px rgba(0 0 0 .3);
 }
+
 /* -------------------- 绗竴妯″潡 -------------------- */
 .log-board {
     background-color: #fff;
     border-radius: 5px;
-    box-shadow: 0 0 3px rgba(0,0,0,.3);
+    box-shadow: 0 0 3px rgba(0, 0, 0, .3);
     height: 28%;
 }
 
@@ -24,17 +26,21 @@
     width: 20%;
     text-align: center;
 }
+
 .command-log h2 {
     padding: 10px;
 }
+
 .rgv-command-item {
     padding: 4px 0;
 }
+
 .rgv-command-item label {
     font-size: 20px;
     font-weight: bold;
     vertical-align: middle;
 }
+
 .rgv-command-item span {
     display: inline-block;
     width: 20px;
@@ -43,6 +49,7 @@
     border-radius: 5px;
     vertical-align: middle;
 }
+
 .rgv-command-item input {
     vertical-align: middle;
     outline: none;
@@ -56,6 +63,7 @@
     width: 100%;
     overflow: auto;
 }
+
 /* 鍫嗗灈鏈虹姸鎬佽〃 */
 #rgv-state-table {
     font-size: 12px;
@@ -63,18 +71,22 @@
     margin: 0 auto;
     text-align: center;
 }
+
 #rgv-state-table td, #rgv-state-table th {
     border: 1px solid #cad9ea;
     color: #666;
     height: 25px;
 }
+
 #rgv-state-table thead th {
     background-color: #CCE8EB;
     width: 300px;
 }
+
 #rgv-state-table tr:nth-child(odd) {
     background: #fff;
 }
+
 #rgv-state-table tr:nth-child(even) {
     background: #F5FAFA;
 }
@@ -86,8 +98,9 @@
     height: 23%;
     background-color: #fff;
     border-radius: 5px;
-    box-shadow: 0 0 3px rgba(0,0,0,.3);
+    box-shadow: 0 0 3px rgba(0, 0, 0, .3);
 }
+
 /* 鍫嗗灈鏈虹姸鎬佷俊鎭〃 */
 #rgv-msg-table {
     font-size: 12px;
@@ -95,18 +108,22 @@
     margin: 0 auto;
     text-align: center;
 }
+
 #rgv-msg-table td, #rgv-msg-table th {
     border: 1px solid #f1f1f1;
     color: #666;
     height: 30px;
 }
+
 #rgv-msg-table thead th {
     background-color: #fff;
     width: 400px;
 }
+
 #rgv-msg-table tr:nth-child(odd) {
     background: #fff;
 }
+
 #rgv-msg-table tr:nth-child(even) {
     background: #fff;
 }
@@ -118,7 +135,7 @@
     height: 25%;
     background-color: #fff;
     border-radius: 5px;
-    box-shadow: 0 0 3px rgba(0,0,0,.3);
+    box-shadow: 0 0 3px rgba(0, 0, 0, .3);
 }
 
 /* 浠诲姟璁惧閫夋嫨妗� */
@@ -127,6 +144,7 @@
     overflow: hidden;
     padding: 20px 0 10px 20px;
 }
+
 .operator-item {
     display: inline-block;
     height: 100%;
@@ -136,6 +154,7 @@
     vertical-align: middle;
     padding: 10px 0px 10px 50px;
 }
+
 .operator-item .select-title {
     display: inline-block;
     position: absolute;
@@ -150,28 +169,37 @@
     padding: 5px;
     z-index: 999;
 }
+
 .operator-item .select-container {
     padding: 10px 0;
     height: 100%;
     border: 1px solid #8d8d8d;
     border-radius: 5px;
 }
+
 #rgv-select .select-container label {
     display: inline-block;
     padding: 0 20px;
-    vertical-align: middle; margin-top:-2px; margin-bottom:1px;
+    vertical-align: middle;
+    margin-top: -2px;
+    margin-bottom: 1px;
 
 }
+
 .select-container input {
     display: inline-block;
     font-size: 12px;
-    vertical-align: middle; margin-top:-2px; margin-bottom:1px;
+    vertical-align: middle;
+    margin-top: -2px;
+    margin-bottom: 1px;
 }
+
 .select-container-item {
     display: inline-block;
     margin: 0px auto;
     padding: 0;
 }
+
 .select-container-item input {
     height: 20px;
     border: 1px solid #8D8D8D;
@@ -186,18 +214,21 @@
     overflow: hidden;
     padding: 0 20px 10px 20px;
 }
+
 .task-operator fieldset {
     padding: 15px 20px 5px 50px;
     border-width: 1px;
     border-style: solid;
     height: 100%;
 }
+
 .task-operator legend {
     margin-left: 20px;
     padding: 0 10px;
     font-size: 16px;
     font-weight: 300;
 }
+
 button.item {
     border: 1px solid #333;
     font-size: 13px;
@@ -211,6 +242,7 @@
     margin-right: 5px;
     border-radius: 5px;
 }
+
 button.item:hover {
     background-color: #333;
     color: #fff;
@@ -225,6 +257,7 @@
     text-align: center;
     padding: 80px 0;
 }
+
 .rgv-operation-shade-span {
     font-size: xx-large;
     font-weight: bold;
@@ -237,8 +270,9 @@
     height: 15%;
     background-color: #fff;
     border-radius: 5px;
-    box-shadow: 0 0 3px rgba(0,0,0,.3);
+    box-shadow: 0 0 3px rgba(0, 0, 0, .3);
 }
+
 #rgv-output {
     border-left: none;
     border-right: none;
@@ -247,6 +281,6 @@
     width: 100%;
     height: 100%;
     overflow: auto;
-    resize:none;
+    resize: none;
     color: #666;
 }
diff --git a/zy-acs-cv/src/main/webapp/static/js/common.js b/zy-acs-cv/src/main/webapp/static/js/common.js
index 3dbaab4..4b31eec 100644
--- a/zy-acs-cv/src/main/webapp/static/js/common.js
+++ b/zy-acs-cv/src/main/webapp/static/js/common.js
@@ -1,8 +1,8 @@
-var baseUrl = "/xgmFlwcs";
+var baseUrl = "/cv";
 
 // 璧嬪��
 function setVal(el, val) {
-    if (el.text() !== val){
+    if (el.text() !== val) {
         el.html(val);
     }
 }
@@ -13,7 +13,7 @@
 var detailWidth = '90%';
 
 // 闈炵┖鍒ゆ柇
-function isEmpty(obj){
+function isEmpty(obj) {
     return typeof obj == "undefined" || obj == null || obj === "";
 }
 
@@ -47,7 +47,7 @@
 // 娓呯悊瀵硅薄null鍊�
 function reObject(data) {
     for (var obj in data) {
-        if (data[obj]===null){
+        if (data[obj] === null) {
             delete data[obj];
         }
     }
@@ -64,25 +64,25 @@
 }
 
 // 鏉冮檺
-function limit(child){
-    if (child == null){
+function limit(child) {
+    if (child == null) {
         child = false;
     }
-    var param = (child?parent.window:window).location.href.split("?")[1];
+    var param = (child ? parent.window : window).location.href.split("?")[1];
     if (null != param) {
         var resourceId = param.split("=")[1];
         $.ajax({
-            url: baseUrl+"/power/menu/"+resourceId+"/auth",
+            url: baseUrl + "/power/menu/" + resourceId + "/auth",
             headers: {'token': localStorage.getItem('token')},
             method: 'GET',
             async: false,
             success: function (res) {
-                if (res.code === 200){
-                    for(var i = 0, len = res.data.length; i < len; i++) {
-                        (child?parent:window).$('#'+res.data[i].code).css("display", "inline-block");
-                        (child?parent:window).$('.'+res.data[i].code).css("display", "inline-block");
+                if (res.code === 200) {
+                    for (var i = 0, len = res.data.length; i < len; i++) {
+                        (child ? parent : window).$('#' + res.data[i].code).css("display", "inline-block");
+                        (child ? parent : window).$('.' + res.data[i].code).css("display", "inline-block");
                     }
-                } else if (res.code === 403){
+                } else if (res.code === 403) {
                     window.location.href = baseUrl;
                 } else {
                     layer.msg(res.msg)
@@ -92,7 +92,6 @@
     }
 
 }
-
 
 
 // http璇锋眰
@@ -137,11 +136,11 @@
                 timeout: 10000,
                 cache: false,
                 success: function (res) {
-                    if (res.code === 200){
+                    if (res.code === 200) {
                         callback(res);
-                    } else if (res.code === 403){
-                        parent.location.href = baseUrl+"/login";
-                    }  else {
+                    } else if (res.code === 403) {
+                        parent.location.href = baseUrl + "/login";
+                    } else {
                         layer.msg(res.msg, {icon: 2});
                     }
                 },
@@ -170,11 +169,12 @@
     return null;
 }
 
-function getDateFormat(value){
+function getDateFormat(value) {
     var date = new Date();// 鑾峰彇褰撳墠鏃堕棿
     date.setDate(date.getDate() + value);// 璁剧疆澶╂暟 -1 澶�
     return date.Format("MM-dd");
 }
+
 /**
  * 鏃ユ湡鏍煎紡鍖�
  */
diff --git a/zy-acs-cv/src/main/webapp/static/js/console.js b/zy-acs-cv/src/main/webapp/static/js/console.js
index 7523ae8..5fe6aa2 100644
--- a/zy-acs-cv/src/main/webapp/static/js/console.js
+++ b/zy-acs-cv/src/main/webapp/static/js/console.js
@@ -16,23 +16,24 @@
     floorBtn = '',
     floorBtns = '',
     floorBtnss = '',
-    floorInfo='';  // 搴撳尯淇℃伅
+    floorInfo = '';  // 搴撳尯淇℃伅
 let rackss = mapInfo.racks,
     rackDescss = mapInfo.rackDescs,
     crnss = mapInfo.crns,
     areas = mapInfo.areas[0].floors,
     floorId;
+
 function getMap() {
     // 璐ф灦
-    for (let i = 0;i < rackss.length;i++) {
-        let bay ='' // 鍗曚釜搴撲綅
+    for (let i = 0; i < rackss.length; i++) {
+        let bay = '' // 鍗曚釜搴撲綅
         let bays = '' // 搴撲綅闆嗗悎
         let maxBayNo = rackss[i].maxBayNo // 鏈�澶у簱浣嶅彿
         let minBayNo = rackss[i].minBayNo // 鏈�灏忓簱浣嶅彿
         let bLen
         let interval // 闂撮殧鏁�
 
-        if (maxBayNo<35) {
+        if (maxBayNo < 35) {
             interval = 1
             bLen = maxBayNo / interval // 搴撲綅涓暟
         } else {
@@ -43,7 +44,7 @@
         let bNum // 搴撲綅鍙风爜
 
         if (minBayNo % 2 == 0) { // 浠�2寮�濮�
-            if(interval == 1) {
+            if (interval == 1) {
                 bLen = bLen - 1
             } else if (interval == 2) {
                 if (maxBayNo % 2 == 0) { // 鍋舵暟
@@ -54,7 +55,7 @@
                 }
             }
         } else { // 浠�1寮�濮�
-            if(interval == 1) {
+            if (interval == 1) {
                 bLen = bLen
             } else if (interval == 2) {
                 if (maxBayNo % 2 == 0) { // 鍋舵暟
@@ -69,73 +70,73 @@
         if (mapInfo.hpPosition == 1) {
             bNum = maxBayNo
             for (let j = bLen; j > 0; j--) {
-                bay = "<button class='item' style='width: "+ bayWidth +"px'>" + bNum + "</button>"
+                bay = "<button class='item' style='width: " + bayWidth + "px'>" + bNum + "</button>"
                 bays = bays + bay
                 bNum = bNum - interval;
             }
-        }else {
+        } else {
             bNum = minBayNo
             for (let j = 0; j < bLen; j++) {
-                bay = "<button class='item' style='width: "+ bayWidth +"px'>" + bNum + "</button>"
+                bay = "<button class='item' style='width: " + bayWidth + "px'>" + bNum + "</button>"
                 bays = bays + bay
                 bNum = bNum + interval;
             }
         }
 
         rack = "<div class='rack' id='" + rackss[i].id +
-            "'style='width:"+ rackss[i].width +
-            "px;height: "+ rackss[i].height+
-            "px;top: "+ rackss[i].top +
-            "px;left: "+ rackss[i].left +
+            "'style='width:" + rackss[i].width +
+            "px;height: " + rackss[i].height +
+            "px;top: " + rackss[i].top +
+            "px;left: " + rackss[i].left +
             "px'>" + bays + "</div>"
         racks = racks + rack
         // getCrnInfo(minBayNo);
     }
     // 璐ф灦鎻忚堪
-    for (let i = 0;i < rackDescss.length;i++) {
+    for (let i = 0; i < rackDescss.length; i++) {
         rackDesc = "<div class='rackDescs' id='" + rackDescss[i].id +
-            "'style='width:"+ rackDescss[i].width +
-            "px;height: "+ rackDescss[i].height+
-            "px;line-height: "+ rackDescss[i].height+
-            "px;top: "+ rackDescss[i].top +
-            "px;left: "+ rackDescss[i].left +
+            "'style='width:" + rackDescss[i].width +
+            "px;height: " + rackDescss[i].height +
+            "px;line-height: " + rackDescss[i].height +
+            "px;top: " + rackDescss[i].top +
+            "px;left: " + rackDescss[i].left +
             "px'>" + rackDescss[i].text + "</div>"
         rackDescs = rackDescs + rackDesc
     }
     // 鍫嗗灈鏈哄拰鍦拌建
-    for (let i = 0;i < crnss.length;i++) {
+    for (let i = 0; i < crnss.length; i++) {
         if (crnss[i].type == "crane") {
             crn = "<div class='machine' id='" + crnss[i].id +
-                "'style='width:"+ crnss[i].width +
-                "px;height: "+ crnss[i].height+
-                "px;top: "+ crnss[i].top +
-                "px;left: "+ crnss[i].left +
+                "'style='width:" + crnss[i].width +
+                "px;height: " + crnss[i].height +
+                "px;top: " + crnss[i].top +
+                "px;left: " + crnss[i].left +
                 "px'></div>"
             crns = crns + crn
         } else {
             track = "<div class='track' id='" + crnss[i].id +
-                "'style='width:"+ crnss[i].width +
-                "px;height: "+ crnss[i].height+
-                "px;top: "+ crnss[i].top +
-                "px;left: "+ crnss[i].left +
+                "'style='width:" + crnss[i].width +
+                "px;height: " + crnss[i].height +
+                "px;top: " + crnss[i].top +
+                "px;left: " + crnss[i].left +
                 "px'>" + crnss[i].text + "</div>"
             tracks = tracks + track
         }
     }
     // 妤煎眰
-    for (let i = 0; i < areas.length;i++) {
+    for (let i = 0; i < areas.length; i++) {
 
         let stnss = areas[i].stns
         let floor = areas[i].text
         let barcodes = areas[i].barcode
         floorId = areas[i].id
-        var position = (i+1)*100
+        var position = (i + 1) * 100
         floorBtn =
-            "<button class='floorBtn btn-16' onclick='changFloor("+i+")' style='top: "+position+"px;'>" + floor +"</button>"
+            "<button class='floorBtn btn-16' onclick='changFloor(" + i + ")' style='top: " + position + "px;'>" + floor + "</button>"
         if (mapInfo.areas[0].floors.length == 1) {
             floorBtnss = ''
         } else {
-            floorBtnss =  floorBtnss + floorBtn
+            floorBtnss = floorBtnss + floorBtn
         }
         // 姣忓眰鐨� 杈撻�佺嚎绔欑偣
         var index = i
@@ -146,25 +147,24 @@
         for (let j = 0; j < stnss.length; j++) {
             if (stnss[j].type == "stn") {
                 stn = "<div class='site' id='" + stnss[j].id +
-                    "'style='width:"+ stnss[j].width +
-                    "px;height: "+ stnss[j].height+
-                    "px;line-height: "+ stnss[j].height+
-                    "px;top: "+ stnss[j].top +
-                    "px;left: "+ stnss[j].left +
+                    "'style='width:" + stnss[j].width +
+                    "px;height: " + stnss[j].height +
+                    "px;line-height: " + stnss[j].height +
+                    "px;top: " + stnss[j].top +
+                    "px;left: " + stnss[j].left +
                     "px'>" + stnss[j].text + "</div>"
                 stnArr[i] = stnArr[i] + stn
                 total[i] = n++
-            } else if(stnss[j].type == "track"){
+            } else if (stnss[j].type == "track") {
                 stn = "<div class='track' id='" + stnss[j].id +
-                    "'style='width:"+ stnss[j].width +
-                    "px;height: "+ stnss[j].height+
-                    "px;line-height: "+ stnss[j].height+
-                    "px;top: "+ stnss[j].top +
-                    "px;left: "+ stnss[j].left +
-                    "px'>" + stnss[j].text  + "</div>"
+                    "'style='width:" + stnss[j].width +
+                    "px;height: " + stnss[j].height +
+                    "px;line-height: " + stnss[j].height +
+                    "px;top: " + stnss[j].top +
+                    "px;left: " + stnss[j].left +
+                    "px'>" + stnss[j].text + "</div>"
                 stnArr[i] = stnArr[i] + stn
             }
-
 
 
         }
@@ -173,22 +173,23 @@
                 "'style='width:" + barcodes[k].width +
                 "px;height: " + barcodes[k].height +
                 "px;line-height: " + barcodes[k].height +
-                "px;top: "+ barcodes[k].top +
-                "px;left: "+ barcodes[k].left + "px'>" + "</div>"
+                "px;top: " + barcodes[k].top +
+                "px;left: " + barcodes[k].left + "px'>" + "</div>"
             barcodeArr[i] = barcodeArr[i] + barcode
         }
 
     }
-    floorInfo = racks + rackDescs + tracks + crns + stnArr[0] + floorBtnss+ barcodeArr[0]
+    floorInfo = racks + rackDescs + tracks + crns + stnArr[0] + floorBtnss + barcodeArr[0]
 
     $(".main-part").append(floorInfo)
     $("#line-total").html(total[0])
     // listenChange();
 
 }
+
 function changFloor(e) {
     $(".main-part").empty()  // 娓呯┖鑺傜偣
-    floorInfo = racks  + stnArr[e] +rackDescs + crns + tracks + floorBtnss + barcodeArr[e]
+    floorInfo = racks + stnArr[e] + rackDescs + crns + tracks + floorBtnss + barcodeArr[e]
     $(".main-part").append(floorInfo)
     $("#line-total").empty()
     $("#line-total").html(total[e])
diff --git a/zy-acs-cv/src/main/webapp/static/js/console.map.js b/zy-acs-cv/src/main/webapp/static/js/console.map.js
index 5ef9b5f..882e373 100644
--- a/zy-acs-cv/src/main/webapp/static/js/console.map.js
+++ b/zy-acs-cv/src/main/webapp/static/js/console.map.js
@@ -1,5 +1,5 @@
-mapInfo ={
-    "mapName": "xgmFlwcs",
+mapInfo = {
+    "mapName": "whxrwcs",
     "rackCount": 6,
     "crnCount": 3,
     "stbCount": 48,
@@ -528,7 +528,7 @@
                 "width": 80,
                 "height": 20
             }],
-            "barcode":[
+            "barcode": [
                 {
                     "type": "barcode",
                     "id": "barcode-1",
diff --git a/zy-acs-cv/src/main/webapp/static/js/cool.js b/zy-acs-cv/src/main/webapp/static/js/cool.js
index 9aff404..0aef27f 100644
--- a/zy-acs-cv/src/main/webapp/static/js/cool.js
+++ b/zy-acs-cv/src/main/webapp/static/js/cool.js
@@ -1,9 +1,9 @@
 /**
  * 鎼滅储鑷姩琛ュ叏 -- 灞�澶栫偣鍑婚殣钘�
  */
-$(function(){
-    $(document).on("click",function(e){
-        if(!$(e.target).parents(".cool-auto-complete").length){
+$(function () {
+    $(document).on("click", function (e) {
+        if (!$(e.target).parents(".cool-auto-complete").length) {
             $(".cool-auto-complete-window").hide();
         }
     });
@@ -16,12 +16,12 @@
 function autoShow(id) {
     var cac = document.getElementById(id).parentNode;
     var cacw = cac.getElementsByClassName("cool-auto-complete-window")[0];
-    if (cacw.style.display === "none" || cacw.style.display === ""){
+    if (cacw.style.display === "none" || cacw.style.display === "") {
         cacw.style.display = "block";
         var cacwi = cacw.getElementsByClassName("cool-auto-complete-window-input")[0];
         cacwi.focus();
         autoLoad(cacwi.getAttribute('data-key'));
-    }else {
+    } else {
         cacw.style.display = "none";
     }
 }
@@ -30,29 +30,29 @@
  * 鎼滅储鑷姩琛ュ叏 -- input
  */
 function autoLoad(val) {
-    var inputDomVal = document.querySelector("input[data-key="+val+"]").value;
-    var selectDom = document.querySelector("select[data-key="+val+"Select]");
+    var inputDomVal = document.querySelector("input[data-key=" + val + "]").value;
+    var selectDom = document.querySelector("select[data-key=" + val + "Select]");
     selectDom.length = 0;
     var defaultOption = new Option("鍙栨秷閫夋嫨", "");
     defaultOption.title = "";
     selectDom.appendChild(defaultOption);
-    selectDom.style.display='none';
+    selectDom.style.display = 'none';
     $.ajax({
-        url: baseUrl+"/"+getForeignKeyQuery(val)+"/auth",
+        url: baseUrl + "/" + getForeignKeyQuery(val) + "/auth",
         headers: {'token': localStorage.getItem('token')},
         data: {condition: inputDomVal},
         method: 'POST',
-        traditional:true,
+        traditional: true,
         success: function (res) {
-            if (res.code === 200){
+            if (res.code === 200) {
                 var list = res.data;
-                for (var i=0;i<list.length;i++){
+                for (var i = 0; i < list.length; i++) {
                     var option = new Option(list[i].value, i);
                     option.title = list[i].id;
-                    selectDom.options[i+1] = option;
+                    selectDom.options[i + 1] = option;
                 }
-                selectDom.style.display='block';
-            } else if (res.code === 403){
+                selectDom.style.display = 'block';
+            } else if (res.code === 403) {
                 window.location.href = baseUrl;
             } else {
                 layer.msg(res.msg)
@@ -64,13 +64,13 @@
 /**
  * 鎼滅储鑷姩琛ュ叏 -- select
  */
-function confirmed(val){
-    var inputDom = $("input[data-key="+val.substring(0,val.length - 6)+"]");
-    var selectDom = $("select[data-key="+val+"]");
+function confirmed(val) {
+    var inputDom = $("input[data-key=" + val.substring(0, val.length - 6) + "]");
+    var selectDom = $("select[data-key=" + val + "]");
 
-    selectDom.dblclick(function(){
+    selectDom.dblclick(function () {
         inputDom.focus();
-        selectDom.css("display","none");
+        selectDom.css("display", "none");
     });
 
     // 淇グ瀛楁
@@ -81,7 +81,7 @@
     // id瀛楁
     var selectOptionDom = selectDom.find("option:selected");
     var html = selectOptionDom.html();
-    if (html === "鍙栨秷閫夋嫨"){
+    if (html === "鍙栨秷閫夋嫨") {
         cacd.val("");
         realDom.val("");
     } else {
@@ -92,7 +92,7 @@
 }
 
 function reviewImg(src) {
-    window.open().document.write("<img src="+src+" />");
+    window.open().document.write("<img src=" + src + " />");
 }
 
 /**
@@ -100,7 +100,7 @@
  */
 function getForeignKeyQuery(str) {
     var index = str.indexOf('By');
-    if (index !== -1){
+    if (index !== -1) {
         return str.substring(0, index);
     }
     return str;
@@ -108,18 +108,19 @@
 
 var banMsg;
 var tips;
+
 // 涓婚敭鏍¢獙
 function check(id, domain) {
     var param = {
         key: id,
-        val: $('#'+id).val()
+        val: $('#' + id).val()
     };
     $.ajax({
-        url: baseUrl+"/"+domain+"/check/column/auth",
+        url: baseUrl + "/" + domain + "/check/column/auth",
         headers: {'token': localStorage.getItem('token')},
         data: JSON.stringify(param),
-        dataType:'json',
-        contentType:'application/json;charset=UTF-8',
+        dataType: 'json',
+        contentType: 'application/json;charset=UTF-8',
         method: 'POST',
         success: function (res) {
             if (res.code === 200) {
@@ -131,13 +132,13 @@
                 banMsg = res.data + "涓嶅彲鐢�";
                 tips = layer.tips(
                     "<span style='color:red;'>宸插瓨鍦�</span>",
-                    '#'+id,
+                    '#' + id,
                     {
                         // tipsMore: true,
-                        tips: [2,'#fff'],
-                        time:0
-                        ,area: 'auto'
-                        ,maxWidth:500
+                        tips: [2, '#fff'],
+                        time: 0
+                        , area: 'auto'
+                        , maxWidth: 500
                     });
             }
         }
diff --git a/zy-acs-cv/src/main/webapp/static/js/handlebars/handlebars-v4.5.3.js b/zy-acs-cv/src/main/webapp/static/js/handlebars/handlebars-v4.5.3.js
index 646b3c3..d1322a7 100644
--- a/zy-acs-cv/src/main/webapp/static/js/handlebars/handlebars-v4.5.3.js
+++ b/zy-acs-cv/src/main/webapp/static/js/handlebars/handlebars-v4.5.3.js
@@ -3,5008 +3,6534 @@
  @license
  handlebars v4.5.3
 
-Copyright (C) 2011-2017 by Yehuda Katz
+ Copyright (C) 2011-2017 by Yehuda Katz
 
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
 
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
 
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
 
-*/
+ */
 (function webpackUniversalModuleDefinition(root, factory) {
-	if(typeof exports === 'object' && typeof module === 'object')
-		module.exports = factory();
-	else if(typeof define === 'function' && define.amd)
-		define([], factory);
-	else if(typeof exports === 'object')
-		exports["Handlebars"] = factory();
-	else
-		root["Handlebars"] = factory();
-})(this, function() {
-return /******/ (function(modules) { // webpackBootstrap
-/******/ 	// The module cache
-/******/ 	var installedModules = {};
+    if (typeof exports === 'object' && typeof module === 'object')
+        module.exports = factory();
+    else if (typeof define === 'function' && define.amd)
+        define([], factory);
+    else if (typeof exports === 'object')
+        exports["Handlebars"] = factory();
+    else
+        root["Handlebars"] = factory();
+})(this, function () {
+    return /******/ (function (modules) { // webpackBootstrap
+        /******/ 	// The module cache
+        /******/
+        var installedModules = {};
 
-/******/ 	// The require function
-/******/ 	function __webpack_require__(moduleId) {
+        /******/ 	// The require function
+        /******/
+        function __webpack_require__(moduleId) {
 
-/******/ 		// Check if module is in cache
-/******/ 		if(installedModules[moduleId])
-/******/ 			return installedModules[moduleId].exports;
+            /******/ 		// Check if module is in cache
+            /******/
+            if (installedModules[moduleId])
+                /******/            return installedModules[moduleId].exports;
 
-/******/ 		// Create a new module (and put it into the cache)
-/******/ 		var module = installedModules[moduleId] = {
-/******/ 			exports: {},
-/******/ 			id: moduleId,
-/******/ 			loaded: false
-/******/ 		};
+            /******/ 		// Create a new module (and put it into the cache)
+            /******/
+            var module = installedModules[moduleId] = {
+                /******/            exports: {},
+                /******/            id: moduleId,
+                /******/            loaded: false
+                /******/
+            };
 
-/******/ 		// Execute the module function
-/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
+            /******/ 		// Execute the module function
+            /******/
+            modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
 
-/******/ 		// Flag the module as loaded
-/******/ 		module.loaded = true;
+            /******/ 		// Flag the module as loaded
+            /******/
+            module.loaded = true;
 
-/******/ 		// Return the exports of the module
-/******/ 		return module.exports;
-/******/ 	}
+            /******/ 		// Return the exports of the module
+            /******/
+            return module.exports;
+            /******/
+        }
 
 
-/******/ 	// expose the modules object (__webpack_modules__)
-/******/ 	__webpack_require__.m = modules;
+        /******/ 	// expose the modules object (__webpack_modules__)
+        /******/
+        __webpack_require__.m = modules;
 
-/******/ 	// expose the module cache
-/******/ 	__webpack_require__.c = installedModules;
+        /******/ 	// expose the module cache
+        /******/
+        __webpack_require__.c = installedModules;
 
-/******/ 	// __webpack_public_path__
-/******/ 	__webpack_require__.p = "";
+        /******/ 	// __webpack_public_path__
+        /******/
+        __webpack_require__.p = "";
 
-/******/ 	// Load entry module and return exports
-/******/ 	return __webpack_require__(0);
-/******/ })
-/************************************************************************/
-/******/ ([
-/* 0 */
-/***/ (function(module, exports, __webpack_require__) {
+        /******/ 	// Load entry module and return exports
+        /******/
+        return __webpack_require__(0);
+        /******/
+    })
+        /************************************************************************/
+        /******/ ([
+            /* 0 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	'use strict';
+                'use strict';
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                var _interopRequireDefault = __webpack_require__(1)['default'];
 
-	exports.__esModule = true;
+                exports.__esModule = true;
 
-	var _handlebarsRuntime = __webpack_require__(2);
+                var _handlebarsRuntime = __webpack_require__(2);
 
-	var _handlebarsRuntime2 = _interopRequireDefault(_handlebarsRuntime);
+                var _handlebarsRuntime2 = _interopRequireDefault(_handlebarsRuntime);
 
-	// Compiler imports
+                // Compiler imports
 
-	var _handlebarsCompilerAst = __webpack_require__(40);
+                var _handlebarsCompilerAst = __webpack_require__(40);
 
-	var _handlebarsCompilerAst2 = _interopRequireDefault(_handlebarsCompilerAst);
+                var _handlebarsCompilerAst2 = _interopRequireDefault(_handlebarsCompilerAst);
 
-	var _handlebarsCompilerBase = __webpack_require__(41);
+                var _handlebarsCompilerBase = __webpack_require__(41);
 
-	var _handlebarsCompilerCompiler = __webpack_require__(46);
+                var _handlebarsCompilerCompiler = __webpack_require__(46);
 
-	var _handlebarsCompilerJavascriptCompiler = __webpack_require__(49);
+                var _handlebarsCompilerJavascriptCompiler = __webpack_require__(49);
 
-	var _handlebarsCompilerJavascriptCompiler2 = _interopRequireDefault(_handlebarsCompilerJavascriptCompiler);
+                var _handlebarsCompilerJavascriptCompiler2 = _interopRequireDefault(_handlebarsCompilerJavascriptCompiler);
 
-	var _handlebarsCompilerVisitor = __webpack_require__(44);
+                var _handlebarsCompilerVisitor = __webpack_require__(44);
 
-	var _handlebarsCompilerVisitor2 = _interopRequireDefault(_handlebarsCompilerVisitor);
+                var _handlebarsCompilerVisitor2 = _interopRequireDefault(_handlebarsCompilerVisitor);
 
-	var _handlebarsNoConflict = __webpack_require__(39);
+                var _handlebarsNoConflict = __webpack_require__(39);
 
-	var _handlebarsNoConflict2 = _interopRequireDefault(_handlebarsNoConflict);
+                var _handlebarsNoConflict2 = _interopRequireDefault(_handlebarsNoConflict);
 
-	var _create = _handlebarsRuntime2['default'].create;
-	function create() {
-	  var hb = _create();
+                var _create = _handlebarsRuntime2['default'].create;
 
-	  hb.compile = function (input, options) {
-	    return _handlebarsCompilerCompiler.compile(input, options, hb);
-	  };
-	  hb.precompile = function (input, options) {
-	    return _handlebarsCompilerCompiler.precompile(input, options, hb);
-	  };
+                function create() {
+                    var hb = _create();
 
-	  hb.AST = _handlebarsCompilerAst2['default'];
-	  hb.Compiler = _handlebarsCompilerCompiler.Compiler;
-	  hb.JavaScriptCompiler = _handlebarsCompilerJavascriptCompiler2['default'];
-	  hb.Parser = _handlebarsCompilerBase.parser;
-	  hb.parse = _handlebarsCompilerBase.parse;
-	  hb.parseWithoutProcessing = _handlebarsCompilerBase.parseWithoutProcessing;
+                    hb.compile = function (input, options) {
+                        return _handlebarsCompilerCompiler.compile(input, options, hb);
+                    };
+                    hb.precompile = function (input, options) {
+                        return _handlebarsCompilerCompiler.precompile(input, options, hb);
+                    };
 
-	  return hb;
-	}
+                    hb.AST = _handlebarsCompilerAst2['default'];
+                    hb.Compiler = _handlebarsCompilerCompiler.Compiler;
+                    hb.JavaScriptCompiler = _handlebarsCompilerJavascriptCompiler2['default'];
+                    hb.Parser = _handlebarsCompilerBase.parser;
+                    hb.parse = _handlebarsCompilerBase.parse;
+                    hb.parseWithoutProcessing = _handlebarsCompilerBase.parseWithoutProcessing;
 
-	var inst = create();
-	inst.create = create;
+                    return hb;
+                }
 
-	_handlebarsNoConflict2['default'](inst);
+                var inst = create();
+                inst.create = create;
 
-	inst.Visitor = _handlebarsCompilerVisitor2['default'];
+                _handlebarsNoConflict2['default'](inst);
 
-	inst['default'] = inst;
+                inst.Visitor = _handlebarsCompilerVisitor2['default'];
 
-	exports['default'] = inst;
-	module.exports = exports['default'];
+                inst['default'] = inst;
 
-/***/ }),
-/* 1 */
-/***/ (function(module, exports) {
+                exports['default'] = inst;
+                module.exports = exports['default'];
 
-	"use strict";
+                /***/
+            }),
+            /* 1 */
+            /***/ (function (module, exports) {
 
-	exports["default"] = function (obj) {
-	  return obj && obj.__esModule ? obj : {
-	    "default": obj
-	  };
-	};
+                "use strict";
 
-	exports.__esModule = true;
+                exports["default"] = function (obj) {
+                    return obj && obj.__esModule ? obj : {
+                        "default": obj
+                    };
+                };
 
-/***/ }),
-/* 2 */
-/***/ (function(module, exports, __webpack_require__) {
+                exports.__esModule = true;
 
-	'use strict';
+                /***/
+            }),
+            /* 2 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	var _interopRequireWildcard = __webpack_require__(3)['default'];
+                'use strict';
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                var _interopRequireWildcard = __webpack_require__(3)['default'];
 
-	exports.__esModule = true;
+                var _interopRequireDefault = __webpack_require__(1)['default'];
 
-	var _handlebarsBase = __webpack_require__(4);
+                exports.__esModule = true;
 
-	var base = _interopRequireWildcard(_handlebarsBase);
+                var _handlebarsBase = __webpack_require__(4);
 
-	// Each of these augment the Handlebars object. No need to setup here.
-	// (This is done to easily share code between commonjs and browse envs)
+                var base = _interopRequireWildcard(_handlebarsBase);
 
-	var _handlebarsSafeString = __webpack_require__(33);
+                // Each of these augment the Handlebars object. No need to setup here.
+                // (This is done to easily share code between commonjs and browse envs)
 
-	var _handlebarsSafeString2 = _interopRequireDefault(_handlebarsSafeString);
+                var _handlebarsSafeString = __webpack_require__(33);
 
-	var _handlebarsException = __webpack_require__(6);
+                var _handlebarsSafeString2 = _interopRequireDefault(_handlebarsSafeString);
 
-	var _handlebarsException2 = _interopRequireDefault(_handlebarsException);
+                var _handlebarsException = __webpack_require__(6);
 
-	var _handlebarsUtils = __webpack_require__(5);
+                var _handlebarsException2 = _interopRequireDefault(_handlebarsException);
 
-	var Utils = _interopRequireWildcard(_handlebarsUtils);
+                var _handlebarsUtils = __webpack_require__(5);
 
-	var _handlebarsRuntime = __webpack_require__(34);
+                var Utils = _interopRequireWildcard(_handlebarsUtils);
 
-	var runtime = _interopRequireWildcard(_handlebarsRuntime);
+                var _handlebarsRuntime = __webpack_require__(34);
 
-	var _handlebarsNoConflict = __webpack_require__(39);
+                var runtime = _interopRequireWildcard(_handlebarsRuntime);
 
-	var _handlebarsNoConflict2 = _interopRequireDefault(_handlebarsNoConflict);
+                var _handlebarsNoConflict = __webpack_require__(39);
 
-	// For compatibility and usage outside of module systems, make the Handlebars object a namespace
-	function create() {
-	  var hb = new base.HandlebarsEnvironment();
+                var _handlebarsNoConflict2 = _interopRequireDefault(_handlebarsNoConflict);
 
-	  Utils.extend(hb, base);
-	  hb.SafeString = _handlebarsSafeString2['default'];
-	  hb.Exception = _handlebarsException2['default'];
-	  hb.Utils = Utils;
-	  hb.escapeExpression = Utils.escapeExpression;
+                // For compatibility and usage outside of module systems, make the Handlebars object a namespace
+                function create() {
+                    var hb = new base.HandlebarsEnvironment();
 
-	  hb.VM = runtime;
-	  hb.template = function (spec) {
-	    return runtime.template(spec, hb);
-	  };
+                    Utils.extend(hb, base);
+                    hb.SafeString = _handlebarsSafeString2['default'];
+                    hb.Exception = _handlebarsException2['default'];
+                    hb.Utils = Utils;
+                    hb.escapeExpression = Utils.escapeExpression;
 
-	  return hb;
-	}
+                    hb.VM = runtime;
+                    hb.template = function (spec) {
+                        return runtime.template(spec, hb);
+                    };
 
-	var inst = create();
-	inst.create = create;
+                    return hb;
+                }
 
-	_handlebarsNoConflict2['default'](inst);
+                var inst = create();
+                inst.create = create;
 
-	inst['default'] = inst;
+                _handlebarsNoConflict2['default'](inst);
 
-	exports['default'] = inst;
-	module.exports = exports['default'];
+                inst['default'] = inst;
 
-/***/ }),
-/* 3 */
-/***/ (function(module, exports) {
+                exports['default'] = inst;
+                module.exports = exports['default'];
 
-	"use strict";
+                /***/
+            }),
+            /* 3 */
+            /***/ (function (module, exports) {
 
-	exports["default"] = function (obj) {
-	  if (obj && obj.__esModule) {
-	    return obj;
-	  } else {
-	    var newObj = {};
+                "use strict";
 
-	    if (obj != null) {
-	      for (var key in obj) {
-	        if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];
-	      }
-	    }
+                exports["default"] = function (obj) {
+                    if (obj && obj.__esModule) {
+                        return obj;
+                    } else {
+                        var newObj = {};
 
-	    newObj["default"] = obj;
-	    return newObj;
-	  }
-	};
+                        if (obj != null) {
+                            for (var key in obj) {
+                                if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];
+                            }
+                        }
 
-	exports.__esModule = true;
+                        newObj["default"] = obj;
+                        return newObj;
+                    }
+                };
 
-/***/ }),
-/* 4 */
-/***/ (function(module, exports, __webpack_require__) {
+                exports.__esModule = true;
 
-	'use strict';
+                /***/
+            }),
+            /* 4 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                'use strict';
 
-	exports.__esModule = true;
-	exports.HandlebarsEnvironment = HandlebarsEnvironment;
+                var _interopRequireDefault = __webpack_require__(1)['default'];
 
-	var _utils = __webpack_require__(5);
+                exports.__esModule = true;
+                exports.HandlebarsEnvironment = HandlebarsEnvironment;
 
-	var _exception = __webpack_require__(6);
+                var _utils = __webpack_require__(5);
 
-	var _exception2 = _interopRequireDefault(_exception);
+                var _exception = __webpack_require__(6);
 
-	var _helpers = __webpack_require__(10);
+                var _exception2 = _interopRequireDefault(_exception);
 
-	var _decorators = __webpack_require__(30);
+                var _helpers = __webpack_require__(10);
 
-	var _logger = __webpack_require__(32);
+                var _decorators = __webpack_require__(30);
 
-	var _logger2 = _interopRequireDefault(_logger);
+                var _logger = __webpack_require__(32);
 
-	var VERSION = '4.5.3';
-	exports.VERSION = VERSION;
-	var COMPILER_REVISION = 8;
-	exports.COMPILER_REVISION = COMPILER_REVISION;
-	var LAST_COMPATIBLE_COMPILER_REVISION = 7;
+                var _logger2 = _interopRequireDefault(_logger);
 
-	exports.LAST_COMPATIBLE_COMPILER_REVISION = LAST_COMPATIBLE_COMPILER_REVISION;
-	var REVISION_CHANGES = {
-	  1: '<= 1.0.rc.2', // 1.0.rc.2 is actually rev2 but doesn't report it
-	  2: '== 1.0.0-rc.3',
-	  3: '== 1.0.0-rc.4',
-	  4: '== 1.x.x',
-	  5: '== 2.0.0-alpha.x',
-	  6: '>= 2.0.0-beta.1',
-	  7: '>= 4.0.0 <4.3.0',
-	  8: '>= 4.3.0'
-	};
+                var VERSION = '4.5.3';
+                exports.VERSION = VERSION;
+                var COMPILER_REVISION = 8;
+                exports.COMPILER_REVISION = COMPILER_REVISION;
+                var LAST_COMPATIBLE_COMPILER_REVISION = 7;
 
-	exports.REVISION_CHANGES = REVISION_CHANGES;
-	var objectType = '[object Object]';
+                exports.LAST_COMPATIBLE_COMPILER_REVISION = LAST_COMPATIBLE_COMPILER_REVISION;
+                var REVISION_CHANGES = {
+                    1: '<= 1.0.rc.2', // 1.0.rc.2 is actually rev2 but doesn't report it
+                    2: '== 1.0.0-rc.3',
+                    3: '== 1.0.0-rc.4',
+                    4: '== 1.x.x',
+                    5: '== 2.0.0-alpha.x',
+                    6: '>= 2.0.0-beta.1',
+                    7: '>= 4.0.0 <4.3.0',
+                    8: '>= 4.3.0'
+                };
 
-	function HandlebarsEnvironment(helpers, partials, decorators) {
-	  this.helpers = helpers || {};
-	  this.partials = partials || {};
-	  this.decorators = decorators || {};
+                exports.REVISION_CHANGES = REVISION_CHANGES;
+                var objectType = '[object Object]';
 
-	  _helpers.registerDefaultHelpers(this);
-	  _decorators.registerDefaultDecorators(this);
-	}
+                function HandlebarsEnvironment(helpers, partials, decorators) {
+                    this.helpers = helpers || {};
+                    this.partials = partials || {};
+                    this.decorators = decorators || {};
 
-	HandlebarsEnvironment.prototype = {
-	  constructor: HandlebarsEnvironment,
+                    _helpers.registerDefaultHelpers(this);
+                    _decorators.registerDefaultDecorators(this);
+                }
 
-	  logger: _logger2['default'],
-	  log: _logger2['default'].log,
+                HandlebarsEnvironment.prototype = {
+                    constructor: HandlebarsEnvironment,
 
-	  registerHelper: function registerHelper(name, fn) {
-	    if (_utils.toString.call(name) === objectType) {
-	      if (fn) {
-	        throw new _exception2['default']('Arg not supported with multiple helpers');
-	      }
-	      _utils.extend(this.helpers, name);
-	    } else {
-	      this.helpers[name] = fn;
-	    }
-	  },
-	  unregisterHelper: function unregisterHelper(name) {
-	    delete this.helpers[name];
-	  },
+                    logger: _logger2['default'],
+                    log: _logger2['default'].log,
 
-	  registerPartial: function registerPartial(name, partial) {
-	    if (_utils.toString.call(name) === objectType) {
-	      _utils.extend(this.partials, name);
-	    } else {
-	      if (typeof partial === 'undefined') {
-	        throw new _exception2['default']('Attempting to register a partial called "' + name + '" as undefined');
-	      }
-	      this.partials[name] = partial;
-	    }
-	  },
-	  unregisterPartial: function unregisterPartial(name) {
-	    delete this.partials[name];
-	  },
+                    registerHelper: function registerHelper(name, fn) {
+                        if (_utils.toString.call(name) === objectType) {
+                            if (fn) {
+                                throw new _exception2['default']('Arg not supported with multiple helpers');
+                            }
+                            _utils.extend(this.helpers, name);
+                        } else {
+                            this.helpers[name] = fn;
+                        }
+                    },
+                    unregisterHelper: function unregisterHelper(name) {
+                        delete this.helpers[name];
+                    },
 
-	  registerDecorator: function registerDecorator(name, fn) {
-	    if (_utils.toString.call(name) === objectType) {
-	      if (fn) {
-	        throw new _exception2['default']('Arg not supported with multiple decorators');
-	      }
-	      _utils.extend(this.decorators, name);
-	    } else {
-	      this.decorators[name] = fn;
-	    }
-	  },
-	  unregisterDecorator: function unregisterDecorator(name) {
-	    delete this.decorators[name];
-	  }
-	};
+                    registerPartial: function registerPartial(name, partial) {
+                        if (_utils.toString.call(name) === objectType) {
+                            _utils.extend(this.partials, name);
+                        } else {
+                            if (typeof partial === 'undefined') {
+                                throw new _exception2['default']('Attempting to register a partial called "' + name + '" as undefined');
+                            }
+                            this.partials[name] = partial;
+                        }
+                    },
+                    unregisterPartial: function unregisterPartial(name) {
+                        delete this.partials[name];
+                    },
 
-	var log = _logger2['default'].log;
+                    registerDecorator: function registerDecorator(name, fn) {
+                        if (_utils.toString.call(name) === objectType) {
+                            if (fn) {
+                                throw new _exception2['default']('Arg not supported with multiple decorators');
+                            }
+                            _utils.extend(this.decorators, name);
+                        } else {
+                            this.decorators[name] = fn;
+                        }
+                    },
+                    unregisterDecorator: function unregisterDecorator(name) {
+                        delete this.decorators[name];
+                    }
+                };
 
-	exports.log = log;
-	exports.createFrame = _utils.createFrame;
-	exports.logger = _logger2['default'];
+                var log = _logger2['default'].log;
 
-/***/ }),
-/* 5 */
-/***/ (function(module, exports) {
+                exports.log = log;
+                exports.createFrame = _utils.createFrame;
+                exports.logger = _logger2['default'];
 
-	'use strict';
+                /***/
+            }),
+            /* 5 */
+            /***/ (function (module, exports) {
 
-	exports.__esModule = true;
-	exports.extend = extend;
-	exports.indexOf = indexOf;
-	exports.escapeExpression = escapeExpression;
-	exports.isEmpty = isEmpty;
-	exports.createFrame = createFrame;
-	exports.blockParams = blockParams;
-	exports.appendContextPath = appendContextPath;
+                'use strict';
 
-	var escape = {
-	  '&': '&amp;',
-	  '<': '&lt;',
-	  '>': '&gt;',
-	  '"': '&quot;',
-	  "'": '&#x27;',
-	  '`': '&#x60;',
-	  '=': '&#x3D;'
-	};
+                exports.__esModule = true;
+                exports.extend = extend;
+                exports.indexOf = indexOf;
+                exports.escapeExpression = escapeExpression;
+                exports.isEmpty = isEmpty;
+                exports.createFrame = createFrame;
+                exports.blockParams = blockParams;
+                exports.appendContextPath = appendContextPath;
 
-	var badChars = /[&<>"'`=]/g,
-	    possible = /[&<>"'`=]/;
+                var escape = {
+                    '&': '&amp;',
+                    '<': '&lt;',
+                    '>': '&gt;',
+                    '"': '&quot;',
+                    "'": '&#x27;',
+                    '`': '&#x60;',
+                    '=': '&#x3D;'
+                };
 
-	function escapeChar(chr) {
-	  return escape[chr];
-	}
+                var badChars = /[&<>"'`=]/g,
+                    possible = /[&<>"'`=]/;
 
-	function extend(obj /* , ...source */) {
-	  for (var i = 1; i < arguments.length; i++) {
-	    for (var key in arguments[i]) {
-	      if (Object.prototype.hasOwnProperty.call(arguments[i], key)) {
-	        obj[key] = arguments[i][key];
-	      }
-	    }
-	  }
+                function escapeChar(chr) {
+                    return escape[chr];
+                }
 
-	  return obj;
-	}
+                function extend(obj /* , ...source */) {
+                    for (var i = 1; i < arguments.length; i++) {
+                        for (var key in arguments[i]) {
+                            if (Object.prototype.hasOwnProperty.call(arguments[i], key)) {
+                                obj[key] = arguments[i][key];
+                            }
+                        }
+                    }
 
-	var toString = Object.prototype.toString;
+                    return obj;
+                }
 
-	exports.toString = toString;
-	// Sourced from lodash
-	// https://github.com/bestiejs/lodash/blob/master/LICENSE.txt
-	/* eslint-disable func-style */
-	var isFunction = function isFunction(value) {
-	  return typeof value === 'function';
-	};
-	// fallback for older versions of Chrome and Safari
-	/* istanbul ignore next */
-	if (isFunction(/x/)) {
-	  exports.isFunction = isFunction = function (value) {
-	    return typeof value === 'function' && toString.call(value) === '[object Function]';
-	  };
-	}
-	exports.isFunction = isFunction;
+                var toString = Object.prototype.toString;
 
-	/* eslint-enable func-style */
+                exports.toString = toString;
+                // Sourced from lodash
+                // https://github.com/bestiejs/lodash/blob/master/LICENSE.txt
+                /* eslint-disable func-style */
+                var isFunction = function isFunction(value) {
+                    return typeof value === 'function';
+                };
+                // fallback for older versions of Chrome and Safari
+                /* istanbul ignore next */
+                if (isFunction(/x/)) {
+                    exports.isFunction = isFunction = function (value) {
+                        return typeof value === 'function' && toString.call(value) === '[object Function]';
+                    };
+                }
+                exports.isFunction = isFunction;
 
-	/* istanbul ignore next */
-	var isArray = Array.isArray || function (value) {
-	  return value && typeof value === 'object' ? toString.call(value) === '[object Array]' : false;
-	};
+                /* eslint-enable func-style */
 
-	exports.isArray = isArray;
-	// Older IE versions do not directly support indexOf so we must implement our own, sadly.
+                /* istanbul ignore next */
+                var isArray = Array.isArray || function (value) {
+                    return value && typeof value === 'object' ? toString.call(value) === '[object Array]' : false;
+                };
 
-	function indexOf(array, value) {
-	  for (var i = 0, len = array.length; i < len; i++) {
-	    if (array[i] === value) {
-	      return i;
-	    }
-	  }
-	  return -1;
-	}
+                exports.isArray = isArray;
 
-	function escapeExpression(string) {
-	  if (typeof string !== 'string') {
-	    // don't escape SafeStrings, since they're already safe
-	    if (string && string.toHTML) {
-	      return string.toHTML();
-	    } else if (string == null) {
-	      return '';
-	    } else if (!string) {
-	      return string + '';
-	    }
+                // Older IE versions do not directly support indexOf so we must implement our own, sadly.
 
-	    // Force a string conversion as this will be done by the append regardless and
-	    // the regex test will do this transparently behind the scenes, causing issues if
-	    // an object's to string has escaped characters in it.
-	    string = '' + string;
-	  }
+                function indexOf(array, value) {
+                    for (var i = 0, len = array.length; i < len; i++) {
+                        if (array[i] === value) {
+                            return i;
+                        }
+                    }
+                    return -1;
+                }
 
-	  if (!possible.test(string)) {
-	    return string;
-	  }
-	  return string.replace(badChars, escapeChar);
-	}
+                function escapeExpression(string) {
+                    if (typeof string !== 'string') {
+                        // don't escape SafeStrings, since they're already safe
+                        if (string && string.toHTML) {
+                            return string.toHTML();
+                        } else if (string == null) {
+                            return '';
+                        } else if (!string) {
+                            return string + '';
+                        }
 
-	function isEmpty(value) {
-	  if (!value && value !== 0) {
-	    return true;
-	  } else if (isArray(value) && value.length === 0) {
-	    return true;
-	  } else {
-	    return false;
-	  }
-	}
+                        // Force a string conversion as this will be done by the append regardless and
+                        // the regex test will do this transparently behind the scenes, causing issues if
+                        // an object's to string has escaped characters in it.
+                        string = '' + string;
+                    }
 
-	function createFrame(object) {
-	  var frame = extend({}, object);
-	  frame._parent = object;
-	  return frame;
-	}
+                    if (!possible.test(string)) {
+                        return string;
+                    }
+                    return string.replace(badChars, escapeChar);
+                }
 
-	function blockParams(params, ids) {
-	  params.path = ids;
-	  return params;
-	}
+                function isEmpty(value) {
+                    if (!value && value !== 0) {
+                        return true;
+                    } else if (isArray(value) && value.length === 0) {
+                        return true;
+                    } else {
+                        return false;
+                    }
+                }
 
-	function appendContextPath(contextPath, id) {
-	  return (contextPath ? contextPath + '.' : '') + id;
-	}
+                function createFrame(object) {
+                    var frame = extend({}, object);
+                    frame._parent = object;
+                    return frame;
+                }
 
-/***/ }),
-/* 6 */
-/***/ (function(module, exports, __webpack_require__) {
+                function blockParams(params, ids) {
+                    params.path = ids;
+                    return params;
+                }
 
-	'use strict';
+                function appendContextPath(contextPath, id) {
+                    return (contextPath ? contextPath + '.' : '') + id;
+                }
 
-	var _Object$defineProperty = __webpack_require__(7)['default'];
+                /***/
+            }),
+            /* 6 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	exports.__esModule = true;
+                'use strict';
 
-	var errorProps = ['description', 'fileName', 'lineNumber', 'endLineNumber', 'message', 'name', 'number', 'stack'];
+                var _Object$defineProperty = __webpack_require__(7)['default'];
 
-	function Exception(message, node) {
-	  var loc = node && node.loc,
-	      line = undefined,
-	      endLineNumber = undefined,
-	      column = undefined,
-	      endColumn = undefined;
+                exports.__esModule = true;
 
-	  if (loc) {
-	    line = loc.start.line;
-	    endLineNumber = loc.end.line;
-	    column = loc.start.column;
-	    endColumn = loc.end.column;
+                var errorProps = ['description', 'fileName', 'lineNumber', 'endLineNumber', 'message', 'name', 'number', 'stack'];
 
-	    message += ' - ' + line + ':' + column;
-	  }
+                function Exception(message, node) {
+                    var loc = node && node.loc,
+                        line = undefined,
+                        endLineNumber = undefined,
+                        column = undefined,
+                        endColumn = undefined;
 
-	  var tmp = Error.prototype.constructor.call(this, message);
+                    if (loc) {
+                        line = loc.start.line;
+                        endLineNumber = loc.end.line;
+                        column = loc.start.column;
+                        endColumn = loc.end.column;
 
-	  // Unfortunately errors are not enumerable in Chrome (at least), so `for prop in tmp` doesn't work.
-	  for (var idx = 0; idx < errorProps.length; idx++) {
-	    this[errorProps[idx]] = tmp[errorProps[idx]];
-	  }
+                        message += ' - ' + line + ':' + column;
+                    }
 
-	  /* istanbul ignore else */
-	  if (Error.captureStackTrace) {
-	    Error.captureStackTrace(this, Exception);
-	  }
+                    var tmp = Error.prototype.constructor.call(this, message);
 
-	  try {
-	    if (loc) {
-	      this.lineNumber = line;
-	      this.endLineNumber = endLineNumber;
+                    // Unfortunately errors are not enumerable in Chrome (at least), so `for prop in tmp` doesn't work.
+                    for (var idx = 0; idx < errorProps.length; idx++) {
+                        this[errorProps[idx]] = tmp[errorProps[idx]];
+                    }
 
-	      // Work around issue under safari where we can't directly set the column value
-	      /* istanbul ignore next */
-	      if (_Object$defineProperty) {
-	        Object.defineProperty(this, 'column', {
-	          value: column,
-	          enumerable: true
-	        });
-	        Object.defineProperty(this, 'endColumn', {
-	          value: endColumn,
-	          enumerable: true
-	        });
-	      } else {
-	        this.column = column;
-	        this.endColumn = endColumn;
-	      }
-	    }
-	  } catch (nop) {
-	    /* Ignore if the browser is very particular */
-	  }
-	}
+                    /* istanbul ignore else */
+                    if (Error.captureStackTrace) {
+                        Error.captureStackTrace(this, Exception);
+                    }
 
-	Exception.prototype = new Error();
+                    try {
+                        if (loc) {
+                            this.lineNumber = line;
+                            this.endLineNumber = endLineNumber;
 
-	exports['default'] = Exception;
-	module.exports = exports['default'];
+                            // Work around issue under safari where we can't directly set the column value
+                            /* istanbul ignore next */
+                            if (_Object$defineProperty) {
+                                Object.defineProperty(this, 'column', {
+                                    value: column,
+                                    enumerable: true
+                                });
+                                Object.defineProperty(this, 'endColumn', {
+                                    value: endColumn,
+                                    enumerable: true
+                                });
+                            } else {
+                                this.column = column;
+                                this.endColumn = endColumn;
+                            }
+                        }
+                    } catch (nop) {
+                        /* Ignore if the browser is very particular */
+                    }
+                }
 
-/***/ }),
-/* 7 */
-/***/ (function(module, exports, __webpack_require__) {
+                Exception.prototype = new Error();
 
-	module.exports = { "default": __webpack_require__(8), __esModule: true };
+                exports['default'] = Exception;
+                module.exports = exports['default'];
 
-/***/ }),
-/* 8 */
-/***/ (function(module, exports, __webpack_require__) {
+                /***/
+            }),
+            /* 7 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	var $ = __webpack_require__(9);
-	module.exports = function defineProperty(it, key, desc){
-	  return $.setDesc(it, key, desc);
-	};
+                module.exports = {"default": __webpack_require__(8), __esModule: true};
 
-/***/ }),
-/* 9 */
-/***/ (function(module, exports) {
+                /***/
+            }),
+            /* 8 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	var $Object = Object;
-	module.exports = {
-	  create:     $Object.create,
-	  getProto:   $Object.getPrototypeOf,
-	  isEnum:     {}.propertyIsEnumerable,
-	  getDesc:    $Object.getOwnPropertyDescriptor,
-	  setDesc:    $Object.defineProperty,
-	  setDescs:   $Object.defineProperties,
-	  getKeys:    $Object.keys,
-	  getNames:   $Object.getOwnPropertyNames,
-	  getSymbols: $Object.getOwnPropertySymbols,
-	  each:       [].forEach
-	};
+                var $ = __webpack_require__(9);
+                module.exports = function defineProperty(it, key, desc) {
+                    return $.setDesc(it, key, desc);
+                };
 
-/***/ }),
-/* 10 */
-/***/ (function(module, exports, __webpack_require__) {
+                /***/
+            }),
+            /* 9 */
+            /***/ (function (module, exports) {
 
-	'use strict';
+                var $Object = Object;
+                module.exports = {
+                    create: $Object.create,
+                    getProto: $Object.getPrototypeOf,
+                    isEnum: {}.propertyIsEnumerable,
+                    getDesc: $Object.getOwnPropertyDescriptor,
+                    setDesc: $Object.defineProperty,
+                    setDescs: $Object.defineProperties,
+                    getKeys: $Object.keys,
+                    getNames: $Object.getOwnPropertyNames,
+                    getSymbols: $Object.getOwnPropertySymbols,
+                    each: [].forEach
+                };
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                /***/
+            }),
+            /* 10 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	exports.__esModule = true;
-	exports.registerDefaultHelpers = registerDefaultHelpers;
-	exports.moveHelperToHooks = moveHelperToHooks;
+                'use strict';
 
-	var _helpersBlockHelperMissing = __webpack_require__(11);
+                var _interopRequireDefault = __webpack_require__(1)['default'];
 
-	var _helpersBlockHelperMissing2 = _interopRequireDefault(_helpersBlockHelperMissing);
+                exports.__esModule = true;
+                exports.registerDefaultHelpers = registerDefaultHelpers;
+                exports.moveHelperToHooks = moveHelperToHooks;
 
-	var _helpersEach = __webpack_require__(12);
+                var _helpersBlockHelperMissing = __webpack_require__(11);
 
-	var _helpersEach2 = _interopRequireDefault(_helpersEach);
+                var _helpersBlockHelperMissing2 = _interopRequireDefault(_helpersBlockHelperMissing);
 
-	var _helpersHelperMissing = __webpack_require__(25);
+                var _helpersEach = __webpack_require__(12);
 
-	var _helpersHelperMissing2 = _interopRequireDefault(_helpersHelperMissing);
+                var _helpersEach2 = _interopRequireDefault(_helpersEach);
 
-	var _helpersIf = __webpack_require__(26);
+                var _helpersHelperMissing = __webpack_require__(25);
 
-	var _helpersIf2 = _interopRequireDefault(_helpersIf);
+                var _helpersHelperMissing2 = _interopRequireDefault(_helpersHelperMissing);
 
-	var _helpersLog = __webpack_require__(27);
+                var _helpersIf = __webpack_require__(26);
 
-	var _helpersLog2 = _interopRequireDefault(_helpersLog);
+                var _helpersIf2 = _interopRequireDefault(_helpersIf);
 
-	var _helpersLookup = __webpack_require__(28);
+                var _helpersLog = __webpack_require__(27);
 
-	var _helpersLookup2 = _interopRequireDefault(_helpersLookup);
+                var _helpersLog2 = _interopRequireDefault(_helpersLog);
 
-	var _helpersWith = __webpack_require__(29);
+                var _helpersLookup = __webpack_require__(28);
 
-	var _helpersWith2 = _interopRequireDefault(_helpersWith);
+                var _helpersLookup2 = _interopRequireDefault(_helpersLookup);
 
-	function registerDefaultHelpers(instance) {
-	  _helpersBlockHelperMissing2['default'](instance);
-	  _helpersEach2['default'](instance);
-	  _helpersHelperMissing2['default'](instance);
-	  _helpersIf2['default'](instance);
-	  _helpersLog2['default'](instance);
-	  _helpersLookup2['default'](instance);
-	  _helpersWith2['default'](instance);
-	}
+                var _helpersWith = __webpack_require__(29);
 
-	function moveHelperToHooks(instance, helperName, keepHelper) {
-	  if (instance.helpers[helperName]) {
-	    instance.hooks[helperName] = instance.helpers[helperName];
-	    if (!keepHelper) {
-	      delete instance.helpers[helperName];
-	    }
-	  }
-	}
+                var _helpersWith2 = _interopRequireDefault(_helpersWith);
 
-/***/ }),
-/* 11 */
-/***/ (function(module, exports, __webpack_require__) {
+                function registerDefaultHelpers(instance) {
+                    _helpersBlockHelperMissing2['default'](instance);
+                    _helpersEach2['default'](instance);
+                    _helpersHelperMissing2['default'](instance);
+                    _helpersIf2['default'](instance);
+                    _helpersLog2['default'](instance);
+                    _helpersLookup2['default'](instance);
+                    _helpersWith2['default'](instance);
+                }
 
-	'use strict';
+                function moveHelperToHooks(instance, helperName, keepHelper) {
+                    if (instance.helpers[helperName]) {
+                        instance.hooks[helperName] = instance.helpers[helperName];
+                        if (!keepHelper) {
+                            delete instance.helpers[helperName];
+                        }
+                    }
+                }
 
-	exports.__esModule = true;
+                /***/
+            }),
+            /* 11 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	var _utils = __webpack_require__(5);
+                'use strict';
 
-	exports['default'] = function (instance) {
-	  instance.registerHelper('blockHelperMissing', function (context, options) {
-	    var inverse = options.inverse,
-	        fn = options.fn;
+                exports.__esModule = true;
 
-	    if (context === true) {
-	      return fn(this);
-	    } else if (context === false || context == null) {
-	      return inverse(this);
-	    } else if (_utils.isArray(context)) {
-	      if (context.length > 0) {
-	        if (options.ids) {
-	          options.ids = [options.name];
-	        }
+                var _utils = __webpack_require__(5);
 
-	        return instance.helpers.each(context, options);
-	      } else {
-	        return inverse(this);
-	      }
-	    } else {
-	      if (options.data && options.ids) {
-	        var data = _utils.createFrame(options.data);
-	        data.contextPath = _utils.appendContextPath(options.data.contextPath, options.name);
-	        options = { data: data };
-	      }
+                exports['default'] = function (instance) {
+                    instance.registerHelper('blockHelperMissing', function (context, options) {
+                        var inverse = options.inverse,
+                            fn = options.fn;
 
-	      return fn(context, options);
-	    }
-	  });
-	};
+                        if (context === true) {
+                            return fn(this);
+                        } else if (context === false || context == null) {
+                            return inverse(this);
+                        } else if (_utils.isArray(context)) {
+                            if (context.length > 0) {
+                                if (options.ids) {
+                                    options.ids = [options.name];
+                                }
 
-	module.exports = exports['default'];
+                                return instance.helpers.each(context, options);
+                            } else {
+                                return inverse(this);
+                            }
+                        } else {
+                            if (options.data && options.ids) {
+                                var data = _utils.createFrame(options.data);
+                                data.contextPath = _utils.appendContextPath(options.data.contextPath, options.name);
+                                options = {data: data};
+                            }
 
-/***/ }),
-/* 12 */
-/***/ (function(module, exports, __webpack_require__) {
+                            return fn(context, options);
+                        }
+                    });
+                };
 
-	/* WEBPACK VAR INJECTION */(function(global) {'use strict';
+                module.exports = exports['default'];
 
-	var _Object$keys = __webpack_require__(13)['default'];
+                /***/
+            }),
+            /* 12 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                /* WEBPACK VAR INJECTION */
+                (function (global) {
+                    'use strict';
 
-	exports.__esModule = true;
+                    var _Object$keys = __webpack_require__(13)['default'];
 
-	var _utils = __webpack_require__(5);
+                    var _interopRequireDefault = __webpack_require__(1)['default'];
 
-	var _exception = __webpack_require__(6);
+                    exports.__esModule = true;
 
-	var _exception2 = _interopRequireDefault(_exception);
+                    var _utils = __webpack_require__(5);
 
-	exports['default'] = function (instance) {
-	  instance.registerHelper('each', function (context, options) {
-	    if (!options) {
-	      throw new _exception2['default']('Must pass iterator to #each');
-	    }
+                    var _exception = __webpack_require__(6);
 
-	    var fn = options.fn,
-	        inverse = options.inverse,
-	        i = 0,
-	        ret = '',
-	        data = undefined,
-	        contextPath = undefined;
+                    var _exception2 = _interopRequireDefault(_exception);
 
-	    if (options.data && options.ids) {
-	      contextPath = _utils.appendContextPath(options.data.contextPath, options.ids[0]) + '.';
-	    }
+                    exports['default'] = function (instance) {
+                        instance.registerHelper('each', function (context, options) {
+                            if (!options) {
+                                throw new _exception2['default']('Must pass iterator to #each');
+                            }
 
-	    if (_utils.isFunction(context)) {
-	      context = context.call(this);
-	    }
+                            var fn = options.fn,
+                                inverse = options.inverse,
+                                i = 0,
+                                ret = '',
+                                data = undefined,
+                                contextPath = undefined;
 
-	    if (options.data) {
-	      data = _utils.createFrame(options.data);
-	    }
+                            if (options.data && options.ids) {
+                                contextPath = _utils.appendContextPath(options.data.contextPath, options.ids[0]) + '.';
+                            }
 
-	    function execIteration(field, index, last) {
-	      if (data) {
-	        data.key = field;
-	        data.index = index;
-	        data.first = index === 0;
-	        data.last = !!last;
+                            if (_utils.isFunction(context)) {
+                                context = context.call(this);
+                            }
 
-	        if (contextPath) {
-	          data.contextPath = contextPath + field;
-	        }
-	      }
+                            if (options.data) {
+                                data = _utils.createFrame(options.data);
+                            }
 
-	      ret = ret + fn(context[field], {
-	        data: data,
-	        blockParams: _utils.blockParams([context[field], field], [contextPath + field, null])
-	      });
-	    }
+                            function execIteration(field, index, last) {
+                                if (data) {
+                                    data.key = field;
+                                    data.index = index;
+                                    data.first = index === 0;
+                                    data.last = !!last;
 
-	    if (context && typeof context === 'object') {
-	      if (_utils.isArray(context)) {
-	        for (var j = context.length; i < j; i++) {
-	          if (i in context) {
-	            execIteration(i, i, i === context.length - 1);
-	          }
-	        }
-	      } else if (global.Symbol && context[global.Symbol.iterator]) {
-	        var newContext = [];
-	        var iterator = context[global.Symbol.iterator]();
-	        for (var it = iterator.next(); !it.done; it = iterator.next()) {
-	          newContext.push(it.value);
-	        }
-	        context = newContext;
-	        for (var j = context.length; i < j; i++) {
-	          execIteration(i, i, i === context.length - 1);
-	        }
-	      } else {
-	        (function () {
-	          var priorKey = undefined;
+                                    if (contextPath) {
+                                        data.contextPath = contextPath + field;
+                                    }
+                                }
 
-	          _Object$keys(context).forEach(function (key) {
-	            // We're running the iterations one step out of sync so we can detect
-	            // the last iteration without have to scan the object twice and create
-	            // an itermediate keys array.
-	            if (priorKey !== undefined) {
-	              execIteration(priorKey, i - 1);
-	            }
-	            priorKey = key;
-	            i++;
-	          });
-	          if (priorKey !== undefined) {
-	            execIteration(priorKey, i - 1, true);
-	          }
-	        })();
-	      }
-	    }
+                                ret = ret + fn(context[field], {
+                                    data: data,
+                                    blockParams: _utils.blockParams([context[field], field], [contextPath + field, null])
+                                });
+                            }
 
-	    if (i === 0) {
-	      ret = inverse(this);
-	    }
+                            if (context && typeof context === 'object') {
+                                if (_utils.isArray(context)) {
+                                    for (var j = context.length; i < j; i++) {
+                                        if (i in context) {
+                                            execIteration(i, i, i === context.length - 1);
+                                        }
+                                    }
+                                } else if (global.Symbol && context[global.Symbol.iterator]) {
+                                    var newContext = [];
+                                    var iterator = context[global.Symbol.iterator]();
+                                    for (var it = iterator.next(); !it.done; it = iterator.next()) {
+                                        newContext.push(it.value);
+                                    }
+                                    context = newContext;
+                                    for (var j = context.length; i < j; i++) {
+                                        execIteration(i, i, i === context.length - 1);
+                                    }
+                                } else {
+                                    (function () {
+                                        var priorKey = undefined;
 
-	    return ret;
-	  });
-	};
+                                        _Object$keys(context).forEach(function (key) {
+                                            // We're running the iterations one step out of sync so we can detect
+                                            // the last iteration without have to scan the object twice and create
+                                            // an itermediate keys array.
+                                            if (priorKey !== undefined) {
+                                                execIteration(priorKey, i - 1);
+                                            }
+                                            priorKey = key;
+                                            i++;
+                                        });
+                                        if (priorKey !== undefined) {
+                                            execIteration(priorKey, i - 1, true);
+                                        }
+                                    })();
+                                }
+                            }
 
-	module.exports = exports['default'];
-	/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
+                            if (i === 0) {
+                                ret = inverse(this);
+                            }
 
-/***/ }),
-/* 13 */
-/***/ (function(module, exports, __webpack_require__) {
+                            return ret;
+                        });
+                    };
 
-	module.exports = { "default": __webpack_require__(14), __esModule: true };
+                    module.exports = exports['default'];
+                    /* WEBPACK VAR INJECTION */
+                }.call(exports, (function () {
+                    return this;
+                }())))
 
-/***/ }),
-/* 14 */
-/***/ (function(module, exports, __webpack_require__) {
+                /***/
+            }),
+            /* 13 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	__webpack_require__(15);
-	module.exports = __webpack_require__(21).Object.keys;
+                module.exports = {"default": __webpack_require__(14), __esModule: true};
 
-/***/ }),
-/* 15 */
-/***/ (function(module, exports, __webpack_require__) {
+                /***/
+            }),
+            /* 14 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	// 19.1.2.14 Object.keys(O)
-	var toObject = __webpack_require__(16);
+                __webpack_require__(15);
+                module.exports = __webpack_require__(21).Object.keys;
 
-	__webpack_require__(18)('keys', function($keys){
-	  return function keys(it){
-	    return $keys(toObject(it));
-	  };
-	});
+                /***/
+            }),
+            /* 15 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-/***/ }),
-/* 16 */
-/***/ (function(module, exports, __webpack_require__) {
+                // 19.1.2.14 Object.keys(O)
+                var toObject = __webpack_require__(16);
 
-	// 7.1.13 ToObject(argument)
-	var defined = __webpack_require__(17);
-	module.exports = function(it){
-	  return Object(defined(it));
-	};
+                __webpack_require__(18)('keys', function ($keys) {
+                    return function keys(it) {
+                        return $keys(toObject(it));
+                    };
+                });
 
-/***/ }),
-/* 17 */
-/***/ (function(module, exports) {
+                /***/
+            }),
+            /* 16 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	// 7.2.1 RequireObjectCoercible(argument)
-	module.exports = function(it){
-	  if(it == undefined)throw TypeError("Can't call method on  " + it);
-	  return it;
-	};
+                // 7.1.13 ToObject(argument)
+                var defined = __webpack_require__(17);
+                module.exports = function (it) {
+                    return Object(defined(it));
+                };
 
-/***/ }),
-/* 18 */
-/***/ (function(module, exports, __webpack_require__) {
+                /***/
+            }),
+            /* 17 */
+            /***/ (function (module, exports) {
 
-	// most Object methods by ES6 should accept primitives
-	var $export = __webpack_require__(19)
-	  , core    = __webpack_require__(21)
-	  , fails   = __webpack_require__(24);
-	module.exports = function(KEY, exec){
-	  var fn  = (core.Object || {})[KEY] || Object[KEY]
-	    , exp = {};
-	  exp[KEY] = exec(fn);
-	  $export($export.S + $export.F * fails(function(){ fn(1); }), 'Object', exp);
-	};
+                // 7.2.1 RequireObjectCoercible(argument)
+                module.exports = function (it) {
+                    if (it == undefined) throw TypeError("Can't call method on  " + it);
+                    return it;
+                };
 
-/***/ }),
-/* 19 */
-/***/ (function(module, exports, __webpack_require__) {
+                /***/
+            }),
+            /* 18 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	var global    = __webpack_require__(20)
-	  , core      = __webpack_require__(21)
-	  , ctx       = __webpack_require__(22)
-	  , PROTOTYPE = 'prototype';
+                // most Object methods by ES6 should accept primitives
+                var $export = __webpack_require__(19)
+                    , core = __webpack_require__(21)
+                    , fails = __webpack_require__(24);
+                module.exports = function (KEY, exec) {
+                    var fn = (core.Object || {})[KEY] || Object[KEY]
+                        , exp = {};
+                    exp[KEY] = exec(fn);
+                    $export($export.S + $export.F * fails(function () {
+                        fn(1);
+                    }), 'Object', exp);
+                };
 
-	var $export = function(type, name, source){
-	  var IS_FORCED = type & $export.F
-	    , IS_GLOBAL = type & $export.G
-	    , IS_STATIC = type & $export.S
-	    , IS_PROTO  = type & $export.P
-	    , IS_BIND   = type & $export.B
-	    , IS_WRAP   = type & $export.W
-	    , exports   = IS_GLOBAL ? core : core[name] || (core[name] = {})
-	    , target    = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]
-	    , key, own, out;
-	  if(IS_GLOBAL)source = name;
-	  for(key in source){
-	    // contains in native
-	    own = !IS_FORCED && target && key in target;
-	    if(own && key in exports)continue;
-	    // export native or passed
-	    out = own ? target[key] : source[key];
-	    // prevent global pollution for namespaces
-	    exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
-	    // bind timers to global for call from export context
-	    : IS_BIND && own ? ctx(out, global)
-	    // wrap global constructors for prevent change them in library
-	    : IS_WRAP && target[key] == out ? (function(C){
-	      var F = function(param){
-	        return this instanceof C ? new C(param) : C(param);
-	      };
-	      F[PROTOTYPE] = C[PROTOTYPE];
-	      return F;
-	    // make static versions for prototype methods
-	    })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
-	    if(IS_PROTO)(exports[PROTOTYPE] || (exports[PROTOTYPE] = {}))[key] = out;
-	  }
-	};
-	// type bitmap
-	$export.F = 1;  // forced
-	$export.G = 2;  // global
-	$export.S = 4;  // static
-	$export.P = 8;  // proto
-	$export.B = 16; // bind
-	$export.W = 32; // wrap
-	module.exports = $export;
+                /***/
+            }),
+            /* 19 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-/***/ }),
-/* 20 */
-/***/ (function(module, exports) {
+                var global = __webpack_require__(20)
+                    , core = __webpack_require__(21)
+                    , ctx = __webpack_require__(22)
+                    , PROTOTYPE = 'prototype';
 
-	// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
-	var global = module.exports = typeof window != 'undefined' && window.Math == Math
-	  ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();
-	if(typeof __g == 'number')__g = global; // eslint-disable-line no-undef
+                var $export = function (type, name, source) {
+                    var IS_FORCED = type & $export.F
+                        , IS_GLOBAL = type & $export.G
+                        , IS_STATIC = type & $export.S
+                        , IS_PROTO = type & $export.P
+                        , IS_BIND = type & $export.B
+                        , IS_WRAP = type & $export.W
+                        , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})
+                        , target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]
+                        , key, own, out;
+                    if (IS_GLOBAL) source = name;
+                    for (key in source) {
+                        // contains in native
+                        own = !IS_FORCED && target && key in target;
+                        if (own && key in exports) continue;
+                        // export native or passed
+                        out = own ? target[key] : source[key];
+                        // prevent global pollution for namespaces
+                        exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
+                            // bind timers to global for call from export context
+                            : IS_BIND && own ? ctx(out, global)
+                                // wrap global constructors for prevent change them in library
+                                : IS_WRAP && target[key] == out ? (function (C) {
+                                    var F = function (param) {
+                                        return this instanceof C ? new C(param) : C(param);
+                                    };
+                                    F[PROTOTYPE] = C[PROTOTYPE];
+                                    return F;
+                                    // make static versions for prototype methods
+                                })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
+                        if (IS_PROTO) (exports[PROTOTYPE] || (exports[PROTOTYPE] = {}))[key] = out;
+                    }
+                };
+                // type bitmap
+                $export.F = 1;  // forced
+                $export.G = 2;  // global
+                $export.S = 4;  // static
+                $export.P = 8;  // proto
+                $export.B = 16; // bind
+                $export.W = 32; // wrap
+                module.exports = $export;
 
-/***/ }),
-/* 21 */
-/***/ (function(module, exports) {
+                /***/
+            }),
+            /* 20 */
+            /***/ (function (module, exports) {
 
-	var core = module.exports = {version: '1.2.6'};
-	if(typeof __e == 'number')__e = core; // eslint-disable-line no-undef
+                // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
+                var global = module.exports = typeof window != 'undefined' && window.Math == Math
+                    ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();
+                if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
 
-/***/ }),
-/* 22 */
-/***/ (function(module, exports, __webpack_require__) {
+                /***/
+            }),
+            /* 21 */
+            /***/ (function (module, exports) {
 
-	// optional / simple context binding
-	var aFunction = __webpack_require__(23);
-	module.exports = function(fn, that, length){
-	  aFunction(fn);
-	  if(that === undefined)return fn;
-	  switch(length){
-	    case 1: return function(a){
-	      return fn.call(that, a);
-	    };
-	    case 2: return function(a, b){
-	      return fn.call(that, a, b);
-	    };
-	    case 3: return function(a, b, c){
-	      return fn.call(that, a, b, c);
-	    };
-	  }
-	  return function(/* ...args */){
-	    return fn.apply(that, arguments);
-	  };
-	};
+                var core = module.exports = {version: '1.2.6'};
+                if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
 
-/***/ }),
-/* 23 */
-/***/ (function(module, exports) {
+                /***/
+            }),
+            /* 22 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	module.exports = function(it){
-	  if(typeof it != 'function')throw TypeError(it + ' is not a function!');
-	  return it;
-	};
+                // optional / simple context binding
+                var aFunction = __webpack_require__(23);
+                module.exports = function (fn, that, length) {
+                    aFunction(fn);
+                    if (that === undefined) return fn;
+                    switch (length) {
+                        case 1:
+                            return function (a) {
+                                return fn.call(that, a);
+                            };
+                        case 2:
+                            return function (a, b) {
+                                return fn.call(that, a, b);
+                            };
+                        case 3:
+                            return function (a, b, c) {
+                                return fn.call(that, a, b, c);
+                            };
+                    }
+                    return function (/* ...args */) {
+                        return fn.apply(that, arguments);
+                    };
+                };
 
-/***/ }),
-/* 24 */
-/***/ (function(module, exports) {
+                /***/
+            }),
+            /* 23 */
+            /***/ (function (module, exports) {
 
-	module.exports = function(exec){
-	  try {
-	    return !!exec();
-	  } catch(e){
-	    return true;
-	  }
-	};
+                module.exports = function (it) {
+                    if (typeof it != 'function') throw TypeError(it + ' is not a function!');
+                    return it;
+                };
 
-/***/ }),
-/* 25 */
-/***/ (function(module, exports, __webpack_require__) {
+                /***/
+            }),
+            /* 24 */
+            /***/ (function (module, exports) {
 
-	'use strict';
+                module.exports = function (exec) {
+                    try {
+                        return !!exec();
+                    } catch (e) {
+                        return true;
+                    }
+                };
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                /***/
+            }),
+            /* 25 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	exports.__esModule = true;
+                'use strict';
 
-	var _exception = __webpack_require__(6);
+                var _interopRequireDefault = __webpack_require__(1)['default'];
 
-	var _exception2 = _interopRequireDefault(_exception);
+                exports.__esModule = true;
 
-	exports['default'] = function (instance) {
-	  instance.registerHelper('helperMissing', function () /* [args, ]options */{
-	    if (arguments.length === 1) {
-	      // A missing field in a {{foo}} construct.
-	      return undefined;
-	    } else {
-	      // Someone is actually trying to call something, blow up.
-	      throw new _exception2['default']('Missing helper: "' + arguments[arguments.length - 1].name + '"');
-	    }
-	  });
-	};
+                var _exception = __webpack_require__(6);
 
-	module.exports = exports['default'];
+                var _exception2 = _interopRequireDefault(_exception);
 
-/***/ }),
-/* 26 */
-/***/ (function(module, exports, __webpack_require__) {
+                exports['default'] = function (instance) {
+                    instance.registerHelper('helperMissing', function () /* [args, ]options */ {
+                        if (arguments.length === 1) {
+                            // A missing field in a {{foo}} construct.
+                            return undefined;
+                        } else {
+                            // Someone is actually trying to call something, blow up.
+                            throw new _exception2['default']('Missing helper: "' + arguments[arguments.length - 1].name + '"');
+                        }
+                    });
+                };
 
-	'use strict';
+                module.exports = exports['default'];
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                /***/
+            }),
+            /* 26 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	exports.__esModule = true;
+                'use strict';
 
-	var _utils = __webpack_require__(5);
+                var _interopRequireDefault = __webpack_require__(1)['default'];
 
-	var _exception = __webpack_require__(6);
+                exports.__esModule = true;
 
-	var _exception2 = _interopRequireDefault(_exception);
+                var _utils = __webpack_require__(5);
 
-	exports['default'] = function (instance) {
-	  instance.registerHelper('if', function (conditional, options) {
-	    if (arguments.length != 2) {
-	      throw new _exception2['default']('#if requires exactly one argument');
-	    }
-	    if (_utils.isFunction(conditional)) {
-	      conditional = conditional.call(this);
-	    }
+                var _exception = __webpack_require__(6);
 
-	    // Default behavior is to render the positive path if the value is truthy and not empty.
-	    // The `includeZero` option may be set to treat the condtional as purely not empty based on the
-	    // behavior of isEmpty. Effectively this determines if 0 is handled by the positive path or negative.
-	    if (!options.hash.includeZero && !conditional || _utils.isEmpty(conditional)) {
-	      return options.inverse(this);
-	    } else {
-	      return options.fn(this);
-	    }
-	  });
+                var _exception2 = _interopRequireDefault(_exception);
 
-	  instance.registerHelper('unless', function (conditional, options) {
-	    if (arguments.length != 2) {
-	      throw new _exception2['default']('#unless requires exactly one argument');
-	    }
-	    return instance.helpers['if'].call(this, conditional, { fn: options.inverse, inverse: options.fn, hash: options.hash });
-	  });
-	};
+                exports['default'] = function (instance) {
+                    instance.registerHelper('if', function (conditional, options) {
+                        if (arguments.length != 2) {
+                            throw new _exception2['default']('#if requires exactly one argument');
+                        }
+                        if (_utils.isFunction(conditional)) {
+                            conditional = conditional.call(this);
+                        }
 
-	module.exports = exports['default'];
+                        // Default behavior is to render the positive path if the value is truthy and not empty.
+                        // The `includeZero` option may be set to treat the condtional as purely not empty based on the
+                        // behavior of isEmpty. Effectively this determines if 0 is handled by the positive path or negative.
+                        if (!options.hash.includeZero && !conditional || _utils.isEmpty(conditional)) {
+                            return options.inverse(this);
+                        } else {
+                            return options.fn(this);
+                        }
+                    });
 
-/***/ }),
-/* 27 */
-/***/ (function(module, exports) {
+                    instance.registerHelper('unless', function (conditional, options) {
+                        if (arguments.length != 2) {
+                            throw new _exception2['default']('#unless requires exactly one argument');
+                        }
+                        return instance.helpers['if'].call(this, conditional, {
+                            fn: options.inverse,
+                            inverse: options.fn,
+                            hash: options.hash
+                        });
+                    });
+                };
 
-	'use strict';
+                module.exports = exports['default'];
 
-	exports.__esModule = true;
+                /***/
+            }),
+            /* 27 */
+            /***/ (function (module, exports) {
 
-	exports['default'] = function (instance) {
-	  instance.registerHelper('log', function () /* message, options */{
-	    var args = [undefined],
-	        options = arguments[arguments.length - 1];
-	    for (var i = 0; i < arguments.length - 1; i++) {
-	      args.push(arguments[i]);
-	    }
+                'use strict';
 
-	    var level = 1;
-	    if (options.hash.level != null) {
-	      level = options.hash.level;
-	    } else if (options.data && options.data.level != null) {
-	      level = options.data.level;
-	    }
-	    args[0] = level;
+                exports.__esModule = true;
 
-	    instance.log.apply(instance, args);
-	  });
-	};
+                exports['default'] = function (instance) {
+                    instance.registerHelper('log', function () /* message, options */ {
+                        var args = [undefined],
+                            options = arguments[arguments.length - 1];
+                        for (var i = 0; i < arguments.length - 1; i++) {
+                            args.push(arguments[i]);
+                        }
 
-	module.exports = exports['default'];
+                        var level = 1;
+                        if (options.hash.level != null) {
+                            level = options.hash.level;
+                        } else if (options.data && options.data.level != null) {
+                            level = options.data.level;
+                        }
+                        args[0] = level;
 
-/***/ }),
-/* 28 */
-/***/ (function(module, exports) {
+                        instance.log.apply(instance, args);
+                    });
+                };
 
-	'use strict';
+                module.exports = exports['default'];
 
-	exports.__esModule = true;
-	var dangerousPropertyRegex = /^(constructor|__defineGetter__|__defineSetter__|__lookupGetter__|__proto__)$/;
+                /***/
+            }),
+            /* 28 */
+            /***/ (function (module, exports) {
 
-	exports.dangerousPropertyRegex = dangerousPropertyRegex;
+                'use strict';
 
-	exports['default'] = function (instance) {
-	  instance.registerHelper('lookup', function (obj, field) {
-	    if (!obj) {
-	      return obj;
-	    }
-	    if (dangerousPropertyRegex.test(String(field)) && !Object.prototype.propertyIsEnumerable.call(obj, field)) {
-	      return undefined;
-	    }
-	    return obj[field];
-	  });
-	};
+                exports.__esModule = true;
+                var dangerousPropertyRegex = /^(constructor|__defineGetter__|__defineSetter__|__lookupGetter__|__proto__)$/;
 
-/***/ }),
-/* 29 */
-/***/ (function(module, exports, __webpack_require__) {
+                exports.dangerousPropertyRegex = dangerousPropertyRegex;
 
-	'use strict';
+                exports['default'] = function (instance) {
+                    instance.registerHelper('lookup', function (obj, field) {
+                        if (!obj) {
+                            return obj;
+                        }
+                        if (dangerousPropertyRegex.test(String(field)) && !Object.prototype.propertyIsEnumerable.call(obj, field)) {
+                            return undefined;
+                        }
+                        return obj[field];
+                    });
+                };
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                /***/
+            }),
+            /* 29 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	exports.__esModule = true;
+                'use strict';
 
-	var _utils = __webpack_require__(5);
+                var _interopRequireDefault = __webpack_require__(1)['default'];
 
-	var _exception = __webpack_require__(6);
+                exports.__esModule = true;
 
-	var _exception2 = _interopRequireDefault(_exception);
+                var _utils = __webpack_require__(5);
 
-	exports['default'] = function (instance) {
-	  instance.registerHelper('with', function (context, options) {
-	    if (arguments.length != 2) {
-	      throw new _exception2['default']('#with requires exactly one argument');
-	    }
-	    if (_utils.isFunction(context)) {
-	      context = context.call(this);
-	    }
+                var _exception = __webpack_require__(6);
 
-	    var fn = options.fn;
+                var _exception2 = _interopRequireDefault(_exception);
 
-	    if (!_utils.isEmpty(context)) {
-	      var data = options.data;
-	      if (options.data && options.ids) {
-	        data = _utils.createFrame(options.data);
-	        data.contextPath = _utils.appendContextPath(options.data.contextPath, options.ids[0]);
-	      }
+                exports['default'] = function (instance) {
+                    instance.registerHelper('with', function (context, options) {
+                        if (arguments.length != 2) {
+                            throw new _exception2['default']('#with requires exactly one argument');
+                        }
+                        if (_utils.isFunction(context)) {
+                            context = context.call(this);
+                        }
 
-	      return fn(context, {
-	        data: data,
-	        blockParams: _utils.blockParams([context], [data && data.contextPath])
-	      });
-	    } else {
-	      return options.inverse(this);
-	    }
-	  });
-	};
+                        var fn = options.fn;
 
-	module.exports = exports['default'];
+                        if (!_utils.isEmpty(context)) {
+                            var data = options.data;
+                            if (options.data && options.ids) {
+                                data = _utils.createFrame(options.data);
+                                data.contextPath = _utils.appendContextPath(options.data.contextPath, options.ids[0]);
+                            }
 
-/***/ }),
-/* 30 */
-/***/ (function(module, exports, __webpack_require__) {
+                            return fn(context, {
+                                data: data,
+                                blockParams: _utils.blockParams([context], [data && data.contextPath])
+                            });
+                        } else {
+                            return options.inverse(this);
+                        }
+                    });
+                };
 
-	'use strict';
+                module.exports = exports['default'];
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                /***/
+            }),
+            /* 30 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	exports.__esModule = true;
-	exports.registerDefaultDecorators = registerDefaultDecorators;
+                'use strict';
 
-	var _decoratorsInline = __webpack_require__(31);
+                var _interopRequireDefault = __webpack_require__(1)['default'];
 
-	var _decoratorsInline2 = _interopRequireDefault(_decoratorsInline);
+                exports.__esModule = true;
+                exports.registerDefaultDecorators = registerDefaultDecorators;
 
-	function registerDefaultDecorators(instance) {
-	  _decoratorsInline2['default'](instance);
-	}
+                var _decoratorsInline = __webpack_require__(31);
 
-/***/ }),
-/* 31 */
-/***/ (function(module, exports, __webpack_require__) {
+                var _decoratorsInline2 = _interopRequireDefault(_decoratorsInline);
 
-	'use strict';
+                function registerDefaultDecorators(instance) {
+                    _decoratorsInline2['default'](instance);
+                }
 
-	exports.__esModule = true;
+                /***/
+            }),
+            /* 31 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	var _utils = __webpack_require__(5);
+                'use strict';
 
-	exports['default'] = function (instance) {
-	  instance.registerDecorator('inline', function (fn, props, container, options) {
-	    var ret = fn;
-	    if (!props.partials) {
-	      props.partials = {};
-	      ret = function (context, options) {
-	        // Create a new partials stack frame prior to exec.
-	        var original = container.partials;
-	        container.partials = _utils.extend({}, original, props.partials);
-	        var ret = fn(context, options);
-	        container.partials = original;
-	        return ret;
-	      };
-	    }
+                exports.__esModule = true;
 
-	    props.partials[options.args[0]] = options.fn;
+                var _utils = __webpack_require__(5);
 
-	    return ret;
-	  });
-	};
+                exports['default'] = function (instance) {
+                    instance.registerDecorator('inline', function (fn, props, container, options) {
+                        var ret = fn;
+                        if (!props.partials) {
+                            props.partials = {};
+                            ret = function (context, options) {
+                                // Create a new partials stack frame prior to exec.
+                                var original = container.partials;
+                                container.partials = _utils.extend({}, original, props.partials);
+                                var ret = fn(context, options);
+                                container.partials = original;
+                                return ret;
+                            };
+                        }
 
-	module.exports = exports['default'];
+                        props.partials[options.args[0]] = options.fn;
 
-/***/ }),
-/* 32 */
-/***/ (function(module, exports, __webpack_require__) {
+                        return ret;
+                    });
+                };
 
-	'use strict';
+                module.exports = exports['default'];
 
-	exports.__esModule = true;
+                /***/
+            }),
+            /* 32 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	var _utils = __webpack_require__(5);
+                'use strict';
 
-	var logger = {
-	  methodMap: ['debug', 'info', 'warn', 'error'],
-	  level: 'info',
+                exports.__esModule = true;
 
-	  // Maps a given level value to the `methodMap` indexes above.
-	  lookupLevel: function lookupLevel(level) {
-	    if (typeof level === 'string') {
-	      var levelMap = _utils.indexOf(logger.methodMap, level.toLowerCase());
-	      if (levelMap >= 0) {
-	        level = levelMap;
-	      } else {
-	        level = parseInt(level, 10);
-	      }
-	    }
+                var _utils = __webpack_require__(5);
 
-	    return level;
-	  },
+                var logger = {
+                    methodMap: ['debug', 'info', 'warn', 'error'],
+                    level: 'info',
 
-	  // Can be overridden in the host environment
-	  log: function log(level) {
-	    level = logger.lookupLevel(level);
+                    // Maps a given level value to the `methodMap` indexes above.
+                    lookupLevel: function lookupLevel(level) {
+                        if (typeof level === 'string') {
+                            var levelMap = _utils.indexOf(logger.methodMap, level.toLowerCase());
+                            if (levelMap >= 0) {
+                                level = levelMap;
+                            } else {
+                                level = parseInt(level, 10);
+                            }
+                        }
 
-	    if (typeof console !== 'undefined' && logger.lookupLevel(logger.level) <= level) {
-	      var method = logger.methodMap[level];
-	      if (!console[method]) {
-	        // eslint-disable-line no-console
-	        method = 'log';
-	      }
+                        return level;
+                    },
 
-	      for (var _len = arguments.length, message = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
-	        message[_key - 1] = arguments[_key];
-	      }
+                    // Can be overridden in the host environment
+                    log: function log(level) {
+                        level = logger.lookupLevel(level);
 
-	      console[method].apply(console, message); // eslint-disable-line no-console
-	    }
-	  }
-	};
+                        if (typeof console !== 'undefined' && logger.lookupLevel(logger.level) <= level) {
+                            var method = logger.methodMap[level];
+                            if (!console[method]) {
+                                // eslint-disable-line no-console
+                                method = 'log';
+                            }
 
-	exports['default'] = logger;
-	module.exports = exports['default'];
+                            for (var _len = arguments.length, message = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
+                                message[_key - 1] = arguments[_key];
+                            }
 
-/***/ }),
-/* 33 */
-/***/ (function(module, exports) {
+                            console[method].apply(console, message); // eslint-disable-line no-console
+                        }
+                    }
+                };
 
-	// Build out our basic SafeString type
-	'use strict';
+                exports['default'] = logger;
+                module.exports = exports['default'];
 
-	exports.__esModule = true;
-	function SafeString(string) {
-	  this.string = string;
-	}
+                /***/
+            }),
+            /* 33 */
+            /***/ (function (module, exports) {
 
-	SafeString.prototype.toString = SafeString.prototype.toHTML = function () {
-	  return '' + this.string;
-	};
+                // Build out our basic SafeString type
+                'use strict';
 
-	exports['default'] = SafeString;
-	module.exports = exports['default'];
+                exports.__esModule = true;
 
-/***/ }),
-/* 34 */
-/***/ (function(module, exports, __webpack_require__) {
+                function SafeString(string) {
+                    this.string = string;
+                }
 
-	'use strict';
+                SafeString.prototype.toString = SafeString.prototype.toHTML = function () {
+                    return '' + this.string;
+                };
 
-	var _Object$seal = __webpack_require__(35)['default'];
+                exports['default'] = SafeString;
+                module.exports = exports['default'];
 
-	var _interopRequireWildcard = __webpack_require__(3)['default'];
+                /***/
+            }),
+            /* 34 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                'use strict';
 
-	exports.__esModule = true;
-	exports.checkRevision = checkRevision;
-	exports.template = template;
-	exports.wrapProgram = wrapProgram;
-	exports.resolvePartial = resolvePartial;
-	exports.invokePartial = invokePartial;
-	exports.noop = noop;
+                var _Object$seal = __webpack_require__(35)['default'];
 
-	var _utils = __webpack_require__(5);
+                var _interopRequireWildcard = __webpack_require__(3)['default'];
 
-	var Utils = _interopRequireWildcard(_utils);
+                var _interopRequireDefault = __webpack_require__(1)['default'];
 
-	var _exception = __webpack_require__(6);
+                exports.__esModule = true;
+                exports.checkRevision = checkRevision;
+                exports.template = template;
+                exports.wrapProgram = wrapProgram;
+                exports.resolvePartial = resolvePartial;
+                exports.invokePartial = invokePartial;
+                exports.noop = noop;
 
-	var _exception2 = _interopRequireDefault(_exception);
+                var _utils = __webpack_require__(5);
 
-	var _base = __webpack_require__(4);
+                var Utils = _interopRequireWildcard(_utils);
 
-	var _helpers = __webpack_require__(10);
+                var _exception = __webpack_require__(6);
 
-	function checkRevision(compilerInfo) {
-	  var compilerRevision = compilerInfo && compilerInfo[0] || 1,
-	      currentRevision = _base.COMPILER_REVISION;
+                var _exception2 = _interopRequireDefault(_exception);
 
-	  if (compilerRevision >= _base.LAST_COMPATIBLE_COMPILER_REVISION && compilerRevision <= _base.COMPILER_REVISION) {
-	    return;
-	  }
+                var _base = __webpack_require__(4);
 
-	  if (compilerRevision < _base.LAST_COMPATIBLE_COMPILER_REVISION) {
-	    var runtimeVersions = _base.REVISION_CHANGES[currentRevision],
-	        compilerVersions = _base.REVISION_CHANGES[compilerRevision];
-	    throw new _exception2['default']('Template was precompiled with an older version of Handlebars than the current runtime. ' + 'Please update your precompiler to a newer version (' + runtimeVersions + ') or downgrade your runtime to an older version (' + compilerVersions + ').');
-	  } else {
-	    // Use the embedded version info since the runtime doesn't know about this revision yet
-	    throw new _exception2['default']('Template was precompiled with a newer version of Handlebars than the current runtime. ' + 'Please update your runtime to a newer version (' + compilerInfo[1] + ').');
-	  }
-	}
+                var _helpers = __webpack_require__(10);
 
-	function template(templateSpec, env) {
+                function checkRevision(compilerInfo) {
+                    var compilerRevision = compilerInfo && compilerInfo[0] || 1,
+                        currentRevision = _base.COMPILER_REVISION;
 
-	  /* istanbul ignore next */
-	  if (!env) {
-	    throw new _exception2['default']('No environment passed to template');
-	  }
-	  if (!templateSpec || !templateSpec.main) {
-	    throw new _exception2['default']('Unknown template object: ' + typeof templateSpec);
-	  }
+                    if (compilerRevision >= _base.LAST_COMPATIBLE_COMPILER_REVISION && compilerRevision <= _base.COMPILER_REVISION) {
+                        return;
+                    }
 
-	  templateSpec.main.decorator = templateSpec.main_d;
+                    if (compilerRevision < _base.LAST_COMPATIBLE_COMPILER_REVISION) {
+                        var runtimeVersions = _base.REVISION_CHANGES[currentRevision],
+                            compilerVersions = _base.REVISION_CHANGES[compilerRevision];
+                        throw new _exception2['default']('Template was precompiled with an older version of Handlebars than the current runtime. ' + 'Please update your precompiler to a newer version (' + runtimeVersions + ') or downgrade your runtime to an older version (' + compilerVersions + ').');
+                    } else {
+                        // Use the embedded version info since the runtime doesn't know about this revision yet
+                        throw new _exception2['default']('Template was precompiled with a newer version of Handlebars than the current runtime. ' + 'Please update your runtime to a newer version (' + compilerInfo[1] + ').');
+                    }
+                }
 
-	  // Note: Using env.VM references rather than local var references throughout this section to allow
-	  // for external users to override these as pseudo-supported APIs.
-	  env.VM.checkRevision(templateSpec.compiler);
+                function template(templateSpec, env) {
 
-	  // backwards compatibility for precompiled templates with compiler-version 7 (<4.3.0)
-	  var templateWasPrecompiledWithCompilerV7 = templateSpec.compiler && templateSpec.compiler[0] === 7;
+                    /* istanbul ignore next */
+                    if (!env) {
+                        throw new _exception2['default']('No environment passed to template');
+                    }
+                    if (!templateSpec || !templateSpec.main) {
+                        throw new _exception2['default']('Unknown template object: ' + typeof templateSpec);
+                    }
 
-	  function invokePartialWrapper(partial, context, options) {
-	    if (options.hash) {
-	      context = Utils.extend({}, context, options.hash);
-	      if (options.ids) {
-	        options.ids[0] = true;
-	      }
-	    }
-	    partial = env.VM.resolvePartial.call(this, partial, context, options);
+                    templateSpec.main.decorator = templateSpec.main_d;
 
-	    var optionsWithHooks = Utils.extend({}, options, { hooks: this.hooks });
+                    // Note: Using env.VM references rather than local var references throughout this section to allow
+                    // for external users to override these as pseudo-supported APIs.
+                    env.VM.checkRevision(templateSpec.compiler);
 
-	    var result = env.VM.invokePartial.call(this, partial, context, optionsWithHooks);
+                    // backwards compatibility for precompiled templates with compiler-version 7 (<4.3.0)
+                    var templateWasPrecompiledWithCompilerV7 = templateSpec.compiler && templateSpec.compiler[0] === 7;
 
-	    if (result == null && env.compile) {
-	      options.partials[options.name] = env.compile(partial, templateSpec.compilerOptions, env);
-	      result = options.partials[options.name](context, optionsWithHooks);
-	    }
-	    if (result != null) {
-	      if (options.indent) {
-	        var lines = result.split('\n');
-	        for (var i = 0, l = lines.length; i < l; i++) {
-	          if (!lines[i] && i + 1 === l) {
-	            break;
-	          }
+                    function invokePartialWrapper(partial, context, options) {
+                        if (options.hash) {
+                            context = Utils.extend({}, context, options.hash);
+                            if (options.ids) {
+                                options.ids[0] = true;
+                            }
+                        }
+                        partial = env.VM.resolvePartial.call(this, partial, context, options);
 
-	          lines[i] = options.indent + lines[i];
-	        }
-	        result = lines.join('\n');
-	      }
-	      return result;
-	    } else {
-	      throw new _exception2['default']('The partial ' + options.name + ' could not be compiled when running in runtime-only mode');
-	    }
-	  }
+                        var optionsWithHooks = Utils.extend({}, options, {hooks: this.hooks});
 
-	  // Just add water
-	  var container = {
-	    strict: function strict(obj, name, loc) {
-	      if (!obj || !(name in obj)) {
-	        throw new _exception2['default']('"' + name + '" not defined in ' + obj, { loc: loc });
-	      }
-	      return obj[name];
-	    },
-	    lookup: function lookup(depths, name) {
-	      var len = depths.length;
-	      for (var i = 0; i < len; i++) {
-	        if (depths[i] && depths[i][name] != null) {
-	          return depths[i][name];
-	        }
-	      }
-	    },
-	    lambda: function lambda(current, context) {
-	      return typeof current === 'function' ? current.call(context) : current;
-	    },
+                        var result = env.VM.invokePartial.call(this, partial, context, optionsWithHooks);
 
-	    escapeExpression: Utils.escapeExpression,
-	    invokePartial: invokePartialWrapper,
+                        if (result == null && env.compile) {
+                            options.partials[options.name] = env.compile(partial, templateSpec.compilerOptions, env);
+                            result = options.partials[options.name](context, optionsWithHooks);
+                        }
+                        if (result != null) {
+                            if (options.indent) {
+                                var lines = result.split('\n');
+                                for (var i = 0, l = lines.length; i < l; i++) {
+                                    if (!lines[i] && i + 1 === l) {
+                                        break;
+                                    }
 
-	    fn: function fn(i) {
-	      var ret = templateSpec[i];
-	      ret.decorator = templateSpec[i + '_d'];
-	      return ret;
-	    },
+                                    lines[i] = options.indent + lines[i];
+                                }
+                                result = lines.join('\n');
+                            }
+                            return result;
+                        } else {
+                            throw new _exception2['default']('The partial ' + options.name + ' could not be compiled when running in runtime-only mode');
+                        }
+                    }
 
-	    programs: [],
-	    program: function program(i, data, declaredBlockParams, blockParams, depths) {
-	      var programWrapper = this.programs[i],
-	          fn = this.fn(i);
-	      if (data || depths || blockParams || declaredBlockParams) {
-	        programWrapper = wrapProgram(this, i, fn, data, declaredBlockParams, blockParams, depths);
-	      } else if (!programWrapper) {
-	        programWrapper = this.programs[i] = wrapProgram(this, i, fn);
-	      }
-	      return programWrapper;
-	    },
+                    // Just add water
+                    var container = {
+                        strict: function strict(obj, name, loc) {
+                            if (!obj || !(name in obj)) {
+                                throw new _exception2['default']('"' + name + '" not defined in ' + obj, {loc: loc});
+                            }
+                            return obj[name];
+                        },
+                        lookup: function lookup(depths, name) {
+                            var len = depths.length;
+                            for (var i = 0; i < len; i++) {
+                                if (depths[i] && depths[i][name] != null) {
+                                    return depths[i][name];
+                                }
+                            }
+                        },
+                        lambda: function lambda(current, context) {
+                            return typeof current === 'function' ? current.call(context) : current;
+                        },
 
-	    data: function data(value, depth) {
-	      while (value && depth--) {
-	        value = value._parent;
-	      }
-	      return value;
-	    },
-	    // An empty object to use as replacement for null-contexts
-	    nullContext: _Object$seal({}),
+                        escapeExpression: Utils.escapeExpression,
+                        invokePartial: invokePartialWrapper,
 
-	    noop: env.VM.noop,
-	    compilerInfo: templateSpec.compiler
-	  };
+                        fn: function fn(i) {
+                            var ret = templateSpec[i];
+                            ret.decorator = templateSpec[i + '_d'];
+                            return ret;
+                        },
 
-	  function ret(context) {
-	    var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];
+                        programs: [],
+                        program: function program(i, data, declaredBlockParams, blockParams, depths) {
+                            var programWrapper = this.programs[i],
+                                fn = this.fn(i);
+                            if (data || depths || blockParams || declaredBlockParams) {
+                                programWrapper = wrapProgram(this, i, fn, data, declaredBlockParams, blockParams, depths);
+                            } else if (!programWrapper) {
+                                programWrapper = this.programs[i] = wrapProgram(this, i, fn);
+                            }
+                            return programWrapper;
+                        },
 
-	    var data = options.data;
+                        data: function data(value, depth) {
+                            while (value && depth--) {
+                                value = value._parent;
+                            }
+                            return value;
+                        },
+                        // An empty object to use as replacement for null-contexts
+                        nullContext: _Object$seal({}),
 
-	    ret._setup(options);
-	    if (!options.partial && templateSpec.useData) {
-	      data = initData(context, data);
-	    }
-	    var depths = undefined,
-	        blockParams = templateSpec.useBlockParams ? [] : undefined;
-	    if (templateSpec.useDepths) {
-	      if (options.depths) {
-	        depths = context != options.depths[0] ? [context].concat(options.depths) : options.depths;
-	      } else {
-	        depths = [context];
-	      }
-	    }
+                        noop: env.VM.noop,
+                        compilerInfo: templateSpec.compiler
+                    };
 
-	    function main(context /*, options*/) {
-	      return '' + templateSpec.main(container, context, container.helpers, container.partials, data, blockParams, depths);
-	    }
-	    main = executeDecorators(templateSpec.main, main, container, options.depths || [], data, blockParams);
-	    return main(context, options);
-	  }
-	  ret.isTop = true;
+                    function ret(context) {
+                        var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];
 
-	  ret._setup = function (options) {
-	    if (!options.partial) {
-	      container.helpers = Utils.extend({}, env.helpers, options.helpers);
+                        var data = options.data;
 
-	      if (templateSpec.usePartial) {
-	        container.partials = Utils.extend({}, env.partials, options.partials);
-	      }
-	      if (templateSpec.usePartial || templateSpec.useDecorators) {
-	        container.decorators = Utils.extend({}, env.decorators, options.decorators);
-	      }
+                        ret._setup(options);
+                        if (!options.partial && templateSpec.useData) {
+                            data = initData(context, data);
+                        }
+                        var depths = undefined,
+                            blockParams = templateSpec.useBlockParams ? [] : undefined;
+                        if (templateSpec.useDepths) {
+                            if (options.depths) {
+                                depths = context != options.depths[0] ? [context].concat(options.depths) : options.depths;
+                            } else {
+                                depths = [context];
+                            }
+                        }
 
-	      container.hooks = {};
+                        function main(context /*, options*/) {
+                            return '' + templateSpec.main(container, context, container.helpers, container.partials, data, blockParams, depths);
+                        }
 
-	      var keepHelperInHelpers = options.allowCallsToHelperMissing || templateWasPrecompiledWithCompilerV7;
-	      _helpers.moveHelperToHooks(container, 'helperMissing', keepHelperInHelpers);
-	      _helpers.moveHelperToHooks(container, 'blockHelperMissing', keepHelperInHelpers);
-	    } else {
-	      container.helpers = options.helpers;
-	      container.partials = options.partials;
-	      container.decorators = options.decorators;
-	      container.hooks = options.hooks;
-	    }
-	  };
+                        main = executeDecorators(templateSpec.main, main, container, options.depths || [], data, blockParams);
+                        return main(context, options);
+                    }
 
-	  ret._child = function (i, data, blockParams, depths) {
-	    if (templateSpec.useBlockParams && !blockParams) {
-	      throw new _exception2['default']('must pass block params');
-	    }
-	    if (templateSpec.useDepths && !depths) {
-	      throw new _exception2['default']('must pass parent depths');
-	    }
+                    ret.isTop = true;
 
-	    return wrapProgram(container, i, templateSpec[i], data, 0, blockParams, depths);
-	  };
-	  return ret;
-	}
+                    ret._setup = function (options) {
+                        if (!options.partial) {
+                            container.helpers = Utils.extend({}, env.helpers, options.helpers);
 
-	function wrapProgram(container, i, fn, data, declaredBlockParams, blockParams, depths) {
-	  function prog(context) {
-	    var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];
+                            if (templateSpec.usePartial) {
+                                container.partials = Utils.extend({}, env.partials, options.partials);
+                            }
+                            if (templateSpec.usePartial || templateSpec.useDecorators) {
+                                container.decorators = Utils.extend({}, env.decorators, options.decorators);
+                            }
 
-	    var currentDepths = depths;
-	    if (depths && context != depths[0] && !(context === container.nullContext && depths[0] === null)) {
-	      currentDepths = [context].concat(depths);
-	    }
+                            container.hooks = {};
 
-	    return fn(container, context, container.helpers, container.partials, options.data || data, blockParams && [options.blockParams].concat(blockParams), currentDepths);
-	  }
+                            var keepHelperInHelpers = options.allowCallsToHelperMissing || templateWasPrecompiledWithCompilerV7;
+                            _helpers.moveHelperToHooks(container, 'helperMissing', keepHelperInHelpers);
+                            _helpers.moveHelperToHooks(container, 'blockHelperMissing', keepHelperInHelpers);
+                        } else {
+                            container.helpers = options.helpers;
+                            container.partials = options.partials;
+                            container.decorators = options.decorators;
+                            container.hooks = options.hooks;
+                        }
+                    };
 
-	  prog = executeDecorators(fn, prog, container, depths, data, blockParams);
+                    ret._child = function (i, data, blockParams, depths) {
+                        if (templateSpec.useBlockParams && !blockParams) {
+                            throw new _exception2['default']('must pass block params');
+                        }
+                        if (templateSpec.useDepths && !depths) {
+                            throw new _exception2['default']('must pass parent depths');
+                        }
 
-	  prog.program = i;
-	  prog.depth = depths ? depths.length : 0;
-	  prog.blockParams = declaredBlockParams || 0;
-	  return prog;
-	}
+                        return wrapProgram(container, i, templateSpec[i], data, 0, blockParams, depths);
+                    };
+                    return ret;
+                }
 
-	/**
-	 * This is currently part of the official API, therefore implementation details should not be changed.
-	 */
+                function wrapProgram(container, i, fn, data, declaredBlockParams, blockParams, depths) {
+                    function prog(context) {
+                        var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];
 
-	function resolvePartial(partial, context, options) {
-	  if (!partial) {
-	    if (options.name === '@partial-block') {
-	      partial = options.data['partial-block'];
-	    } else {
-	      partial = options.partials[options.name];
-	    }
-	  } else if (!partial.call && !options.name) {
-	    // This is a dynamic partial that returned a string
-	    options.name = partial;
-	    partial = options.partials[partial];
-	  }
-	  return partial;
-	}
+                        var currentDepths = depths;
+                        if (depths && context != depths[0] && !(context === container.nullContext && depths[0] === null)) {
+                            currentDepths = [context].concat(depths);
+                        }
 
-	function invokePartial(partial, context, options) {
-	  // Use the current closure context to save the partial-block if this partial
-	  var currentPartialBlock = options.data && options.data['partial-block'];
-	  options.partial = true;
-	  if (options.ids) {
-	    options.data.contextPath = options.ids[0] || options.data.contextPath;
-	  }
+                        return fn(container, context, container.helpers, container.partials, options.data || data, blockParams && [options.blockParams].concat(blockParams), currentDepths);
+                    }
 
-	  var partialBlock = undefined;
-	  if (options.fn && options.fn !== noop) {
-	    (function () {
-	      options.data = _base.createFrame(options.data);
-	      // Wrapper function to get access to currentPartialBlock from the closure
-	      var fn = options.fn;
-	      partialBlock = options.data['partial-block'] = function partialBlockWrapper(context) {
-	        var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];
+                    prog = executeDecorators(fn, prog, container, depths, data, blockParams);
 
-	        // Restore the partial-block from the closure for the execution of the block
-	        // i.e. the part inside the block of the partial call.
-	        options.data = _base.createFrame(options.data);
-	        options.data['partial-block'] = currentPartialBlock;
-	        return fn(context, options);
-	      };
-	      if (fn.partials) {
-	        options.partials = Utils.extend({}, options.partials, fn.partials);
-	      }
-	    })();
-	  }
+                    prog.program = i;
+                    prog.depth = depths ? depths.length : 0;
+                    prog.blockParams = declaredBlockParams || 0;
+                    return prog;
+                }
 
-	  if (partial === undefined && partialBlock) {
-	    partial = partialBlock;
-	  }
+                /**
+                 * This is currently part of the official API, therefore implementation details should not be changed.
+                 */
 
-	  if (partial === undefined) {
-	    throw new _exception2['default']('The partial ' + options.name + ' could not be found');
-	  } else if (partial instanceof Function) {
-	    return partial(context, options);
-	  }
-	}
+                function resolvePartial(partial, context, options) {
+                    if (!partial) {
+                        if (options.name === '@partial-block') {
+                            partial = options.data['partial-block'];
+                        } else {
+                            partial = options.partials[options.name];
+                        }
+                    } else if (!partial.call && !options.name) {
+                        // This is a dynamic partial that returned a string
+                        options.name = partial;
+                        partial = options.partials[partial];
+                    }
+                    return partial;
+                }
 
-	function noop() {
-	  return '';
-	}
+                function invokePartial(partial, context, options) {
+                    // Use the current closure context to save the partial-block if this partial
+                    var currentPartialBlock = options.data && options.data['partial-block'];
+                    options.partial = true;
+                    if (options.ids) {
+                        options.data.contextPath = options.ids[0] || options.data.contextPath;
+                    }
 
-	function initData(context, data) {
-	  if (!data || !('root' in data)) {
-	    data = data ? _base.createFrame(data) : {};
-	    data.root = context;
-	  }
-	  return data;
-	}
+                    var partialBlock = undefined;
+                    if (options.fn && options.fn !== noop) {
+                        (function () {
+                            options.data = _base.createFrame(options.data);
+                            // Wrapper function to get access to currentPartialBlock from the closure
+                            var fn = options.fn;
+                            partialBlock = options.data['partial-block'] = function partialBlockWrapper(context) {
+                                var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];
 
-	function executeDecorators(fn, prog, container, depths, data, blockParams) {
-	  if (fn.decorator) {
-	    var props = {};
-	    prog = fn.decorator(prog, props, container, depths && depths[0], data, blockParams, depths);
-	    Utils.extend(prog, props);
-	  }
-	  return prog;
-	}
+                                // Restore the partial-block from the closure for the execution of the block
+                                // i.e. the part inside the block of the partial call.
+                                options.data = _base.createFrame(options.data);
+                                options.data['partial-block'] = currentPartialBlock;
+                                return fn(context, options);
+                            };
+                            if (fn.partials) {
+                                options.partials = Utils.extend({}, options.partials, fn.partials);
+                            }
+                        })();
+                    }
 
-/***/ }),
-/* 35 */
-/***/ (function(module, exports, __webpack_require__) {
+                    if (partial === undefined && partialBlock) {
+                        partial = partialBlock;
+                    }
 
-	module.exports = { "default": __webpack_require__(36), __esModule: true };
+                    if (partial === undefined) {
+                        throw new _exception2['default']('The partial ' + options.name + ' could not be found');
+                    } else if (partial instanceof Function) {
+                        return partial(context, options);
+                    }
+                }
 
-/***/ }),
-/* 36 */
-/***/ (function(module, exports, __webpack_require__) {
+                function noop() {
+                    return '';
+                }
 
-	__webpack_require__(37);
-	module.exports = __webpack_require__(21).Object.seal;
+                function initData(context, data) {
+                    if (!data || !('root' in data)) {
+                        data = data ? _base.createFrame(data) : {};
+                        data.root = context;
+                    }
+                    return data;
+                }
 
-/***/ }),
-/* 37 */
-/***/ (function(module, exports, __webpack_require__) {
+                function executeDecorators(fn, prog, container, depths, data, blockParams) {
+                    if (fn.decorator) {
+                        var props = {};
+                        prog = fn.decorator(prog, props, container, depths && depths[0], data, blockParams, depths);
+                        Utils.extend(prog, props);
+                    }
+                    return prog;
+                }
 
-	// 19.1.2.17 Object.seal(O)
-	var isObject = __webpack_require__(38);
+                /***/
+            }),
+            /* 35 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	__webpack_require__(18)('seal', function($seal){
-	  return function seal(it){
-	    return $seal && isObject(it) ? $seal(it) : it;
-	  };
-	});
+                module.exports = {"default": __webpack_require__(36), __esModule: true};
 
-/***/ }),
-/* 38 */
-/***/ (function(module, exports) {
+                /***/
+            }),
+            /* 36 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	module.exports = function(it){
-	  return typeof it === 'object' ? it !== null : typeof it === 'function';
-	};
+                __webpack_require__(37);
+                module.exports = __webpack_require__(21).Object.seal;
 
-/***/ }),
-/* 39 */
-/***/ (function(module, exports) {
+                /***/
+            }),
+            /* 37 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	/* WEBPACK VAR INJECTION */(function(global) {/* global window */
-	'use strict';
+                // 19.1.2.17 Object.seal(O)
+                var isObject = __webpack_require__(38);
 
-	exports.__esModule = true;
+                __webpack_require__(18)('seal', function ($seal) {
+                    return function seal(it) {
+                        return $seal && isObject(it) ? $seal(it) : it;
+                    };
+                });
 
-	exports['default'] = function (Handlebars) {
-	  /* istanbul ignore next */
-	  var root = typeof global !== 'undefined' ? global : window,
-	      $Handlebars = root.Handlebars;
-	  /* istanbul ignore next */
-	  Handlebars.noConflict = function () {
-	    if (root.Handlebars === Handlebars) {
-	      root.Handlebars = $Handlebars;
-	    }
-	    return Handlebars;
-	  };
-	};
+                /***/
+            }),
+            /* 38 */
+            /***/ (function (module, exports) {
 
-	module.exports = exports['default'];
-	/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
+                module.exports = function (it) {
+                    return typeof it === 'object' ? it !== null : typeof it === 'function';
+                };
 
-/***/ }),
-/* 40 */
-/***/ (function(module, exports) {
+                /***/
+            }),
+            /* 39 */
+            /***/ (function (module, exports) {
 
-	'use strict';
+                /* WEBPACK VAR INJECTION */
+                (function (global) {/* global window */
+                    'use strict';
 
-	exports.__esModule = true;
-	var AST = {
-	  // Public API used to evaluate derived attributes regarding AST nodes
-	  helpers: {
-	    // a mustache is definitely a helper if:
-	    // * it is an eligible helper, and
-	    // * it has at least one parameter or hash segment
-	    helperExpression: function helperExpression(node) {
-	      return node.type === 'SubExpression' || (node.type === 'MustacheStatement' || node.type === 'BlockStatement') && !!(node.params && node.params.length || node.hash);
-	    },
+                    exports.__esModule = true;
 
-	    scopedId: function scopedId(path) {
-	      return (/^\.|this\b/.test(path.original)
-	      );
-	    },
+                    exports['default'] = function (Handlebars) {
+                        /* istanbul ignore next */
+                        var root = typeof global !== 'undefined' ? global : window,
+                            $Handlebars = root.Handlebars;
+                        /* istanbul ignore next */
+                        Handlebars.noConflict = function () {
+                            if (root.Handlebars === Handlebars) {
+                                root.Handlebars = $Handlebars;
+                            }
+                            return Handlebars;
+                        };
+                    };
 
-	    // an ID is simple if it only has one part, and that part is not
-	    // `..` or `this`.
-	    simpleId: function simpleId(path) {
-	      return path.parts.length === 1 && !AST.helpers.scopedId(path) && !path.depth;
-	    }
-	  }
-	};
+                    module.exports = exports['default'];
+                    /* WEBPACK VAR INJECTION */
+                }.call(exports, (function () {
+                    return this;
+                }())))
 
-	// Must be exported as an object rather than the root of the module as the jison lexer
-	// must modify the object to operate properly.
-	exports['default'] = AST;
-	module.exports = exports['default'];
+                /***/
+            }),
+            /* 40 */
+            /***/ (function (module, exports) {
 
-/***/ }),
-/* 41 */
-/***/ (function(module, exports, __webpack_require__) {
+                'use strict';
 
-	'use strict';
+                exports.__esModule = true;
+                var AST = {
+                    // Public API used to evaluate derived attributes regarding AST nodes
+                    helpers: {
+                        // a mustache is definitely a helper if:
+                        // * it is an eligible helper, and
+                        // * it has at least one parameter or hash segment
+                        helperExpression: function helperExpression(node) {
+                            return node.type === 'SubExpression' || (node.type === 'MustacheStatement' || node.type === 'BlockStatement') && !!(node.params && node.params.length || node.hash);
+                        },
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                        scopedId: function scopedId(path) {
+                            return (/^\.|this\b/.test(path.original)
+                            );
+                        },
 
-	var _interopRequireWildcard = __webpack_require__(3)['default'];
+                        // an ID is simple if it only has one part, and that part is not
+                        // `..` or `this`.
+                        simpleId: function simpleId(path) {
+                            return path.parts.length === 1 && !AST.helpers.scopedId(path) && !path.depth;
+                        }
+                    }
+                };
 
-	exports.__esModule = true;
-	exports.parseWithoutProcessing = parseWithoutProcessing;
-	exports.parse = parse;
+                // Must be exported as an object rather than the root of the module as the jison lexer
+                // must modify the object to operate properly.
+                exports['default'] = AST;
+                module.exports = exports['default'];
 
-	var _parser = __webpack_require__(42);
+                /***/
+            }),
+            /* 41 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	var _parser2 = _interopRequireDefault(_parser);
+                'use strict';
 
-	var _whitespaceControl = __webpack_require__(43);
+                var _interopRequireDefault = __webpack_require__(1)['default'];
 
-	var _whitespaceControl2 = _interopRequireDefault(_whitespaceControl);
+                var _interopRequireWildcard = __webpack_require__(3)['default'];
 
-	var _helpers = __webpack_require__(45);
+                exports.__esModule = true;
+                exports.parseWithoutProcessing = parseWithoutProcessing;
+                exports.parse = parse;
 
-	var Helpers = _interopRequireWildcard(_helpers);
+                var _parser = __webpack_require__(42);
 
-	var _utils = __webpack_require__(5);
+                var _parser2 = _interopRequireDefault(_parser);
 
-	exports.parser = _parser2['default'];
+                var _whitespaceControl = __webpack_require__(43);
 
-	var yy = {};
-	_utils.extend(yy, Helpers);
+                var _whitespaceControl2 = _interopRequireDefault(_whitespaceControl);
 
-	function parseWithoutProcessing(input, options) {
-	  // Just return if an already-compiled AST was passed in.
-	  if (input.type === 'Program') {
-	    return input;
-	  }
+                var _helpers = __webpack_require__(45);
 
-	  _parser2['default'].yy = yy;
+                var Helpers = _interopRequireWildcard(_helpers);
 
-	  // Altering the shared object here, but this is ok as parser is a sync operation
-	  yy.locInfo = function (locInfo) {
-	    return new yy.SourceLocation(options && options.srcName, locInfo);
-	  };
+                var _utils = __webpack_require__(5);
 
-	  var ast = _parser2['default'].parse(input);
+                exports.parser = _parser2['default'];
 
-	  return ast;
-	}
+                var yy = {};
+                _utils.extend(yy, Helpers);
 
-	function parse(input, options) {
-	  var ast = parseWithoutProcessing(input, options);
-	  var strip = new _whitespaceControl2['default'](options);
+                function parseWithoutProcessing(input, options) {
+                    // Just return if an already-compiled AST was passed in.
+                    if (input.type === 'Program') {
+                        return input;
+                    }
 
-	  return strip.accept(ast);
-	}
+                    _parser2['default'].yy = yy;
 
-/***/ }),
-/* 42 */
-/***/ (function(module, exports) {
+                    // Altering the shared object here, but this is ok as parser is a sync operation
+                    yy.locInfo = function (locInfo) {
+                        return new yy.SourceLocation(options && options.srcName, locInfo);
+                    };
 
-	// File ignored in coverage tests via setting in .istanbul.yml
-	/* Jison generated parser */
-	"use strict";
+                    var ast = _parser2['default'].parse(input);
 
-	exports.__esModule = true;
-	var handlebars = (function () {
-	    var parser = { trace: function trace() {},
-	        yy: {},
-	        symbols_: { "error": 2, "root": 3, "program": 4, "EOF": 5, "program_repetition0": 6, "statement": 7, "mustache": 8, "block": 9, "rawBlock": 10, "partial": 11, "partialBlock": 12, "content": 13, "COMMENT": 14, "CONTENT": 15, "openRawBlock": 16, "rawBlock_repetition0": 17, "END_RAW_BLOCK": 18, "OPEN_RAW_BLOCK": 19, "helperName": 20, "openRawBlock_repetition0": 21, "openRawBlock_option0": 22, "CLOSE_RAW_BLOCK": 23, "openBlock": 24, "block_option0": 25, "closeBlock": 26, "openInverse": 27, "block_option1": 28, "OPEN_BLOCK": 29, "openBlock_repetition0": 30, "openBlock_option0": 31, "openBlock_option1": 32, "CLOSE": 33, "OPEN_INVERSE": 34, "openInverse_repetition0": 35, "openInverse_option0": 36, "openInverse_option1": 37, "openInverseChain": 38, "OPEN_INVERSE_CHAIN": 39, "openInverseChain_repetition0": 40, "openInverseChain_option0": 41, "openInverseChain_option1": 42, "inverseAndProgram": 43, "INVERSE": 44, "inverseChain": 45, "inverseChain_option0": 46, "OPEN_ENDBLOCK": 47, "OPEN": 48, "mustache_repetition0": 49, "mustache_option0": 50, "OPEN_UNESCAPED": 51, "mustache_repetition1": 52, "mustache_option1": 53, "CLOSE_UNESCAPED": 54, "OPEN_PARTIAL": 55, "partialName": 56, "partial_repetition0": 57, "partial_option0": 58, "openPartialBlock": 59, "OPEN_PARTIAL_BLOCK": 60, "openPartialBlock_repetition0": 61, "openPartialBlock_option0": 62, "param": 63, "sexpr": 64, "OPEN_SEXPR": 65, "sexpr_repetition0": 66, "sexpr_option0": 67, "CLOSE_SEXPR": 68, "hash": 69, "hash_repetition_plus0": 70, "hashSegment": 71, "ID": 72, "EQUALS": 73, "blockParams": 74, "OPEN_BLOCK_PARAMS": 75, "blockParams_repetition_plus0": 76, "CLOSE_BLOCK_PARAMS": 77, "path": 78, "dataName": 79, "STRING": 80, "NUMBER": 81, "BOOLEAN": 82, "UNDEFINED": 83, "NULL": 84, "DATA": 85, "pathSegments": 86, "SEP": 87, "$accept": 0, "$end": 1 },
-	        terminals_: { 2: "error", 5: "EOF", 14: "COMMENT", 15: "CONTENT", 18: "END_RAW_BLOCK", 19: "OPEN_RAW_BLOCK", 23: "CLOSE_RAW_BLOCK", 29: "OPEN_BLOCK", 33: "CLOSE", 34: "OPEN_INVERSE", 39: "OPEN_INVERSE_CHAIN", 44: "INVERSE", 47: "OPEN_ENDBLOCK", 48: "OPEN", 51: "OPEN_UNESCAPED", 54: "CLOSE_UNESCAPED", 55: "OPEN_PARTIAL", 60: "OPEN_PARTIAL_BLOCK", 65: "OPEN_SEXPR", 68: "CLOSE_SEXPR", 72: "ID", 73: "EQUALS", 75: "OPEN_BLOCK_PARAMS", 77: "CLOSE_BLOCK_PARAMS", 80: "STRING", 81: "NUMBER", 82: "BOOLEAN", 83: "UNDEFINED", 84: "NULL", 85: "DATA", 87: "SEP" },
-	        productions_: [0, [3, 2], [4, 1], [7, 1], [7, 1], [7, 1], [7, 1], [7, 1], [7, 1], [7, 1], [13, 1], [10, 3], [16, 5], [9, 4], [9, 4], [24, 6], [27, 6], [38, 6], [43, 2], [45, 3], [45, 1], [26, 3], [8, 5], [8, 5], [11, 5], [12, 3], [59, 5], [63, 1], [63, 1], [64, 5], [69, 1], [71, 3], [74, 3], [20, 1], [20, 1], [20, 1], [20, 1], [20, 1], [20, 1], [20, 1], [56, 1], [56, 1], [79, 2], [78, 1], [86, 3], [86, 1], [6, 0], [6, 2], [17, 0], [17, 2], [21, 0], [21, 2], [22, 0], [22, 1], [25, 0], [25, 1], [28, 0], [28, 1], [30, 0], [30, 2], [31, 0], [31, 1], [32, 0], [32, 1], [35, 0], [35, 2], [36, 0], [36, 1], [37, 0], [37, 1], [40, 0], [40, 2], [41, 0], [41, 1], [42, 0], [42, 1], [46, 0], [46, 1], [49, 0], [49, 2], [50, 0], [50, 1], [52, 0], [52, 2], [53, 0], [53, 1], [57, 0], [57, 2], [58, 0], [58, 1], [61, 0], [61, 2], [62, 0], [62, 1], [66, 0], [66, 2], [67, 0], [67, 1], [70, 1], [70, 2], [76, 1], [76, 2]],
-	        performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) {
+                    return ast;
+                }
 
-	            var $0 = $$.length - 1;
-	            switch (yystate) {
-	                case 1:
-	                    return $$[$0 - 1];
-	                    break;
-	                case 2:
-	                    this.$ = yy.prepareProgram($$[$0]);
-	                    break;
-	                case 3:
-	                    this.$ = $$[$0];
-	                    break;
-	                case 4:
-	                    this.$ = $$[$0];
-	                    break;
-	                case 5:
-	                    this.$ = $$[$0];
-	                    break;
-	                case 6:
-	                    this.$ = $$[$0];
-	                    break;
-	                case 7:
-	                    this.$ = $$[$0];
-	                    break;
-	                case 8:
-	                    this.$ = $$[$0];
-	                    break;
-	                case 9:
-	                    this.$ = {
-	                        type: 'CommentStatement',
-	                        value: yy.stripComment($$[$0]),
-	                        strip: yy.stripFlags($$[$0], $$[$0]),
-	                        loc: yy.locInfo(this._$)
-	                    };
+                function parse(input, options) {
+                    var ast = parseWithoutProcessing(input, options);
+                    var strip = new _whitespaceControl2['default'](options);
 
-	                    break;
-	                case 10:
-	                    this.$ = {
-	                        type: 'ContentStatement',
-	                        original: $$[$0],
-	                        value: $$[$0],
-	                        loc: yy.locInfo(this._$)
-	                    };
+                    return strip.accept(ast);
+                }
 
-	                    break;
-	                case 11:
-	                    this.$ = yy.prepareRawBlock($$[$0 - 2], $$[$0 - 1], $$[$0], this._$);
-	                    break;
-	                case 12:
-	                    this.$ = { path: $$[$0 - 3], params: $$[$0 - 2], hash: $$[$0 - 1] };
-	                    break;
-	                case 13:
-	                    this.$ = yy.prepareBlock($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], $$[$0], false, this._$);
-	                    break;
-	                case 14:
-	                    this.$ = yy.prepareBlock($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], $$[$0], true, this._$);
-	                    break;
-	                case 15:
-	                    this.$ = { open: $$[$0 - 5], path: $$[$0 - 4], params: $$[$0 - 3], hash: $$[$0 - 2], blockParams: $$[$0 - 1], strip: yy.stripFlags($$[$0 - 5], $$[$0]) };
-	                    break;
-	                case 16:
-	                    this.$ = { path: $$[$0 - 4], params: $$[$0 - 3], hash: $$[$0 - 2], blockParams: $$[$0 - 1], strip: yy.stripFlags($$[$0 - 5], $$[$0]) };
-	                    break;
-	                case 17:
-	                    this.$ = { path: $$[$0 - 4], params: $$[$0 - 3], hash: $$[$0 - 2], blockParams: $$[$0 - 1], strip: yy.stripFlags($$[$0 - 5], $$[$0]) };
-	                    break;
-	                case 18:
-	                    this.$ = { strip: yy.stripFlags($$[$0 - 1], $$[$0 - 1]), program: $$[$0] };
-	                    break;
-	                case 19:
-	                    var inverse = yy.prepareBlock($$[$0 - 2], $$[$0 - 1], $$[$0], $$[$0], false, this._$),
-	                        program = yy.prepareProgram([inverse], $$[$0 - 1].loc);
-	                    program.chained = true;
+                /***/
+            }),
+            /* 42 */
+            /***/ (function (module, exports) {
 
-	                    this.$ = { strip: $$[$0 - 2].strip, program: program, chain: true };
+                // File ignored in coverage tests via setting in .istanbul.yml
+                /* Jison generated parser */
+                "use strict";
 
-	                    break;
-	                case 20:
-	                    this.$ = $$[$0];
-	                    break;
-	                case 21:
-	                    this.$ = { path: $$[$0 - 1], strip: yy.stripFlags($$[$0 - 2], $$[$0]) };
-	                    break;
-	                case 22:
-	                    this.$ = yy.prepareMustache($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], $$[$0 - 4], yy.stripFlags($$[$0 - 4], $$[$0]), this._$);
-	                    break;
-	                case 23:
-	                    this.$ = yy.prepareMustache($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], $$[$0 - 4], yy.stripFlags($$[$0 - 4], $$[$0]), this._$);
-	                    break;
-	                case 24:
-	                    this.$ = {
-	                        type: 'PartialStatement',
-	                        name: $$[$0 - 3],
-	                        params: $$[$0 - 2],
-	                        hash: $$[$0 - 1],
-	                        indent: '',
-	                        strip: yy.stripFlags($$[$0 - 4], $$[$0]),
-	                        loc: yy.locInfo(this._$)
-	                    };
+                exports.__esModule = true;
+                var handlebars = (function () {
+                    var parser = {
+                        trace: function trace() {
+                        },
+                        yy: {},
+                        symbols_: {
+                            "error": 2,
+                            "root": 3,
+                            "program": 4,
+                            "EOF": 5,
+                            "program_repetition0": 6,
+                            "statement": 7,
+                            "mustache": 8,
+                            "block": 9,
+                            "rawBlock": 10,
+                            "partial": 11,
+                            "partialBlock": 12,
+                            "content": 13,
+                            "COMMENT": 14,
+                            "CONTENT": 15,
+                            "openRawBlock": 16,
+                            "rawBlock_repetition0": 17,
+                            "END_RAW_BLOCK": 18,
+                            "OPEN_RAW_BLOCK": 19,
+                            "helperName": 20,
+                            "openRawBlock_repetition0": 21,
+                            "openRawBlock_option0": 22,
+                            "CLOSE_RAW_BLOCK": 23,
+                            "openBlock": 24,
+                            "block_option0": 25,
+                            "closeBlock": 26,
+                            "openInverse": 27,
+                            "block_option1": 28,
+                            "OPEN_BLOCK": 29,
+                            "openBlock_repetition0": 30,
+                            "openBlock_option0": 31,
+                            "openBlock_option1": 32,
+                            "CLOSE": 33,
+                            "OPEN_INVERSE": 34,
+                            "openInverse_repetition0": 35,
+                            "openInverse_option0": 36,
+                            "openInverse_option1": 37,
+                            "openInverseChain": 38,
+                            "OPEN_INVERSE_CHAIN": 39,
+                            "openInverseChain_repetition0": 40,
+                            "openInverseChain_option0": 41,
+                            "openInverseChain_option1": 42,
+                            "inverseAndProgram": 43,
+                            "INVERSE": 44,
+                            "inverseChain": 45,
+                            "inverseChain_option0": 46,
+                            "OPEN_ENDBLOCK": 47,
+                            "OPEN": 48,
+                            "mustache_repetition0": 49,
+                            "mustache_option0": 50,
+                            "OPEN_UNESCAPED": 51,
+                            "mustache_repetition1": 52,
+                            "mustache_option1": 53,
+                            "CLOSE_UNESCAPED": 54,
+                            "OPEN_PARTIAL": 55,
+                            "partialName": 56,
+                            "partial_repetition0": 57,
+                            "partial_option0": 58,
+                            "openPartialBlock": 59,
+                            "OPEN_PARTIAL_BLOCK": 60,
+                            "openPartialBlock_repetition0": 61,
+                            "openPartialBlock_option0": 62,
+                            "param": 63,
+                            "sexpr": 64,
+                            "OPEN_SEXPR": 65,
+                            "sexpr_repetition0": 66,
+                            "sexpr_option0": 67,
+                            "CLOSE_SEXPR": 68,
+                            "hash": 69,
+                            "hash_repetition_plus0": 70,
+                            "hashSegment": 71,
+                            "ID": 72,
+                            "EQUALS": 73,
+                            "blockParams": 74,
+                            "OPEN_BLOCK_PARAMS": 75,
+                            "blockParams_repetition_plus0": 76,
+                            "CLOSE_BLOCK_PARAMS": 77,
+                            "path": 78,
+                            "dataName": 79,
+                            "STRING": 80,
+                            "NUMBER": 81,
+                            "BOOLEAN": 82,
+                            "UNDEFINED": 83,
+                            "NULL": 84,
+                            "DATA": 85,
+                            "pathSegments": 86,
+                            "SEP": 87,
+                            "$accept": 0,
+                            "$end": 1
+                        },
+                        terminals_: {
+                            2: "error",
+                            5: "EOF",
+                            14: "COMMENT",
+                            15: "CONTENT",
+                            18: "END_RAW_BLOCK",
+                            19: "OPEN_RAW_BLOCK",
+                            23: "CLOSE_RAW_BLOCK",
+                            29: "OPEN_BLOCK",
+                            33: "CLOSE",
+                            34: "OPEN_INVERSE",
+                            39: "OPEN_INVERSE_CHAIN",
+                            44: "INVERSE",
+                            47: "OPEN_ENDBLOCK",
+                            48: "OPEN",
+                            51: "OPEN_UNESCAPED",
+                            54: "CLOSE_UNESCAPED",
+                            55: "OPEN_PARTIAL",
+                            60: "OPEN_PARTIAL_BLOCK",
+                            65: "OPEN_SEXPR",
+                            68: "CLOSE_SEXPR",
+                            72: "ID",
+                            73: "EQUALS",
+                            75: "OPEN_BLOCK_PARAMS",
+                            77: "CLOSE_BLOCK_PARAMS",
+                            80: "STRING",
+                            81: "NUMBER",
+                            82: "BOOLEAN",
+                            83: "UNDEFINED",
+                            84: "NULL",
+                            85: "DATA",
+                            87: "SEP"
+                        },
+                        productions_: [0, [3, 2], [4, 1], [7, 1], [7, 1], [7, 1], [7, 1], [7, 1], [7, 1], [7, 1], [13, 1], [10, 3], [16, 5], [9, 4], [9, 4], [24, 6], [27, 6], [38, 6], [43, 2], [45, 3], [45, 1], [26, 3], [8, 5], [8, 5], [11, 5], [12, 3], [59, 5], [63, 1], [63, 1], [64, 5], [69, 1], [71, 3], [74, 3], [20, 1], [20, 1], [20, 1], [20, 1], [20, 1], [20, 1], [20, 1], [56, 1], [56, 1], [79, 2], [78, 1], [86, 3], [86, 1], [6, 0], [6, 2], [17, 0], [17, 2], [21, 0], [21, 2], [22, 0], [22, 1], [25, 0], [25, 1], [28, 0], [28, 1], [30, 0], [30, 2], [31, 0], [31, 1], [32, 0], [32, 1], [35, 0], [35, 2], [36, 0], [36, 1], [37, 0], [37, 1], [40, 0], [40, 2], [41, 0], [41, 1], [42, 0], [42, 1], [46, 0], [46, 1], [49, 0], [49, 2], [50, 0], [50, 1], [52, 0], [52, 2], [53, 0], [53, 1], [57, 0], [57, 2], [58, 0], [58, 1], [61, 0], [61, 2], [62, 0], [62, 1], [66, 0], [66, 2], [67, 0], [67, 1], [70, 1], [70, 2], [76, 1], [76, 2]],
+                        performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) {
 
-	                    break;
-	                case 25:
-	                    this.$ = yy.preparePartialBlock($$[$0 - 2], $$[$0 - 1], $$[$0], this._$);
-	                    break;
-	                case 26:
-	                    this.$ = { path: $$[$0 - 3], params: $$[$0 - 2], hash: $$[$0 - 1], strip: yy.stripFlags($$[$0 - 4], $$[$0]) };
-	                    break;
-	                case 27:
-	                    this.$ = $$[$0];
-	                    break;
-	                case 28:
-	                    this.$ = $$[$0];
-	                    break;
-	                case 29:
-	                    this.$ = {
-	                        type: 'SubExpression',
-	                        path: $$[$0 - 3],
-	                        params: $$[$0 - 2],
-	                        hash: $$[$0 - 1],
-	                        loc: yy.locInfo(this._$)
-	                    };
+                            var $0 = $$.length - 1;
+                            switch (yystate) {
+                                case 1:
+                                    return $$[$0 - 1];
+                                    break;
+                                case 2:
+                                    this.$ = yy.prepareProgram($$[$0]);
+                                    break;
+                                case 3:
+                                    this.$ = $$[$0];
+                                    break;
+                                case 4:
+                                    this.$ = $$[$0];
+                                    break;
+                                case 5:
+                                    this.$ = $$[$0];
+                                    break;
+                                case 6:
+                                    this.$ = $$[$0];
+                                    break;
+                                case 7:
+                                    this.$ = $$[$0];
+                                    break;
+                                case 8:
+                                    this.$ = $$[$0];
+                                    break;
+                                case 9:
+                                    this.$ = {
+                                        type: 'CommentStatement',
+                                        value: yy.stripComment($$[$0]),
+                                        strip: yy.stripFlags($$[$0], $$[$0]),
+                                        loc: yy.locInfo(this._$)
+                                    };
 
-	                    break;
-	                case 30:
-	                    this.$ = { type: 'Hash', pairs: $$[$0], loc: yy.locInfo(this._$) };
-	                    break;
-	                case 31:
-	                    this.$ = { type: 'HashPair', key: yy.id($$[$0 - 2]), value: $$[$0], loc: yy.locInfo(this._$) };
-	                    break;
-	                case 32:
-	                    this.$ = yy.id($$[$0 - 1]);
-	                    break;
-	                case 33:
-	                    this.$ = $$[$0];
-	                    break;
-	                case 34:
-	                    this.$ = $$[$0];
-	                    break;
-	                case 35:
-	                    this.$ = { type: 'StringLiteral', value: $$[$0], original: $$[$0], loc: yy.locInfo(this._$) };
-	                    break;
-	                case 36:
-	                    this.$ = { type: 'NumberLiteral', value: Number($$[$0]), original: Number($$[$0]), loc: yy.locInfo(this._$) };
-	                    break;
-	                case 37:
-	                    this.$ = { type: 'BooleanLiteral', value: $$[$0] === 'true', original: $$[$0] === 'true', loc: yy.locInfo(this._$) };
-	                    break;
-	                case 38:
-	                    this.$ = { type: 'UndefinedLiteral', original: undefined, value: undefined, loc: yy.locInfo(this._$) };
-	                    break;
-	                case 39:
-	                    this.$ = { type: 'NullLiteral', original: null, value: null, loc: yy.locInfo(this._$) };
-	                    break;
-	                case 40:
-	                    this.$ = $$[$0];
-	                    break;
-	                case 41:
-	                    this.$ = $$[$0];
-	                    break;
-	                case 42:
-	                    this.$ = yy.preparePath(true, $$[$0], this._$);
-	                    break;
-	                case 43:
-	                    this.$ = yy.preparePath(false, $$[$0], this._$);
-	                    break;
-	                case 44:
-	                    $$[$0 - 2].push({ part: yy.id($$[$0]), original: $$[$0], separator: $$[$0 - 1] });this.$ = $$[$0 - 2];
-	                    break;
-	                case 45:
-	                    this.$ = [{ part: yy.id($$[$0]), original: $$[$0] }];
-	                    break;
-	                case 46:
-	                    this.$ = [];
-	                    break;
-	                case 47:
-	                    $$[$0 - 1].push($$[$0]);
-	                    break;
-	                case 48:
-	                    this.$ = [];
-	                    break;
-	                case 49:
-	                    $$[$0 - 1].push($$[$0]);
-	                    break;
-	                case 50:
-	                    this.$ = [];
-	                    break;
-	                case 51:
-	                    $$[$0 - 1].push($$[$0]);
-	                    break;
-	                case 58:
-	                    this.$ = [];
-	                    break;
-	                case 59:
-	                    $$[$0 - 1].push($$[$0]);
-	                    break;
-	                case 64:
-	                    this.$ = [];
-	                    break;
-	                case 65:
-	                    $$[$0 - 1].push($$[$0]);
-	                    break;
-	                case 70:
-	                    this.$ = [];
-	                    break;
-	                case 71:
-	                    $$[$0 - 1].push($$[$0]);
-	                    break;
-	                case 78:
-	                    this.$ = [];
-	                    break;
-	                case 79:
-	                    $$[$0 - 1].push($$[$0]);
-	                    break;
-	                case 82:
-	                    this.$ = [];
-	                    break;
-	                case 83:
-	                    $$[$0 - 1].push($$[$0]);
-	                    break;
-	                case 86:
-	                    this.$ = [];
-	                    break;
-	                case 87:
-	                    $$[$0 - 1].push($$[$0]);
-	                    break;
-	                case 90:
-	                    this.$ = [];
-	                    break;
-	                case 91:
-	                    $$[$0 - 1].push($$[$0]);
-	                    break;
-	                case 94:
-	                    this.$ = [];
-	                    break;
-	                case 95:
-	                    $$[$0 - 1].push($$[$0]);
-	                    break;
-	                case 98:
-	                    this.$ = [$$[$0]];
-	                    break;
-	                case 99:
-	                    $$[$0 - 1].push($$[$0]);
-	                    break;
-	                case 100:
-	                    this.$ = [$$[$0]];
-	                    break;
-	                case 101:
-	                    $$[$0 - 1].push($$[$0]);
-	                    break;
-	            }
-	        },
-	        table: [{ 3: 1, 4: 2, 5: [2, 46], 6: 3, 14: [2, 46], 15: [2, 46], 19: [2, 46], 29: [2, 46], 34: [2, 46], 48: [2, 46], 51: [2, 46], 55: [2, 46], 60: [2, 46] }, { 1: [3] }, { 5: [1, 4] }, { 5: [2, 2], 7: 5, 8: 6, 9: 7, 10: 8, 11: 9, 12: 10, 13: 11, 14: [1, 12], 15: [1, 20], 16: 17, 19: [1, 23], 24: 15, 27: 16, 29: [1, 21], 34: [1, 22], 39: [2, 2], 44: [2, 2], 47: [2, 2], 48: [1, 13], 51: [1, 14], 55: [1, 18], 59: 19, 60: [1, 24] }, { 1: [2, 1] }, { 5: [2, 47], 14: [2, 47], 15: [2, 47], 19: [2, 47], 29: [2, 47], 34: [2, 47], 39: [2, 47], 44: [2, 47], 47: [2, 47], 48: [2, 47], 51: [2, 47], 55: [2, 47], 60: [2, 47] }, { 5: [2, 3], 14: [2, 3], 15: [2, 3], 19: [2, 3], 29: [2, 3], 34: [2, 3], 39: [2, 3], 44: [2, 3], 47: [2, 3], 48: [2, 3], 51: [2, 3], 55: [2, 3], 60: [2, 3] }, { 5: [2, 4], 14: [2, 4], 15: [2, 4], 19: [2, 4], 29: [2, 4], 34: [2, 4], 39: [2, 4], 44: [2, 4], 47: [2, 4], 48: [2, 4], 51: [2, 4], 55: [2, 4], 60: [2, 4] }, { 5: [2, 5], 14: [2, 5], 15: [2, 5], 19: [2, 5], 29: [2, 5], 34: [2, 5], 39: [2, 5], 44: [2, 5], 47: [2, 5], 48: [2, 5], 51: [2, 5], 55: [2, 5], 60: [2, 5] }, { 5: [2, 6], 14: [2, 6], 15: [2, 6], 19: [2, 6], 29: [2, 6], 34: [2, 6], 39: [2, 6], 44: [2, 6], 47: [2, 6], 48: [2, 6], 51: [2, 6], 55: [2, 6], 60: [2, 6] }, { 5: [2, 7], 14: [2, 7], 15: [2, 7], 19: [2, 7], 29: [2, 7], 34: [2, 7], 39: [2, 7], 44: [2, 7], 47: [2, 7], 48: [2, 7], 51: [2, 7], 55: [2, 7], 60: [2, 7] }, { 5: [2, 8], 14: [2, 8], 15: [2, 8], 19: [2, 8], 29: [2, 8], 34: [2, 8], 39: [2, 8], 44: [2, 8], 47: [2, 8], 48: [2, 8], 51: [2, 8], 55: [2, 8], 60: [2, 8] }, { 5: [2, 9], 14: [2, 9], 15: [2, 9], 19: [2, 9], 29: [2, 9], 34: [2, 9], 39: [2, 9], 44: [2, 9], 47: [2, 9], 48: [2, 9], 51: [2, 9], 55: [2, 9], 60: [2, 9] }, { 20: 25, 72: [1, 35], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 20: 36, 72: [1, 35], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 4: 37, 6: 3, 14: [2, 46], 15: [2, 46], 19: [2, 46], 29: [2, 46], 34: [2, 46], 39: [2, 46], 44: [2, 46], 47: [2, 46], 48: [2, 46], 51: [2, 46], 55: [2, 46], 60: [2, 46] }, { 4: 38, 6: 3, 14: [2, 46], 15: [2, 46], 19: [2, 46], 29: [2, 46], 34: [2, 46], 44: [2, 46], 47: [2, 46], 48: [2, 46], 51: [2, 46], 55: [2, 46], 60: [2, 46] }, { 15: [2, 48], 17: 39, 18: [2, 48] }, { 20: 41, 56: 40, 64: 42, 65: [1, 43], 72: [1, 35], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 4: 44, 6: 3, 14: [2, 46], 15: [2, 46], 19: [2, 46], 29: [2, 46], 34: [2, 46], 47: [2, 46], 48: [2, 46], 51: [2, 46], 55: [2, 46], 60: [2, 46] }, { 5: [2, 10], 14: [2, 10], 15: [2, 10], 18: [2, 10], 19: [2, 10], 29: [2, 10], 34: [2, 10], 39: [2, 10], 44: [2, 10], 47: [2, 10], 48: [2, 10], 51: [2, 10], 55: [2, 10], 60: [2, 10] }, { 20: 45, 72: [1, 35], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 20: 46, 72: [1, 35], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 20: 47, 72: [1, 35], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 20: 41, 56: 48, 64: 42, 65: [1, 43], 72: [1, 35], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 33: [2, 78], 49: 49, 65: [2, 78], 72: [2, 78], 80: [2, 78], 81: [2, 78], 82: [2, 78], 83: [2, 78], 84: [2, 78], 85: [2, 78] }, { 23: [2, 33], 33: [2, 33], 54: [2, 33], 65: [2, 33], 68: [2, 33], 72: [2, 33], 75: [2, 33], 80: [2, 33], 81: [2, 33], 82: [2, 33], 83: [2, 33], 84: [2, 33], 85: [2, 33] }, { 23: [2, 34], 33: [2, 34], 54: [2, 34], 65: [2, 34], 68: [2, 34], 72: [2, 34], 75: [2, 34], 80: [2, 34], 81: [2, 34], 82: [2, 34], 83: [2, 34], 84: [2, 34], 85: [2, 34] }, { 23: [2, 35], 33: [2, 35], 54: [2, 35], 65: [2, 35], 68: [2, 35], 72: [2, 35], 75: [2, 35], 80: [2, 35], 81: [2, 35], 82: [2, 35], 83: [2, 35], 84: [2, 35], 85: [2, 35] }, { 23: [2, 36], 33: [2, 36], 54: [2, 36], 65: [2, 36], 68: [2, 36], 72: [2, 36], 75: [2, 36], 80: [2, 36], 81: [2, 36], 82: [2, 36], 83: [2, 36], 84: [2, 36], 85: [2, 36] }, { 23: [2, 37], 33: [2, 37], 54: [2, 37], 65: [2, 37], 68: [2, 37], 72: [2, 37], 75: [2, 37], 80: [2, 37], 81: [2, 37], 82: [2, 37], 83: [2, 37], 84: [2, 37], 85: [2, 37] }, { 23: [2, 38], 33: [2, 38], 54: [2, 38], 65: [2, 38], 68: [2, 38], 72: [2, 38], 75: [2, 38], 80: [2, 38], 81: [2, 38], 82: [2, 38], 83: [2, 38], 84: [2, 38], 85: [2, 38] }, { 23: [2, 39], 33: [2, 39], 54: [2, 39], 65: [2, 39], 68: [2, 39], 72: [2, 39], 75: [2, 39], 80: [2, 39], 81: [2, 39], 82: [2, 39], 83: [2, 39], 84: [2, 39], 85: [2, 39] }, { 23: [2, 43], 33: [2, 43], 54: [2, 43], 65: [2, 43], 68: [2, 43], 72: [2, 43], 75: [2, 43], 80: [2, 43], 81: [2, 43], 82: [2, 43], 83: [2, 43], 84: [2, 43], 85: [2, 43], 87: [1, 50] }, { 72: [1, 35], 86: 51 }, { 23: [2, 45], 33: [2, 45], 54: [2, 45], 65: [2, 45], 68: [2, 45], 72: [2, 45], 75: [2, 45], 80: [2, 45], 81: [2, 45], 82: [2, 45], 83: [2, 45], 84: [2, 45], 85: [2, 45], 87: [2, 45] }, { 52: 52, 54: [2, 82], 65: [2, 82], 72: [2, 82], 80: [2, 82], 81: [2, 82], 82: [2, 82], 83: [2, 82], 84: [2, 82], 85: [2, 82] }, { 25: 53, 38: 55, 39: [1, 57], 43: 56, 44: [1, 58], 45: 54, 47: [2, 54] }, { 28: 59, 43: 60, 44: [1, 58], 47: [2, 56] }, { 13: 62, 15: [1, 20], 18: [1, 61] }, { 33: [2, 86], 57: 63, 65: [2, 86], 72: [2, 86], 80: [2, 86], 81: [2, 86], 82: [2, 86], 83: [2, 86], 84: [2, 86], 85: [2, 86] }, { 33: [2, 40], 65: [2, 40], 72: [2, 40], 80: [2, 40], 81: [2, 40], 82: [2, 40], 83: [2, 40], 84: [2, 40], 85: [2, 40] }, { 33: [2, 41], 65: [2, 41], 72: [2, 41], 80: [2, 41], 81: [2, 41], 82: [2, 41], 83: [2, 41], 84: [2, 41], 85: [2, 41] }, { 20: 64, 72: [1, 35], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 26: 65, 47: [1, 66] }, { 30: 67, 33: [2, 58], 65: [2, 58], 72: [2, 58], 75: [2, 58], 80: [2, 58], 81: [2, 58], 82: [2, 58], 83: [2, 58], 84: [2, 58], 85: [2, 58] }, { 33: [2, 64], 35: 68, 65: [2, 64], 72: [2, 64], 75: [2, 64], 80: [2, 64], 81: [2, 64], 82: [2, 64], 83: [2, 64], 84: [2, 64], 85: [2, 64] }, { 21: 69, 23: [2, 50], 65: [2, 50], 72: [2, 50], 80: [2, 50], 81: [2, 50], 82: [2, 50], 83: [2, 50], 84: [2, 50], 85: [2, 50] }, { 33: [2, 90], 61: 70, 65: [2, 90], 72: [2, 90], 80: [2, 90], 81: [2, 90], 82: [2, 90], 83: [2, 90], 84: [2, 90], 85: [2, 90] }, { 20: 74, 33: [2, 80], 50: 71, 63: 72, 64: 75, 65: [1, 43], 69: 73, 70: 76, 71: 77, 72: [1, 78], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 72: [1, 79] }, { 23: [2, 42], 33: [2, 42], 54: [2, 42], 65: [2, 42], 68: [2, 42], 72: [2, 42], 75: [2, 42], 80: [2, 42], 81: [2, 42], 82: [2, 42], 83: [2, 42], 84: [2, 42], 85: [2, 42], 87: [1, 50] }, { 20: 74, 53: 80, 54: [2, 84], 63: 81, 64: 75, 65: [1, 43], 69: 82, 70: 76, 71: 77, 72: [1, 78], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 26: 83, 47: [1, 66] }, { 47: [2, 55] }, { 4: 84, 6: 3, 14: [2, 46], 15: [2, 46], 19: [2, 46], 29: [2, 46], 34: [2, 46], 39: [2, 46], 44: [2, 46], 47: [2, 46], 48: [2, 46], 51: [2, 46], 55: [2, 46], 60: [2, 46] }, { 47: [2, 20] }, { 20: 85, 72: [1, 35], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 4: 86, 6: 3, 14: [2, 46], 15: [2, 46], 19: [2, 46], 29: [2, 46], 34: [2, 46], 47: [2, 46], 48: [2, 46], 51: [2, 46], 55: [2, 46], 60: [2, 46] }, { 26: 87, 47: [1, 66] }, { 47: [2, 57] }, { 5: [2, 11], 14: [2, 11], 15: [2, 11], 19: [2, 11], 29: [2, 11], 34: [2, 11], 39: [2, 11], 44: [2, 11], 47: [2, 11], 48: [2, 11], 51: [2, 11], 55: [2, 11], 60: [2, 11] }, { 15: [2, 49], 18: [2, 49] }, { 20: 74, 33: [2, 88], 58: 88, 63: 89, 64: 75, 65: [1, 43], 69: 90, 70: 76, 71: 77, 72: [1, 78], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 65: [2, 94], 66: 91, 68: [2, 94], 72: [2, 94], 80: [2, 94], 81: [2, 94], 82: [2, 94], 83: [2, 94], 84: [2, 94], 85: [2, 94] }, { 5: [2, 25], 14: [2, 25], 15: [2, 25], 19: [2, 25], 29: [2, 25], 34: [2, 25], 39: [2, 25], 44: [2, 25], 47: [2, 25], 48: [2, 25], 51: [2, 25], 55: [2, 25], 60: [2, 25] }, { 20: 92, 72: [1, 35], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 20: 74, 31: 93, 33: [2, 60], 63: 94, 64: 75, 65: [1, 43], 69: 95, 70: 76, 71: 77, 72: [1, 78], 75: [2, 60], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 20: 74, 33: [2, 66], 36: 96, 63: 97, 64: 75, 65: [1, 43], 69: 98, 70: 76, 71: 77, 72: [1, 78], 75: [2, 66], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 20: 74, 22: 99, 23: [2, 52], 63: 100, 64: 75, 65: [1, 43], 69: 101, 70: 76, 71: 77, 72: [1, 78], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 20: 74, 33: [2, 92], 62: 102, 63: 103, 64: 75, 65: [1, 43], 69: 104, 70: 76, 71: 77, 72: [1, 78], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 33: [1, 105] }, { 33: [2, 79], 65: [2, 79], 72: [2, 79], 80: [2, 79], 81: [2, 79], 82: [2, 79], 83: [2, 79], 84: [2, 79], 85: [2, 79] }, { 33: [2, 81] }, { 23: [2, 27], 33: [2, 27], 54: [2, 27], 65: [2, 27], 68: [2, 27], 72: [2, 27], 75: [2, 27], 80: [2, 27], 81: [2, 27], 82: [2, 27], 83: [2, 27], 84: [2, 27], 85: [2, 27] }, { 23: [2, 28], 33: [2, 28], 54: [2, 28], 65: [2, 28], 68: [2, 28], 72: [2, 28], 75: [2, 28], 80: [2, 28], 81: [2, 28], 82: [2, 28], 83: [2, 28], 84: [2, 28], 85: [2, 28] }, { 23: [2, 30], 33: [2, 30], 54: [2, 30], 68: [2, 30], 71: 106, 72: [1, 107], 75: [2, 30] }, { 23: [2, 98], 33: [2, 98], 54: [2, 98], 68: [2, 98], 72: [2, 98], 75: [2, 98] }, { 23: [2, 45], 33: [2, 45], 54: [2, 45], 65: [2, 45], 68: [2, 45], 72: [2, 45], 73: [1, 108], 75: [2, 45], 80: [2, 45], 81: [2, 45], 82: [2, 45], 83: [2, 45], 84: [2, 45], 85: [2, 45], 87: [2, 45] }, { 23: [2, 44], 33: [2, 44], 54: [2, 44], 65: [2, 44], 68: [2, 44], 72: [2, 44], 75: [2, 44], 80: [2, 44], 81: [2, 44], 82: [2, 44], 83: [2, 44], 84: [2, 44], 85: [2, 44], 87: [2, 44] }, { 54: [1, 109] }, { 54: [2, 83], 65: [2, 83], 72: [2, 83], 80: [2, 83], 81: [2, 83], 82: [2, 83], 83: [2, 83], 84: [2, 83], 85: [2, 83] }, { 54: [2, 85] }, { 5: [2, 13], 14: [2, 13], 15: [2, 13], 19: [2, 13], 29: [2, 13], 34: [2, 13], 39: [2, 13], 44: [2, 13], 47: [2, 13], 48: [2, 13], 51: [2, 13], 55: [2, 13], 60: [2, 13] }, { 38: 55, 39: [1, 57], 43: 56, 44: [1, 58], 45: 111, 46: 110, 47: [2, 76] }, { 33: [2, 70], 40: 112, 65: [2, 70], 72: [2, 70], 75: [2, 70], 80: [2, 70], 81: [2, 70], 82: [2, 70], 83: [2, 70], 84: [2, 70], 85: [2, 70] }, { 47: [2, 18] }, { 5: [2, 14], 14: [2, 14], 15: [2, 14], 19: [2, 14], 29: [2, 14], 34: [2, 14], 39: [2, 14], 44: [2, 14], 47: [2, 14], 48: [2, 14], 51: [2, 14], 55: [2, 14], 60: [2, 14] }, { 33: [1, 113] }, { 33: [2, 87], 65: [2, 87], 72: [2, 87], 80: [2, 87], 81: [2, 87], 82: [2, 87], 83: [2, 87], 84: [2, 87], 85: [2, 87] }, { 33: [2, 89] }, { 20: 74, 63: 115, 64: 75, 65: [1, 43], 67: 114, 68: [2, 96], 69: 116, 70: 76, 71: 77, 72: [1, 78], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 33: [1, 117] }, { 32: 118, 33: [2, 62], 74: 119, 75: [1, 120] }, { 33: [2, 59], 65: [2, 59], 72: [2, 59], 75: [2, 59], 80: [2, 59], 81: [2, 59], 82: [2, 59], 83: [2, 59], 84: [2, 59], 85: [2, 59] }, { 33: [2, 61], 75: [2, 61] }, { 33: [2, 68], 37: 121, 74: 122, 75: [1, 120] }, { 33: [2, 65], 65: [2, 65], 72: [2, 65], 75: [2, 65], 80: [2, 65], 81: [2, 65], 82: [2, 65], 83: [2, 65], 84: [2, 65], 85: [2, 65] }, { 33: [2, 67], 75: [2, 67] }, { 23: [1, 123] }, { 23: [2, 51], 65: [2, 51], 72: [2, 51], 80: [2, 51], 81: [2, 51], 82: [2, 51], 83: [2, 51], 84: [2, 51], 85: [2, 51] }, { 23: [2, 53] }, { 33: [1, 124] }, { 33: [2, 91], 65: [2, 91], 72: [2, 91], 80: [2, 91], 81: [2, 91], 82: [2, 91], 83: [2, 91], 84: [2, 91], 85: [2, 91] }, { 33: [2, 93] }, { 5: [2, 22], 14: [2, 22], 15: [2, 22], 19: [2, 22], 29: [2, 22], 34: [2, 22], 39: [2, 22], 44: [2, 22], 47: [2, 22], 48: [2, 22], 51: [2, 22], 55: [2, 22], 60: [2, 22] }, { 23: [2, 99], 33: [2, 99], 54: [2, 99], 68: [2, 99], 72: [2, 99], 75: [2, 99] }, { 73: [1, 108] }, { 20: 74, 63: 125, 64: 75, 65: [1, 43], 72: [1, 35], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 5: [2, 23], 14: [2, 23], 15: [2, 23], 19: [2, 23], 29: [2, 23], 34: [2, 23], 39: [2, 23], 44: [2, 23], 47: [2, 23], 48: [2, 23], 51: [2, 23], 55: [2, 23], 60: [2, 23] }, { 47: [2, 19] }, { 47: [2, 77] }, { 20: 74, 33: [2, 72], 41: 126, 63: 127, 64: 75, 65: [1, 43], 69: 128, 70: 76, 71: 77, 72: [1, 78], 75: [2, 72], 78: 26, 79: 27, 80: [1, 28], 81: [1, 29], 82: [1, 30], 83: [1, 31], 84: [1, 32], 85: [1, 34], 86: 33 }, { 5: [2, 24], 14: [2, 24], 15: [2, 24], 19: [2, 24], 29: [2, 24], 34: [2, 24], 39: [2, 24], 44: [2, 24], 47: [2, 24], 48: [2, 24], 51: [2, 24], 55: [2, 24], 60: [2, 24] }, { 68: [1, 129] }, { 65: [2, 95], 68: [2, 95], 72: [2, 95], 80: [2, 95], 81: [2, 95], 82: [2, 95], 83: [2, 95], 84: [2, 95], 85: [2, 95] }, { 68: [2, 97] }, { 5: [2, 21], 14: [2, 21], 15: [2, 21], 19: [2, 21], 29: [2, 21], 34: [2, 21], 39: [2, 21], 44: [2, 21], 47: [2, 21], 48: [2, 21], 51: [2, 21], 55: [2, 21], 60: [2, 21] }, { 33: [1, 130] }, { 33: [2, 63] }, { 72: [1, 132], 76: 131 }, { 33: [1, 133] }, { 33: [2, 69] }, { 15: [2, 12], 18: [2, 12] }, { 14: [2, 26], 15: [2, 26], 19: [2, 26], 29: [2, 26], 34: [2, 26], 47: [2, 26], 48: [2, 26], 51: [2, 26], 55: [2, 26], 60: [2, 26] }, { 23: [2, 31], 33: [2, 31], 54: [2, 31], 68: [2, 31], 72: [2, 31], 75: [2, 31] }, { 33: [2, 74], 42: 134, 74: 135, 75: [1, 120] }, { 33: [2, 71], 65: [2, 71], 72: [2, 71], 75: [2, 71], 80: [2, 71], 81: [2, 71], 82: [2, 71], 83: [2, 71], 84: [2, 71], 85: [2, 71] }, { 33: [2, 73], 75: [2, 73] }, { 23: [2, 29], 33: [2, 29], 54: [2, 29], 65: [2, 29], 68: [2, 29], 72: [2, 29], 75: [2, 29], 80: [2, 29], 81: [2, 29], 82: [2, 29], 83: [2, 29], 84: [2, 29], 85: [2, 29] }, { 14: [2, 15], 15: [2, 15], 19: [2, 15], 29: [2, 15], 34: [2, 15], 39: [2, 15], 44: [2, 15], 47: [2, 15], 48: [2, 15], 51: [2, 15], 55: [2, 15], 60: [2, 15] }, { 72: [1, 137], 77: [1, 136] }, { 72: [2, 100], 77: [2, 100] }, { 14: [2, 16], 15: [2, 16], 19: [2, 16], 29: [2, 16], 34: [2, 16], 44: [2, 16], 47: [2, 16], 48: [2, 16], 51: [2, 16], 55: [2, 16], 60: [2, 16] }, { 33: [1, 138] }, { 33: [2, 75] }, { 33: [2, 32] }, { 72: [2, 101], 77: [2, 101] }, { 14: [2, 17], 15: [2, 17], 19: [2, 17], 29: [2, 17], 34: [2, 17], 39: [2, 17], 44: [2, 17], 47: [2, 17], 48: [2, 17], 51: [2, 17], 55: [2, 17], 60: [2, 17] }],
-	        defaultActions: { 4: [2, 1], 54: [2, 55], 56: [2, 20], 60: [2, 57], 73: [2, 81], 82: [2, 85], 86: [2, 18], 90: [2, 89], 101: [2, 53], 104: [2, 93], 110: [2, 19], 111: [2, 77], 116: [2, 97], 119: [2, 63], 122: [2, 69], 135: [2, 75], 136: [2, 32] },
-	        parseError: function parseError(str, hash) {
-	            throw new Error(str);
-	        },
-	        parse: function parse(input) {
-	            var self = this,
-	                stack = [0],
-	                vstack = [null],
-	                lstack = [],
-	                table = this.table,
-	                yytext = "",
-	                yylineno = 0,
-	                yyleng = 0,
-	                recovering = 0,
-	                TERROR = 2,
-	                EOF = 1;
-	            this.lexer.setInput(input);
-	            this.lexer.yy = this.yy;
-	            this.yy.lexer = this.lexer;
-	            this.yy.parser = this;
-	            if (typeof this.lexer.yylloc == "undefined") this.lexer.yylloc = {};
-	            var yyloc = this.lexer.yylloc;
-	            lstack.push(yyloc);
-	            var ranges = this.lexer.options && this.lexer.options.ranges;
-	            if (typeof this.yy.parseError === "function") this.parseError = this.yy.parseError;
-	            function popStack(n) {
-	                stack.length = stack.length - 2 * n;
-	                vstack.length = vstack.length - n;
-	                lstack.length = lstack.length - n;
-	            }
-	            function lex() {
-	                var token;
-	                token = self.lexer.lex() || 1;
-	                if (typeof token !== "number") {
-	                    token = self.symbols_[token] || token;
-	                }
-	                return token;
-	            }
-	            var symbol,
-	                preErrorSymbol,
-	                state,
-	                action,
-	                a,
-	                r,
-	                yyval = {},
-	                p,
-	                len,
-	                newState,
-	                expected;
-	            while (true) {
-	                state = stack[stack.length - 1];
-	                if (this.defaultActions[state]) {
-	                    action = this.defaultActions[state];
-	                } else {
-	                    if (symbol === null || typeof symbol == "undefined") {
-	                        symbol = lex();
-	                    }
-	                    action = table[state] && table[state][symbol];
-	                }
-	                if (typeof action === "undefined" || !action.length || !action[0]) {
-	                    var errStr = "";
-	                    if (!recovering) {
-	                        expected = [];
-	                        for (p in table[state]) if (this.terminals_[p] && p > 2) {
-	                            expected.push("'" + this.terminals_[p] + "'");
-	                        }
-	                        if (this.lexer.showPosition) {
-	                            errStr = "Parse error on line " + (yylineno + 1) + ":\n" + this.lexer.showPosition() + "\nExpecting " + expected.join(", ") + ", got '" + (this.terminals_[symbol] || symbol) + "'";
-	                        } else {
-	                            errStr = "Parse error on line " + (yylineno + 1) + ": Unexpected " + (symbol == 1 ? "end of input" : "'" + (this.terminals_[symbol] || symbol) + "'");
-	                        }
-	                        this.parseError(errStr, { text: this.lexer.match, token: this.terminals_[symbol] || symbol, line: this.lexer.yylineno, loc: yyloc, expected: expected });
-	                    }
-	                }
-	                if (action[0] instanceof Array && action.length > 1) {
-	                    throw new Error("Parse Error: multiple actions possible at state: " + state + ", token: " + symbol);
-	                }
-	                switch (action[0]) {
-	                    case 1:
-	                        stack.push(symbol);
-	                        vstack.push(this.lexer.yytext);
-	                        lstack.push(this.lexer.yylloc);
-	                        stack.push(action[1]);
-	                        symbol = null;
-	                        if (!preErrorSymbol) {
-	                            yyleng = this.lexer.yyleng;
-	                            yytext = this.lexer.yytext;
-	                            yylineno = this.lexer.yylineno;
-	                            yyloc = this.lexer.yylloc;
-	                            if (recovering > 0) recovering--;
-	                        } else {
-	                            symbol = preErrorSymbol;
-	                            preErrorSymbol = null;
-	                        }
-	                        break;
-	                    case 2:
-	                        len = this.productions_[action[1]][1];
-	                        yyval.$ = vstack[vstack.length - len];
-	                        yyval._$ = { first_line: lstack[lstack.length - (len || 1)].first_line, last_line: lstack[lstack.length - 1].last_line, first_column: lstack[lstack.length - (len || 1)].first_column, last_column: lstack[lstack.length - 1].last_column };
-	                        if (ranges) {
-	                            yyval._$.range = [lstack[lstack.length - (len || 1)].range[0], lstack[lstack.length - 1].range[1]];
-	                        }
-	                        r = this.performAction.call(yyval, yytext, yyleng, yylineno, this.yy, action[1], vstack, lstack);
-	                        if (typeof r !== "undefined") {
-	                            return r;
-	                        }
-	                        if (len) {
-	                            stack = stack.slice(0, -1 * len * 2);
-	                            vstack = vstack.slice(0, -1 * len);
-	                            lstack = lstack.slice(0, -1 * len);
-	                        }
-	                        stack.push(this.productions_[action[1]][0]);
-	                        vstack.push(yyval.$);
-	                        lstack.push(yyval._$);
-	                        newState = table[stack[stack.length - 2]][stack[stack.length - 1]];
-	                        stack.push(newState);
-	                        break;
-	                    case 3:
-	                        return true;
-	                }
-	            }
-	            return true;
-	        }
-	    };
-	    /* Jison generated lexer */
-	    var lexer = (function () {
-	        var lexer = { EOF: 1,
-	            parseError: function parseError(str, hash) {
-	                if (this.yy.parser) {
-	                    this.yy.parser.parseError(str, hash);
-	                } else {
-	                    throw new Error(str);
-	                }
-	            },
-	            setInput: function setInput(input) {
-	                this._input = input;
-	                this._more = this._less = this.done = false;
-	                this.yylineno = this.yyleng = 0;
-	                this.yytext = this.matched = this.match = '';
-	                this.conditionStack = ['INITIAL'];
-	                this.yylloc = { first_line: 1, first_column: 0, last_line: 1, last_column: 0 };
-	                if (this.options.ranges) this.yylloc.range = [0, 0];
-	                this.offset = 0;
-	                return this;
-	            },
-	            input: function input() {
-	                var ch = this._input[0];
-	                this.yytext += ch;
-	                this.yyleng++;
-	                this.offset++;
-	                this.match += ch;
-	                this.matched += ch;
-	                var lines = ch.match(/(?:\r\n?|\n).*/g);
-	                if (lines) {
-	                    this.yylineno++;
-	                    this.yylloc.last_line++;
-	                } else {
-	                    this.yylloc.last_column++;
-	                }
-	                if (this.options.ranges) this.yylloc.range[1]++;
+                                    break;
+                                case 10:
+                                    this.$ = {
+                                        type: 'ContentStatement',
+                                        original: $$[$0],
+                                        value: $$[$0],
+                                        loc: yy.locInfo(this._$)
+                                    };
+
+                                    break;
+                                case 11:
+                                    this.$ = yy.prepareRawBlock($$[$0 - 2], $$[$0 - 1], $$[$0], this._$);
+                                    break;
+                                case 12:
+                                    this.$ = {path: $$[$0 - 3], params: $$[$0 - 2], hash: $$[$0 - 1]};
+                                    break;
+                                case 13:
+                                    this.$ = yy.prepareBlock($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], $$[$0], false, this._$);
+                                    break;
+                                case 14:
+                                    this.$ = yy.prepareBlock($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], $$[$0], true, this._$);
+                                    break;
+                                case 15:
+                                    this.$ = {
+                                        open: $$[$0 - 5],
+                                        path: $$[$0 - 4],
+                                        params: $$[$0 - 3],
+                                        hash: $$[$0 - 2],
+                                        blockParams: $$[$0 - 1],
+                                        strip: yy.stripFlags($$[$0 - 5], $$[$0])
+                                    };
+                                    break;
+                                case 16:
+                                    this.$ = {
+                                        path: $$[$0 - 4],
+                                        params: $$[$0 - 3],
+                                        hash: $$[$0 - 2],
+                                        blockParams: $$[$0 - 1],
+                                        strip: yy.stripFlags($$[$0 - 5], $$[$0])
+                                    };
+                                    break;
+                                case 17:
+                                    this.$ = {
+                                        path: $$[$0 - 4],
+                                        params: $$[$0 - 3],
+                                        hash: $$[$0 - 2],
+                                        blockParams: $$[$0 - 1],
+                                        strip: yy.stripFlags($$[$0 - 5], $$[$0])
+                                    };
+                                    break;
+                                case 18:
+                                    this.$ = {strip: yy.stripFlags($$[$0 - 1], $$[$0 - 1]), program: $$[$0]};
+                                    break;
+                                case 19:
+                                    var inverse = yy.prepareBlock($$[$0 - 2], $$[$0 - 1], $$[$0], $$[$0], false, this._$),
+                                        program = yy.prepareProgram([inverse], $$[$0 - 1].loc);
+                                    program.chained = true;
+
+                                    this.$ = {strip: $$[$0 - 2].strip, program: program, chain: true};
+
+                                    break;
+                                case 20:
+                                    this.$ = $$[$0];
+                                    break;
+                                case 21:
+                                    this.$ = {path: $$[$0 - 1], strip: yy.stripFlags($$[$0 - 2], $$[$0])};
+                                    break;
+                                case 22:
+                                    this.$ = yy.prepareMustache($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], $$[$0 - 4], yy.stripFlags($$[$0 - 4], $$[$0]), this._$);
+                                    break;
+                                case 23:
+                                    this.$ = yy.prepareMustache($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], $$[$0 - 4], yy.stripFlags($$[$0 - 4], $$[$0]), this._$);
+                                    break;
+                                case 24:
+                                    this.$ = {
+                                        type: 'PartialStatement',
+                                        name: $$[$0 - 3],
+                                        params: $$[$0 - 2],
+                                        hash: $$[$0 - 1],
+                                        indent: '',
+                                        strip: yy.stripFlags($$[$0 - 4], $$[$0]),
+                                        loc: yy.locInfo(this._$)
+                                    };
+
+                                    break;
+                                case 25:
+                                    this.$ = yy.preparePartialBlock($$[$0 - 2], $$[$0 - 1], $$[$0], this._$);
+                                    break;
+                                case 26:
+                                    this.$ = {
+                                        path: $$[$0 - 3],
+                                        params: $$[$0 - 2],
+                                        hash: $$[$0 - 1],
+                                        strip: yy.stripFlags($$[$0 - 4], $$[$0])
+                                    };
+                                    break;
+                                case 27:
+                                    this.$ = $$[$0];
+                                    break;
+                                case 28:
+                                    this.$ = $$[$0];
+                                    break;
+                                case 29:
+                                    this.$ = {
+                                        type: 'SubExpression',
+                                        path: $$[$0 - 3],
+                                        params: $$[$0 - 2],
+                                        hash: $$[$0 - 1],
+                                        loc: yy.locInfo(this._$)
+                                    };
+
+                                    break;
+                                case 30:
+                                    this.$ = {type: 'Hash', pairs: $$[$0], loc: yy.locInfo(this._$)};
+                                    break;
+                                case 31:
+                                    this.$ = {
+                                        type: 'HashPair',
+                                        key: yy.id($$[$0 - 2]),
+                                        value: $$[$0],
+                                        loc: yy.locInfo(this._$)
+                                    };
+                                    break;
+                                case 32:
+                                    this.$ = yy.id($$[$0 - 1]);
+                                    break;
+                                case 33:
+                                    this.$ = $$[$0];
+                                    break;
+                                case 34:
+                                    this.$ = $$[$0];
+                                    break;
+                                case 35:
+                                    this.$ = {
+                                        type: 'StringLiteral',
+                                        value: $$[$0],
+                                        original: $$[$0],
+                                        loc: yy.locInfo(this._$)
+                                    };
+                                    break;
+                                case 36:
+                                    this.$ = {
+                                        type: 'NumberLiteral',
+                                        value: Number($$[$0]),
+                                        original: Number($$[$0]),
+                                        loc: yy.locInfo(this._$)
+                                    };
+                                    break;
+                                case 37:
+                                    this.$ = {
+                                        type: 'BooleanLiteral',
+                                        value: $$[$0] === 'true',
+                                        original: $$[$0] === 'true',
+                                        loc: yy.locInfo(this._$)
+                                    };
+                                    break;
+                                case 38:
+                                    this.$ = {
+                                        type: 'UndefinedLiteral',
+                                        original: undefined,
+                                        value: undefined,
+                                        loc: yy.locInfo(this._$)
+                                    };
+                                    break;
+                                case 39:
+                                    this.$ = {
+                                        type: 'NullLiteral',
+                                        original: null,
+                                        value: null,
+                                        loc: yy.locInfo(this._$)
+                                    };
+                                    break;
+                                case 40:
+                                    this.$ = $$[$0];
+                                    break;
+                                case 41:
+                                    this.$ = $$[$0];
+                                    break;
+                                case 42:
+                                    this.$ = yy.preparePath(true, $$[$0], this._$);
+                                    break;
+                                case 43:
+                                    this.$ = yy.preparePath(false, $$[$0], this._$);
+                                    break;
+                                case 44:
+                                    $$[$0 - 2].push({part: yy.id($$[$0]), original: $$[$0], separator: $$[$0 - 1]});
+                                    this.$ = $$[$0 - 2];
+                                    break;
+                                case 45:
+                                    this.$ = [{part: yy.id($$[$0]), original: $$[$0]}];
+                                    break;
+                                case 46:
+                                    this.$ = [];
+                                    break;
+                                case 47:
+                                    $$[$0 - 1].push($$[$0]);
+                                    break;
+                                case 48:
+                                    this.$ = [];
+                                    break;
+                                case 49:
+                                    $$[$0 - 1].push($$[$0]);
+                                    break;
+                                case 50:
+                                    this.$ = [];
+                                    break;
+                                case 51:
+                                    $$[$0 - 1].push($$[$0]);
+                                    break;
+                                case 58:
+                                    this.$ = [];
+                                    break;
+                                case 59:
+                                    $$[$0 - 1].push($$[$0]);
+                                    break;
+                                case 64:
+                                    this.$ = [];
+                                    break;
+                                case 65:
+                                    $$[$0 - 1].push($$[$0]);
+                                    break;
+                                case 70:
+                                    this.$ = [];
+                                    break;
+                                case 71:
+                                    $$[$0 - 1].push($$[$0]);
+                                    break;
+                                case 78:
+                                    this.$ = [];
+                                    break;
+                                case 79:
+                                    $$[$0 - 1].push($$[$0]);
+                                    break;
+                                case 82:
+                                    this.$ = [];
+                                    break;
+                                case 83:
+                                    $$[$0 - 1].push($$[$0]);
+                                    break;
+                                case 86:
+                                    this.$ = [];
+                                    break;
+                                case 87:
+                                    $$[$0 - 1].push($$[$0]);
+                                    break;
+                                case 90:
+                                    this.$ = [];
+                                    break;
+                                case 91:
+                                    $$[$0 - 1].push($$[$0]);
+                                    break;
+                                case 94:
+                                    this.$ = [];
+                                    break;
+                                case 95:
+                                    $$[$0 - 1].push($$[$0]);
+                                    break;
+                                case 98:
+                                    this.$ = [$$[$0]];
+                                    break;
+                                case 99:
+                                    $$[$0 - 1].push($$[$0]);
+                                    break;
+                                case 100:
+                                    this.$ = [$$[$0]];
+                                    break;
+                                case 101:
+                                    $$[$0 - 1].push($$[$0]);
+                                    break;
+                            }
+                        },
+                        table: [{
+                            3: 1,
+                            4: 2,
+                            5: [2, 46],
+                            6: 3,
+                            14: [2, 46],
+                            15: [2, 46],
+                            19: [2, 46],
+                            29: [2, 46],
+                            34: [2, 46],
+                            48: [2, 46],
+                            51: [2, 46],
+                            55: [2, 46],
+                            60: [2, 46]
+                        }, {1: [3]}, {5: [1, 4]}, {
+                            5: [2, 2],
+                            7: 5,
+                            8: 6,
+                            9: 7,
+                            10: 8,
+                            11: 9,
+                            12: 10,
+                            13: 11,
+                            14: [1, 12],
+                            15: [1, 20],
+                            16: 17,
+                            19: [1, 23],
+                            24: 15,
+                            27: 16,
+                            29: [1, 21],
+                            34: [1, 22],
+                            39: [2, 2],
+                            44: [2, 2],
+                            47: [2, 2],
+                            48: [1, 13],
+                            51: [1, 14],
+                            55: [1, 18],
+                            59: 19,
+                            60: [1, 24]
+                        }, {1: [2, 1]}, {
+                            5: [2, 47],
+                            14: [2, 47],
+                            15: [2, 47],
+                            19: [2, 47],
+                            29: [2, 47],
+                            34: [2, 47],
+                            39: [2, 47],
+                            44: [2, 47],
+                            47: [2, 47],
+                            48: [2, 47],
+                            51: [2, 47],
+                            55: [2, 47],
+                            60: [2, 47]
+                        }, {
+                            5: [2, 3],
+                            14: [2, 3],
+                            15: [2, 3],
+                            19: [2, 3],
+                            29: [2, 3],
+                            34: [2, 3],
+                            39: [2, 3],
+                            44: [2, 3],
+                            47: [2, 3],
+                            48: [2, 3],
+                            51: [2, 3],
+                            55: [2, 3],
+                            60: [2, 3]
+                        }, {
+                            5: [2, 4],
+                            14: [2, 4],
+                            15: [2, 4],
+                            19: [2, 4],
+                            29: [2, 4],
+                            34: [2, 4],
+                            39: [2, 4],
+                            44: [2, 4],
+                            47: [2, 4],
+                            48: [2, 4],
+                            51: [2, 4],
+                            55: [2, 4],
+                            60: [2, 4]
+                        }, {
+                            5: [2, 5],
+                            14: [2, 5],
+                            15: [2, 5],
+                            19: [2, 5],
+                            29: [2, 5],
+                            34: [2, 5],
+                            39: [2, 5],
+                            44: [2, 5],
+                            47: [2, 5],
+                            48: [2, 5],
+                            51: [2, 5],
+                            55: [2, 5],
+                            60: [2, 5]
+                        }, {
+                            5: [2, 6],
+                            14: [2, 6],
+                            15: [2, 6],
+                            19: [2, 6],
+                            29: [2, 6],
+                            34: [2, 6],
+                            39: [2, 6],
+                            44: [2, 6],
+                            47: [2, 6],
+                            48: [2, 6],
+                            51: [2, 6],
+                            55: [2, 6],
+                            60: [2, 6]
+                        }, {
+                            5: [2, 7],
+                            14: [2, 7],
+                            15: [2, 7],
+                            19: [2, 7],
+                            29: [2, 7],
+                            34: [2, 7],
+                            39: [2, 7],
+                            44: [2, 7],
+                            47: [2, 7],
+                            48: [2, 7],
+                            51: [2, 7],
+                            55: [2, 7],
+                            60: [2, 7]
+                        }, {
+                            5: [2, 8],
+                            14: [2, 8],
+                            15: [2, 8],
+                            19: [2, 8],
+                            29: [2, 8],
+                            34: [2, 8],
+                            39: [2, 8],
+                            44: [2, 8],
+                            47: [2, 8],
+                            48: [2, 8],
+                            51: [2, 8],
+                            55: [2, 8],
+                            60: [2, 8]
+                        }, {
+                            5: [2, 9],
+                            14: [2, 9],
+                            15: [2, 9],
+                            19: [2, 9],
+                            29: [2, 9],
+                            34: [2, 9],
+                            39: [2, 9],
+                            44: [2, 9],
+                            47: [2, 9],
+                            48: [2, 9],
+                            51: [2, 9],
+                            55: [2, 9],
+                            60: [2, 9]
+                        }, {
+                            20: 25,
+                            72: [1, 35],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {
+                            20: 36,
+                            72: [1, 35],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {
+                            4: 37,
+                            6: 3,
+                            14: [2, 46],
+                            15: [2, 46],
+                            19: [2, 46],
+                            29: [2, 46],
+                            34: [2, 46],
+                            39: [2, 46],
+                            44: [2, 46],
+                            47: [2, 46],
+                            48: [2, 46],
+                            51: [2, 46],
+                            55: [2, 46],
+                            60: [2, 46]
+                        }, {
+                            4: 38,
+                            6: 3,
+                            14: [2, 46],
+                            15: [2, 46],
+                            19: [2, 46],
+                            29: [2, 46],
+                            34: [2, 46],
+                            44: [2, 46],
+                            47: [2, 46],
+                            48: [2, 46],
+                            51: [2, 46],
+                            55: [2, 46],
+                            60: [2, 46]
+                        }, {15: [2, 48], 17: 39, 18: [2, 48]}, {
+                            20: 41,
+                            56: 40,
+                            64: 42,
+                            65: [1, 43],
+                            72: [1, 35],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {
+                            4: 44,
+                            6: 3,
+                            14: [2, 46],
+                            15: [2, 46],
+                            19: [2, 46],
+                            29: [2, 46],
+                            34: [2, 46],
+                            47: [2, 46],
+                            48: [2, 46],
+                            51: [2, 46],
+                            55: [2, 46],
+                            60: [2, 46]
+                        }, {
+                            5: [2, 10],
+                            14: [2, 10],
+                            15: [2, 10],
+                            18: [2, 10],
+                            19: [2, 10],
+                            29: [2, 10],
+                            34: [2, 10],
+                            39: [2, 10],
+                            44: [2, 10],
+                            47: [2, 10],
+                            48: [2, 10],
+                            51: [2, 10],
+                            55: [2, 10],
+                            60: [2, 10]
+                        }, {
+                            20: 45,
+                            72: [1, 35],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {
+                            20: 46,
+                            72: [1, 35],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {
+                            20: 47,
+                            72: [1, 35],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {
+                            20: 41,
+                            56: 48,
+                            64: 42,
+                            65: [1, 43],
+                            72: [1, 35],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {
+                            33: [2, 78],
+                            49: 49,
+                            65: [2, 78],
+                            72: [2, 78],
+                            80: [2, 78],
+                            81: [2, 78],
+                            82: [2, 78],
+                            83: [2, 78],
+                            84: [2, 78],
+                            85: [2, 78]
+                        }, {
+                            23: [2, 33],
+                            33: [2, 33],
+                            54: [2, 33],
+                            65: [2, 33],
+                            68: [2, 33],
+                            72: [2, 33],
+                            75: [2, 33],
+                            80: [2, 33],
+                            81: [2, 33],
+                            82: [2, 33],
+                            83: [2, 33],
+                            84: [2, 33],
+                            85: [2, 33]
+                        }, {
+                            23: [2, 34],
+                            33: [2, 34],
+                            54: [2, 34],
+                            65: [2, 34],
+                            68: [2, 34],
+                            72: [2, 34],
+                            75: [2, 34],
+                            80: [2, 34],
+                            81: [2, 34],
+                            82: [2, 34],
+                            83: [2, 34],
+                            84: [2, 34],
+                            85: [2, 34]
+                        }, {
+                            23: [2, 35],
+                            33: [2, 35],
+                            54: [2, 35],
+                            65: [2, 35],
+                            68: [2, 35],
+                            72: [2, 35],
+                            75: [2, 35],
+                            80: [2, 35],
+                            81: [2, 35],
+                            82: [2, 35],
+                            83: [2, 35],
+                            84: [2, 35],
+                            85: [2, 35]
+                        }, {
+                            23: [2, 36],
+                            33: [2, 36],
+                            54: [2, 36],
+                            65: [2, 36],
+                            68: [2, 36],
+                            72: [2, 36],
+                            75: [2, 36],
+                            80: [2, 36],
+                            81: [2, 36],
+                            82: [2, 36],
+                            83: [2, 36],
+                            84: [2, 36],
+                            85: [2, 36]
+                        }, {
+                            23: [2, 37],
+                            33: [2, 37],
+                            54: [2, 37],
+                            65: [2, 37],
+                            68: [2, 37],
+                            72: [2, 37],
+                            75: [2, 37],
+                            80: [2, 37],
+                            81: [2, 37],
+                            82: [2, 37],
+                            83: [2, 37],
+                            84: [2, 37],
+                            85: [2, 37]
+                        }, {
+                            23: [2, 38],
+                            33: [2, 38],
+                            54: [2, 38],
+                            65: [2, 38],
+                            68: [2, 38],
+                            72: [2, 38],
+                            75: [2, 38],
+                            80: [2, 38],
+                            81: [2, 38],
+                            82: [2, 38],
+                            83: [2, 38],
+                            84: [2, 38],
+                            85: [2, 38]
+                        }, {
+                            23: [2, 39],
+                            33: [2, 39],
+                            54: [2, 39],
+                            65: [2, 39],
+                            68: [2, 39],
+                            72: [2, 39],
+                            75: [2, 39],
+                            80: [2, 39],
+                            81: [2, 39],
+                            82: [2, 39],
+                            83: [2, 39],
+                            84: [2, 39],
+                            85: [2, 39]
+                        }, {
+                            23: [2, 43],
+                            33: [2, 43],
+                            54: [2, 43],
+                            65: [2, 43],
+                            68: [2, 43],
+                            72: [2, 43],
+                            75: [2, 43],
+                            80: [2, 43],
+                            81: [2, 43],
+                            82: [2, 43],
+                            83: [2, 43],
+                            84: [2, 43],
+                            85: [2, 43],
+                            87: [1, 50]
+                        }, {72: [1, 35], 86: 51}, {
+                            23: [2, 45],
+                            33: [2, 45],
+                            54: [2, 45],
+                            65: [2, 45],
+                            68: [2, 45],
+                            72: [2, 45],
+                            75: [2, 45],
+                            80: [2, 45],
+                            81: [2, 45],
+                            82: [2, 45],
+                            83: [2, 45],
+                            84: [2, 45],
+                            85: [2, 45],
+                            87: [2, 45]
+                        }, {
+                            52: 52,
+                            54: [2, 82],
+                            65: [2, 82],
+                            72: [2, 82],
+                            80: [2, 82],
+                            81: [2, 82],
+                            82: [2, 82],
+                            83: [2, 82],
+                            84: [2, 82],
+                            85: [2, 82]
+                        }, {25: 53, 38: 55, 39: [1, 57], 43: 56, 44: [1, 58], 45: 54, 47: [2, 54]}, {
+                            28: 59,
+                            43: 60,
+                            44: [1, 58],
+                            47: [2, 56]
+                        }, {13: 62, 15: [1, 20], 18: [1, 61]}, {
+                            33: [2, 86],
+                            57: 63,
+                            65: [2, 86],
+                            72: [2, 86],
+                            80: [2, 86],
+                            81: [2, 86],
+                            82: [2, 86],
+                            83: [2, 86],
+                            84: [2, 86],
+                            85: [2, 86]
+                        }, {
+                            33: [2, 40],
+                            65: [2, 40],
+                            72: [2, 40],
+                            80: [2, 40],
+                            81: [2, 40],
+                            82: [2, 40],
+                            83: [2, 40],
+                            84: [2, 40],
+                            85: [2, 40]
+                        }, {
+                            33: [2, 41],
+                            65: [2, 41],
+                            72: [2, 41],
+                            80: [2, 41],
+                            81: [2, 41],
+                            82: [2, 41],
+                            83: [2, 41],
+                            84: [2, 41],
+                            85: [2, 41]
+                        }, {
+                            20: 64,
+                            72: [1, 35],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {26: 65, 47: [1, 66]}, {
+                            30: 67,
+                            33: [2, 58],
+                            65: [2, 58],
+                            72: [2, 58],
+                            75: [2, 58],
+                            80: [2, 58],
+                            81: [2, 58],
+                            82: [2, 58],
+                            83: [2, 58],
+                            84: [2, 58],
+                            85: [2, 58]
+                        }, {
+                            33: [2, 64],
+                            35: 68,
+                            65: [2, 64],
+                            72: [2, 64],
+                            75: [2, 64],
+                            80: [2, 64],
+                            81: [2, 64],
+                            82: [2, 64],
+                            83: [2, 64],
+                            84: [2, 64],
+                            85: [2, 64]
+                        }, {
+                            21: 69,
+                            23: [2, 50],
+                            65: [2, 50],
+                            72: [2, 50],
+                            80: [2, 50],
+                            81: [2, 50],
+                            82: [2, 50],
+                            83: [2, 50],
+                            84: [2, 50],
+                            85: [2, 50]
+                        }, {
+                            33: [2, 90],
+                            61: 70,
+                            65: [2, 90],
+                            72: [2, 90],
+                            80: [2, 90],
+                            81: [2, 90],
+                            82: [2, 90],
+                            83: [2, 90],
+                            84: [2, 90],
+                            85: [2, 90]
+                        }, {
+                            20: 74,
+                            33: [2, 80],
+                            50: 71,
+                            63: 72,
+                            64: 75,
+                            65: [1, 43],
+                            69: 73,
+                            70: 76,
+                            71: 77,
+                            72: [1, 78],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {72: [1, 79]}, {
+                            23: [2, 42],
+                            33: [2, 42],
+                            54: [2, 42],
+                            65: [2, 42],
+                            68: [2, 42],
+                            72: [2, 42],
+                            75: [2, 42],
+                            80: [2, 42],
+                            81: [2, 42],
+                            82: [2, 42],
+                            83: [2, 42],
+                            84: [2, 42],
+                            85: [2, 42],
+                            87: [1, 50]
+                        }, {
+                            20: 74,
+                            53: 80,
+                            54: [2, 84],
+                            63: 81,
+                            64: 75,
+                            65: [1, 43],
+                            69: 82,
+                            70: 76,
+                            71: 77,
+                            72: [1, 78],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {26: 83, 47: [1, 66]}, {47: [2, 55]}, {
+                            4: 84,
+                            6: 3,
+                            14: [2, 46],
+                            15: [2, 46],
+                            19: [2, 46],
+                            29: [2, 46],
+                            34: [2, 46],
+                            39: [2, 46],
+                            44: [2, 46],
+                            47: [2, 46],
+                            48: [2, 46],
+                            51: [2, 46],
+                            55: [2, 46],
+                            60: [2, 46]
+                        }, {47: [2, 20]}, {
+                            20: 85,
+                            72: [1, 35],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {
+                            4: 86,
+                            6: 3,
+                            14: [2, 46],
+                            15: [2, 46],
+                            19: [2, 46],
+                            29: [2, 46],
+                            34: [2, 46],
+                            47: [2, 46],
+                            48: [2, 46],
+                            51: [2, 46],
+                            55: [2, 46],
+                            60: [2, 46]
+                        }, {26: 87, 47: [1, 66]}, {47: [2, 57]}, {
+                            5: [2, 11],
+                            14: [2, 11],
+                            15: [2, 11],
+                            19: [2, 11],
+                            29: [2, 11],
+                            34: [2, 11],
+                            39: [2, 11],
+                            44: [2, 11],
+                            47: [2, 11],
+                            48: [2, 11],
+                            51: [2, 11],
+                            55: [2, 11],
+                            60: [2, 11]
+                        }, {15: [2, 49], 18: [2, 49]}, {
+                            20: 74,
+                            33: [2, 88],
+                            58: 88,
+                            63: 89,
+                            64: 75,
+                            65: [1, 43],
+                            69: 90,
+                            70: 76,
+                            71: 77,
+                            72: [1, 78],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {
+                            65: [2, 94],
+                            66: 91,
+                            68: [2, 94],
+                            72: [2, 94],
+                            80: [2, 94],
+                            81: [2, 94],
+                            82: [2, 94],
+                            83: [2, 94],
+                            84: [2, 94],
+                            85: [2, 94]
+                        }, {
+                            5: [2, 25],
+                            14: [2, 25],
+                            15: [2, 25],
+                            19: [2, 25],
+                            29: [2, 25],
+                            34: [2, 25],
+                            39: [2, 25],
+                            44: [2, 25],
+                            47: [2, 25],
+                            48: [2, 25],
+                            51: [2, 25],
+                            55: [2, 25],
+                            60: [2, 25]
+                        }, {
+                            20: 92,
+                            72: [1, 35],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {
+                            20: 74,
+                            31: 93,
+                            33: [2, 60],
+                            63: 94,
+                            64: 75,
+                            65: [1, 43],
+                            69: 95,
+                            70: 76,
+                            71: 77,
+                            72: [1, 78],
+                            75: [2, 60],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {
+                            20: 74,
+                            33: [2, 66],
+                            36: 96,
+                            63: 97,
+                            64: 75,
+                            65: [1, 43],
+                            69: 98,
+                            70: 76,
+                            71: 77,
+                            72: [1, 78],
+                            75: [2, 66],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {
+                            20: 74,
+                            22: 99,
+                            23: [2, 52],
+                            63: 100,
+                            64: 75,
+                            65: [1, 43],
+                            69: 101,
+                            70: 76,
+                            71: 77,
+                            72: [1, 78],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {
+                            20: 74,
+                            33: [2, 92],
+                            62: 102,
+                            63: 103,
+                            64: 75,
+                            65: [1, 43],
+                            69: 104,
+                            70: 76,
+                            71: 77,
+                            72: [1, 78],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {33: [1, 105]}, {
+                            33: [2, 79],
+                            65: [2, 79],
+                            72: [2, 79],
+                            80: [2, 79],
+                            81: [2, 79],
+                            82: [2, 79],
+                            83: [2, 79],
+                            84: [2, 79],
+                            85: [2, 79]
+                        }, {33: [2, 81]}, {
+                            23: [2, 27],
+                            33: [2, 27],
+                            54: [2, 27],
+                            65: [2, 27],
+                            68: [2, 27],
+                            72: [2, 27],
+                            75: [2, 27],
+                            80: [2, 27],
+                            81: [2, 27],
+                            82: [2, 27],
+                            83: [2, 27],
+                            84: [2, 27],
+                            85: [2, 27]
+                        }, {
+                            23: [2, 28],
+                            33: [2, 28],
+                            54: [2, 28],
+                            65: [2, 28],
+                            68: [2, 28],
+                            72: [2, 28],
+                            75: [2, 28],
+                            80: [2, 28],
+                            81: [2, 28],
+                            82: [2, 28],
+                            83: [2, 28],
+                            84: [2, 28],
+                            85: [2, 28]
+                        }, {
+                            23: [2, 30],
+                            33: [2, 30],
+                            54: [2, 30],
+                            68: [2, 30],
+                            71: 106,
+                            72: [1, 107],
+                            75: [2, 30]
+                        }, {23: [2, 98], 33: [2, 98], 54: [2, 98], 68: [2, 98], 72: [2, 98], 75: [2, 98]}, {
+                            23: [2, 45],
+                            33: [2, 45],
+                            54: [2, 45],
+                            65: [2, 45],
+                            68: [2, 45],
+                            72: [2, 45],
+                            73: [1, 108],
+                            75: [2, 45],
+                            80: [2, 45],
+                            81: [2, 45],
+                            82: [2, 45],
+                            83: [2, 45],
+                            84: [2, 45],
+                            85: [2, 45],
+                            87: [2, 45]
+                        }, {
+                            23: [2, 44],
+                            33: [2, 44],
+                            54: [2, 44],
+                            65: [2, 44],
+                            68: [2, 44],
+                            72: [2, 44],
+                            75: [2, 44],
+                            80: [2, 44],
+                            81: [2, 44],
+                            82: [2, 44],
+                            83: [2, 44],
+                            84: [2, 44],
+                            85: [2, 44],
+                            87: [2, 44]
+                        }, {54: [1, 109]}, {
+                            54: [2, 83],
+                            65: [2, 83],
+                            72: [2, 83],
+                            80: [2, 83],
+                            81: [2, 83],
+                            82: [2, 83],
+                            83: [2, 83],
+                            84: [2, 83],
+                            85: [2, 83]
+                        }, {54: [2, 85]}, {
+                            5: [2, 13],
+                            14: [2, 13],
+                            15: [2, 13],
+                            19: [2, 13],
+                            29: [2, 13],
+                            34: [2, 13],
+                            39: [2, 13],
+                            44: [2, 13],
+                            47: [2, 13],
+                            48: [2, 13],
+                            51: [2, 13],
+                            55: [2, 13],
+                            60: [2, 13]
+                        }, {38: 55, 39: [1, 57], 43: 56, 44: [1, 58], 45: 111, 46: 110, 47: [2, 76]}, {
+                            33: [2, 70],
+                            40: 112,
+                            65: [2, 70],
+                            72: [2, 70],
+                            75: [2, 70],
+                            80: [2, 70],
+                            81: [2, 70],
+                            82: [2, 70],
+                            83: [2, 70],
+                            84: [2, 70],
+                            85: [2, 70]
+                        }, {47: [2, 18]}, {
+                            5: [2, 14],
+                            14: [2, 14],
+                            15: [2, 14],
+                            19: [2, 14],
+                            29: [2, 14],
+                            34: [2, 14],
+                            39: [2, 14],
+                            44: [2, 14],
+                            47: [2, 14],
+                            48: [2, 14],
+                            51: [2, 14],
+                            55: [2, 14],
+                            60: [2, 14]
+                        }, {33: [1, 113]}, {
+                            33: [2, 87],
+                            65: [2, 87],
+                            72: [2, 87],
+                            80: [2, 87],
+                            81: [2, 87],
+                            82: [2, 87],
+                            83: [2, 87],
+                            84: [2, 87],
+                            85: [2, 87]
+                        }, {33: [2, 89]}, {
+                            20: 74,
+                            63: 115,
+                            64: 75,
+                            65: [1, 43],
+                            67: 114,
+                            68: [2, 96],
+                            69: 116,
+                            70: 76,
+                            71: 77,
+                            72: [1, 78],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {33: [1, 117]}, {32: 118, 33: [2, 62], 74: 119, 75: [1, 120]}, {
+                            33: [2, 59],
+                            65: [2, 59],
+                            72: [2, 59],
+                            75: [2, 59],
+                            80: [2, 59],
+                            81: [2, 59],
+                            82: [2, 59],
+                            83: [2, 59],
+                            84: [2, 59],
+                            85: [2, 59]
+                        }, {33: [2, 61], 75: [2, 61]}, {33: [2, 68], 37: 121, 74: 122, 75: [1, 120]}, {
+                            33: [2, 65],
+                            65: [2, 65],
+                            72: [2, 65],
+                            75: [2, 65],
+                            80: [2, 65],
+                            81: [2, 65],
+                            82: [2, 65],
+                            83: [2, 65],
+                            84: [2, 65],
+                            85: [2, 65]
+                        }, {33: [2, 67], 75: [2, 67]}, {23: [1, 123]}, {
+                            23: [2, 51],
+                            65: [2, 51],
+                            72: [2, 51],
+                            80: [2, 51],
+                            81: [2, 51],
+                            82: [2, 51],
+                            83: [2, 51],
+                            84: [2, 51],
+                            85: [2, 51]
+                        }, {23: [2, 53]}, {33: [1, 124]}, {
+                            33: [2, 91],
+                            65: [2, 91],
+                            72: [2, 91],
+                            80: [2, 91],
+                            81: [2, 91],
+                            82: [2, 91],
+                            83: [2, 91],
+                            84: [2, 91],
+                            85: [2, 91]
+                        }, {33: [2, 93]}, {
+                            5: [2, 22],
+                            14: [2, 22],
+                            15: [2, 22],
+                            19: [2, 22],
+                            29: [2, 22],
+                            34: [2, 22],
+                            39: [2, 22],
+                            44: [2, 22],
+                            47: [2, 22],
+                            48: [2, 22],
+                            51: [2, 22],
+                            55: [2, 22],
+                            60: [2, 22]
+                        }, {
+                            23: [2, 99],
+                            33: [2, 99],
+                            54: [2, 99],
+                            68: [2, 99],
+                            72: [2, 99],
+                            75: [2, 99]
+                        }, {73: [1, 108]}, {
+                            20: 74,
+                            63: 125,
+                            64: 75,
+                            65: [1, 43],
+                            72: [1, 35],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {
+                            5: [2, 23],
+                            14: [2, 23],
+                            15: [2, 23],
+                            19: [2, 23],
+                            29: [2, 23],
+                            34: [2, 23],
+                            39: [2, 23],
+                            44: [2, 23],
+                            47: [2, 23],
+                            48: [2, 23],
+                            51: [2, 23],
+                            55: [2, 23],
+                            60: [2, 23]
+                        }, {47: [2, 19]}, {47: [2, 77]}, {
+                            20: 74,
+                            33: [2, 72],
+                            41: 126,
+                            63: 127,
+                            64: 75,
+                            65: [1, 43],
+                            69: 128,
+                            70: 76,
+                            71: 77,
+                            72: [1, 78],
+                            75: [2, 72],
+                            78: 26,
+                            79: 27,
+                            80: [1, 28],
+                            81: [1, 29],
+                            82: [1, 30],
+                            83: [1, 31],
+                            84: [1, 32],
+                            85: [1, 34],
+                            86: 33
+                        }, {
+                            5: [2, 24],
+                            14: [2, 24],
+                            15: [2, 24],
+                            19: [2, 24],
+                            29: [2, 24],
+                            34: [2, 24],
+                            39: [2, 24],
+                            44: [2, 24],
+                            47: [2, 24],
+                            48: [2, 24],
+                            51: [2, 24],
+                            55: [2, 24],
+                            60: [2, 24]
+                        }, {68: [1, 129]}, {
+                            65: [2, 95],
+                            68: [2, 95],
+                            72: [2, 95],
+                            80: [2, 95],
+                            81: [2, 95],
+                            82: [2, 95],
+                            83: [2, 95],
+                            84: [2, 95],
+                            85: [2, 95]
+                        }, {68: [2, 97]}, {
+                            5: [2, 21],
+                            14: [2, 21],
+                            15: [2, 21],
+                            19: [2, 21],
+                            29: [2, 21],
+                            34: [2, 21],
+                            39: [2, 21],
+                            44: [2, 21],
+                            47: [2, 21],
+                            48: [2, 21],
+                            51: [2, 21],
+                            55: [2, 21],
+                            60: [2, 21]
+                        }, {33: [1, 130]}, {33: [2, 63]}, {
+                            72: [1, 132],
+                            76: 131
+                        }, {33: [1, 133]}, {33: [2, 69]}, {15: [2, 12], 18: [2, 12]}, {
+                            14: [2, 26],
+                            15: [2, 26],
+                            19: [2, 26],
+                            29: [2, 26],
+                            34: [2, 26],
+                            47: [2, 26],
+                            48: [2, 26],
+                            51: [2, 26],
+                            55: [2, 26],
+                            60: [2, 26]
+                        }, {23: [2, 31], 33: [2, 31], 54: [2, 31], 68: [2, 31], 72: [2, 31], 75: [2, 31]}, {
+                            33: [2, 74],
+                            42: 134,
+                            74: 135,
+                            75: [1, 120]
+                        }, {
+                            33: [2, 71],
+                            65: [2, 71],
+                            72: [2, 71],
+                            75: [2, 71],
+                            80: [2, 71],
+                            81: [2, 71],
+                            82: [2, 71],
+                            83: [2, 71],
+                            84: [2, 71],
+                            85: [2, 71]
+                        }, {33: [2, 73], 75: [2, 73]}, {
+                            23: [2, 29],
+                            33: [2, 29],
+                            54: [2, 29],
+                            65: [2, 29],
+                            68: [2, 29],
+                            72: [2, 29],
+                            75: [2, 29],
+                            80: [2, 29],
+                            81: [2, 29],
+                            82: [2, 29],
+                            83: [2, 29],
+                            84: [2, 29],
+                            85: [2, 29]
+                        }, {
+                            14: [2, 15],
+                            15: [2, 15],
+                            19: [2, 15],
+                            29: [2, 15],
+                            34: [2, 15],
+                            39: [2, 15],
+                            44: [2, 15],
+                            47: [2, 15],
+                            48: [2, 15],
+                            51: [2, 15],
+                            55: [2, 15],
+                            60: [2, 15]
+                        }, {72: [1, 137], 77: [1, 136]}, {72: [2, 100], 77: [2, 100]}, {
+                            14: [2, 16],
+                            15: [2, 16],
+                            19: [2, 16],
+                            29: [2, 16],
+                            34: [2, 16],
+                            44: [2, 16],
+                            47: [2, 16],
+                            48: [2, 16],
+                            51: [2, 16],
+                            55: [2, 16],
+                            60: [2, 16]
+                        }, {33: [1, 138]}, {33: [2, 75]}, {33: [2, 32]}, {72: [2, 101], 77: [2, 101]}, {
+                            14: [2, 17],
+                            15: [2, 17],
+                            19: [2, 17],
+                            29: [2, 17],
+                            34: [2, 17],
+                            39: [2, 17],
+                            44: [2, 17],
+                            47: [2, 17],
+                            48: [2, 17],
+                            51: [2, 17],
+                            55: [2, 17],
+                            60: [2, 17]
+                        }],
+                        defaultActions: {
+                            4: [2, 1],
+                            54: [2, 55],
+                            56: [2, 20],
+                            60: [2, 57],
+                            73: [2, 81],
+                            82: [2, 85],
+                            86: [2, 18],
+                            90: [2, 89],
+                            101: [2, 53],
+                            104: [2, 93],
+                            110: [2, 19],
+                            111: [2, 77],
+                            116: [2, 97],
+                            119: [2, 63],
+                            122: [2, 69],
+                            135: [2, 75],
+                            136: [2, 32]
+                        },
+                        parseError: function parseError(str, hash) {
+                            throw new Error(str);
+                        },
+                        parse: function parse(input) {
+                            var self = this,
+                                stack = [0],
+                                vstack = [null],
+                                lstack = [],
+                                table = this.table,
+                                yytext = "",
+                                yylineno = 0,
+                                yyleng = 0,
+                                recovering = 0,
+                                TERROR = 2,
+                                EOF = 1;
+                            this.lexer.setInput(input);
+                            this.lexer.yy = this.yy;
+                            this.yy.lexer = this.lexer;
+                            this.yy.parser = this;
+                            if (typeof this.lexer.yylloc == "undefined") this.lexer.yylloc = {};
+                            var yyloc = this.lexer.yylloc;
+                            lstack.push(yyloc);
+                            var ranges = this.lexer.options && this.lexer.options.ranges;
+                            if (typeof this.yy.parseError === "function") this.parseError = this.yy.parseError;
+
+                            function popStack(n) {
+                                stack.length = stack.length - 2 * n;
+                                vstack.length = vstack.length - n;
+                                lstack.length = lstack.length - n;
+                            }
+
+                            function lex() {
+                                var token;
+                                token = self.lexer.lex() || 1;
+                                if (typeof token !== "number") {
+                                    token = self.symbols_[token] || token;
+                                }
+                                return token;
+                            }
+
+                            var symbol,
+                                preErrorSymbol,
+                                state,
+                                action,
+                                a,
+                                r,
+                                yyval = {},
+                                p,
+                                len,
+                                newState,
+                                expected;
+                            while (true) {
+                                state = stack[stack.length - 1];
+                                if (this.defaultActions[state]) {
+                                    action = this.defaultActions[state];
+                                } else {
+                                    if (symbol === null || typeof symbol == "undefined") {
+                                        symbol = lex();
+                                    }
+                                    action = table[state] && table[state][symbol];
+                                }
+                                if (typeof action === "undefined" || !action.length || !action[0]) {
+                                    var errStr = "";
+                                    if (!recovering) {
+                                        expected = [];
+                                        for (p in table[state]) if (this.terminals_[p] && p > 2) {
+                                            expected.push("'" + this.terminals_[p] + "'");
+                                        }
+                                        if (this.lexer.showPosition) {
+                                            errStr = "Parse error on line " + (yylineno + 1) + ":\n" + this.lexer.showPosition() + "\nExpecting " + expected.join(", ") + ", got '" + (this.terminals_[symbol] || symbol) + "'";
+                                        } else {
+                                            errStr = "Parse error on line " + (yylineno + 1) + ": Unexpected " + (symbol == 1 ? "end of input" : "'" + (this.terminals_[symbol] || symbol) + "'");
+                                        }
+                                        this.parseError(errStr, {
+                                            text: this.lexer.match,
+                                            token: this.terminals_[symbol] || symbol,
+                                            line: this.lexer.yylineno,
+                                            loc: yyloc,
+                                            expected: expected
+                                        });
+                                    }
+                                }
+                                if (action[0] instanceof Array && action.length > 1) {
+                                    throw new Error("Parse Error: multiple actions possible at state: " + state + ", token: " + symbol);
+                                }
+                                switch (action[0]) {
+                                    case 1:
+                                        stack.push(symbol);
+                                        vstack.push(this.lexer.yytext);
+                                        lstack.push(this.lexer.yylloc);
+                                        stack.push(action[1]);
+                                        symbol = null;
+                                        if (!preErrorSymbol) {
+                                            yyleng = this.lexer.yyleng;
+                                            yytext = this.lexer.yytext;
+                                            yylineno = this.lexer.yylineno;
+                                            yyloc = this.lexer.yylloc;
+                                            if (recovering > 0) recovering--;
+                                        } else {
+                                            symbol = preErrorSymbol;
+                                            preErrorSymbol = null;
+                                        }
+                                        break;
+                                    case 2:
+                                        len = this.productions_[action[1]][1];
+                                        yyval.$ = vstack[vstack.length - len];
+                                        yyval._$ = {
+                                            first_line: lstack[lstack.length - (len || 1)].first_line,
+                                            last_line: lstack[lstack.length - 1].last_line,
+                                            first_column: lstack[lstack.length - (len || 1)].first_column,
+                                            last_column: lstack[lstack.length - 1].last_column
+                                        };
+                                        if (ranges) {
+                                            yyval._$.range = [lstack[lstack.length - (len || 1)].range[0], lstack[lstack.length - 1].range[1]];
+                                        }
+                                        r = this.performAction.call(yyval, yytext, yyleng, yylineno, this.yy, action[1], vstack, lstack);
+                                        if (typeof r !== "undefined") {
+                                            return r;
+                                        }
+                                        if (len) {
+                                            stack = stack.slice(0, -1 * len * 2);
+                                            vstack = vstack.slice(0, -1 * len);
+                                            lstack = lstack.slice(0, -1 * len);
+                                        }
+                                        stack.push(this.productions_[action[1]][0]);
+                                        vstack.push(yyval.$);
+                                        lstack.push(yyval._$);
+                                        newState = table[stack[stack.length - 2]][stack[stack.length - 1]];
+                                        stack.push(newState);
+                                        break;
+                                    case 3:
+                                        return true;
+                                }
+                            }
+                            return true;
+                        }
+                    };
+                    /* Jison generated lexer */
+                    var lexer = (function () {
+                        var lexer = {
+                            EOF: 1,
+                            parseError: function parseError(str, hash) {
+                                if (this.yy.parser) {
+                                    this.yy.parser.parseError(str, hash);
+                                } else {
+                                    throw new Error(str);
+                                }
+                            },
+                            setInput: function setInput(input) {
+                                this._input = input;
+                                this._more = this._less = this.done = false;
+                                this.yylineno = this.yyleng = 0;
+                                this.yytext = this.matched = this.match = '';
+                                this.conditionStack = ['INITIAL'];
+                                this.yylloc = {first_line: 1, first_column: 0, last_line: 1, last_column: 0};
+                                if (this.options.ranges) this.yylloc.range = [0, 0];
+                                this.offset = 0;
+                                return this;
+                            },
+                            input: function input() {
+                                var ch = this._input[0];
+                                this.yytext += ch;
+                                this.yyleng++;
+                                this.offset++;
+                                this.match += ch;
+                                this.matched += ch;
+                                var lines = ch.match(/(?:\r\n?|\n).*/g);
+                                if (lines) {
+                                    this.yylineno++;
+                                    this.yylloc.last_line++;
+                                } else {
+                                    this.yylloc.last_column++;
+                                }
+                                if (this.options.ranges) this.yylloc.range[1]++;
+
+                                this._input = this._input.slice(1);
+                                return ch;
+                            },
+                            unput: function unput(ch) {
+                                var len = ch.length;
+                                var lines = ch.split(/(?:\r\n?|\n)/g);
+
+                                this._input = ch + this._input;
+                                this.yytext = this.yytext.substr(0, this.yytext.length - len - 1);
+                                //this.yyleng -= len;
+                                this.offset -= len;
+                                var oldLines = this.match.split(/(?:\r\n?|\n)/g);
+                                this.match = this.match.substr(0, this.match.length - 1);
+                                this.matched = this.matched.substr(0, this.matched.length - 1);
+
+                                if (lines.length - 1) this.yylineno -= lines.length - 1;
+                                var r = this.yylloc.range;
+
+                                this.yylloc = {
+                                    first_line: this.yylloc.first_line,
+                                    last_line: this.yylineno + 1,
+                                    first_column: this.yylloc.first_column,
+                                    last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len
+                                };
+
+                                if (this.options.ranges) {
+                                    this.yylloc.range = [r[0], r[0] + this.yyleng - len];
+                                }
+                                return this;
+                            },
+                            more: function more() {
+                                this._more = true;
+                                return this;
+                            },
+                            less: function less(n) {
+                                this.unput(this.match.slice(n));
+                            },
+                            pastInput: function pastInput() {
+                                var past = this.matched.substr(0, this.matched.length - this.match.length);
+                                return (past.length > 20 ? '...' : '') + past.substr(-20).replace(/\n/g, "");
+                            },
+                            upcomingInput: function upcomingInput() {
+                                var next = this.match;
+                                if (next.length < 20) {
+                                    next += this._input.substr(0, 20 - next.length);
+                                }
+                                return (next.substr(0, 20) + (next.length > 20 ? '...' : '')).replace(/\n/g, "");
+                            },
+                            showPosition: function showPosition() {
+                                var pre = this.pastInput();
+                                var c = new Array(pre.length + 1).join("-");
+                                return pre + this.upcomingInput() + "\n" + c + "^";
+                            },
+                            next: function next() {
+                                if (this.done) {
+                                    return this.EOF;
+                                }
+                                if (!this._input) this.done = true;
+
+                                var token, match, tempMatch, index, col, lines;
+                                if (!this._more) {
+                                    this.yytext = '';
+                                    this.match = '';
+                                }
+                                var rules = this._currentRules();
+                                for (var i = 0; i < rules.length; i++) {
+                                    tempMatch = this._input.match(this.rules[rules[i]]);
+                                    if (tempMatch && (!match || tempMatch[0].length > match[0].length)) {
+                                        match = tempMatch;
+                                        index = i;
+                                        if (!this.options.flex) break;
+                                    }
+                                }
+                                if (match) {
+                                    lines = match[0].match(/(?:\r\n?|\n).*/g);
+                                    if (lines) this.yylineno += lines.length;
+                                    this.yylloc = {
+                                        first_line: this.yylloc.last_line,
+                                        last_line: this.yylineno + 1,
+                                        first_column: this.yylloc.last_column,
+                                        last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + match[0].length
+                                    };
+                                    this.yytext += match[0];
+                                    this.match += match[0];
+                                    this.matches = match;
+                                    this.yyleng = this.yytext.length;
+                                    if (this.options.ranges) {
+                                        this.yylloc.range = [this.offset, this.offset += this.yyleng];
+                                    }
+                                    this._more = false;
+                                    this._input = this._input.slice(match[0].length);
+                                    this.matched += match[0];
+                                    token = this.performAction.call(this, this.yy, this, rules[index], this.conditionStack[this.conditionStack.length - 1]);
+                                    if (this.done && this._input) this.done = false;
+                                    if (token) return token; else return;
+                                }
+                                if (this._input === "") {
+                                    return this.EOF;
+                                } else {
+                                    return this.parseError('Lexical error on line ' + (this.yylineno + 1) + '. Unrecognized text.\n' + this.showPosition(), {
+                                        text: "",
+                                        token: null,
+                                        line: this.yylineno
+                                    });
+                                }
+                            },
+                            lex: function lex() {
+                                var r = this.next();
+                                if (typeof r !== 'undefined') {
+                                    return r;
+                                } else {
+                                    return this.lex();
+                                }
+                            },
+                            begin: function begin(condition) {
+                                this.conditionStack.push(condition);
+                            },
+                            popState: function popState() {
+                                return this.conditionStack.pop();
+                            },
+                            _currentRules: function _currentRules() {
+                                return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules;
+                            },
+                            topState: function topState() {
+                                return this.conditionStack[this.conditionStack.length - 2];
+                            },
+                            pushState: function begin(condition) {
+                                this.begin(condition);
+                            }
+                        };
+                        lexer.options = {};
+                        lexer.performAction = function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) {
+
+                            function strip(start, end) {
+                                return yy_.yytext = yy_.yytext.substring(start, yy_.yyleng - end + start);
+                            }
 
-	                this._input = this._input.slice(1);
-	                return ch;
-	            },
-	            unput: function unput(ch) {
-	                var len = ch.length;
-	                var lines = ch.split(/(?:\r\n?|\n)/g);
+                            var YYSTATE = YY_START;
+                            switch ($avoiding_name_collisions) {
+                                case 0:
+                                    if (yy_.yytext.slice(-2) === "\\\\") {
+                                        strip(0, 1);
+                                        this.begin("mu");
+                                    } else if (yy_.yytext.slice(-1) === "\\") {
+                                        strip(0, 1);
+                                        this.begin("emu");
+                                    } else {
+                                        this.begin("mu");
+                                    }
+                                    if (yy_.yytext) return 15;
 
-	                this._input = ch + this._input;
-	                this.yytext = this.yytext.substr(0, this.yytext.length - len - 1);
-	                //this.yyleng -= len;
-	                this.offset -= len;
-	                var oldLines = this.match.split(/(?:\r\n?|\n)/g);
-	                this.match = this.match.substr(0, this.match.length - 1);
-	                this.matched = this.matched.substr(0, this.matched.length - 1);
+                                    break;
+                                case 1:
+                                    return 15;
+                                    break;
+                                case 2:
+                                    this.popState();
+                                    return 15;
 
-	                if (lines.length - 1) this.yylineno -= lines.length - 1;
-	                var r = this.yylloc.range;
+                                    break;
+                                case 3:
+                                    this.begin('raw');
+                                    return 15;
+                                    break;
+                                case 4:
+                                    this.popState();
+                                    // Should be using `this.topState()` below, but it currently
+                                    // returns the second top instead of the first top. Opened an
+                                    // issue about it at https://github.com/zaach/jison/issues/291
+                                    if (this.conditionStack[this.conditionStack.length - 1] === 'raw') {
+                                        return 15;
+                                    } else {
+                                        strip(5, 9);
+                                        return 'END_RAW_BLOCK';
+                                    }
 
-	                this.yylloc = { first_line: this.yylloc.first_line,
-	                    last_line: this.yylineno + 1,
-	                    first_column: this.yylloc.first_column,
-	                    last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len
-	                };
+                                    break;
+                                case 5:
+                                    return 15;
+                                    break;
+                                case 6:
+                                    this.popState();
+                                    return 14;
 
-	                if (this.options.ranges) {
-	                    this.yylloc.range = [r[0], r[0] + this.yyleng - len];
-	                }
-	                return this;
-	            },
-	            more: function more() {
-	                this._more = true;
-	                return this;
-	            },
-	            less: function less(n) {
-	                this.unput(this.match.slice(n));
-	            },
-	            pastInput: function pastInput() {
-	                var past = this.matched.substr(0, this.matched.length - this.match.length);
-	                return (past.length > 20 ? '...' : '') + past.substr(-20).replace(/\n/g, "");
-	            },
-	            upcomingInput: function upcomingInput() {
-	                var next = this.match;
-	                if (next.length < 20) {
-	                    next += this._input.substr(0, 20 - next.length);
-	                }
-	                return (next.substr(0, 20) + (next.length > 20 ? '...' : '')).replace(/\n/g, "");
-	            },
-	            showPosition: function showPosition() {
-	                var pre = this.pastInput();
-	                var c = new Array(pre.length + 1).join("-");
-	                return pre + this.upcomingInput() + "\n" + c + "^";
-	            },
-	            next: function next() {
-	                if (this.done) {
-	                    return this.EOF;
-	                }
-	                if (!this._input) this.done = true;
+                                    break;
+                                case 7:
+                                    return 65;
+                                    break;
+                                case 8:
+                                    return 68;
+                                    break;
+                                case 9:
+                                    return 19;
+                                    break;
+                                case 10:
+                                    this.popState();
+                                    this.begin('raw');
+                                    return 23;
 
-	                var token, match, tempMatch, index, col, lines;
-	                if (!this._more) {
-	                    this.yytext = '';
-	                    this.match = '';
-	                }
-	                var rules = this._currentRules();
-	                for (var i = 0; i < rules.length; i++) {
-	                    tempMatch = this._input.match(this.rules[rules[i]]);
-	                    if (tempMatch && (!match || tempMatch[0].length > match[0].length)) {
-	                        match = tempMatch;
-	                        index = i;
-	                        if (!this.options.flex) break;
-	                    }
-	                }
-	                if (match) {
-	                    lines = match[0].match(/(?:\r\n?|\n).*/g);
-	                    if (lines) this.yylineno += lines.length;
-	                    this.yylloc = { first_line: this.yylloc.last_line,
-	                        last_line: this.yylineno + 1,
-	                        first_column: this.yylloc.last_column,
-	                        last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + match[0].length };
-	                    this.yytext += match[0];
-	                    this.match += match[0];
-	                    this.matches = match;
-	                    this.yyleng = this.yytext.length;
-	                    if (this.options.ranges) {
-	                        this.yylloc.range = [this.offset, this.offset += this.yyleng];
-	                    }
-	                    this._more = false;
-	                    this._input = this._input.slice(match[0].length);
-	                    this.matched += match[0];
-	                    token = this.performAction.call(this, this.yy, this, rules[index], this.conditionStack[this.conditionStack.length - 1]);
-	                    if (this.done && this._input) this.done = false;
-	                    if (token) return token;else return;
-	                }
-	                if (this._input === "") {
-	                    return this.EOF;
-	                } else {
-	                    return this.parseError('Lexical error on line ' + (this.yylineno + 1) + '. Unrecognized text.\n' + this.showPosition(), { text: "", token: null, line: this.yylineno });
-	                }
-	            },
-	            lex: function lex() {
-	                var r = this.next();
-	                if (typeof r !== 'undefined') {
-	                    return r;
-	                } else {
-	                    return this.lex();
-	                }
-	            },
-	            begin: function begin(condition) {
-	                this.conditionStack.push(condition);
-	            },
-	            popState: function popState() {
-	                return this.conditionStack.pop();
-	            },
-	            _currentRules: function _currentRules() {
-	                return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules;
-	            },
-	            topState: function topState() {
-	                return this.conditionStack[this.conditionStack.length - 2];
-	            },
-	            pushState: function begin(condition) {
-	                this.begin(condition);
-	            } };
-	        lexer.options = {};
-	        lexer.performAction = function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) {
+                                    break;
+                                case 11:
+                                    return 55;
+                                    break;
+                                case 12:
+                                    return 60;
+                                    break;
+                                case 13:
+                                    return 29;
+                                    break;
+                                case 14:
+                                    return 47;
+                                    break;
+                                case 15:
+                                    this.popState();
+                                    return 44;
+                                    break;
+                                case 16:
+                                    this.popState();
+                                    return 44;
+                                    break;
+                                case 17:
+                                    return 34;
+                                    break;
+                                case 18:
+                                    return 39;
+                                    break;
+                                case 19:
+                                    return 51;
+                                    break;
+                                case 20:
+                                    return 48;
+                                    break;
+                                case 21:
+                                    this.unput(yy_.yytext);
+                                    this.popState();
+                                    this.begin('com');
 
-	            function strip(start, end) {
-	                return yy_.yytext = yy_.yytext.substring(start, yy_.yyleng - end + start);
-	            }
+                                    break;
+                                case 22:
+                                    this.popState();
+                                    return 14;
 
-	            var YYSTATE = YY_START;
-	            switch ($avoiding_name_collisions) {
-	                case 0:
-	                    if (yy_.yytext.slice(-2) === "\\\\") {
-	                        strip(0, 1);
-	                        this.begin("mu");
-	                    } else if (yy_.yytext.slice(-1) === "\\") {
-	                        strip(0, 1);
-	                        this.begin("emu");
-	                    } else {
-	                        this.begin("mu");
-	                    }
-	                    if (yy_.yytext) return 15;
+                                    break;
+                                case 23:
+                                    return 48;
+                                    break;
+                                case 24:
+                                    return 73;
+                                    break;
+                                case 25:
+                                    return 72;
+                                    break;
+                                case 26:
+                                    return 72;
+                                    break;
+                                case 27:
+                                    return 87;
+                                    break;
+                                case 28:
+                                    // ignore whitespace
+                                    break;
+                                case 29:
+                                    this.popState();
+                                    return 54;
+                                    break;
+                                case 30:
+                                    this.popState();
+                                    return 33;
+                                    break;
+                                case 31:
+                                    yy_.yytext = strip(1, 2).replace(/\\"/g, '"');
+                                    return 80;
+                                    break;
+                                case 32:
+                                    yy_.yytext = strip(1, 2).replace(/\\'/g, "'");
+                                    return 80;
+                                    break;
+                                case 33:
+                                    return 85;
+                                    break;
+                                case 34:
+                                    return 82;
+                                    break;
+                                case 35:
+                                    return 82;
+                                    break;
+                                case 36:
+                                    return 83;
+                                    break;
+                                case 37:
+                                    return 84;
+                                    break;
+                                case 38:
+                                    return 81;
+                                    break;
+                                case 39:
+                                    return 75;
+                                    break;
+                                case 40:
+                                    return 77;
+                                    break;
+                                case 41:
+                                    return 72;
+                                    break;
+                                case 42:
+                                    yy_.yytext = yy_.yytext.replace(/\\([\\\]])/g, '$1');
+                                    return 72;
+                                    break;
+                                case 43:
+                                    return 'INVALID';
+                                    break;
+                                case 44:
+                                    return 5;
+                                    break;
+                            }
+                        };
+                        lexer.rules = [/^(?:[^\x00]*?(?=(\{\{)))/, /^(?:[^\x00]+)/, /^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/, /^(?:\{\{\{\{(?=[^\/]))/, /^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/, /^(?:[^\x00]+?(?=(\{\{\{\{)))/, /^(?:[\s\S]*?--(~)?\}\})/, /^(?:\()/, /^(?:\))/, /^(?:\{\{\{\{)/, /^(?:\}\}\}\})/, /^(?:\{\{(~)?>)/, /^(?:\{\{(~)?#>)/, /^(?:\{\{(~)?#\*?)/, /^(?:\{\{(~)?\/)/, /^(?:\{\{(~)?\^\s*(~)?\}\})/, /^(?:\{\{(~)?\s*else\s*(~)?\}\})/, /^(?:\{\{(~)?\^)/, /^(?:\{\{(~)?\s*else\b)/, /^(?:\{\{(~)?\{)/, /^(?:\{\{(~)?&)/, /^(?:\{\{(~)?!--)/, /^(?:\{\{(~)?![\s\S]*?\}\})/, /^(?:\{\{(~)?\*?)/, /^(?:=)/, /^(?:\.\.)/, /^(?:\.(?=([=~}\s\/.)|])))/, /^(?:[\/.])/, /^(?:\s+)/, /^(?:\}(~)?\}\})/, /^(?:(~)?\}\})/, /^(?:"(\\["]|[^"])*")/, /^(?:'(\\[']|[^'])*')/, /^(?:@)/, /^(?:true(?=([~}\s)])))/, /^(?:false(?=([~}\s)])))/, /^(?:undefined(?=([~}\s)])))/, /^(?:null(?=([~}\s)])))/, /^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/, /^(?:as\s+\|)/, /^(?:\|)/, /^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/, /^(?:\[(\\\]|[^\]])*\])/, /^(?:.)/, /^(?:$)/];
+                        lexer.conditions = {
+                            "mu": {
+                                "rules": [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44],
+                                "inclusive": false
+                            },
+                            "emu": {"rules": [2], "inclusive": false},
+                            "com": {"rules": [6], "inclusive": false},
+                            "raw": {"rules": [3, 4, 5], "inclusive": false},
+                            "INITIAL": {"rules": [0, 1, 44], "inclusive": true}
+                        };
+                        return lexer;
+                    })();
+                    parser.lexer = lexer;
 
-	                    break;
-	                case 1:
-	                    return 15;
-	                    break;
-	                case 2:
-	                    this.popState();
-	                    return 15;
+                    function Parser() {
+                        this.yy = {};
+                    }
 
-	                    break;
-	                case 3:
-	                    this.begin('raw');return 15;
-	                    break;
-	                case 4:
-	                    this.popState();
-	                    // Should be using `this.topState()` below, but it currently
-	                    // returns the second top instead of the first top. Opened an
-	                    // issue about it at https://github.com/zaach/jison/issues/291
-	                    if (this.conditionStack[this.conditionStack.length - 1] === 'raw') {
-	                        return 15;
-	                    } else {
-	                        strip(5, 9);
-	                        return 'END_RAW_BLOCK';
-	                    }
+                    Parser.prototype = parser;
+                    parser.Parser = Parser;
+                    return new Parser();
+                })();
+                exports["default"] = handlebars;
+                module.exports = exports["default"];
 
-	                    break;
-	                case 5:
-	                    return 15;
-	                    break;
-	                case 6:
-	                    this.popState();
-	                    return 14;
+                /***/
+            }),
+            /* 43 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	                    break;
-	                case 7:
-	                    return 65;
-	                    break;
-	                case 8:
-	                    return 68;
-	                    break;
-	                case 9:
-	                    return 19;
-	                    break;
-	                case 10:
-	                    this.popState();
-	                    this.begin('raw');
-	                    return 23;
+                'use strict';
 
-	                    break;
-	                case 11:
-	                    return 55;
-	                    break;
-	                case 12:
-	                    return 60;
-	                    break;
-	                case 13:
-	                    return 29;
-	                    break;
-	                case 14:
-	                    return 47;
-	                    break;
-	                case 15:
-	                    this.popState();return 44;
-	                    break;
-	                case 16:
-	                    this.popState();return 44;
-	                    break;
-	                case 17:
-	                    return 34;
-	                    break;
-	                case 18:
-	                    return 39;
-	                    break;
-	                case 19:
-	                    return 51;
-	                    break;
-	                case 20:
-	                    return 48;
-	                    break;
-	                case 21:
-	                    this.unput(yy_.yytext);
-	                    this.popState();
-	                    this.begin('com');
+                var _interopRequireDefault = __webpack_require__(1)['default'];
 
-	                    break;
-	                case 22:
-	                    this.popState();
-	                    return 14;
+                exports.__esModule = true;
 
-	                    break;
-	                case 23:
-	                    return 48;
-	                    break;
-	                case 24:
-	                    return 73;
-	                    break;
-	                case 25:
-	                    return 72;
-	                    break;
-	                case 26:
-	                    return 72;
-	                    break;
-	                case 27:
-	                    return 87;
-	                    break;
-	                case 28:
-	                    // ignore whitespace
-	                    break;
-	                case 29:
-	                    this.popState();return 54;
-	                    break;
-	                case 30:
-	                    this.popState();return 33;
-	                    break;
-	                case 31:
-	                    yy_.yytext = strip(1, 2).replace(/\\"/g, '"');return 80;
-	                    break;
-	                case 32:
-	                    yy_.yytext = strip(1, 2).replace(/\\'/g, "'");return 80;
-	                    break;
-	                case 33:
-	                    return 85;
-	                    break;
-	                case 34:
-	                    return 82;
-	                    break;
-	                case 35:
-	                    return 82;
-	                    break;
-	                case 36:
-	                    return 83;
-	                    break;
-	                case 37:
-	                    return 84;
-	                    break;
-	                case 38:
-	                    return 81;
-	                    break;
-	                case 39:
-	                    return 75;
-	                    break;
-	                case 40:
-	                    return 77;
-	                    break;
-	                case 41:
-	                    return 72;
-	                    break;
-	                case 42:
-	                    yy_.yytext = yy_.yytext.replace(/\\([\\\]])/g, '$1');return 72;
-	                    break;
-	                case 43:
-	                    return 'INVALID';
-	                    break;
-	                case 44:
-	                    return 5;
-	                    break;
-	            }
-	        };
-	        lexer.rules = [/^(?:[^\x00]*?(?=(\{\{)))/, /^(?:[^\x00]+)/, /^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/, /^(?:\{\{\{\{(?=[^\/]))/, /^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/, /^(?:[^\x00]+?(?=(\{\{\{\{)))/, /^(?:[\s\S]*?--(~)?\}\})/, /^(?:\()/, /^(?:\))/, /^(?:\{\{\{\{)/, /^(?:\}\}\}\})/, /^(?:\{\{(~)?>)/, /^(?:\{\{(~)?#>)/, /^(?:\{\{(~)?#\*?)/, /^(?:\{\{(~)?\/)/, /^(?:\{\{(~)?\^\s*(~)?\}\})/, /^(?:\{\{(~)?\s*else\s*(~)?\}\})/, /^(?:\{\{(~)?\^)/, /^(?:\{\{(~)?\s*else\b)/, /^(?:\{\{(~)?\{)/, /^(?:\{\{(~)?&)/, /^(?:\{\{(~)?!--)/, /^(?:\{\{(~)?![\s\S]*?\}\})/, /^(?:\{\{(~)?\*?)/, /^(?:=)/, /^(?:\.\.)/, /^(?:\.(?=([=~}\s\/.)|])))/, /^(?:[\/.])/, /^(?:\s+)/, /^(?:\}(~)?\}\})/, /^(?:(~)?\}\})/, /^(?:"(\\["]|[^"])*")/, /^(?:'(\\[']|[^'])*')/, /^(?:@)/, /^(?:true(?=([~}\s)])))/, /^(?:false(?=([~}\s)])))/, /^(?:undefined(?=([~}\s)])))/, /^(?:null(?=([~}\s)])))/, /^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/, /^(?:as\s+\|)/, /^(?:\|)/, /^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/, /^(?:\[(\\\]|[^\]])*\])/, /^(?:.)/, /^(?:$)/];
-	        lexer.conditions = { "mu": { "rules": [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44], "inclusive": false }, "emu": { "rules": [2], "inclusive": false }, "com": { "rules": [6], "inclusive": false }, "raw": { "rules": [3, 4, 5], "inclusive": false }, "INITIAL": { "rules": [0, 1, 44], "inclusive": true } };
-	        return lexer;
-	    })();
-	    parser.lexer = lexer;
-	    function Parser() {
-	        this.yy = {};
-	    }Parser.prototype = parser;parser.Parser = Parser;
-	    return new Parser();
-	})();exports["default"] = handlebars;
-	module.exports = exports["default"];
+                var _visitor = __webpack_require__(44);
 
-/***/ }),
-/* 43 */
-/***/ (function(module, exports, __webpack_require__) {
+                var _visitor2 = _interopRequireDefault(_visitor);
 
-	'use strict';
+                function WhitespaceControl() {
+                    var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                    this.options = options;
+                }
 
-	exports.__esModule = true;
+                WhitespaceControl.prototype = new _visitor2['default']();
 
-	var _visitor = __webpack_require__(44);
+                WhitespaceControl.prototype.Program = function (program) {
+                    var doStandalone = !this.options.ignoreStandalone;
 
-	var _visitor2 = _interopRequireDefault(_visitor);
+                    var isRoot = !this.isRootSeen;
+                    this.isRootSeen = true;
 
-	function WhitespaceControl() {
-	  var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
+                    var body = program.body;
+                    for (var i = 0, l = body.length; i < l; i++) {
+                        var current = body[i],
+                            strip = this.accept(current);
 
-	  this.options = options;
-	}
-	WhitespaceControl.prototype = new _visitor2['default']();
+                        if (!strip) {
+                            continue;
+                        }
 
-	WhitespaceControl.prototype.Program = function (program) {
-	  var doStandalone = !this.options.ignoreStandalone;
+                        var _isPrevWhitespace = isPrevWhitespace(body, i, isRoot),
+                            _isNextWhitespace = isNextWhitespace(body, i, isRoot),
+                            openStandalone = strip.openStandalone && _isPrevWhitespace,
+                            closeStandalone = strip.closeStandalone && _isNextWhitespace,
+                            inlineStandalone = strip.inlineStandalone && _isPrevWhitespace && _isNextWhitespace;
 
-	  var isRoot = !this.isRootSeen;
-	  this.isRootSeen = true;
+                        if (strip.close) {
+                            omitRight(body, i, true);
+                        }
+                        if (strip.open) {
+                            omitLeft(body, i, true);
+                        }
 
-	  var body = program.body;
-	  for (var i = 0, l = body.length; i < l; i++) {
-	    var current = body[i],
-	        strip = this.accept(current);
+                        if (doStandalone && inlineStandalone) {
+                            omitRight(body, i);
 
-	    if (!strip) {
-	      continue;
-	    }
+                            if (omitLeft(body, i)) {
+                                // If we are on a standalone node, save the indent info for partials
+                                if (current.type === 'PartialStatement') {
+                                    // Pull out the whitespace from the final line
+                                    current.indent = /([ \t]+$)/.exec(body[i - 1].original)[1];
+                                }
+                            }
+                        }
+                        if (doStandalone && openStandalone) {
+                            omitRight((current.program || current.inverse).body);
 
-	    var _isPrevWhitespace = isPrevWhitespace(body, i, isRoot),
-	        _isNextWhitespace = isNextWhitespace(body, i, isRoot),
-	        openStandalone = strip.openStandalone && _isPrevWhitespace,
-	        closeStandalone = strip.closeStandalone && _isNextWhitespace,
-	        inlineStandalone = strip.inlineStandalone && _isPrevWhitespace && _isNextWhitespace;
+                            // Strip out the previous content node if it's whitespace only
+                            omitLeft(body, i);
+                        }
+                        if (doStandalone && closeStandalone) {
+                            // Always strip the next node
+                            omitRight(body, i);
 
-	    if (strip.close) {
-	      omitRight(body, i, true);
-	    }
-	    if (strip.open) {
-	      omitLeft(body, i, true);
-	    }
+                            omitLeft((current.inverse || current.program).body);
+                        }
+                    }
 
-	    if (doStandalone && inlineStandalone) {
-	      omitRight(body, i);
+                    return program;
+                };
 
-	      if (omitLeft(body, i)) {
-	        // If we are on a standalone node, save the indent info for partials
-	        if (current.type === 'PartialStatement') {
-	          // Pull out the whitespace from the final line
-	          current.indent = /([ \t]+$)/.exec(body[i - 1].original)[1];
-	        }
-	      }
-	    }
-	    if (doStandalone && openStandalone) {
-	      omitRight((current.program || current.inverse).body);
+                WhitespaceControl.prototype.BlockStatement = WhitespaceControl.prototype.DecoratorBlock = WhitespaceControl.prototype.PartialBlockStatement = function (block) {
+                    this.accept(block.program);
+                    this.accept(block.inverse);
 
-	      // Strip out the previous content node if it's whitespace only
-	      omitLeft(body, i);
-	    }
-	    if (doStandalone && closeStandalone) {
-	      // Always strip the next node
-	      omitRight(body, i);
+                    // Find the inverse program that is involed with whitespace stripping.
+                    var program = block.program || block.inverse,
+                        inverse = block.program && block.inverse,
+                        firstInverse = inverse,
+                        lastInverse = inverse;
 
-	      omitLeft((current.inverse || current.program).body);
-	    }
-	  }
+                    if (inverse && inverse.chained) {
+                        firstInverse = inverse.body[0].program;
 
-	  return program;
-	};
+                        // Walk the inverse chain to find the last inverse that is actually in the chain.
+                        while (lastInverse.chained) {
+                            lastInverse = lastInverse.body[lastInverse.body.length - 1].program;
+                        }
+                    }
 
-	WhitespaceControl.prototype.BlockStatement = WhitespaceControl.prototype.DecoratorBlock = WhitespaceControl.prototype.PartialBlockStatement = function (block) {
-	  this.accept(block.program);
-	  this.accept(block.inverse);
+                    var strip = {
+                        open: block.openStrip.open,
+                        close: block.closeStrip.close,
 
-	  // Find the inverse program that is involed with whitespace stripping.
-	  var program = block.program || block.inverse,
-	      inverse = block.program && block.inverse,
-	      firstInverse = inverse,
-	      lastInverse = inverse;
+                        // Determine the standalone candiacy. Basically flag our content as being possibly standalone
+                        // so our parent can determine if we actually are standalone
+                        openStandalone: isNextWhitespace(program.body),
+                        closeStandalone: isPrevWhitespace((firstInverse || program).body)
+                    };
 
-	  if (inverse && inverse.chained) {
-	    firstInverse = inverse.body[0].program;
+                    if (block.openStrip.close) {
+                        omitRight(program.body, null, true);
+                    }
 
-	    // Walk the inverse chain to find the last inverse that is actually in the chain.
-	    while (lastInverse.chained) {
-	      lastInverse = lastInverse.body[lastInverse.body.length - 1].program;
-	    }
-	  }
+                    if (inverse) {
+                        var inverseStrip = block.inverseStrip;
 
-	  var strip = {
-	    open: block.openStrip.open,
-	    close: block.closeStrip.close,
+                        if (inverseStrip.open) {
+                            omitLeft(program.body, null, true);
+                        }
 
-	    // Determine the standalone candiacy. Basically flag our content as being possibly standalone
-	    // so our parent can determine if we actually are standalone
-	    openStandalone: isNextWhitespace(program.body),
-	    closeStandalone: isPrevWhitespace((firstInverse || program).body)
-	  };
+                        if (inverseStrip.close) {
+                            omitRight(firstInverse.body, null, true);
+                        }
+                        if (block.closeStrip.open) {
+                            omitLeft(lastInverse.body, null, true);
+                        }
 
-	  if (block.openStrip.close) {
-	    omitRight(program.body, null, true);
-	  }
+                        // Find standalone else statments
+                        if (!this.options.ignoreStandalone && isPrevWhitespace(program.body) && isNextWhitespace(firstInverse.body)) {
+                            omitLeft(program.body);
+                            omitRight(firstInverse.body);
+                        }
+                    } else if (block.closeStrip.open) {
+                        omitLeft(program.body, null, true);
+                    }
 
-	  if (inverse) {
-	    var inverseStrip = block.inverseStrip;
+                    return strip;
+                };
 
-	    if (inverseStrip.open) {
-	      omitLeft(program.body, null, true);
-	    }
+                WhitespaceControl.prototype.Decorator = WhitespaceControl.prototype.MustacheStatement = function (mustache) {
+                    return mustache.strip;
+                };
 
-	    if (inverseStrip.close) {
-	      omitRight(firstInverse.body, null, true);
-	    }
-	    if (block.closeStrip.open) {
-	      omitLeft(lastInverse.body, null, true);
-	    }
+                WhitespaceControl.prototype.PartialStatement = WhitespaceControl.prototype.CommentStatement = function (node) {
+                    /* istanbul ignore next */
+                    var strip = node.strip || {};
+                    return {
+                        inlineStandalone: true,
+                        open: strip.open,
+                        close: strip.close
+                    };
+                };
 
-	    // Find standalone else statments
-	    if (!this.options.ignoreStandalone && isPrevWhitespace(program.body) && isNextWhitespace(firstInverse.body)) {
-	      omitLeft(program.body);
-	      omitRight(firstInverse.body);
-	    }
-	  } else if (block.closeStrip.open) {
-	    omitLeft(program.body, null, true);
-	  }
+                function isPrevWhitespace(body, i, isRoot) {
+                    if (i === undefined) {
+                        i = body.length;
+                    }
 
-	  return strip;
-	};
+                    // Nodes that end with newlines are considered whitespace (but are special
+                    // cased for strip operations)
+                    var prev = body[i - 1],
+                        sibling = body[i - 2];
+                    if (!prev) {
+                        return isRoot;
+                    }
 
-	WhitespaceControl.prototype.Decorator = WhitespaceControl.prototype.MustacheStatement = function (mustache) {
-	  return mustache.strip;
-	};
+                    if (prev.type === 'ContentStatement') {
+                        return (sibling || !isRoot ? /\r?\n\s*?$/ : /(^|\r?\n)\s*?$/).test(prev.original);
+                    }
+                }
 
-	WhitespaceControl.prototype.PartialStatement = WhitespaceControl.prototype.CommentStatement = function (node) {
-	  /* istanbul ignore next */
-	  var strip = node.strip || {};
-	  return {
-	    inlineStandalone: true,
-	    open: strip.open,
-	    close: strip.close
-	  };
-	};
+                function isNextWhitespace(body, i, isRoot) {
+                    if (i === undefined) {
+                        i = -1;
+                    }
 
-	function isPrevWhitespace(body, i, isRoot) {
-	  if (i === undefined) {
-	    i = body.length;
-	  }
+                    var next = body[i + 1],
+                        sibling = body[i + 2];
+                    if (!next) {
+                        return isRoot;
+                    }
 
-	  // Nodes that end with newlines are considered whitespace (but are special
-	  // cased for strip operations)
-	  var prev = body[i - 1],
-	      sibling = body[i - 2];
-	  if (!prev) {
-	    return isRoot;
-	  }
+                    if (next.type === 'ContentStatement') {
+                        return (sibling || !isRoot ? /^\s*?\r?\n/ : /^\s*?(\r?\n|$)/).test(next.original);
+                    }
+                }
 
-	  if (prev.type === 'ContentStatement') {
-	    return (sibling || !isRoot ? /\r?\n\s*?$/ : /(^|\r?\n)\s*?$/).test(prev.original);
-	  }
-	}
-	function isNextWhitespace(body, i, isRoot) {
-	  if (i === undefined) {
-	    i = -1;
-	  }
+                // Marks the node to the right of the position as omitted.
+                // I.e. {{foo}}' ' will mark the ' ' node as omitted.
+                //
+                // If i is undefined, then the first child will be marked as such.
+                //
+                // If mulitple is truthy then all whitespace will be stripped out until non-whitespace
+                // content is met.
+                function omitRight(body, i, multiple) {
+                    var current = body[i == null ? 0 : i + 1];
+                    if (!current || current.type !== 'ContentStatement' || !multiple && current.rightStripped) {
+                        return;
+                    }
 
-	  var next = body[i + 1],
-	      sibling = body[i + 2];
-	  if (!next) {
-	    return isRoot;
-	  }
+                    var original = current.value;
+                    current.value = current.value.replace(multiple ? /^\s+/ : /^[ \t]*\r?\n?/, '');
+                    current.rightStripped = current.value !== original;
+                }
 
-	  if (next.type === 'ContentStatement') {
-	    return (sibling || !isRoot ? /^\s*?\r?\n/ : /^\s*?(\r?\n|$)/).test(next.original);
-	  }
-	}
+                // Marks the node to the left of the position as omitted.
+                // I.e. ' '{{foo}} will mark the ' ' node as omitted.
+                //
+                // If i is undefined then the last child will be marked as such.
+                //
+                // If mulitple is truthy then all whitespace will be stripped out until non-whitespace
+                // content is met.
+                function omitLeft(body, i, multiple) {
+                    var current = body[i == null ? body.length - 1 : i - 1];
+                    if (!current || current.type !== 'ContentStatement' || !multiple && current.leftStripped) {
+                        return;
+                    }
 
-	// Marks the node to the right of the position as omitted.
-	// I.e. {{foo}}' ' will mark the ' ' node as omitted.
-	//
-	// If i is undefined, then the first child will be marked as such.
-	//
-	// If mulitple is truthy then all whitespace will be stripped out until non-whitespace
-	// content is met.
-	function omitRight(body, i, multiple) {
-	  var current = body[i == null ? 0 : i + 1];
-	  if (!current || current.type !== 'ContentStatement' || !multiple && current.rightStripped) {
-	    return;
-	  }
+                    // We omit the last node if it's whitespace only and not preceded by a non-content node.
+                    var original = current.value;
+                    current.value = current.value.replace(multiple ? /\s+$/ : /[ \t]+$/, '');
+                    current.leftStripped = current.value !== original;
+                    return current.leftStripped;
+                }
 
-	  var original = current.value;
-	  current.value = current.value.replace(multiple ? /^\s+/ : /^[ \t]*\r?\n?/, '');
-	  current.rightStripped = current.value !== original;
-	}
+                exports['default'] = WhitespaceControl;
+                module.exports = exports['default'];
 
-	// Marks the node to the left of the position as omitted.
-	// I.e. ' '{{foo}} will mark the ' ' node as omitted.
-	//
-	// If i is undefined then the last child will be marked as such.
-	//
-	// If mulitple is truthy then all whitespace will be stripped out until non-whitespace
-	// content is met.
-	function omitLeft(body, i, multiple) {
-	  var current = body[i == null ? body.length - 1 : i - 1];
-	  if (!current || current.type !== 'ContentStatement' || !multiple && current.leftStripped) {
-	    return;
-	  }
+                /***/
+            }),
+            /* 44 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	  // We omit the last node if it's whitespace only and not preceded by a non-content node.
-	  var original = current.value;
-	  current.value = current.value.replace(multiple ? /\s+$/ : /[ \t]+$/, '');
-	  current.leftStripped = current.value !== original;
-	  return current.leftStripped;
-	}
+                'use strict';
 
-	exports['default'] = WhitespaceControl;
-	module.exports = exports['default'];
+                var _interopRequireDefault = __webpack_require__(1)['default'];
 
-/***/ }),
-/* 44 */
-/***/ (function(module, exports, __webpack_require__) {
+                exports.__esModule = true;
 
-	'use strict';
+                var _exception = __webpack_require__(6);
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                var _exception2 = _interopRequireDefault(_exception);
 
-	exports.__esModule = true;
+                function Visitor() {
+                    this.parents = [];
+                }
 
-	var _exception = __webpack_require__(6);
+                Visitor.prototype = {
+                    constructor: Visitor,
+                    mutating: false,
 
-	var _exception2 = _interopRequireDefault(_exception);
+                    // Visits a given value. If mutating, will replace the value if necessary.
+                    acceptKey: function acceptKey(node, name) {
+                        var value = this.accept(node[name]);
+                        if (this.mutating) {
+                            // Hacky sanity check: This may have a few false positives for type for the helper
+                            // methods but will generally do the right thing without a lot of overhead.
+                            if (value && !Visitor.prototype[value.type]) {
+                                throw new _exception2['default']('Unexpected node type "' + value.type + '" found when accepting ' + name + ' on ' + node.type);
+                            }
+                            node[name] = value;
+                        }
+                    },
 
-	function Visitor() {
-	  this.parents = [];
-	}
+                    // Performs an accept operation with added sanity check to ensure
+                    // required keys are not removed.
+                    acceptRequired: function acceptRequired(node, name) {
+                        this.acceptKey(node, name);
 
-	Visitor.prototype = {
-	  constructor: Visitor,
-	  mutating: false,
+                        if (!node[name]) {
+                            throw new _exception2['default'](node.type + ' requires ' + name);
+                        }
+                    },
 
-	  // Visits a given value. If mutating, will replace the value if necessary.
-	  acceptKey: function acceptKey(node, name) {
-	    var value = this.accept(node[name]);
-	    if (this.mutating) {
-	      // Hacky sanity check: This may have a few false positives for type for the helper
-	      // methods but will generally do the right thing without a lot of overhead.
-	      if (value && !Visitor.prototype[value.type]) {
-	        throw new _exception2['default']('Unexpected node type "' + value.type + '" found when accepting ' + name + ' on ' + node.type);
-	      }
-	      node[name] = value;
-	    }
-	  },
+                    // Traverses a given array. If mutating, empty respnses will be removed
+                    // for child elements.
+                    acceptArray: function acceptArray(array) {
+                        for (var i = 0, l = array.length; i < l; i++) {
+                            this.acceptKey(array, i);
 
-	  // Performs an accept operation with added sanity check to ensure
-	  // required keys are not removed.
-	  acceptRequired: function acceptRequired(node, name) {
-	    this.acceptKey(node, name);
+                            if (!array[i]) {
+                                array.splice(i, 1);
+                                i--;
+                                l--;
+                            }
+                        }
+                    },
 
-	    if (!node[name]) {
-	      throw new _exception2['default'](node.type + ' requires ' + name);
-	    }
-	  },
+                    accept: function accept(object) {
+                        if (!object) {
+                            return;
+                        }
 
-	  // Traverses a given array. If mutating, empty respnses will be removed
-	  // for child elements.
-	  acceptArray: function acceptArray(array) {
-	    for (var i = 0, l = array.length; i < l; i++) {
-	      this.acceptKey(array, i);
+                        /* istanbul ignore next: Sanity code */
+                        if (!this[object.type]) {
+                            throw new _exception2['default']('Unknown type: ' + object.type, object);
+                        }
 
-	      if (!array[i]) {
-	        array.splice(i, 1);
-	        i--;
-	        l--;
-	      }
-	    }
-	  },
+                        if (this.current) {
+                            this.parents.unshift(this.current);
+                        }
+                        this.current = object;
 
-	  accept: function accept(object) {
-	    if (!object) {
-	      return;
-	    }
+                        var ret = this[object.type](object);
 
-	    /* istanbul ignore next: Sanity code */
-	    if (!this[object.type]) {
-	      throw new _exception2['default']('Unknown type: ' + object.type, object);
-	    }
+                        this.current = this.parents.shift();
 
-	    if (this.current) {
-	      this.parents.unshift(this.current);
-	    }
-	    this.current = object;
+                        if (!this.mutating || ret) {
+                            return ret;
+                        } else if (ret !== false) {
+                            return object;
+                        }
+                    },
 
-	    var ret = this[object.type](object);
+                    Program: function Program(program) {
+                        this.acceptArray(program.body);
+                    },
 
-	    this.current = this.parents.shift();
+                    MustacheStatement: visitSubExpression,
+                    Decorator: visitSubExpression,
 
-	    if (!this.mutating || ret) {
-	      return ret;
-	    } else if (ret !== false) {
-	      return object;
-	    }
-	  },
+                    BlockStatement: visitBlock,
+                    DecoratorBlock: visitBlock,
 
-	  Program: function Program(program) {
-	    this.acceptArray(program.body);
-	  },
+                    PartialStatement: visitPartial,
+                    PartialBlockStatement: function PartialBlockStatement(partial) {
+                        visitPartial.call(this, partial);
 
-	  MustacheStatement: visitSubExpression,
-	  Decorator: visitSubExpression,
+                        this.acceptKey(partial, 'program');
+                    },
 
-	  BlockStatement: visitBlock,
-	  DecoratorBlock: visitBlock,
+                    ContentStatement: function ContentStatement() /* content */ {
+                    },
+                    CommentStatement: function CommentStatement() /* comment */ {
+                    },
 
-	  PartialStatement: visitPartial,
-	  PartialBlockStatement: function PartialBlockStatement(partial) {
-	    visitPartial.call(this, partial);
+                    SubExpression: visitSubExpression,
 
-	    this.acceptKey(partial, 'program');
-	  },
+                    PathExpression: function PathExpression() /* path */ {
+                    },
 
-	  ContentStatement: function ContentStatement() /* content */{},
-	  CommentStatement: function CommentStatement() /* comment */{},
+                    StringLiteral: function StringLiteral() /* string */ {
+                    },
+                    NumberLiteral: function NumberLiteral() /* number */ {
+                    },
+                    BooleanLiteral: function BooleanLiteral() /* bool */ {
+                    },
+                    UndefinedLiteral: function UndefinedLiteral() /* literal */ {
+                    },
+                    NullLiteral: function NullLiteral() /* literal */ {
+                    },
 
-	  SubExpression: visitSubExpression,
+                    Hash: function Hash(hash) {
+                        this.acceptArray(hash.pairs);
+                    },
+                    HashPair: function HashPair(pair) {
+                        this.acceptRequired(pair, 'value');
+                    }
+                };
 
-	  PathExpression: function PathExpression() /* path */{},
+                function visitSubExpression(mustache) {
+                    this.acceptRequired(mustache, 'path');
+                    this.acceptArray(mustache.params);
+                    this.acceptKey(mustache, 'hash');
+                }
 
-	  StringLiteral: function StringLiteral() /* string */{},
-	  NumberLiteral: function NumberLiteral() /* number */{},
-	  BooleanLiteral: function BooleanLiteral() /* bool */{},
-	  UndefinedLiteral: function UndefinedLiteral() /* literal */{},
-	  NullLiteral: function NullLiteral() /* literal */{},
+                function visitBlock(block) {
+                    visitSubExpression.call(this, block);
 
-	  Hash: function Hash(hash) {
-	    this.acceptArray(hash.pairs);
-	  },
-	  HashPair: function HashPair(pair) {
-	    this.acceptRequired(pair, 'value');
-	  }
-	};
+                    this.acceptKey(block, 'program');
+                    this.acceptKey(block, 'inverse');
+                }
 
-	function visitSubExpression(mustache) {
-	  this.acceptRequired(mustache, 'path');
-	  this.acceptArray(mustache.params);
-	  this.acceptKey(mustache, 'hash');
-	}
-	function visitBlock(block) {
-	  visitSubExpression.call(this, block);
+                function visitPartial(partial) {
+                    this.acceptRequired(partial, 'name');
+                    this.acceptArray(partial.params);
+                    this.acceptKey(partial, 'hash');
+                }
 
-	  this.acceptKey(block, 'program');
-	  this.acceptKey(block, 'inverse');
-	}
-	function visitPartial(partial) {
-	  this.acceptRequired(partial, 'name');
-	  this.acceptArray(partial.params);
-	  this.acceptKey(partial, 'hash');
-	}
+                exports['default'] = Visitor;
+                module.exports = exports['default'];
 
-	exports['default'] = Visitor;
-	module.exports = exports['default'];
+                /***/
+            }),
+            /* 45 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-/***/ }),
-/* 45 */
-/***/ (function(module, exports, __webpack_require__) {
+                'use strict';
 
-	'use strict';
+                var _interopRequireDefault = __webpack_require__(1)['default'];
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                exports.__esModule = true;
+                exports.SourceLocation = SourceLocation;
+                exports.id = id;
+                exports.stripFlags = stripFlags;
+                exports.stripComment = stripComment;
+                exports.preparePath = preparePath;
+                exports.prepareMustache = prepareMustache;
+                exports.prepareRawBlock = prepareRawBlock;
+                exports.prepareBlock = prepareBlock;
+                exports.prepareProgram = prepareProgram;
+                exports.preparePartialBlock = preparePartialBlock;
 
-	exports.__esModule = true;
-	exports.SourceLocation = SourceLocation;
-	exports.id = id;
-	exports.stripFlags = stripFlags;
-	exports.stripComment = stripComment;
-	exports.preparePath = preparePath;
-	exports.prepareMustache = prepareMustache;
-	exports.prepareRawBlock = prepareRawBlock;
-	exports.prepareBlock = prepareBlock;
-	exports.prepareProgram = prepareProgram;
-	exports.preparePartialBlock = preparePartialBlock;
+                var _exception = __webpack_require__(6);
 
-	var _exception = __webpack_require__(6);
+                var _exception2 = _interopRequireDefault(_exception);
 
-	var _exception2 = _interopRequireDefault(_exception);
+                function validateClose(open, close) {
+                    close = close.path ? close.path.original : close;
 
-	function validateClose(open, close) {
-	  close = close.path ? close.path.original : close;
+                    if (open.path.original !== close) {
+                        var errorNode = {loc: open.path.loc};
 
-	  if (open.path.original !== close) {
-	    var errorNode = { loc: open.path.loc };
+                        throw new _exception2['default'](open.path.original + " doesn't match " + close, errorNode);
+                    }
+                }
 
-	    throw new _exception2['default'](open.path.original + " doesn't match " + close, errorNode);
-	  }
-	}
+                function SourceLocation(source, locInfo) {
+                    this.source = source;
+                    this.start = {
+                        line: locInfo.first_line,
+                        column: locInfo.first_column
+                    };
+                    this.end = {
+                        line: locInfo.last_line,
+                        column: locInfo.last_column
+                    };
+                }
 
-	function SourceLocation(source, locInfo) {
-	  this.source = source;
-	  this.start = {
-	    line: locInfo.first_line,
-	    column: locInfo.first_column
-	  };
-	  this.end = {
-	    line: locInfo.last_line,
-	    column: locInfo.last_column
-	  };
-	}
+                function id(token) {
+                    if (/^\[.*\]$/.test(token)) {
+                        return token.substring(1, token.length - 1);
+                    } else {
+                        return token;
+                    }
+                }
 
-	function id(token) {
-	  if (/^\[.*\]$/.test(token)) {
-	    return token.substring(1, token.length - 1);
-	  } else {
-	    return token;
-	  }
-	}
+                function stripFlags(open, close) {
+                    return {
+                        open: open.charAt(2) === '~',
+                        close: close.charAt(close.length - 3) === '~'
+                    };
+                }
 
-	function stripFlags(open, close) {
-	  return {
-	    open: open.charAt(2) === '~',
-	    close: close.charAt(close.length - 3) === '~'
-	  };
-	}
+                function stripComment(comment) {
+                    return comment.replace(/^\{\{~?!-?-?/, '').replace(/-?-?~?\}\}$/, '');
+                }
 
-	function stripComment(comment) {
-	  return comment.replace(/^\{\{~?!-?-?/, '').replace(/-?-?~?\}\}$/, '');
-	}
+                function preparePath(data, parts, loc) {
+                    loc = this.locInfo(loc);
 
-	function preparePath(data, parts, loc) {
-	  loc = this.locInfo(loc);
+                    var original = data ? '@' : '',
+                        dig = [],
+                        depth = 0;
 
-	  var original = data ? '@' : '',
-	      dig = [],
-	      depth = 0;
+                    for (var i = 0, l = parts.length; i < l; i++) {
+                        var part = parts[i].part,
 
-	  for (var i = 0, l = parts.length; i < l; i++) {
-	    var part = parts[i].part,
+                            // If we have [] syntax then we do not treat path references as operators,
+                            // i.e. foo.[this] resolves to approximately context.foo['this']
+                            isLiteral = parts[i].original !== part;
+                        original += (parts[i].separator || '') + part;
 
-	    // If we have [] syntax then we do not treat path references as operators,
-	    // i.e. foo.[this] resolves to approximately context.foo['this']
-	    isLiteral = parts[i].original !== part;
-	    original += (parts[i].separator || '') + part;
+                        if (!isLiteral && (part === '..' || part === '.' || part === 'this')) {
+                            if (dig.length > 0) {
+                                throw new _exception2['default']('Invalid path: ' + original, {loc: loc});
+                            } else if (part === '..') {
+                                depth++;
+                            }
+                        } else {
+                            dig.push(part);
+                        }
+                    }
 
-	    if (!isLiteral && (part === '..' || part === '.' || part === 'this')) {
-	      if (dig.length > 0) {
-	        throw new _exception2['default']('Invalid path: ' + original, { loc: loc });
-	      } else if (part === '..') {
-	        depth++;
-	      }
-	    } else {
-	      dig.push(part);
-	    }
-	  }
+                    return {
+                        type: 'PathExpression',
+                        data: data,
+                        depth: depth,
+                        parts: dig,
+                        original: original,
+                        loc: loc
+                    };
+                }
 
-	  return {
-	    type: 'PathExpression',
-	    data: data,
-	    depth: depth,
-	    parts: dig,
-	    original: original,
-	    loc: loc
-	  };
-	}
+                function prepareMustache(path, params, hash, open, strip, locInfo) {
+                    // Must use charAt to support IE pre-10
+                    var escapeFlag = open.charAt(3) || open.charAt(2),
+                        escaped = escapeFlag !== '{' && escapeFlag !== '&';
 
-	function prepareMustache(path, params, hash, open, strip, locInfo) {
-	  // Must use charAt to support IE pre-10
-	  var escapeFlag = open.charAt(3) || open.charAt(2),
-	      escaped = escapeFlag !== '{' && escapeFlag !== '&';
+                    var decorator = /\*/.test(open);
+                    return {
+                        type: decorator ? 'Decorator' : 'MustacheStatement',
+                        path: path,
+                        params: params,
+                        hash: hash,
+                        escaped: escaped,
+                        strip: strip,
+                        loc: this.locInfo(locInfo)
+                    };
+                }
 
-	  var decorator = /\*/.test(open);
-	  return {
-	    type: decorator ? 'Decorator' : 'MustacheStatement',
-	    path: path,
-	    params: params,
-	    hash: hash,
-	    escaped: escaped,
-	    strip: strip,
-	    loc: this.locInfo(locInfo)
-	  };
-	}
+                function prepareRawBlock(openRawBlock, contents, close, locInfo) {
+                    validateClose(openRawBlock, close);
 
-	function prepareRawBlock(openRawBlock, contents, close, locInfo) {
-	  validateClose(openRawBlock, close);
+                    locInfo = this.locInfo(locInfo);
+                    var program = {
+                        type: 'Program',
+                        body: contents,
+                        strip: {},
+                        loc: locInfo
+                    };
 
-	  locInfo = this.locInfo(locInfo);
-	  var program = {
-	    type: 'Program',
-	    body: contents,
-	    strip: {},
-	    loc: locInfo
-	  };
+                    return {
+                        type: 'BlockStatement',
+                        path: openRawBlock.path,
+                        params: openRawBlock.params,
+                        hash: openRawBlock.hash,
+                        program: program,
+                        openStrip: {},
+                        inverseStrip: {},
+                        closeStrip: {},
+                        loc: locInfo
+                    };
+                }
 
-	  return {
-	    type: 'BlockStatement',
-	    path: openRawBlock.path,
-	    params: openRawBlock.params,
-	    hash: openRawBlock.hash,
-	    program: program,
-	    openStrip: {},
-	    inverseStrip: {},
-	    closeStrip: {},
-	    loc: locInfo
-	  };
-	}
+                function prepareBlock(openBlock, program, inverseAndProgram, close, inverted, locInfo) {
+                    if (close && close.path) {
+                        validateClose(openBlock, close);
+                    }
 
-	function prepareBlock(openBlock, program, inverseAndProgram, close, inverted, locInfo) {
-	  if (close && close.path) {
-	    validateClose(openBlock, close);
-	  }
+                    var decorator = /\*/.test(openBlock.open);
 
-	  var decorator = /\*/.test(openBlock.open);
+                    program.blockParams = openBlock.blockParams;
 
-	  program.blockParams = openBlock.blockParams;
+                    var inverse = undefined,
+                        inverseStrip = undefined;
 
-	  var inverse = undefined,
-	      inverseStrip = undefined;
+                    if (inverseAndProgram) {
+                        if (decorator) {
+                            throw new _exception2['default']('Unexpected inverse block on decorator', inverseAndProgram);
+                        }
 
-	  if (inverseAndProgram) {
-	    if (decorator) {
-	      throw new _exception2['default']('Unexpected inverse block on decorator', inverseAndProgram);
-	    }
+                        if (inverseAndProgram.chain) {
+                            inverseAndProgram.program.body[0].closeStrip = close.strip;
+                        }
 
-	    if (inverseAndProgram.chain) {
-	      inverseAndProgram.program.body[0].closeStrip = close.strip;
-	    }
+                        inverseStrip = inverseAndProgram.strip;
+                        inverse = inverseAndProgram.program;
+                    }
 
-	    inverseStrip = inverseAndProgram.strip;
-	    inverse = inverseAndProgram.program;
-	  }
+                    if (inverted) {
+                        inverted = inverse;
+                        inverse = program;
+                        program = inverted;
+                    }
 
-	  if (inverted) {
-	    inverted = inverse;
-	    inverse = program;
-	    program = inverted;
-	  }
+                    return {
+                        type: decorator ? 'DecoratorBlock' : 'BlockStatement',
+                        path: openBlock.path,
+                        params: openBlock.params,
+                        hash: openBlock.hash,
+                        program: program,
+                        inverse: inverse,
+                        openStrip: openBlock.strip,
+                        inverseStrip: inverseStrip,
+                        closeStrip: close && close.strip,
+                        loc: this.locInfo(locInfo)
+                    };
+                }
 
-	  return {
-	    type: decorator ? 'DecoratorBlock' : 'BlockStatement',
-	    path: openBlock.path,
-	    params: openBlock.params,
-	    hash: openBlock.hash,
-	    program: program,
-	    inverse: inverse,
-	    openStrip: openBlock.strip,
-	    inverseStrip: inverseStrip,
-	    closeStrip: close && close.strip,
-	    loc: this.locInfo(locInfo)
-	  };
-	}
+                function prepareProgram(statements, loc) {
+                    if (!loc && statements.length) {
+                        var firstLoc = statements[0].loc,
+                            lastLoc = statements[statements.length - 1].loc;
 
-	function prepareProgram(statements, loc) {
-	  if (!loc && statements.length) {
-	    var firstLoc = statements[0].loc,
-	        lastLoc = statements[statements.length - 1].loc;
+                        /* istanbul ignore else */
+                        if (firstLoc && lastLoc) {
+                            loc = {
+                                source: firstLoc.source,
+                                start: {
+                                    line: firstLoc.start.line,
+                                    column: firstLoc.start.column
+                                },
+                                end: {
+                                    line: lastLoc.end.line,
+                                    column: lastLoc.end.column
+                                }
+                            };
+                        }
+                    }
 
-	    /* istanbul ignore else */
-	    if (firstLoc && lastLoc) {
-	      loc = {
-	        source: firstLoc.source,
-	        start: {
-	          line: firstLoc.start.line,
-	          column: firstLoc.start.column
-	        },
-	        end: {
-	          line: lastLoc.end.line,
-	          column: lastLoc.end.column
-	        }
-	      };
-	    }
-	  }
+                    return {
+                        type: 'Program',
+                        body: statements,
+                        strip: {},
+                        loc: loc
+                    };
+                }
 
-	  return {
-	    type: 'Program',
-	    body: statements,
-	    strip: {},
-	    loc: loc
-	  };
-	}
+                function preparePartialBlock(open, program, close, locInfo) {
+                    validateClose(open, close);
 
-	function preparePartialBlock(open, program, close, locInfo) {
-	  validateClose(open, close);
+                    return {
+                        type: 'PartialBlockStatement',
+                        name: open.path,
+                        params: open.params,
+                        hash: open.hash,
+                        program: program,
+                        openStrip: open.strip,
+                        closeStrip: close && close.strip,
+                        loc: this.locInfo(locInfo)
+                    };
+                }
 
-	  return {
-	    type: 'PartialBlockStatement',
-	    name: open.path,
-	    params: open.params,
-	    hash: open.hash,
-	    program: program,
-	    openStrip: open.strip,
-	    closeStrip: close && close.strip,
-	    loc: this.locInfo(locInfo)
-	  };
-	}
+                /***/
+            }),
+            /* 46 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-/***/ }),
-/* 46 */
-/***/ (function(module, exports, __webpack_require__) {
+                /* eslint-disable new-cap */
 
-	/* eslint-disable new-cap */
+                'use strict';
 
-	'use strict';
+                var _Object$create = __webpack_require__(47)['default'];
 
-	var _Object$create = __webpack_require__(47)['default'];
+                var _interopRequireDefault = __webpack_require__(1)['default'];
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                exports.__esModule = true;
+                exports.Compiler = Compiler;
+                exports.precompile = precompile;
+                exports.compile = compile;
 
-	exports.__esModule = true;
-	exports.Compiler = Compiler;
-	exports.precompile = precompile;
-	exports.compile = compile;
+                var _exception = __webpack_require__(6);
 
-	var _exception = __webpack_require__(6);
+                var _exception2 = _interopRequireDefault(_exception);
 
-	var _exception2 = _interopRequireDefault(_exception);
+                var _utils = __webpack_require__(5);
 
-	var _utils = __webpack_require__(5);
+                var _ast = __webpack_require__(40);
 
-	var _ast = __webpack_require__(40);
+                var _ast2 = _interopRequireDefault(_ast);
 
-	var _ast2 = _interopRequireDefault(_ast);
+                var slice = [].slice;
 
-	var slice = [].slice;
+                function Compiler() {
+                }
 
-	function Compiler() {}
+                // the foundHelper register will disambiguate helper lookup from finding a
+                // function in a context. This is necessary for mustache compatibility, which
+                // requires that context functions in blocks are evaluated by blockHelperMissing,
+                // and then proceed as if the resulting value was provided to blockHelperMissing.
 
-	// the foundHelper register will disambiguate helper lookup from finding a
-	// function in a context. This is necessary for mustache compatibility, which
-	// requires that context functions in blocks are evaluated by blockHelperMissing,
-	// and then proceed as if the resulting value was provided to blockHelperMissing.
+                Compiler.prototype = {
+                    compiler: Compiler,
 
-	Compiler.prototype = {
-	  compiler: Compiler,
+                    equals: function equals(other) {
+                        var len = this.opcodes.length;
+                        if (other.opcodes.length !== len) {
+                            return false;
+                        }
 
-	  equals: function equals(other) {
-	    var len = this.opcodes.length;
-	    if (other.opcodes.length !== len) {
-	      return false;
-	    }
+                        for (var i = 0; i < len; i++) {
+                            var opcode = this.opcodes[i],
+                                otherOpcode = other.opcodes[i];
+                            if (opcode.opcode !== otherOpcode.opcode || !argEquals(opcode.args, otherOpcode.args)) {
+                                return false;
+                            }
+                        }
 
-	    for (var i = 0; i < len; i++) {
-	      var opcode = this.opcodes[i],
-	          otherOpcode = other.opcodes[i];
-	      if (opcode.opcode !== otherOpcode.opcode || !argEquals(opcode.args, otherOpcode.args)) {
-	        return false;
-	      }
-	    }
+                        // We know that length is the same between the two arrays because they are directly tied
+                        // to the opcode behavior above.
+                        len = this.children.length;
+                        for (var i = 0; i < len; i++) {
+                            if (!this.children[i].equals(other.children[i])) {
+                                return false;
+                            }
+                        }
 
-	    // We know that length is the same between the two arrays because they are directly tied
-	    // to the opcode behavior above.
-	    len = this.children.length;
-	    for (var i = 0; i < len; i++) {
-	      if (!this.children[i].equals(other.children[i])) {
-	        return false;
-	      }
-	    }
+                        return true;
+                    },
 
-	    return true;
-	  },
+                    guid: 0,
 
-	  guid: 0,
+                    compile: function compile(program, options) {
+                        this.sourceNode = [];
+                        this.opcodes = [];
+                        this.children = [];
+                        this.options = options;
+                        this.stringParams = options.stringParams;
+                        this.trackIds = options.trackIds;
 
-	  compile: function compile(program, options) {
-	    this.sourceNode = [];
-	    this.opcodes = [];
-	    this.children = [];
-	    this.options = options;
-	    this.stringParams = options.stringParams;
-	    this.trackIds = options.trackIds;
+                        options.blockParams = options.blockParams || [];
 
-	    options.blockParams = options.blockParams || [];
+                        options.knownHelpers = _utils.extend(_Object$create(null), {
+                            'helperMissing': true,
+                            'blockHelperMissing': true,
+                            'each': true,
+                            'if': true,
+                            'unless': true,
+                            'with': true,
+                            'log': true,
+                            'lookup': true
+                        }, options.knownHelpers);
 
-	    options.knownHelpers = _utils.extend(_Object$create(null), {
-	      'helperMissing': true,
-	      'blockHelperMissing': true,
-	      'each': true,
-	      'if': true,
-	      'unless': true,
-	      'with': true,
-	      'log': true,
-	      'lookup': true
-	    }, options.knownHelpers);
+                        return this.accept(program);
+                    },
 
-	    return this.accept(program);
-	  },
+                    compileProgram: function compileProgram(program) {
+                        var childCompiler = new this.compiler(),
+                            // eslint-disable-line new-cap
+                            result = childCompiler.compile(program, this.options),
+                            guid = this.guid++;
 
-	  compileProgram: function compileProgram(program) {
-	    var childCompiler = new this.compiler(),
-	        // eslint-disable-line new-cap
-	    result = childCompiler.compile(program, this.options),
-	        guid = this.guid++;
+                        this.usePartial = this.usePartial || result.usePartial;
 
-	    this.usePartial = this.usePartial || result.usePartial;
+                        this.children[guid] = result;
+                        this.useDepths = this.useDepths || result.useDepths;
 
-	    this.children[guid] = result;
-	    this.useDepths = this.useDepths || result.useDepths;
+                        return guid;
+                    },
 
-	    return guid;
-	  },
+                    accept: function accept(node) {
+                        /* istanbul ignore next: Sanity code */
+                        if (!this[node.type]) {
+                            throw new _exception2['default']('Unknown type: ' + node.type, node);
+                        }
 
-	  accept: function accept(node) {
-	    /* istanbul ignore next: Sanity code */
-	    if (!this[node.type]) {
-	      throw new _exception2['default']('Unknown type: ' + node.type, node);
-	    }
+                        this.sourceNode.unshift(node);
+                        var ret = this[node.type](node);
+                        this.sourceNode.shift();
+                        return ret;
+                    },
 
-	    this.sourceNode.unshift(node);
-	    var ret = this[node.type](node);
-	    this.sourceNode.shift();
-	    return ret;
-	  },
+                    Program: function Program(program) {
+                        this.options.blockParams.unshift(program.blockParams);
 
-	  Program: function Program(program) {
-	    this.options.blockParams.unshift(program.blockParams);
+                        var body = program.body,
+                            bodyLength = body.length;
+                        for (var i = 0; i < bodyLength; i++) {
+                            this.accept(body[i]);
+                        }
 
-	    var body = program.body,
-	        bodyLength = body.length;
-	    for (var i = 0; i < bodyLength; i++) {
-	      this.accept(body[i]);
-	    }
+                        this.options.blockParams.shift();
 
-	    this.options.blockParams.shift();
+                        this.isSimple = bodyLength === 1;
+                        this.blockParams = program.blockParams ? program.blockParams.length : 0;
 
-	    this.isSimple = bodyLength === 1;
-	    this.blockParams = program.blockParams ? program.blockParams.length : 0;
+                        return this;
+                    },
 
-	    return this;
-	  },
+                    BlockStatement: function BlockStatement(block) {
+                        transformLiteralToPath(block);
 
-	  BlockStatement: function BlockStatement(block) {
-	    transformLiteralToPath(block);
+                        var program = block.program,
+                            inverse = block.inverse;
 
-	    var program = block.program,
-	        inverse = block.inverse;
+                        program = program && this.compileProgram(program);
+                        inverse = inverse && this.compileProgram(inverse);
 
-	    program = program && this.compileProgram(program);
-	    inverse = inverse && this.compileProgram(inverse);
+                        var type = this.classifySexpr(block);
 
-	    var type = this.classifySexpr(block);
+                        if (type === 'helper') {
+                            this.helperSexpr(block, program, inverse);
+                        } else if (type === 'simple') {
+                            this.simpleSexpr(block);
 
-	    if (type === 'helper') {
-	      this.helperSexpr(block, program, inverse);
-	    } else if (type === 'simple') {
-	      this.simpleSexpr(block);
+                            // now that the simple mustache is resolved, we need to
+                            // evaluate it by executing `blockHelperMissing`
+                            this.opcode('pushProgram', program);
+                            this.opcode('pushProgram', inverse);
+                            this.opcode('emptyHash');
+                            this.opcode('blockValue', block.path.original);
+                        } else {
+                            this.ambiguousSexpr(block, program, inverse);
 
-	      // now that the simple mustache is resolved, we need to
-	      // evaluate it by executing `blockHelperMissing`
-	      this.opcode('pushProgram', program);
-	      this.opcode('pushProgram', inverse);
-	      this.opcode('emptyHash');
-	      this.opcode('blockValue', block.path.original);
-	    } else {
-	      this.ambiguousSexpr(block, program, inverse);
+                            // now that the simple mustache is resolved, we need to
+                            // evaluate it by executing `blockHelperMissing`
+                            this.opcode('pushProgram', program);
+                            this.opcode('pushProgram', inverse);
+                            this.opcode('emptyHash');
+                            this.opcode('ambiguousBlockValue');
+                        }
 
-	      // now that the simple mustache is resolved, we need to
-	      // evaluate it by executing `blockHelperMissing`
-	      this.opcode('pushProgram', program);
-	      this.opcode('pushProgram', inverse);
-	      this.opcode('emptyHash');
-	      this.opcode('ambiguousBlockValue');
-	    }
+                        this.opcode('append');
+                    },
 
-	    this.opcode('append');
-	  },
+                    DecoratorBlock: function DecoratorBlock(decorator) {
+                        var program = decorator.program && this.compileProgram(decorator.program);
+                        var params = this.setupFullMustacheParams(decorator, program, undefined),
+                            path = decorator.path;
 
-	  DecoratorBlock: function DecoratorBlock(decorator) {
-	    var program = decorator.program && this.compileProgram(decorator.program);
-	    var params = this.setupFullMustacheParams(decorator, program, undefined),
-	        path = decorator.path;
+                        this.useDecorators = true;
+                        this.opcode('registerDecorator', params.length, path.original);
+                    },
 
-	    this.useDecorators = true;
-	    this.opcode('registerDecorator', params.length, path.original);
-	  },
+                    PartialStatement: function PartialStatement(partial) {
+                        this.usePartial = true;
 
-	  PartialStatement: function PartialStatement(partial) {
-	    this.usePartial = true;
+                        var program = partial.program;
+                        if (program) {
+                            program = this.compileProgram(partial.program);
+                        }
 
-	    var program = partial.program;
-	    if (program) {
-	      program = this.compileProgram(partial.program);
-	    }
+                        var params = partial.params;
+                        if (params.length > 1) {
+                            throw new _exception2['default']('Unsupported number of partial arguments: ' + params.length, partial);
+                        } else if (!params.length) {
+                            if (this.options.explicitPartialContext) {
+                                this.opcode('pushLiteral', 'undefined');
+                            } else {
+                                params.push({type: 'PathExpression', parts: [], depth: 0});
+                            }
+                        }
 
-	    var params = partial.params;
-	    if (params.length > 1) {
-	      throw new _exception2['default']('Unsupported number of partial arguments: ' + params.length, partial);
-	    } else if (!params.length) {
-	      if (this.options.explicitPartialContext) {
-	        this.opcode('pushLiteral', 'undefined');
-	      } else {
-	        params.push({ type: 'PathExpression', parts: [], depth: 0 });
-	      }
-	    }
+                        var partialName = partial.name.original,
+                            isDynamic = partial.name.type === 'SubExpression';
+                        if (isDynamic) {
+                            this.accept(partial.name);
+                        }
 
-	    var partialName = partial.name.original,
-	        isDynamic = partial.name.type === 'SubExpression';
-	    if (isDynamic) {
-	      this.accept(partial.name);
-	    }
+                        this.setupFullMustacheParams(partial, program, undefined, true);
 
-	    this.setupFullMustacheParams(partial, program, undefined, true);
+                        var indent = partial.indent || '';
+                        if (this.options.preventIndent && indent) {
+                            this.opcode('appendContent', indent);
+                            indent = '';
+                        }
 
-	    var indent = partial.indent || '';
-	    if (this.options.preventIndent && indent) {
-	      this.opcode('appendContent', indent);
-	      indent = '';
-	    }
+                        this.opcode('invokePartial', isDynamic, partialName, indent);
+                        this.opcode('append');
+                    },
+                    PartialBlockStatement: function PartialBlockStatement(partialBlock) {
+                        this.PartialStatement(partialBlock);
+                    },
 
-	    this.opcode('invokePartial', isDynamic, partialName, indent);
-	    this.opcode('append');
-	  },
-	  PartialBlockStatement: function PartialBlockStatement(partialBlock) {
-	    this.PartialStatement(partialBlock);
-	  },
+                    MustacheStatement: function MustacheStatement(mustache) {
+                        this.SubExpression(mustache);
 
-	  MustacheStatement: function MustacheStatement(mustache) {
-	    this.SubExpression(mustache);
+                        if (mustache.escaped && !this.options.noEscape) {
+                            this.opcode('appendEscaped');
+                        } else {
+                            this.opcode('append');
+                        }
+                    },
+                    Decorator: function Decorator(decorator) {
+                        this.DecoratorBlock(decorator);
+                    },
 
-	    if (mustache.escaped && !this.options.noEscape) {
-	      this.opcode('appendEscaped');
-	    } else {
-	      this.opcode('append');
-	    }
-	  },
-	  Decorator: function Decorator(decorator) {
-	    this.DecoratorBlock(decorator);
-	  },
+                    ContentStatement: function ContentStatement(content) {
+                        if (content.value) {
+                            this.opcode('appendContent', content.value);
+                        }
+                    },
 
-	  ContentStatement: function ContentStatement(content) {
-	    if (content.value) {
-	      this.opcode('appendContent', content.value);
-	    }
-	  },
+                    CommentStatement: function CommentStatement() {
+                    },
 
-	  CommentStatement: function CommentStatement() {},
+                    SubExpression: function SubExpression(sexpr) {
+                        transformLiteralToPath(sexpr);
+                        var type = this.classifySexpr(sexpr);
 
-	  SubExpression: function SubExpression(sexpr) {
-	    transformLiteralToPath(sexpr);
-	    var type = this.classifySexpr(sexpr);
+                        if (type === 'simple') {
+                            this.simpleSexpr(sexpr);
+                        } else if (type === 'helper') {
+                            this.helperSexpr(sexpr);
+                        } else {
+                            this.ambiguousSexpr(sexpr);
+                        }
+                    },
+                    ambiguousSexpr: function ambiguousSexpr(sexpr, program, inverse) {
+                        var path = sexpr.path,
+                            name = path.parts[0],
+                            isBlock = program != null || inverse != null;
 
-	    if (type === 'simple') {
-	      this.simpleSexpr(sexpr);
-	    } else if (type === 'helper') {
-	      this.helperSexpr(sexpr);
-	    } else {
-	      this.ambiguousSexpr(sexpr);
-	    }
-	  },
-	  ambiguousSexpr: function ambiguousSexpr(sexpr, program, inverse) {
-	    var path = sexpr.path,
-	        name = path.parts[0],
-	        isBlock = program != null || inverse != null;
+                        this.opcode('getContext', path.depth);
 
-	    this.opcode('getContext', path.depth);
+                        this.opcode('pushProgram', program);
+                        this.opcode('pushProgram', inverse);
 
-	    this.opcode('pushProgram', program);
-	    this.opcode('pushProgram', inverse);
+                        path.strict = true;
+                        this.accept(path);
 
-	    path.strict = true;
-	    this.accept(path);
+                        this.opcode('invokeAmbiguous', name, isBlock);
+                    },
 
-	    this.opcode('invokeAmbiguous', name, isBlock);
-	  },
+                    simpleSexpr: function simpleSexpr(sexpr) {
+                        var path = sexpr.path;
+                        path.strict = true;
+                        this.accept(path);
+                        this.opcode('resolvePossibleLambda');
+                    },
 
-	  simpleSexpr: function simpleSexpr(sexpr) {
-	    var path = sexpr.path;
-	    path.strict = true;
-	    this.accept(path);
-	    this.opcode('resolvePossibleLambda');
-	  },
+                    helperSexpr: function helperSexpr(sexpr, program, inverse) {
+                        var params = this.setupFullMustacheParams(sexpr, program, inverse),
+                            path = sexpr.path,
+                            name = path.parts[0];
 
-	  helperSexpr: function helperSexpr(sexpr, program, inverse) {
-	    var params = this.setupFullMustacheParams(sexpr, program, inverse),
-	        path = sexpr.path,
-	        name = path.parts[0];
+                        if (this.options.knownHelpers[name]) {
+                            this.opcode('invokeKnownHelper', params.length, name);
+                        } else if (this.options.knownHelpersOnly) {
+                            throw new _exception2['default']('You specified knownHelpersOnly, but used the unknown helper ' + name, sexpr);
+                        } else {
+                            path.strict = true;
+                            path.falsy = true;
 
-	    if (this.options.knownHelpers[name]) {
-	      this.opcode('invokeKnownHelper', params.length, name);
-	    } else if (this.options.knownHelpersOnly) {
-	      throw new _exception2['default']('You specified knownHelpersOnly, but used the unknown helper ' + name, sexpr);
-	    } else {
-	      path.strict = true;
-	      path.falsy = true;
+                            this.accept(path);
+                            this.opcode('invokeHelper', params.length, path.original, _ast2['default'].helpers.simpleId(path));
+                        }
+                    },
 
-	      this.accept(path);
-	      this.opcode('invokeHelper', params.length, path.original, _ast2['default'].helpers.simpleId(path));
-	    }
-	  },
+                    PathExpression: function PathExpression(path) {
+                        this.addDepth(path.depth);
+                        this.opcode('getContext', path.depth);
 
-	  PathExpression: function PathExpression(path) {
-	    this.addDepth(path.depth);
-	    this.opcode('getContext', path.depth);
+                        var name = path.parts[0],
+                            scoped = _ast2['default'].helpers.scopedId(path),
+                            blockParamId = !path.depth && !scoped && this.blockParamIndex(name);
 
-	    var name = path.parts[0],
-	        scoped = _ast2['default'].helpers.scopedId(path),
-	        blockParamId = !path.depth && !scoped && this.blockParamIndex(name);
+                        if (blockParamId) {
+                            this.opcode('lookupBlockParam', blockParamId, path.parts);
+                        } else if (!name) {
+                            // Context reference, i.e. `{{foo .}}` or `{{foo ..}}`
+                            this.opcode('pushContext');
+                        } else if (path.data) {
+                            this.options.data = true;
+                            this.opcode('lookupData', path.depth, path.parts, path.strict);
+                        } else {
+                            this.opcode('lookupOnContext', path.parts, path.falsy, path.strict, scoped);
+                        }
+                    },
 
-	    if (blockParamId) {
-	      this.opcode('lookupBlockParam', blockParamId, path.parts);
-	    } else if (!name) {
-	      // Context reference, i.e. `{{foo .}}` or `{{foo ..}}`
-	      this.opcode('pushContext');
-	    } else if (path.data) {
-	      this.options.data = true;
-	      this.opcode('lookupData', path.depth, path.parts, path.strict);
-	    } else {
-	      this.opcode('lookupOnContext', path.parts, path.falsy, path.strict, scoped);
-	    }
-	  },
+                    StringLiteral: function StringLiteral(string) {
+                        this.opcode('pushString', string.value);
+                    },
 
-	  StringLiteral: function StringLiteral(string) {
-	    this.opcode('pushString', string.value);
-	  },
+                    NumberLiteral: function NumberLiteral(number) {
+                        this.opcode('pushLiteral', number.value);
+                    },
 
-	  NumberLiteral: function NumberLiteral(number) {
-	    this.opcode('pushLiteral', number.value);
-	  },
+                    BooleanLiteral: function BooleanLiteral(bool) {
+                        this.opcode('pushLiteral', bool.value);
+                    },
 
-	  BooleanLiteral: function BooleanLiteral(bool) {
-	    this.opcode('pushLiteral', bool.value);
-	  },
+                    UndefinedLiteral: function UndefinedLiteral() {
+                        this.opcode('pushLiteral', 'undefined');
+                    },
 
-	  UndefinedLiteral: function UndefinedLiteral() {
-	    this.opcode('pushLiteral', 'undefined');
-	  },
+                    NullLiteral: function NullLiteral() {
+                        this.opcode('pushLiteral', 'null');
+                    },
 
-	  NullLiteral: function NullLiteral() {
-	    this.opcode('pushLiteral', 'null');
-	  },
+                    Hash: function Hash(hash) {
+                        var pairs = hash.pairs,
+                            i = 0,
+                            l = pairs.length;
 
-	  Hash: function Hash(hash) {
-	    var pairs = hash.pairs,
-	        i = 0,
-	        l = pairs.length;
+                        this.opcode('pushHash');
 
-	    this.opcode('pushHash');
+                        for (; i < l; i++) {
+                            this.pushParam(pairs[i].value);
+                        }
+                        while (i--) {
+                            this.opcode('assignToHash', pairs[i].key);
+                        }
+                        this.opcode('popHash');
+                    },
 
-	    for (; i < l; i++) {
-	      this.pushParam(pairs[i].value);
-	    }
-	    while (i--) {
-	      this.opcode('assignToHash', pairs[i].key);
-	    }
-	    this.opcode('popHash');
-	  },
+                    // HELPERS
+                    opcode: function opcode(name) {
+                        this.opcodes.push({opcode: name, args: slice.call(arguments, 1), loc: this.sourceNode[0].loc});
+                    },
 
-	  // HELPERS
-	  opcode: function opcode(name) {
-	    this.opcodes.push({ opcode: name, args: slice.call(arguments, 1), loc: this.sourceNode[0].loc });
-	  },
+                    addDepth: function addDepth(depth) {
+                        if (!depth) {
+                            return;
+                        }
 
-	  addDepth: function addDepth(depth) {
-	    if (!depth) {
-	      return;
-	    }
+                        this.useDepths = true;
+                    },
 
-	    this.useDepths = true;
-	  },
+                    classifySexpr: function classifySexpr(sexpr) {
+                        var isSimple = _ast2['default'].helpers.simpleId(sexpr.path);
 
-	  classifySexpr: function classifySexpr(sexpr) {
-	    var isSimple = _ast2['default'].helpers.simpleId(sexpr.path);
+                        var isBlockParam = isSimple && !!this.blockParamIndex(sexpr.path.parts[0]);
 
-	    var isBlockParam = isSimple && !!this.blockParamIndex(sexpr.path.parts[0]);
+                        // a mustache is an eligible helper if:
+                        // * its id is simple (a single part, not `this` or `..`)
+                        var isHelper = !isBlockParam && _ast2['default'].helpers.helperExpression(sexpr);
 
-	    // a mustache is an eligible helper if:
-	    // * its id is simple (a single part, not `this` or `..`)
-	    var isHelper = !isBlockParam && _ast2['default'].helpers.helperExpression(sexpr);
+                        // if a mustache is an eligible helper but not a definite
+                        // helper, it is ambiguous, and will be resolved in a later
+                        // pass or at runtime.
+                        var isEligible = !isBlockParam && (isHelper || isSimple);
 
-	    // if a mustache is an eligible helper but not a definite
-	    // helper, it is ambiguous, and will be resolved in a later
-	    // pass or at runtime.
-	    var isEligible = !isBlockParam && (isHelper || isSimple);
+                        // if ambiguous, we can possibly resolve the ambiguity now
+                        // An eligible helper is one that does not have a complex path, i.e. `this.foo`, `../foo` etc.
+                        if (isEligible && !isHelper) {
+                            var _name = sexpr.path.parts[0],
+                                options = this.options;
+                            if (options.knownHelpers[_name]) {
+                                isHelper = true;
+                            } else if (options.knownHelpersOnly) {
+                                isEligible = false;
+                            }
+                        }
 
-	    // if ambiguous, we can possibly resolve the ambiguity now
-	    // An eligible helper is one that does not have a complex path, i.e. `this.foo`, `../foo` etc.
-	    if (isEligible && !isHelper) {
-	      var _name = sexpr.path.parts[0],
-	          options = this.options;
-	      if (options.knownHelpers[_name]) {
-	        isHelper = true;
-	      } else if (options.knownHelpersOnly) {
-	        isEligible = false;
-	      }
-	    }
+                        if (isHelper) {
+                            return 'helper';
+                        } else if (isEligible) {
+                            return 'ambiguous';
+                        } else {
+                            return 'simple';
+                        }
+                    },
 
-	    if (isHelper) {
-	      return 'helper';
-	    } else if (isEligible) {
-	      return 'ambiguous';
-	    } else {
-	      return 'simple';
-	    }
-	  },
+                    pushParams: function pushParams(params) {
+                        for (var i = 0, l = params.length; i < l; i++) {
+                            this.pushParam(params[i]);
+                        }
+                    },
 
-	  pushParams: function pushParams(params) {
-	    for (var i = 0, l = params.length; i < l; i++) {
-	      this.pushParam(params[i]);
-	    }
-	  },
+                    pushParam: function pushParam(val) {
+                        var value = val.value != null ? val.value : val.original || '';
 
-	  pushParam: function pushParam(val) {
-	    var value = val.value != null ? val.value : val.original || '';
+                        if (this.stringParams) {
+                            if (value.replace) {
+                                value = value.replace(/^(\.?\.\/)*/g, '').replace(/\//g, '.');
+                            }
 
-	    if (this.stringParams) {
-	      if (value.replace) {
-	        value = value.replace(/^(\.?\.\/)*/g, '').replace(/\//g, '.');
-	      }
+                            if (val.depth) {
+                                this.addDepth(val.depth);
+                            }
+                            this.opcode('getContext', val.depth || 0);
+                            this.opcode('pushStringParam', value, val.type);
 
-	      if (val.depth) {
-	        this.addDepth(val.depth);
-	      }
-	      this.opcode('getContext', val.depth || 0);
-	      this.opcode('pushStringParam', value, val.type);
+                            if (val.type === 'SubExpression') {
+                                // SubExpressions get evaluated and passed in
+                                // in string params mode.
+                                this.accept(val);
+                            }
+                        } else {
+                            if (this.trackIds) {
+                                var blockParamIndex = undefined;
+                                if (val.parts && !_ast2['default'].helpers.scopedId(val) && !val.depth) {
+                                    blockParamIndex = this.blockParamIndex(val.parts[0]);
+                                }
+                                if (blockParamIndex) {
+                                    var blockParamChild = val.parts.slice(1).join('.');
+                                    this.opcode('pushId', 'BlockParam', blockParamIndex, blockParamChild);
+                                } else {
+                                    value = val.original || value;
+                                    if (value.replace) {
+                                        value = value.replace(/^this(?:\.|$)/, '').replace(/^\.\//, '').replace(/^\.$/, '');
+                                    }
 
-	      if (val.type === 'SubExpression') {
-	        // SubExpressions get evaluated and passed in
-	        // in string params mode.
-	        this.accept(val);
-	      }
-	    } else {
-	      if (this.trackIds) {
-	        var blockParamIndex = undefined;
-	        if (val.parts && !_ast2['default'].helpers.scopedId(val) && !val.depth) {
-	          blockParamIndex = this.blockParamIndex(val.parts[0]);
-	        }
-	        if (blockParamIndex) {
-	          var blockParamChild = val.parts.slice(1).join('.');
-	          this.opcode('pushId', 'BlockParam', blockParamIndex, blockParamChild);
-	        } else {
-	          value = val.original || value;
-	          if (value.replace) {
-	            value = value.replace(/^this(?:\.|$)/, '').replace(/^\.\//, '').replace(/^\.$/, '');
-	          }
+                                    this.opcode('pushId', val.type, value);
+                                }
+                            }
+                            this.accept(val);
+                        }
+                    },
 
-	          this.opcode('pushId', val.type, value);
-	        }
-	      }
-	      this.accept(val);
-	    }
-	  },
+                    setupFullMustacheParams: function setupFullMustacheParams(sexpr, program, inverse, omitEmpty) {
+                        var params = sexpr.params;
+                        this.pushParams(params);
 
-	  setupFullMustacheParams: function setupFullMustacheParams(sexpr, program, inverse, omitEmpty) {
-	    var params = sexpr.params;
-	    this.pushParams(params);
+                        this.opcode('pushProgram', program);
+                        this.opcode('pushProgram', inverse);
 
-	    this.opcode('pushProgram', program);
-	    this.opcode('pushProgram', inverse);
+                        if (sexpr.hash) {
+                            this.accept(sexpr.hash);
+                        } else {
+                            this.opcode('emptyHash', omitEmpty);
+                        }
 
-	    if (sexpr.hash) {
-	      this.accept(sexpr.hash);
-	    } else {
-	      this.opcode('emptyHash', omitEmpty);
-	    }
+                        return params;
+                    },
 
-	    return params;
-	  },
+                    blockParamIndex: function blockParamIndex(name) {
+                        for (var depth = 0, len = this.options.blockParams.length; depth < len; depth++) {
+                            var blockParams = this.options.blockParams[depth],
+                                param = blockParams && _utils.indexOf(blockParams, name);
+                            if (blockParams && param >= 0) {
+                                return [depth, param];
+                            }
+                        }
+                    }
+                };
 
-	  blockParamIndex: function blockParamIndex(name) {
-	    for (var depth = 0, len = this.options.blockParams.length; depth < len; depth++) {
-	      var blockParams = this.options.blockParams[depth],
-	          param = blockParams && _utils.indexOf(blockParams, name);
-	      if (blockParams && param >= 0) {
-	        return [depth, param];
-	      }
-	    }
-	  }
-	};
+                function precompile(input, options, env) {
+                    if (input == null || typeof input !== 'string' && input.type !== 'Program') {
+                        throw new _exception2['default']('You must pass a string or Handlebars AST to Handlebars.precompile. You passed ' + input);
+                    }
 
-	function precompile(input, options, env) {
-	  if (input == null || typeof input !== 'string' && input.type !== 'Program') {
-	    throw new _exception2['default']('You must pass a string or Handlebars AST to Handlebars.precompile. You passed ' + input);
-	  }
+                    options = options || {};
+                    if (!('data' in options)) {
+                        options.data = true;
+                    }
+                    if (options.compat) {
+                        options.useDepths = true;
+                    }
 
-	  options = options || {};
-	  if (!('data' in options)) {
-	    options.data = true;
-	  }
-	  if (options.compat) {
-	    options.useDepths = true;
-	  }
+                    var ast = env.parse(input, options),
+                        environment = new env.Compiler().compile(ast, options);
+                    return new env.JavaScriptCompiler().compile(environment, options);
+                }
 
-	  var ast = env.parse(input, options),
-	      environment = new env.Compiler().compile(ast, options);
-	  return new env.JavaScriptCompiler().compile(environment, options);
-	}
+                function compile(input, options, env) {
+                    if (options === undefined) options = {};
 
-	function compile(input, options, env) {
-	  if (options === undefined) options = {};
+                    if (input == null || typeof input !== 'string' && input.type !== 'Program') {
+                        throw new _exception2['default']('You must pass a string or Handlebars AST to Handlebars.compile. You passed ' + input);
+                    }
 
-	  if (input == null || typeof input !== 'string' && input.type !== 'Program') {
-	    throw new _exception2['default']('You must pass a string or Handlebars AST to Handlebars.compile. You passed ' + input);
-	  }
+                    options = _utils.extend({}, options);
+                    if (!('data' in options)) {
+                        options.data = true;
+                    }
+                    if (options.compat) {
+                        options.useDepths = true;
+                    }
 
-	  options = _utils.extend({}, options);
-	  if (!('data' in options)) {
-	    options.data = true;
-	  }
-	  if (options.compat) {
-	    options.useDepths = true;
-	  }
+                    var compiled = undefined;
 
-	  var compiled = undefined;
+                    function compileInput() {
+                        var ast = env.parse(input, options),
+                            environment = new env.Compiler().compile(ast, options),
+                            templateSpec = new env.JavaScriptCompiler().compile(environment, options, undefined, true);
+                        return env.template(templateSpec);
+                    }
 
-	  function compileInput() {
-	    var ast = env.parse(input, options),
-	        environment = new env.Compiler().compile(ast, options),
-	        templateSpec = new env.JavaScriptCompiler().compile(environment, options, undefined, true);
-	    return env.template(templateSpec);
-	  }
+                    // Template is only compiled on first use and cached after that point.
+                    function ret(context, execOptions) {
+                        if (!compiled) {
+                            compiled = compileInput();
+                        }
+                        return compiled.call(this, context, execOptions);
+                    }
 
-	  // Template is only compiled on first use and cached after that point.
-	  function ret(context, execOptions) {
-	    if (!compiled) {
-	      compiled = compileInput();
-	    }
-	    return compiled.call(this, context, execOptions);
-	  }
-	  ret._setup = function (setupOptions) {
-	    if (!compiled) {
-	      compiled = compileInput();
-	    }
-	    return compiled._setup(setupOptions);
-	  };
-	  ret._child = function (i, data, blockParams, depths) {
-	    if (!compiled) {
-	      compiled = compileInput();
-	    }
-	    return compiled._child(i, data, blockParams, depths);
-	  };
-	  return ret;
-	}
+                    ret._setup = function (setupOptions) {
+                        if (!compiled) {
+                            compiled = compileInput();
+                        }
+                        return compiled._setup(setupOptions);
+                    };
+                    ret._child = function (i, data, blockParams, depths) {
+                        if (!compiled) {
+                            compiled = compileInput();
+                        }
+                        return compiled._child(i, data, blockParams, depths);
+                    };
+                    return ret;
+                }
 
-	function argEquals(a, b) {
-	  if (a === b) {
-	    return true;
-	  }
+                function argEquals(a, b) {
+                    if (a === b) {
+                        return true;
+                    }
 
-	  if (_utils.isArray(a) && _utils.isArray(b) && a.length === b.length) {
-	    for (var i = 0; i < a.length; i++) {
-	      if (!argEquals(a[i], b[i])) {
-	        return false;
-	      }
-	    }
-	    return true;
-	  }
-	}
+                    if (_utils.isArray(a) && _utils.isArray(b) && a.length === b.length) {
+                        for (var i = 0; i < a.length; i++) {
+                            if (!argEquals(a[i], b[i])) {
+                                return false;
+                            }
+                        }
+                        return true;
+                    }
+                }
 
-	function transformLiteralToPath(sexpr) {
-	  if (!sexpr.path.parts) {
-	    var literal = sexpr.path;
-	    // Casting to string here to make false and 0 literal values play nicely with the rest
-	    // of the system.
-	    sexpr.path = {
-	      type: 'PathExpression',
-	      data: false,
-	      depth: 0,
-	      parts: [literal.original + ''],
-	      original: literal.original + '',
-	      loc: literal.loc
-	    };
-	  }
-	}
+                function transformLiteralToPath(sexpr) {
+                    if (!sexpr.path.parts) {
+                        var literal = sexpr.path;
+                        // Casting to string here to make false and 0 literal values play nicely with the rest
+                        // of the system.
+                        sexpr.path = {
+                            type: 'PathExpression',
+                            data: false,
+                            depth: 0,
+                            parts: [literal.original + ''],
+                            original: literal.original + '',
+                            loc: literal.loc
+                        };
+                    }
+                }
 
-/***/ }),
-/* 47 */
-/***/ (function(module, exports, __webpack_require__) {
+                /***/
+            }),
+            /* 47 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	module.exports = { "default": __webpack_require__(48), __esModule: true };
+                module.exports = {"default": __webpack_require__(48), __esModule: true};
 
-/***/ }),
-/* 48 */
-/***/ (function(module, exports, __webpack_require__) {
+                /***/
+            }),
+            /* 48 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	var $ = __webpack_require__(9);
-	module.exports = function create(P, D){
-	  return $.create(P, D);
-	};
+                var $ = __webpack_require__(9);
+                module.exports = function create(P, D) {
+                    return $.create(P, D);
+                };
 
-/***/ }),
-/* 49 */
-/***/ (function(module, exports, __webpack_require__) {
+                /***/
+            }),
+            /* 49 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	'use strict';
+                'use strict';
 
-	var _Object$keys = __webpack_require__(13)['default'];
+                var _Object$keys = __webpack_require__(13)['default'];
 
-	var _interopRequireDefault = __webpack_require__(1)['default'];
+                var _interopRequireDefault = __webpack_require__(1)['default'];
 
-	exports.__esModule = true;
+                exports.__esModule = true;
 
-	var _base = __webpack_require__(4);
+                var _base = __webpack_require__(4);
 
-	var _exception = __webpack_require__(6);
+                var _exception = __webpack_require__(6);
 
-	var _exception2 = _interopRequireDefault(_exception);
+                var _exception2 = _interopRequireDefault(_exception);
 
-	var _utils = __webpack_require__(5);
+                var _utils = __webpack_require__(5);
 
-	var _codeGen = __webpack_require__(50);
+                var _codeGen = __webpack_require__(50);
 
-	var _codeGen2 = _interopRequireDefault(_codeGen);
+                var _codeGen2 = _interopRequireDefault(_codeGen);
 
-	var _helpersLookup = __webpack_require__(28);
+                var _helpersLookup = __webpack_require__(28);
 
-	function Literal(value) {
-	  this.value = value;
-	}
+                function Literal(value) {
+                    this.value = value;
+                }
 
-	function JavaScriptCompiler() {}
+                function JavaScriptCompiler() {
+                }
 
-	JavaScriptCompiler.prototype = {
-	  // PUBLIC API: You can override these methods in a subclass to provide
-	  // alternative compiled forms for name lookup and buffering semantics
-	  nameLookup: function nameLookup(parent, name /* , type*/) {
-	    if (_helpersLookup.dangerousPropertyRegex.test(name)) {
-	      var isEnumerable = [this.aliasable('container.propertyIsEnumerable'), '.call(', parent, ',', JSON.stringify(name), ')'];
-	      return ['(', isEnumerable, '?', _actualLookup(), ' : undefined)'];
-	    }
-	    return _actualLookup();
+                JavaScriptCompiler.prototype = {
+                    // PUBLIC API: You can override these methods in a subclass to provide
+                    // alternative compiled forms for name lookup and buffering semantics
+                    nameLookup: function nameLookup(parent, name /* , type*/) {
+                        if (_helpersLookup.dangerousPropertyRegex.test(name)) {
+                            var isEnumerable = [this.aliasable('container.propertyIsEnumerable'), '.call(', parent, ',', JSON.stringify(name), ')'];
+                            return ['(', isEnumerable, '?', _actualLookup(), ' : undefined)'];
+                        }
+                        return _actualLookup();
 
-	    function _actualLookup() {
-	      if (JavaScriptCompiler.isValidJavaScriptVariableName(name)) {
-	        return [parent, '.', name];
-	      } else {
-	        return [parent, '[', JSON.stringify(name), ']'];
-	      }
-	    }
-	  },
-	  depthedLookup: function depthedLookup(name) {
-	    return [this.aliasable('container.lookup'), '(depths, "', name, '")'];
-	  },
+                        function _actualLookup() {
+                            if (JavaScriptCompiler.isValidJavaScriptVariableName(name)) {
+                                return [parent, '.', name];
+                            } else {
+                                return [parent, '[', JSON.stringify(name), ']'];
+                            }
+                        }
+                    },
+                    depthedLookup: function depthedLookup(name) {
+                        return [this.aliasable('container.lookup'), '(depths, "', name, '")'];
+                    },
 
-	  compilerInfo: function compilerInfo() {
-	    var revision = _base.COMPILER_REVISION,
-	        versions = _base.REVISION_CHANGES[revision];
-	    return [revision, versions];
-	  },
+                    compilerInfo: function compilerInfo() {
+                        var revision = _base.COMPILER_REVISION,
+                            versions = _base.REVISION_CHANGES[revision];
+                        return [revision, versions];
+                    },
 
-	  appendToBuffer: function appendToBuffer(source, location, explicit) {
-	    // Force a source as this simplifies the merge logic.
-	    if (!_utils.isArray(source)) {
-	      source = [source];
-	    }
-	    source = this.source.wrap(source, location);
+                    appendToBuffer: function appendToBuffer(source, location, explicit) {
+                        // Force a source as this simplifies the merge logic.
+                        if (!_utils.isArray(source)) {
+                            source = [source];
+                        }
+                        source = this.source.wrap(source, location);
 
-	    if (this.environment.isSimple) {
-	      return ['return ', source, ';'];
-	    } else if (explicit) {
-	      // This is a case where the buffer operation occurs as a child of another
-	      // construct, generally braces. We have to explicitly output these buffer
-	      // operations to ensure that the emitted code goes in the correct location.
-	      return ['buffer += ', source, ';'];
-	    } else {
-	      source.appendToBuffer = true;
-	      return source;
-	    }
-	  },
+                        if (this.environment.isSimple) {
+                            return ['return ', source, ';'];
+                        } else if (explicit) {
+                            // This is a case where the buffer operation occurs as a child of another
+                            // construct, generally braces. We have to explicitly output these buffer
+                            // operations to ensure that the emitted code goes in the correct location.
+                            return ['buffer += ', source, ';'];
+                        } else {
+                            source.appendToBuffer = true;
+                            return source;
+                        }
+                    },
 
-	  initializeBuffer: function initializeBuffer() {
-	    return this.quotedString('');
-	  },
-	  // END PUBLIC API
+                    initializeBuffer: function initializeBuffer() {
+                        return this.quotedString('');
+                    },
+                    // END PUBLIC API
 
-	  compile: function compile(environment, options, context, asObject) {
-	    this.environment = environment;
-	    this.options = options;
-	    this.stringParams = this.options.stringParams;
-	    this.trackIds = this.options.trackIds;
-	    this.precompile = !asObject;
+                    compile: function compile(environment, options, context, asObject) {
+                        this.environment = environment;
+                        this.options = options;
+                        this.stringParams = this.options.stringParams;
+                        this.trackIds = this.options.trackIds;
+                        this.precompile = !asObject;
 
-	    this.name = this.environment.name;
-	    this.isChild = !!context;
-	    this.context = context || {
-	      decorators: [],
-	      programs: [],
-	      environments: []
-	    };
+                        this.name = this.environment.name;
+                        this.isChild = !!context;
+                        this.context = context || {
+                            decorators: [],
+                            programs: [],
+                            environments: []
+                        };
 
-	    this.preamble();
+                        this.preamble();
 
-	    this.stackSlot = 0;
-	    this.stackVars = [];
-	    this.aliases = {};
-	    this.registers = { list: [] };
-	    this.hashes = [];
-	    this.compileStack = [];
-	    this.inlineStack = [];
-	    this.blockParams = [];
+                        this.stackSlot = 0;
+                        this.stackVars = [];
+                        this.aliases = {};
+                        this.registers = {list: []};
+                        this.hashes = [];
+                        this.compileStack = [];
+                        this.inlineStack = [];
+                        this.blockParams = [];
 
-	    this.compileChildren(environment, options);
+                        this.compileChildren(environment, options);
 
-	    this.useDepths = this.useDepths || environment.useDepths || environment.useDecorators || this.options.compat;
-	    this.useBlockParams = this.useBlockParams || environment.useBlockParams;
+                        this.useDepths = this.useDepths || environment.useDepths || environment.useDecorators || this.options.compat;
+                        this.useBlockParams = this.useBlockParams || environment.useBlockParams;
 
-	    var opcodes = environment.opcodes,
-	        opcode = undefined,
-	        firstLoc = undefined,
-	        i = undefined,
-	        l = undefined;
+                        var opcodes = environment.opcodes,
+                            opcode = undefined,
+                            firstLoc = undefined,
+                            i = undefined,
+                            l = undefined;
 
-	    for (i = 0, l = opcodes.length; i < l; i++) {
-	      opcode = opcodes[i];
+                        for (i = 0, l = opcodes.length; i < l; i++) {
+                            opcode = opcodes[i];
 
-	      this.source.currentLocation = opcode.loc;
-	      firstLoc = firstLoc || opcode.loc;
-	      this[opcode.opcode].apply(this, opcode.args);
-	    }
+                            this.source.currentLocation = opcode.loc;
+                            firstLoc = firstLoc || opcode.loc;
+                            this[opcode.opcode].apply(this, opcode.args);
+                        }
 
-	    // Flush any trailing content that might be pending.
-	    this.source.currentLocation = firstLoc;
-	    this.pushSource('');
+                        // Flush any trailing content that might be pending.
+                        this.source.currentLocation = firstLoc;
+                        this.pushSource('');
 
-	    /* istanbul ignore next */
-	    if (this.stackSlot || this.inlineStack.length || this.compileStack.length) {
-	      throw new _exception2['default']('Compile completed with content left on stack');
-	    }
+                        /* istanbul ignore next */
+                        if (this.stackSlot || this.inlineStack.length || this.compileStack.length) {
+                            throw new _exception2['default']('Compile completed with content left on stack');
+                        }
 
-	    if (!this.decorators.isEmpty()) {
-	      this.useDecorators = true;
+                        if (!this.decorators.isEmpty()) {
+                            this.useDecorators = true;
 
-	      this.decorators.prepend('var decorators = container.decorators;\n');
-	      this.decorators.push('return fn;');
+                            this.decorators.prepend('var decorators = container.decorators;\n');
+                            this.decorators.push('return fn;');
 
-	      if (asObject) {
-	        this.decorators = Function.apply(this, ['fn', 'props', 'container', 'depth0', 'data', 'blockParams', 'depths', this.decorators.merge()]);
-	      } else {
-	        this.decorators.prepend('function(fn, props, container, depth0, data, blockParams, depths) {\n');
-	        this.decorators.push('}\n');
-	        this.decorators = this.decorators.merge();
-	      }
-	    } else {
-	      this.decorators = undefined;
-	    }
+                            if (asObject) {
+                                this.decorators = Function.apply(this, ['fn', 'props', 'container', 'depth0', 'data', 'blockParams', 'depths', this.decorators.merge()]);
+                            } else {
+                                this.decorators.prepend('function(fn, props, container, depth0, data, blockParams, depths) {\n');
+                                this.decorators.push('}\n');
+                                this.decorators = this.decorators.merge();
+                            }
+                        } else {
+                            this.decorators = undefined;
+                        }
 
-	    var fn = this.createFunctionContext(asObject);
-	    if (!this.isChild) {
-	      var ret = {
-	        compiler: this.compilerInfo(),
-	        main: fn
-	      };
+                        var fn = this.createFunctionContext(asObject);
+                        if (!this.isChild) {
+                            var ret = {
+                                compiler: this.compilerInfo(),
+                                main: fn
+                            };
 
-	      if (this.decorators) {
-	        ret.main_d = this.decorators; // eslint-disable-line camelcase
-	        ret.useDecorators = true;
-	      }
+                            if (this.decorators) {
+                                ret.main_d = this.decorators; // eslint-disable-line camelcase
+                                ret.useDecorators = true;
+                            }
 
-	      var _context = this.context;
-	      var programs = _context.programs;
-	      var decorators = _context.decorators;
+                            var _context = this.context;
+                            var programs = _context.programs;
+                            var decorators = _context.decorators;
 
-	      for (i = 0, l = programs.length; i < l; i++) {
-	        if (programs[i]) {
-	          ret[i] = programs[i];
-	          if (decorators[i]) {
-	            ret[i + '_d'] = decorators[i];
-	            ret.useDecorators = true;
-	          }
-	        }
-	      }
+                            for (i = 0, l = programs.length; i < l; i++) {
+                                if (programs[i]) {
+                                    ret[i] = programs[i];
+                                    if (decorators[i]) {
+                                        ret[i + '_d'] = decorators[i];
+                                        ret.useDecorators = true;
+                                    }
+                                }
+                            }
 
-	      if (this.environment.usePartial) {
-	        ret.usePartial = true;
-	      }
-	      if (this.options.data) {
-	        ret.useData = true;
-	      }
-	      if (this.useDepths) {
-	        ret.useDepths = true;
-	      }
-	      if (this.useBlockParams) {
-	        ret.useBlockParams = true;
-	      }
-	      if (this.options.compat) {
-	        ret.compat = true;
-	      }
+                            if (this.environment.usePartial) {
+                                ret.usePartial = true;
+                            }
+                            if (this.options.data) {
+                                ret.useData = true;
+                            }
+                            if (this.useDepths) {
+                                ret.useDepths = true;
+                            }
+                            if (this.useBlockParams) {
+                                ret.useBlockParams = true;
+                            }
+                            if (this.options.compat) {
+                                ret.compat = true;
+                            }
 
-	      if (!asObject) {
-	        ret.compiler = JSON.stringify(ret.compiler);
+                            if (!asObject) {
+                                ret.compiler = JSON.stringify(ret.compiler);
 
-	        this.source.currentLocation = { start: { line: 1, column: 0 } };
-	        ret = this.objectLiteral(ret);
+                                this.source.currentLocation = {start: {line: 1, column: 0}};
+                                ret = this.objectLiteral(ret);
 
-	        if (options.srcName) {
-	          ret = ret.toStringWithSourceMap({ file: options.destName });
-	          ret.map = ret.map && ret.map.toString();
-	        } else {
-	          ret = ret.toString();
-	        }
-	      } else {
-	        ret.compilerOptions = this.options;
-	      }
+                                if (options.srcName) {
+                                    ret = ret.toStringWithSourceMap({file: options.destName});
+                                    ret.map = ret.map && ret.map.toString();
+                                } else {
+                                    ret = ret.toString();
+                                }
+                            } else {
+                                ret.compilerOptions = this.options;
+                            }
 
-	      return ret;
-	    } else {
-	      return fn;
-	    }
-	  },
+                            return ret;
+                        } else {
+                            return fn;
+                        }
+                    },
 
-	  preamble: function preamble() {
-	    // track the last context pushed into place to allow skipping the
-	    // getContext opcode when it would be a noop
-	    this.lastContext = 0;
-	    this.source = new _codeGen2['default'](this.options.srcName);
-	    this.decorators = new _codeGen2['default'](this.options.srcName);
-	  },
+                    preamble: function preamble() {
+                        // track the last context pushed into place to allow skipping the
+                        // getContext opcode when it would be a noop
+                        this.lastContext = 0;
+                        this.source = new _codeGen2['default'](this.options.srcName);
+                        this.decorators = new _codeGen2['default'](this.options.srcName);
+                    },
 
-	  createFunctionContext: function createFunctionContext(asObject) {
-	    // istanbul ignore next
+                    createFunctionContext: function createFunctionContext(asObject) {
+                        // istanbul ignore next
 
-	    var _this = this;
+                        var _this = this;
 
-	    var varDeclarations = '';
+                        var varDeclarations = '';
 
-	    var locals = this.stackVars.concat(this.registers.list);
-	    if (locals.length > 0) {
-	      varDeclarations += ', ' + locals.join(', ');
-	    }
+                        var locals = this.stackVars.concat(this.registers.list);
+                        if (locals.length > 0) {
+                            varDeclarations += ', ' + locals.join(', ');
+                        }
 
-	    // Generate minimizer alias mappings
-	    //
-	    // When using true SourceNodes, this will update all references to the given alias
-	    // as the source nodes are reused in situ. For the non-source node compilation mode,
-	    // aliases will not be used, but this case is already being run on the client and
-	    // we aren't concern about minimizing the template size.
-	    var aliasCount = 0;
-	    _Object$keys(this.aliases).forEach(function (alias) {
-	      var node = _this.aliases[alias];
-	      if (node.children && node.referenceCount > 1) {
-	        varDeclarations += ', alias' + ++aliasCount + '=' + alias;
-	        node.children[0] = 'alias' + aliasCount;
-	      }
-	    });
+                        // Generate minimizer alias mappings
+                        //
+                        // When using true SourceNodes, this will update all references to the given alias
+                        // as the source nodes are reused in situ. For the non-source node compilation mode,
+                        // aliases will not be used, but this case is already being run on the client and
+                        // we aren't concern about minimizing the template size.
+                        var aliasCount = 0;
+                        _Object$keys(this.aliases).forEach(function (alias) {
+                            var node = _this.aliases[alias];
+                            if (node.children && node.referenceCount > 1) {
+                                varDeclarations += ', alias' + ++aliasCount + '=' + alias;
+                                node.children[0] = 'alias' + aliasCount;
+                            }
+                        });
 
-	    var params = ['container', 'depth0', 'helpers', 'partials', 'data'];
+                        var params = ['container', 'depth0', 'helpers', 'partials', 'data'];
 
-	    if (this.useBlockParams || this.useDepths) {
-	      params.push('blockParams');
-	    }
-	    if (this.useDepths) {
-	      params.push('depths');
-	    }
+                        if (this.useBlockParams || this.useDepths) {
+                            params.push('blockParams');
+                        }
+                        if (this.useDepths) {
+                            params.push('depths');
+                        }
 
-	    // Perform a second pass over the output to merge content when possible
-	    var source = this.mergeSource(varDeclarations);
+                        // Perform a second pass over the output to merge content when possible
+                        var source = this.mergeSource(varDeclarations);
 
-	    if (asObject) {
-	      params.push(source);
+                        if (asObject) {
+                            params.push(source);
 
-	      return Function.apply(this, params);
-	    } else {
-	      return this.source.wrap(['function(', params.join(','), ') {\n  ', source, '}']);
-	    }
-	  },
-	  mergeSource: function mergeSource(varDeclarations) {
-	    var isSimple = this.environment.isSimple,
-	        appendOnly = !this.forceBuffer,
-	        appendFirst = undefined,
-	        sourceSeen = undefined,
-	        bufferStart = undefined,
-	        bufferEnd = undefined;
-	    this.source.each(function (line) {
-	      if (line.appendToBuffer) {
-	        if (bufferStart) {
-	          line.prepend('  + ');
-	        } else {
-	          bufferStart = line;
-	        }
-	        bufferEnd = line;
-	      } else {
-	        if (bufferStart) {
-	          if (!sourceSeen) {
-	            appendFirst = true;
-	          } else {
-	            bufferStart.prepend('buffer += ');
-	          }
-	          bufferEnd.add(';');
-	          bufferStart = bufferEnd = undefined;
-	        }
+                            return Function.apply(this, params);
+                        } else {
+                            return this.source.wrap(['function(', params.join(','), ') {\n  ', source, '}']);
+                        }
+                    },
+                    mergeSource: function mergeSource(varDeclarations) {
+                        var isSimple = this.environment.isSimple,
+                            appendOnly = !this.forceBuffer,
+                            appendFirst = undefined,
+                            sourceSeen = undefined,
+                            bufferStart = undefined,
+                            bufferEnd = undefined;
+                        this.source.each(function (line) {
+                            if (line.appendToBuffer) {
+                                if (bufferStart) {
+                                    line.prepend('  + ');
+                                } else {
+                                    bufferStart = line;
+                                }
+                                bufferEnd = line;
+                            } else {
+                                if (bufferStart) {
+                                    if (!sourceSeen) {
+                                        appendFirst = true;
+                                    } else {
+                                        bufferStart.prepend('buffer += ');
+                                    }
+                                    bufferEnd.add(';');
+                                    bufferStart = bufferEnd = undefined;
+                                }
 
-	        sourceSeen = true;
-	        if (!isSimple) {
-	          appendOnly = false;
-	        }
-	      }
-	    });
+                                sourceSeen = true;
+                                if (!isSimple) {
+                                    appendOnly = false;
+                                }
+                            }
+                        });
 
-	    if (appendOnly) {
-	      if (bufferStart) {
-	        bufferStart.prepend('return ');
-	        bufferEnd.add(';');
-	      } else if (!sourceSeen) {
-	        this.source.push('return "";');
-	      }
-	    } else {
-	      varDeclarations += ', buffer = ' + (appendFirst ? '' : this.initializeBuffer());
+                        if (appendOnly) {
+                            if (bufferStart) {
+                                bufferStart.prepend('return ');
+                                bufferEnd.add(';');
+                            } else if (!sourceSeen) {
+                                this.source.push('return "";');
+                            }
+                        } else {
+                            varDeclarations += ', buffer = ' + (appendFirst ? '' : this.initializeBuffer());
 
-	      if (bufferStart) {
-	        bufferStart.prepend('return buffer + ');
-	        bufferEnd.add(';');
-	      } else {
-	        this.source.push('return buffer;');
-	      }
-	    }
+                            if (bufferStart) {
+                                bufferStart.prepend('return buffer + ');
+                                bufferEnd.add(';');
+                            } else {
+                                this.source.push('return buffer;');
+                            }
+                        }
 
-	    if (varDeclarations) {
-	      this.source.prepend('var ' + varDeclarations.substring(2) + (appendFirst ? '' : ';\n'));
-	    }
+                        if (varDeclarations) {
+                            this.source.prepend('var ' + varDeclarations.substring(2) + (appendFirst ? '' : ';\n'));
+                        }
 
-	    return this.source.merge();
-	  },
+                        return this.source.merge();
+                    },
 
-	  // [blockValue]
-	  //
-	  // On stack, before: hash, inverse, program, value
-	  // On stack, after: return value of blockHelperMissing
-	  //
-	  // The purpose of this opcode is to take a block of the form
-	  // `{{#this.foo}}...{{/this.foo}}`, resolve the value of `foo`, and
-	  // replace it on the stack with the result of properly
-	  // invoking blockHelperMissing.
-	  blockValue: function blockValue(name) {
-	    var blockHelperMissing = this.aliasable('container.hooks.blockHelperMissing'),
-	        params = [this.contextName(0)];
-	    this.setupHelperArgs(name, 0, params);
+                    // [blockValue]
+                    //
+                    // On stack, before: hash, inverse, program, value
+                    // On stack, after: return value of blockHelperMissing
+                    //
+                    // The purpose of this opcode is to take a block of the form
+                    // `{{#this.foo}}...{{/this.foo}}`, resolve the value of `foo`, and
+                    // replace it on the stack with the result of properly
+                    // invoking blockHelperMissing.
+                    blockValue: function blockValue(name) {
+                        var blockHelperMissing = this.aliasable('container.hooks.blockHelperMissing'),
+                            params = [this.contextName(0)];
+                        this.setupHelperArgs(name, 0, params);
 
-	    var blockName = this.popStack();
-	    params.splice(1, 0, blockName);
+                        var blockName = this.popStack();
+                        params.splice(1, 0, blockName);
 
-	    this.push(this.source.functionCall(blockHelperMissing, 'call', params));
-	  },
+                        this.push(this.source.functionCall(blockHelperMissing, 'call', params));
+                    },
 
-	  // [ambiguousBlockValue]
-	  //
-	  // On stack, before: hash, inverse, program, value
-	  // Compiler value, before: lastHelper=value of last found helper, if any
-	  // On stack, after, if no lastHelper: same as [blockValue]
-	  // On stack, after, if lastHelper: value
-	  ambiguousBlockValue: function ambiguousBlockValue() {
-	    // We're being a bit cheeky and reusing the options value from the prior exec
-	    var blockHelperMissing = this.aliasable('container.hooks.blockHelperMissing'),
-	        params = [this.contextName(0)];
-	    this.setupHelperArgs('', 0, params, true);
+                    // [ambiguousBlockValue]
+                    //
+                    // On stack, before: hash, inverse, program, value
+                    // Compiler value, before: lastHelper=value of last found helper, if any
+                    // On stack, after, if no lastHelper: same as [blockValue]
+                    // On stack, after, if lastHelper: value
+                    ambiguousBlockValue: function ambiguousBlockValue() {
+                        // We're being a bit cheeky and reusing the options value from the prior exec
+                        var blockHelperMissing = this.aliasable('container.hooks.blockHelperMissing'),
+                            params = [this.contextName(0)];
+                        this.setupHelperArgs('', 0, params, true);
 
-	    this.flushInline();
+                        this.flushInline();
 
-	    var current = this.topStack();
-	    params.splice(1, 0, current);
+                        var current = this.topStack();
+                        params.splice(1, 0, current);
 
-	    this.pushSource(['if (!', this.lastHelper, ') { ', current, ' = ', this.source.functionCall(blockHelperMissing, 'call', params), '}']);
-	  },
+                        this.pushSource(['if (!', this.lastHelper, ') { ', current, ' = ', this.source.functionCall(blockHelperMissing, 'call', params), '}']);
+                    },
 
-	  // [appendContent]
-	  //
-	  // On stack, before: ...
-	  // On stack, after: ...
-	  //
-	  // Appends the string value of `content` to the current buffer
-	  appendContent: function appendContent(content) {
-	    if (this.pendingContent) {
-	      content = this.pendingContent + content;
-	    } else {
-	      this.pendingLocation = this.source.currentLocation;
-	    }
+                    // [appendContent]
+                    //
+                    // On stack, before: ...
+                    // On stack, after: ...
+                    //
+                    // Appends the string value of `content` to the current buffer
+                    appendContent: function appendContent(content) {
+                        if (this.pendingContent) {
+                            content = this.pendingContent + content;
+                        } else {
+                            this.pendingLocation = this.source.currentLocation;
+                        }
 
-	    this.pendingContent = content;
-	  },
+                        this.pendingContent = content;
+                    },
 
-	  // [append]
-	  //
-	  // On stack, before: value, ...
-	  // On stack, after: ...
-	  //
-	  // Coerces `value` to a String and appends it to the current buffer.
-	  //
-	  // If `value` is truthy, or 0, it is coerced into a string and appended
-	  // Otherwise, the empty string is appended
-	  append: function append() {
-	    if (this.isInline()) {
-	      this.replaceStack(function (current) {
-	        return [' != null ? ', current, ' : ""'];
-	      });
+                    // [append]
+                    //
+                    // On stack, before: value, ...
+                    // On stack, after: ...
+                    //
+                    // Coerces `value` to a String and appends it to the current buffer.
+                    //
+                    // If `value` is truthy, or 0, it is coerced into a string and appended
+                    // Otherwise, the empty string is appended
+                    append: function append() {
+                        if (this.isInline()) {
+                            this.replaceStack(function (current) {
+                                return [' != null ? ', current, ' : ""'];
+                            });
 
-	      this.pushSource(this.appendToBuffer(this.popStack()));
-	    } else {
-	      var local = this.popStack();
-	      this.pushSource(['if (', local, ' != null) { ', this.appendToBuffer(local, undefined, true), ' }']);
-	      if (this.environment.isSimple) {
-	        this.pushSource(['else { ', this.appendToBuffer("''", undefined, true), ' }']);
-	      }
-	    }
-	  },
+                            this.pushSource(this.appendToBuffer(this.popStack()));
+                        } else {
+                            var local = this.popStack();
+                            this.pushSource(['if (', local, ' != null) { ', this.appendToBuffer(local, undefined, true), ' }']);
+                            if (this.environment.isSimple) {
+                                this.pushSource(['else { ', this.appendToBuffer("''", undefined, true), ' }']);
+                            }
+                        }
+                    },
 
-	  // [appendEscaped]
-	  //
-	  // On stack, before: value, ...
-	  // On stack, after: ...
-	  //
-	  // Escape `value` and append it to the buffer
-	  appendEscaped: function appendEscaped() {
-	    this.pushSource(this.appendToBuffer([this.aliasable('container.escapeExpression'), '(', this.popStack(), ')']));
-	  },
+                    // [appendEscaped]
+                    //
+                    // On stack, before: value, ...
+                    // On stack, after: ...
+                    //
+                    // Escape `value` and append it to the buffer
+                    appendEscaped: function appendEscaped() {
+                        this.pushSource(this.appendToBuffer([this.aliasable('container.escapeExpression'), '(', this.popStack(), ')']));
+                    },
 
-	  // [getContext]
-	  //
-	  // On stack, before: ...
-	  // On stack, after: ...
-	  // Compiler value, after: lastContext=depth
-	  //
-	  // Set the value of the `lastContext` compiler value to the depth
-	  getContext: function getContext(depth) {
-	    this.lastContext = depth;
-	  },
+                    // [getContext]
+                    //
+                    // On stack, before: ...
+                    // On stack, after: ...
+                    // Compiler value, after: lastContext=depth
+                    //
+                    // Set the value of the `lastContext` compiler value to the depth
+                    getContext: function getContext(depth) {
+                        this.lastContext = depth;
+                    },
 
-	  // [pushContext]
-	  //
-	  // On stack, before: ...
-	  // On stack, after: currentContext, ...
-	  //
-	  // Pushes the value of the current context onto the stack.
-	  pushContext: function pushContext() {
-	    this.pushStackLiteral(this.contextName(this.lastContext));
-	  },
+                    // [pushContext]
+                    //
+                    // On stack, before: ...
+                    // On stack, after: currentContext, ...
+                    //
+                    // Pushes the value of the current context onto the stack.
+                    pushContext: function pushContext() {
+                        this.pushStackLiteral(this.contextName(this.lastContext));
+                    },
 
-	  // [lookupOnContext]
-	  //
-	  // On stack, before: ...
-	  // On stack, after: currentContext[name], ...
-	  //
-	  // Looks up the value of `name` on the current context and pushes
-	  // it onto the stack.
-	  lookupOnContext: function lookupOnContext(parts, falsy, strict, scoped) {
-	    var i = 0;
+                    // [lookupOnContext]
+                    //
+                    // On stack, before: ...
+                    // On stack, after: currentContext[name], ...
+                    //
+                    // Looks up the value of `name` on the current context and pushes
+                    // it onto the stack.
+                    lookupOnContext: function lookupOnContext(parts, falsy, strict, scoped) {
+                        var i = 0;
 
-	    if (!scoped && this.options.compat && !this.lastContext) {
-	      // The depthed query is expected to handle the undefined logic for the root level that
-	      // is implemented below, so we evaluate that directly in compat mode
-	      this.push(this.depthedLookup(parts[i++]));
-	    } else {
-	      this.pushContext();
-	    }
+                        if (!scoped && this.options.compat && !this.lastContext) {
+                            // The depthed query is expected to handle the undefined logic for the root level that
+                            // is implemented below, so we evaluate that directly in compat mode
+                            this.push(this.depthedLookup(parts[i++]));
+                        } else {
+                            this.pushContext();
+                        }
 
-	    this.resolvePath('context', parts, i, falsy, strict);
-	  },
+                        this.resolvePath('context', parts, i, falsy, strict);
+                    },
 
-	  // [lookupBlockParam]
-	  //
-	  // On stack, before: ...
-	  // On stack, after: blockParam[name], ...
-	  //
-	  // Looks up the value of `parts` on the given block param and pushes
-	  // it onto the stack.
-	  lookupBlockParam: function lookupBlockParam(blockParamId, parts) {
-	    this.useBlockParams = true;
+                    // [lookupBlockParam]
+                    //
+                    // On stack, before: ...
+                    // On stack, after: blockParam[name], ...
+                    //
+                    // Looks up the value of `parts` on the given block param and pushes
+                    // it onto the stack.
+                    lookupBlockParam: function lookupBlockParam(blockParamId, parts) {
+                        this.useBlockParams = true;
 
-	    this.push(['blockParams[', blockParamId[0], '][', blockParamId[1], ']']);
-	    this.resolvePath('context', parts, 1);
-	  },
+                        this.push(['blockParams[', blockParamId[0], '][', blockParamId[1], ']']);
+                        this.resolvePath('context', parts, 1);
+                    },
 
-	  // [lookupData]
-	  //
-	  // On stack, before: ...
-	  // On stack, after: data, ...
-	  //
-	  // Push the data lookup operator
-	  lookupData: function lookupData(depth, parts, strict) {
-	    if (!depth) {
-	      this.pushStackLiteral('data');
-	    } else {
-	      this.pushStackLiteral('container.data(data, ' + depth + ')');
-	    }
+                    // [lookupData]
+                    //
+                    // On stack, before: ...
+                    // On stack, after: data, ...
+                    //
+                    // Push the data lookup operator
+                    lookupData: function lookupData(depth, parts, strict) {
+                        if (!depth) {
+                            this.pushStackLiteral('data');
+                        } else {
+                            this.pushStackLiteral('container.data(data, ' + depth + ')');
+                        }
 
-	    this.resolvePath('data', parts, 0, true, strict);
-	  },
+                        this.resolvePath('data', parts, 0, true, strict);
+                    },
 
-	  resolvePath: function resolvePath(type, parts, i, falsy, strict) {
-	    // istanbul ignore next
+                    resolvePath: function resolvePath(type, parts, i, falsy, strict) {
+                        // istanbul ignore next
 
-	    var _this2 = this;
+                        var _this2 = this;
 
-	    if (this.options.strict || this.options.assumeObjects) {
-	      this.push(strictLookup(this.options.strict && strict, this, parts, type));
-	      return;
-	    }
+                        if (this.options.strict || this.options.assumeObjects) {
+                            this.push(strictLookup(this.options.strict && strict, this, parts, type));
+                            return;
+                        }
 
-	    var len = parts.length;
-	    for (; i < len; i++) {
-	      /* eslint-disable no-loop-func */
-	      this.replaceStack(function (current) {
-	        var lookup = _this2.nameLookup(current, parts[i], type);
-	        // We want to ensure that zero and false are handled properly if the context (falsy flag)
-	        // needs to have the special handling for these values.
-	        if (!falsy) {
-	          return [' != null ? ', lookup, ' : ', current];
-	        } else {
-	          // Otherwise we can use generic falsy handling
-	          return [' && ', lookup];
-	        }
-	      });
-	      /* eslint-enable no-loop-func */
-	    }
-	  },
+                        var len = parts.length;
+                        for (; i < len; i++) {
+                            /* eslint-disable no-loop-func */
+                            this.replaceStack(function (current) {
+                                var lookup = _this2.nameLookup(current, parts[i], type);
+                                // We want to ensure that zero and false are handled properly if the context (falsy flag)
+                                // needs to have the special handling for these values.
+                                if (!falsy) {
+                                    return [' != null ? ', lookup, ' : ', current];
+                                } else {
+                                    // Otherwise we can use generic falsy handling
+                                    return [' && ', lookup];
+                                }
+                            });
+                            /* eslint-enable no-loop-func */
+                        }
+                    },
 
-	  // [resolvePossibleLambda]
-	  //
-	  // On stack, before: value, ...
-	  // On stack, after: resolved value, ...
-	  //
-	  // If the `value` is a lambda, replace it on the stack by
-	  // the return value of the lambda
-	  resolvePossibleLambda: function resolvePossibleLambda() {
-	    this.push([this.aliasable('container.lambda'), '(', this.popStack(), ', ', this.contextName(0), ')']);
-	  },
+                    // [resolvePossibleLambda]
+                    //
+                    // On stack, before: value, ...
+                    // On stack, after: resolved value, ...
+                    //
+                    // If the `value` is a lambda, replace it on the stack by
+                    // the return value of the lambda
+                    resolvePossibleLambda: function resolvePossibleLambda() {
+                        this.push([this.aliasable('container.lambda'), '(', this.popStack(), ', ', this.contextName(0), ')']);
+                    },
 
-	  // [pushStringParam]
-	  //
-	  // On stack, before: ...
-	  // On stack, after: string, currentContext, ...
-	  //
-	  // This opcode is designed for use in string mode, which
-	  // provides the string value of a parameter along with its
-	  // depth rather than resolving it immediately.
-	  pushStringParam: function pushStringParam(string, type) {
-	    this.pushContext();
-	    this.pushString(type);
+                    // [pushStringParam]
+                    //
+                    // On stack, before: ...
+                    // On stack, after: string, currentContext, ...
+                    //
+                    // This opcode is designed for use in string mode, which
+                    // provides the string value of a parameter along with its
+                    // depth rather than resolving it immediately.
+                    pushStringParam: function pushStringParam(string, type) {
+                        this.pushContext();
+                        this.pushString(type);
 
-	    // If it's a subexpression, the string result
-	    // will be pushed after this opcode.
-	    if (type !== 'SubExpression') {
-	      if (typeof string === 'string') {
-	        this.pushString(string);
-	      } else {
-	        this.pushStackLiteral(string);
-	      }
-	    }
-	  },
+                        // If it's a subexpression, the string result
+                        // will be pushed after this opcode.
+                        if (type !== 'SubExpression') {
+                            if (typeof string === 'string') {
+                                this.pushString(string);
+                            } else {
+                                this.pushStackLiteral(string);
+                            }
+                        }
+                    },
 
-	  emptyHash: function emptyHash(omitEmpty) {
-	    if (this.trackIds) {
-	      this.push('{}'); // hashIds
-	    }
-	    if (this.stringParams) {
-	      this.push('{}'); // hashContexts
-	      this.push('{}'); // hashTypes
-	    }
-	    this.pushStackLiteral(omitEmpty ? 'undefined' : '{}');
-	  },
-	  pushHash: function pushHash() {
-	    if (this.hash) {
-	      this.hashes.push(this.hash);
-	    }
-	    this.hash = { values: {}, types: [], contexts: [], ids: [] };
-	  },
-	  popHash: function popHash() {
-	    var hash = this.hash;
-	    this.hash = this.hashes.pop();
+                    emptyHash: function emptyHash(omitEmpty) {
+                        if (this.trackIds) {
+                            this.push('{}'); // hashIds
+                        }
+                        if (this.stringParams) {
+                            this.push('{}'); // hashContexts
+                            this.push('{}'); // hashTypes
+                        }
+                        this.pushStackLiteral(omitEmpty ? 'undefined' : '{}');
+                    },
+                    pushHash: function pushHash() {
+                        if (this.hash) {
+                            this.hashes.push(this.hash);
+                        }
+                        this.hash = {values: {}, types: [], contexts: [], ids: []};
+                    },
+                    popHash: function popHash() {
+                        var hash = this.hash;
+                        this.hash = this.hashes.pop();
 
-	    if (this.trackIds) {
-	      this.push(this.objectLiteral(hash.ids));
-	    }
-	    if (this.stringParams) {
-	      this.push(this.objectLiteral(hash.contexts));
-	      this.push(this.objectLiteral(hash.types));
-	    }
+                        if (this.trackIds) {
+                            this.push(this.objectLiteral(hash.ids));
+                        }
+                        if (this.stringParams) {
+                            this.push(this.objectLiteral(hash.contexts));
+                            this.push(this.objectLiteral(hash.types));
+                        }
 
-	    this.push(this.objectLiteral(hash.values));
-	  },
+                        this.push(this.objectLiteral(hash.values));
+                    },
 
-	  // [pushString]
-	  //
-	  // On stack, before: ...
-	  // On stack, after: quotedString(string), ...
-	  //
-	  // Push a quoted version of `string` onto the stack
-	  pushString: function pushString(string) {
-	    this.pushStackLiteral(this.quotedString(string));
-	  },
+                    // [pushString]
+                    //
+                    // On stack, before: ...
+                    // On stack, after: quotedString(string), ...
+                    //
+                    // Push a quoted version of `string` onto the stack
+                    pushString: function pushString(string) {
+                        this.pushStackLiteral(this.quotedString(string));
+                    },
 
-	  // [pushLiteral]
-	  //
-	  // On stack, before: ...
-	  // On stack, after: value, ...
-	  //
-	  // Pushes a value onto the stack. This operation prevents
-	  // the compiler from creating a temporary variable to hold
-	  // it.
-	  pushLiteral: function pushLiteral(value) {
-	    this.pushStackLiteral(value);
-	  },
+                    // [pushLiteral]
+                    //
+                    // On stack, before: ...
+                    // On stack, after: value, ...
+                    //
+                    // Pushes a value onto the stack. This operation prevents
+                    // the compiler from creating a temporary variable to hold
+                    // it.
+                    pushLiteral: function pushLiteral(value) {
+                        this.pushStackLiteral(value);
+                    },
 
-	  // [pushProgram]
-	  //
-	  // On stack, before: ...
-	  // On stack, after: program(guid), ...
-	  //
-	  // Push a program expression onto the stack. This takes
-	  // a compile-time guid and converts it into a runtime-accessible
-	  // expression.
-	  pushProgram: function pushProgram(guid) {
-	    if (guid != null) {
-	      this.pushStackLiteral(this.programExpression(guid));
-	    } else {
-	      this.pushStackLiteral(null);
-	    }
-	  },
+                    // [pushProgram]
+                    //
+                    // On stack, before: ...
+                    // On stack, after: program(guid), ...
+                    //
+                    // Push a program expression onto the stack. This takes
+                    // a compile-time guid and converts it into a runtime-accessible
+                    // expression.
+                    pushProgram: function pushProgram(guid) {
+                        if (guid != null) {
+                            this.pushStackLiteral(this.programExpression(guid));
+                        } else {
+                            this.pushStackLiteral(null);
+                        }
+                    },
 
-	  // [registerDecorator]
-	  //
-	  // On stack, before: hash, program, params..., ...
-	  // On stack, after: ...
-	  //
-	  // Pops off the decorator's parameters, invokes the decorator,
-	  // and inserts the decorator into the decorators list.
-	  registerDecorator: function registerDecorator(paramSize, name) {
-	    var foundDecorator = this.nameLookup('decorators', name, 'decorator'),
-	        options = this.setupHelperArgs(name, paramSize);
+                    // [registerDecorator]
+                    //
+                    // On stack, before: hash, program, params..., ...
+                    // On stack, after: ...
+                    //
+                    // Pops off the decorator's parameters, invokes the decorator,
+                    // and inserts the decorator into the decorators list.
+                    registerDecorator: function registerDecorator(paramSize, name) {
+                        var foundDecorator = this.nameLookup('decorators', name, 'decorator'),
+                            options = this.setupHelperArgs(name, paramSize);
 
-	    this.decorators.push(['fn = ', this.decorators.functionCall(foundDecorator, '', ['fn', 'props', 'container', options]), ' || fn;']);
-	  },
+                        this.decorators.push(['fn = ', this.decorators.functionCall(foundDecorator, '', ['fn', 'props', 'container', options]), ' || fn;']);
+                    },
 
-	  // [invokeHelper]
-	  //
-	  // On stack, before: hash, inverse, program, params..., ...
-	  // On stack, after: result of helper invocation
-	  //
-	  // Pops off the helper's parameters, invokes the helper,
-	  // and pushes the helper's return value onto the stack.
-	  //
-	  // If the helper is not found, `helperMissing` is called.
-	  invokeHelper: function invokeHelper(paramSize, name, isSimple) {
-	    var nonHelper = this.popStack(),
-	        helper = this.setupHelper(paramSize, name);
+                    // [invokeHelper]
+                    //
+                    // On stack, before: hash, inverse, program, params..., ...
+                    // On stack, after: result of helper invocation
+                    //
+                    // Pops off the helper's parameters, invokes the helper,
+                    // and pushes the helper's return value onto the stack.
+                    //
+                    // If the helper is not found, `helperMissing` is called.
+                    invokeHelper: function invokeHelper(paramSize, name, isSimple) {
+                        var nonHelper = this.popStack(),
+                            helper = this.setupHelper(paramSize, name);
 
-	    var possibleFunctionCalls = [];
+                        var possibleFunctionCalls = [];
 
-	    if (isSimple) {
-	      // direct call to helper
-	      possibleFunctionCalls.push(helper.name);
-	    }
-	    // call a function from the input object
-	    possibleFunctionCalls.push(nonHelper);
-	    if (!this.options.strict) {
-	      possibleFunctionCalls.push(this.aliasable('container.hooks.helperMissing'));
-	    }
+                        if (isSimple) {
+                            // direct call to helper
+                            possibleFunctionCalls.push(helper.name);
+                        }
+                        // call a function from the input object
+                        possibleFunctionCalls.push(nonHelper);
+                        if (!this.options.strict) {
+                            possibleFunctionCalls.push(this.aliasable('container.hooks.helperMissing'));
+                        }
 
-	    var functionLookupCode = ['(', this.itemsSeparatedBy(possibleFunctionCalls, '||'), ')'];
-	    var functionCall = this.source.functionCall(functionLookupCode, 'call', helper.callParams);
-	    this.push(functionCall);
-	  },
+                        var functionLookupCode = ['(', this.itemsSeparatedBy(possibleFunctionCalls, '||'), ')'];
+                        var functionCall = this.source.functionCall(functionLookupCode, 'call', helper.callParams);
+                        this.push(functionCall);
+                    },
 
-	  itemsSeparatedBy: function itemsSeparatedBy(items, separator) {
-	    var result = [];
-	    result.push(items[0]);
-	    for (var i = 1; i < items.length; i++) {
-	      result.push(separator, items[i]);
-	    }
-	    return result;
-	  },
-	  // [invokeKnownHelper]
-	  //
-	  // On stack, before: hash, inverse, program, params..., ...
-	  // On stack, after: result of helper invocation
-	  //
-	  // This operation is used when the helper is known to exist,
-	  // so a `helperMissing` fallback is not required.
-	  invokeKnownHelper: function invokeKnownHelper(paramSize, name) {
-	    var helper = this.setupHelper(paramSize, name);
-	    this.push(this.source.functionCall(helper.name, 'call', helper.callParams));
-	  },
+                    itemsSeparatedBy: function itemsSeparatedBy(items, separator) {
+                        var result = [];
+                        result.push(items[0]);
+                        for (var i = 1; i < items.length; i++) {
+                            result.push(separator, items[i]);
+                        }
+                        return result;
+                    },
+                    // [invokeKnownHelper]
+                    //
+                    // On stack, before: hash, inverse, program, params..., ...
+                    // On stack, after: result of helper invocation
+                    //
+                    // This operation is used when the helper is known to exist,
+                    // so a `helperMissing` fallback is not required.
+                    invokeKnownHelper: function invokeKnownHelper(paramSize, name) {
+                        var helper = this.setupHelper(paramSize, name);
+                        this.push(this.source.functionCall(helper.name, 'call', helper.callParams));
+                    },
 
-	  // [invokeAmbiguous]
-	  //
-	  // On stack, before: hash, inverse, program, params..., ...
-	  // On stack, after: result of disambiguation
-	  //
-	  // This operation is used when an expression like `{{foo}}`
-	  // is provided, but we don't know at compile-time whether it
-	  // is a helper or a path.
-	  //
-	  // This operation emits more code than the other options,
-	  // and can be avoided by passing the `knownHelpers` and
-	  // `knownHelpersOnly` flags at compile-time.
-	  invokeAmbiguous: function invokeAmbiguous(name, helperCall) {
-	    this.useRegister('helper');
+                    // [invokeAmbiguous]
+                    //
+                    // On stack, before: hash, inverse, program, params..., ...
+                    // On stack, after: result of disambiguation
+                    //
+                    // This operation is used when an expression like `{{foo}}`
+                    // is provided, but we don't know at compile-time whether it
+                    // is a helper or a path.
+                    //
+                    // This operation emits more code than the other options,
+                    // and can be avoided by passing the `knownHelpers` and
+                    // `knownHelpersOnly` flags at compile-time.
+                    invokeAmbiguous: function invokeAmbiguous(name, helperCall) {
+                        this.useRegister('helper');
 
-	    var nonHelper = this.popStack();
+                        var nonHelper = this.popStack();
 
-	    this.emptyHash();
-	    var helper = this.setupHelper(0, name, helperCall);
+                        this.emptyHash();
+                        var helper = this.setupHelper(0, name, helperCall);
 
-	    var helperName = this.lastHelper = this.nameLookup('helpers', name, 'helper');
+                        var helperName = this.lastHelper = this.nameLookup('helpers', name, 'helper');
 
-	    var lookup = ['(', '(helper = ', helperName, ' || ', nonHelper, ')'];
-	    if (!this.options.strict) {
-	      lookup[0] = '(helper = ';
-	      lookup.push(' != null ? helper : ', this.aliasable('container.hooks.helperMissing'));
-	    }
+                        var lookup = ['(', '(helper = ', helperName, ' || ', nonHelper, ')'];
+                        if (!this.options.strict) {
+                            lookup[0] = '(helper = ';
+                            lookup.push(' != null ? helper : ', this.aliasable('container.hooks.helperMissing'));
+                        }
 
-	    this.push(['(', lookup, helper.paramsInit ? ['),(', helper.paramsInit] : [], '),', '(typeof helper === ', this.aliasable('"function"'), ' ? ', this.source.functionCall('helper', 'call', helper.callParams), ' : helper))']);
-	  },
+                        this.push(['(', lookup, helper.paramsInit ? ['),(', helper.paramsInit] : [], '),', '(typeof helper === ', this.aliasable('"function"'), ' ? ', this.source.functionCall('helper', 'call', helper.callParams), ' : helper))']);
+                    },
 
-	  // [invokePartial]
-	  //
-	  // On stack, before: context, ...
-	  // On stack after: result of partial invocation
-	  //
-	  // This operation pops off a context, invokes a partial with that context,
-	  // and pushes the result of the invocation back.
-	  invokePartial: function invokePartial(isDynamic, name, indent) {
-	    var params = [],
-	        options = this.setupParams(name, 1, params);
+                    // [invokePartial]
+                    //
+                    // On stack, before: context, ...
+                    // On stack after: result of partial invocation
+                    //
+                    // This operation pops off a context, invokes a partial with that context,
+                    // and pushes the result of the invocation back.
+                    invokePartial: function invokePartial(isDynamic, name, indent) {
+                        var params = [],
+                            options = this.setupParams(name, 1, params);
 
-	    if (isDynamic) {
-	      name = this.popStack();
-	      delete options.name;
-	    }
+                        if (isDynamic) {
+                            name = this.popStack();
+                            delete options.name;
+                        }
 
-	    if (indent) {
-	      options.indent = JSON.stringify(indent);
-	    }
-	    options.helpers = 'helpers';
-	    options.partials = 'partials';
-	    options.decorators = 'container.decorators';
+                        if (indent) {
+                            options.indent = JSON.stringify(indent);
+                        }
+                        options.helpers = 'helpers';
+                        options.partials = 'partials';
+                        options.decorators = 'container.decorators';
 
-	    if (!isDynamic) {
-	      params.unshift(this.nameLookup('partials', name, 'partial'));
-	    } else {
-	      params.unshift(name);
-	    }
+                        if (!isDynamic) {
+                            params.unshift(this.nameLookup('partials', name, 'partial'));
+                        } else {
+                            params.unshift(name);
+                        }
 
-	    if (this.options.compat) {
-	      options.depths = 'depths';
-	    }
-	    options = this.objectLiteral(options);
-	    params.push(options);
+                        if (this.options.compat) {
+                            options.depths = 'depths';
+                        }
+                        options = this.objectLiteral(options);
+                        params.push(options);
 
-	    this.push(this.source.functionCall('container.invokePartial', '', params));
-	  },
+                        this.push(this.source.functionCall('container.invokePartial', '', params));
+                    },
 
-	  // [assignToHash]
-	  //
-	  // On stack, before: value, ..., hash, ...
-	  // On stack, after: ..., hash, ...
-	  //
-	  // Pops a value off the stack and assigns it to the current hash
-	  assignToHash: function assignToHash(key) {
-	    var value = this.popStack(),
-	        context = undefined,
-	        type = undefined,
-	        id = undefined;
+                    // [assignToHash]
+                    //
+                    // On stack, before: value, ..., hash, ...
+                    // On stack, after: ..., hash, ...
+                    //
+                    // Pops a value off the stack and assigns it to the current hash
+                    assignToHash: function assignToHash(key) {
+                        var value = this.popStack(),
+                            context = undefined,
+                            type = undefined,
+                            id = undefined;
 
-	    if (this.trackIds) {
-	      id = this.popStack();
-	    }
-	    if (this.stringParams) {
-	      type = this.popStack();
-	      context = this.popStack();
-	    }
+                        if (this.trackIds) {
+                            id = this.popStack();
+                        }
+                        if (this.stringParams) {
+                            type = this.popStack();
+                            context = this.popStack();
+                        }
 
-	    var hash = this.hash;
-	    if (context) {
-	      hash.contexts[key] = context;
-	    }
-	    if (type) {
-	      hash.types[key] = type;
-	    }
-	    if (id) {
-	      hash.ids[key] = id;
-	    }
-	    hash.values[key] = value;
-	  },
+                        var hash = this.hash;
+                        if (context) {
+                            hash.contexts[key] = context;
+                        }
+                        if (type) {
+                            hash.types[key] = type;
+                        }
+                        if (id) {
+                            hash.ids[key] = id;
+                        }
+                        hash.values[key] = value;
+                    },
 
-	  pushId: function pushId(type, name, child) {
-	    if (type === 'BlockParam') {
-	      this.pushStackLiteral('blockParams[' + name[0] + '].path[' + name[1] + ']' + (child ? ' + ' + JSON.stringify('.' + child) : ''));
-	    } else if (type === 'PathExpression') {
-	      this.pushString(name);
-	    } else if (type === 'SubExpression') {
-	      this.pushStackLiteral('true');
-	    } else {
-	      this.pushStackLiteral('null');
-	    }
-	  },
+                    pushId: function pushId(type, name, child) {
+                        if (type === 'BlockParam') {
+                            this.pushStackLiteral('blockParams[' + name[0] + '].path[' + name[1] + ']' + (child ? ' + ' + JSON.stringify('.' + child) : ''));
+                        } else if (type === 'PathExpression') {
+                            this.pushString(name);
+                        } else if (type === 'SubExpression') {
+                            this.pushStackLiteral('true');
+                        } else {
+                            this.pushStackLiteral('null');
+                        }
+                    },
 
-	  // HELPERS
+                    // HELPERS
 
-	  compiler: JavaScriptCompiler,
+                    compiler: JavaScriptCompiler,
 
-	  compileChildren: function compileChildren(environment, options) {
-	    var children = environment.children,
-	        child = undefined,
-	        compiler = undefined;
+                    compileChildren: function compileChildren(environment, options) {
+                        var children = environment.children,
+                            child = undefined,
+                            compiler = undefined;
 
-	    for (var i = 0, l = children.length; i < l; i++) {
-	      child = children[i];
-	      compiler = new this.compiler(); // eslint-disable-line new-cap
+                        for (var i = 0, l = children.length; i < l; i++) {
+                            child = children[i];
+                            compiler = new this.compiler(); // eslint-disable-line new-cap
 
-	      var existing = this.matchExistingProgram(child);
+                            var existing = this.matchExistingProgram(child);
 
-	      if (existing == null) {
-	        this.context.programs.push(''); // Placeholder to prevent name conflicts for nested children
-	        var index = this.context.programs.length;
-	        child.index = index;
-	        child.name = 'program' + index;
-	        this.context.programs[index] = compiler.compile(child, options, this.context, !this.precompile);
-	        this.context.decorators[index] = compiler.decorators;
-	        this.context.environments[index] = child;
+                            if (existing == null) {
+                                this.context.programs.push(''); // Placeholder to prevent name conflicts for nested children
+                                var index = this.context.programs.length;
+                                child.index = index;
+                                child.name = 'program' + index;
+                                this.context.programs[index] = compiler.compile(child, options, this.context, !this.precompile);
+                                this.context.decorators[index] = compiler.decorators;
+                                this.context.environments[index] = child;
 
-	        this.useDepths = this.useDepths || compiler.useDepths;
-	        this.useBlockParams = this.useBlockParams || compiler.useBlockParams;
-	        child.useDepths = this.useDepths;
-	        child.useBlockParams = this.useBlockParams;
-	      } else {
-	        child.index = existing.index;
-	        child.name = 'program' + existing.index;
+                                this.useDepths = this.useDepths || compiler.useDepths;
+                                this.useBlockParams = this.useBlockParams || compiler.useBlockParams;
+                                child.useDepths = this.useDepths;
+                                child.useBlockParams = this.useBlockParams;
+                            } else {
+                                child.index = existing.index;
+                                child.name = 'program' + existing.index;
 
-	        this.useDepths = this.useDepths || existing.useDepths;
-	        this.useBlockParams = this.useBlockParams || existing.useBlockParams;
-	      }
-	    }
-	  },
-	  matchExistingProgram: function matchExistingProgram(child) {
-	    for (var i = 0, len = this.context.environments.length; i < len; i++) {
-	      var environment = this.context.environments[i];
-	      if (environment && environment.equals(child)) {
-	        return environment;
-	      }
-	    }
-	  },
+                                this.useDepths = this.useDepths || existing.useDepths;
+                                this.useBlockParams = this.useBlockParams || existing.useBlockParams;
+                            }
+                        }
+                    },
+                    matchExistingProgram: function matchExistingProgram(child) {
+                        for (var i = 0, len = this.context.environments.length; i < len; i++) {
+                            var environment = this.context.environments[i];
+                            if (environment && environment.equals(child)) {
+                                return environment;
+                            }
+                        }
+                    },
 
-	  programExpression: function programExpression(guid) {
-	    var child = this.environment.children[guid],
-	        programParams = [child.index, 'data', child.blockParams];
+                    programExpression: function programExpression(guid) {
+                        var child = this.environment.children[guid],
+                            programParams = [child.index, 'data', child.blockParams];
 
-	    if (this.useBlockParams || this.useDepths) {
-	      programParams.push('blockParams');
-	    }
-	    if (this.useDepths) {
-	      programParams.push('depths');
-	    }
+                        if (this.useBlockParams || this.useDepths) {
+                            programParams.push('blockParams');
+                        }
+                        if (this.useDepths) {
+                            programParams.push('depths');
+                        }
 
-	    return 'container.program(' + programParams.join(', ') + ')';
-	  },
+                        return 'container.program(' + programParams.join(', ') + ')';
+                    },
 
-	  useRegister: function useRegister(name) {
-	    if (!this.registers[name]) {
-	      this.registers[name] = true;
-	      this.registers.list.push(name);
-	    }
-	  },
+                    useRegister: function useRegister(name) {
+                        if (!this.registers[name]) {
+                            this.registers[name] = true;
+                            this.registers.list.push(name);
+                        }
+                    },
 
-	  push: function push(expr) {
-	    if (!(expr instanceof Literal)) {
-	      expr = this.source.wrap(expr);
-	    }
+                    push: function push(expr) {
+                        if (!(expr instanceof Literal)) {
+                            expr = this.source.wrap(expr);
+                        }
 
-	    this.inlineStack.push(expr);
-	    return expr;
-	  },
+                        this.inlineStack.push(expr);
+                        return expr;
+                    },
 
-	  pushStackLiteral: function pushStackLiteral(item) {
-	    this.push(new Literal(item));
-	  },
+                    pushStackLiteral: function pushStackLiteral(item) {
+                        this.push(new Literal(item));
+                    },
 
-	  pushSource: function pushSource(source) {
-	    if (this.pendingContent) {
-	      this.source.push(this.appendToBuffer(this.source.quotedString(this.pendingContent), this.pendingLocation));
-	      this.pendingContent = undefined;
-	    }
+                    pushSource: function pushSource(source) {
+                        if (this.pendingContent) {
+                            this.source.push(this.appendToBuffer(this.source.quotedString(this.pendingContent), this.pendingLocation));
+                            this.pendingContent = undefined;
+                        }
 
-	    if (source) {
-	      this.source.push(source);
-	    }
-	  },
+                        if (source) {
+                            this.source.push(source);
+                        }
+                    },
 
-	  replaceStack: function replaceStack(callback) {
-	    var prefix = ['('],
-	        stack = undefined,
-	        createdStack = undefined,
-	        usedLiteral = undefined;
+                    replaceStack: function replaceStack(callback) {
+                        var prefix = ['('],
+                            stack = undefined,
+                            createdStack = undefined,
+                            usedLiteral = undefined;
 
-	    /* istanbul ignore next */
-	    if (!this.isInline()) {
-	      throw new _exception2['default']('replaceStack on non-inline');
-	    }
+                        /* istanbul ignore next */
+                        if (!this.isInline()) {
+                            throw new _exception2['default']('replaceStack on non-inline');
+                        }
 
-	    // We want to merge the inline statement into the replacement statement via ','
-	    var top = this.popStack(true);
+                        // We want to merge the inline statement into the replacement statement via ','
+                        var top = this.popStack(true);
 
-	    if (top instanceof Literal) {
-	      // Literals do not need to be inlined
-	      stack = [top.value];
-	      prefix = ['(', stack];
-	      usedLiteral = true;
-	    } else {
-	      // Get or create the current stack name for use by the inline
-	      createdStack = true;
-	      var _name = this.incrStack();
+                        if (top instanceof Literal) {
+                            // Literals do not need to be inlined
+                            stack = [top.value];
+                            prefix = ['(', stack];
+                            usedLiteral = true;
+                        } else {
+                            // Get or create the current stack name for use by the inline
+                            createdStack = true;
+                            var _name = this.incrStack();
 
-	      prefix = ['((', this.push(_name), ' = ', top, ')'];
-	      stack = this.topStack();
-	    }
+                            prefix = ['((', this.push(_name), ' = ', top, ')'];
+                            stack = this.topStack();
+                        }
 
-	    var item = callback.call(this, stack);
+                        var item = callback.call(this, stack);
 
-	    if (!usedLiteral) {
-	      this.popStack();
-	    }
-	    if (createdStack) {
-	      this.stackSlot--;
-	    }
-	    this.push(prefix.concat(item, ')'));
-	  },
+                        if (!usedLiteral) {
+                            this.popStack();
+                        }
+                        if (createdStack) {
+                            this.stackSlot--;
+                        }
+                        this.push(prefix.concat(item, ')'));
+                    },
 
-	  incrStack: function incrStack() {
-	    this.stackSlot++;
-	    if (this.stackSlot > this.stackVars.length) {
-	      this.stackVars.push('stack' + this.stackSlot);
-	    }
-	    return this.topStackName();
-	  },
-	  topStackName: function topStackName() {
-	    return 'stack' + this.stackSlot;
-	  },
-	  flushInline: function flushInline() {
-	    var inlineStack = this.inlineStack;
-	    this.inlineStack = [];
-	    for (var i = 0, len = inlineStack.length; i < len; i++) {
-	      var entry = inlineStack[i];
-	      /* istanbul ignore if */
-	      if (entry instanceof Literal) {
-	        this.compileStack.push(entry);
-	      } else {
-	        var stack = this.incrStack();
-	        this.pushSource([stack, ' = ', entry, ';']);
-	        this.compileStack.push(stack);
-	      }
-	    }
-	  },
-	  isInline: function isInline() {
-	    return this.inlineStack.length;
-	  },
+                    incrStack: function incrStack() {
+                        this.stackSlot++;
+                        if (this.stackSlot > this.stackVars.length) {
+                            this.stackVars.push('stack' + this.stackSlot);
+                        }
+                        return this.topStackName();
+                    },
+                    topStackName: function topStackName() {
+                        return 'stack' + this.stackSlot;
+                    },
+                    flushInline: function flushInline() {
+                        var inlineStack = this.inlineStack;
+                        this.inlineStack = [];
+                        for (var i = 0, len = inlineStack.length; i < len; i++) {
+                            var entry = inlineStack[i];
+                            /* istanbul ignore if */
+                            if (entry instanceof Literal) {
+                                this.compileStack.push(entry);
+                            } else {
+                                var stack = this.incrStack();
+                                this.pushSource([stack, ' = ', entry, ';']);
+                                this.compileStack.push(stack);
+                            }
+                        }
+                    },
+                    isInline: function isInline() {
+                        return this.inlineStack.length;
+                    },
 
-	  popStack: function popStack(wrapped) {
-	    var inline = this.isInline(),
-	        item = (inline ? this.inlineStack : this.compileStack).pop();
+                    popStack: function popStack(wrapped) {
+                        var inline = this.isInline(),
+                            item = (inline ? this.inlineStack : this.compileStack).pop();
 
-	    if (!wrapped && item instanceof Literal) {
-	      return item.value;
-	    } else {
-	      if (!inline) {
-	        /* istanbul ignore next */
-	        if (!this.stackSlot) {
-	          throw new _exception2['default']('Invalid stack pop');
-	        }
-	        this.stackSlot--;
-	      }
-	      return item;
-	    }
-	  },
+                        if (!wrapped && item instanceof Literal) {
+                            return item.value;
+                        } else {
+                            if (!inline) {
+                                /* istanbul ignore next */
+                                if (!this.stackSlot) {
+                                    throw new _exception2['default']('Invalid stack pop');
+                                }
+                                this.stackSlot--;
+                            }
+                            return item;
+                        }
+                    },
 
-	  topStack: function topStack() {
-	    var stack = this.isInline() ? this.inlineStack : this.compileStack,
-	        item = stack[stack.length - 1];
+                    topStack: function topStack() {
+                        var stack = this.isInline() ? this.inlineStack : this.compileStack,
+                            item = stack[stack.length - 1];
 
-	    /* istanbul ignore if */
-	    if (item instanceof Literal) {
-	      return item.value;
-	    } else {
-	      return item;
-	    }
-	  },
+                        /* istanbul ignore if */
+                        if (item instanceof Literal) {
+                            return item.value;
+                        } else {
+                            return item;
+                        }
+                    },
 
-	  contextName: function contextName(context) {
-	    if (this.useDepths && context) {
-	      return 'depths[' + context + ']';
-	    } else {
-	      return 'depth' + context;
-	    }
-	  },
+                    contextName: function contextName(context) {
+                        if (this.useDepths && context) {
+                            return 'depths[' + context + ']';
+                        } else {
+                            return 'depth' + context;
+                        }
+                    },
 
-	  quotedString: function quotedString(str) {
-	    return this.source.quotedString(str);
-	  },
+                    quotedString: function quotedString(str) {
+                        return this.source.quotedString(str);
+                    },
 
-	  objectLiteral: function objectLiteral(obj) {
-	    return this.source.objectLiteral(obj);
-	  },
+                    objectLiteral: function objectLiteral(obj) {
+                        return this.source.objectLiteral(obj);
+                    },
 
-	  aliasable: function aliasable(name) {
-	    var ret = this.aliases[name];
-	    if (ret) {
-	      ret.referenceCount++;
-	      return ret;
-	    }
+                    aliasable: function aliasable(name) {
+                        var ret = this.aliases[name];
+                        if (ret) {
+                            ret.referenceCount++;
+                            return ret;
+                        }
 
-	    ret = this.aliases[name] = this.source.wrap(name);
-	    ret.aliasable = true;
-	    ret.referenceCount = 1;
+                        ret = this.aliases[name] = this.source.wrap(name);
+                        ret.aliasable = true;
+                        ret.referenceCount = 1;
 
-	    return ret;
-	  },
+                        return ret;
+                    },
 
-	  setupHelper: function setupHelper(paramSize, name, blockHelper) {
-	    var params = [],
-	        paramsInit = this.setupHelperArgs(name, paramSize, params, blockHelper);
-	    var foundHelper = this.nameLookup('helpers', name, 'helper'),
-	        callContext = this.aliasable(this.contextName(0) + ' != null ? ' + this.contextName(0) + ' : (container.nullContext || {})');
+                    setupHelper: function setupHelper(paramSize, name, blockHelper) {
+                        var params = [],
+                            paramsInit = this.setupHelperArgs(name, paramSize, params, blockHelper);
+                        var foundHelper = this.nameLookup('helpers', name, 'helper'),
+                            callContext = this.aliasable(this.contextName(0) + ' != null ? ' + this.contextName(0) + ' : (container.nullContext || {})');
 
-	    return {
-	      params: params,
-	      paramsInit: paramsInit,
-	      name: foundHelper,
-	      callParams: [callContext].concat(params)
-	    };
-	  },
+                        return {
+                            params: params,
+                            paramsInit: paramsInit,
+                            name: foundHelper,
+                            callParams: [callContext].concat(params)
+                        };
+                    },
 
-	  setupParams: function setupParams(helper, paramSize, params) {
-	    var options = {},
-	        contexts = [],
-	        types = [],
-	        ids = [],
-	        objectArgs = !params,
-	        param = undefined;
+                    setupParams: function setupParams(helper, paramSize, params) {
+                        var options = {},
+                            contexts = [],
+                            types = [],
+                            ids = [],
+                            objectArgs = !params,
+                            param = undefined;
 
-	    if (objectArgs) {
-	      params = [];
-	    }
+                        if (objectArgs) {
+                            params = [];
+                        }
 
-	    options.name = this.quotedString(helper);
-	    options.hash = this.popStack();
+                        options.name = this.quotedString(helper);
+                        options.hash = this.popStack();
 
-	    if (this.trackIds) {
-	      options.hashIds = this.popStack();
-	    }
-	    if (this.stringParams) {
-	      options.hashTypes = this.popStack();
-	      options.hashContexts = this.popStack();
-	    }
+                        if (this.trackIds) {
+                            options.hashIds = this.popStack();
+                        }
+                        if (this.stringParams) {
+                            options.hashTypes = this.popStack();
+                            options.hashContexts = this.popStack();
+                        }
 
-	    var inverse = this.popStack(),
-	        program = this.popStack();
+                        var inverse = this.popStack(),
+                            program = this.popStack();
 
-	    // Avoid setting fn and inverse if neither are set. This allows
-	    // helpers to do a check for `if (options.fn)`
-	    if (program || inverse) {
-	      options.fn = program || 'container.noop';
-	      options.inverse = inverse || 'container.noop';
-	    }
+                        // Avoid setting fn and inverse if neither are set. This allows
+                        // helpers to do a check for `if (options.fn)`
+                        if (program || inverse) {
+                            options.fn = program || 'container.noop';
+                            options.inverse = inverse || 'container.noop';
+                        }
 
-	    // The parameters go on to the stack in order (making sure that they are evaluated in order)
-	    // so we need to pop them off the stack in reverse order
-	    var i = paramSize;
-	    while (i--) {
-	      param = this.popStack();
-	      params[i] = param;
+                        // The parameters go on to the stack in order (making sure that they are evaluated in order)
+                        // so we need to pop them off the stack in reverse order
+                        var i = paramSize;
+                        while (i--) {
+                            param = this.popStack();
+                            params[i] = param;
 
-	      if (this.trackIds) {
-	        ids[i] = this.popStack();
-	      }
-	      if (this.stringParams) {
-	        types[i] = this.popStack();
-	        contexts[i] = this.popStack();
-	      }
-	    }
+                            if (this.trackIds) {
+                                ids[i] = this.popStack();
+                            }
+                            if (this.stringParams) {
+                                types[i] = this.popStack();
+                                contexts[i] = this.popStack();
+                            }
+                        }
 
-	    if (objectArgs) {
-	      options.args = this.source.generateArray(params);
-	    }
+                        if (objectArgs) {
+                            options.args = this.source.generateArray(params);
+                        }
 
-	    if (this.trackIds) {
-	      options.ids = this.source.generateArray(ids);
-	    }
-	    if (this.stringParams) {
-	      options.types = this.source.generateArray(types);
-	      options.contexts = this.source.generateArray(contexts);
-	    }
+                        if (this.trackIds) {
+                            options.ids = this.source.generateArray(ids);
+                        }
+                        if (this.stringParams) {
+                            options.types = this.source.generateArray(types);
+                            options.contexts = this.source.generateArray(contexts);
+                        }
 
-	    if (this.options.data) {
-	      options.data = 'data';
-	    }
-	    if (this.useBlockParams) {
-	      options.blockParams = 'blockParams';
-	    }
-	    return options;
-	  },
+                        if (this.options.data) {
+                            options.data = 'data';
+                        }
+                        if (this.useBlockParams) {
+                            options.blockParams = 'blockParams';
+                        }
+                        return options;
+                    },
 
-	  setupHelperArgs: function setupHelperArgs(helper, paramSize, params, useRegister) {
-	    var options = this.setupParams(helper, paramSize, params);
-	    options.loc = JSON.stringify(this.source.currentLocation);
-	    options = this.objectLiteral(options);
-	    if (useRegister) {
-	      this.useRegister('options');
-	      params.push('options');
-	      return ['options=', options];
-	    } else if (params) {
-	      params.push(options);
-	      return '';
-	    } else {
-	      return options;
-	    }
-	  }
-	};
+                    setupHelperArgs: function setupHelperArgs(helper, paramSize, params, useRegister) {
+                        var options = this.setupParams(helper, paramSize, params);
+                        options.loc = JSON.stringify(this.source.currentLocation);
+                        options = this.objectLiteral(options);
+                        if (useRegister) {
+                            this.useRegister('options');
+                            params.push('options');
+                            return ['options=', options];
+                        } else if (params) {
+                            params.push(options);
+                            return '';
+                        } else {
+                            return options;
+                        }
+                    }
+                };
 
-	(function () {
-	  var reservedWords = ('break else new var' + ' case finally return void' + ' catch for switch while' + ' continue function this with' + ' default if throw' + ' delete in try' + ' do instanceof typeof' + ' abstract enum int short' + ' boolean export interface static' + ' byte extends long super' + ' char final native synchronized' + ' class float package throws' + ' const goto private transient' + ' debugger implements protected volatile' + ' double import public let yield await' + ' null true false').split(' ');
+                (function () {
+                    var reservedWords = ('break else new var' + ' case finally return void' + ' catch for switch while' + ' continue function this with' + ' default if throw' + ' delete in try' + ' do instanceof typeof' + ' abstract enum int short' + ' boolean export interface static' + ' byte extends long super' + ' char final native synchronized' + ' class float package throws' + ' const goto private transient' + ' debugger implements protected volatile' + ' double import public let yield await' + ' null true false').split(' ');
 
-	  var compilerWords = JavaScriptCompiler.RESERVED_WORDS = {};
+                    var compilerWords = JavaScriptCompiler.RESERVED_WORDS = {};
 
-	  for (var i = 0, l = reservedWords.length; i < l; i++) {
-	    compilerWords[reservedWords[i]] = true;
-	  }
-	})();
+                    for (var i = 0, l = reservedWords.length; i < l; i++) {
+                        compilerWords[reservedWords[i]] = true;
+                    }
+                })();
 
-	JavaScriptCompiler.isValidJavaScriptVariableName = function (name) {
-	  return !JavaScriptCompiler.RESERVED_WORDS[name] && /^[a-zA-Z_$][0-9a-zA-Z_$]*$/.test(name);
-	};
+                JavaScriptCompiler.isValidJavaScriptVariableName = function (name) {
+                    return !JavaScriptCompiler.RESERVED_WORDS[name] && /^[a-zA-Z_$][0-9a-zA-Z_$]*$/.test(name);
+                };
 
-	function strictLookup(requireTerminal, compiler, parts, type) {
-	  var stack = compiler.popStack(),
-	      i = 0,
-	      len = parts.length;
-	  if (requireTerminal) {
-	    len--;
-	  }
+                function strictLookup(requireTerminal, compiler, parts, type) {
+                    var stack = compiler.popStack(),
+                        i = 0,
+                        len = parts.length;
+                    if (requireTerminal) {
+                        len--;
+                    }
 
-	  for (; i < len; i++) {
-	    stack = compiler.nameLookup(stack, parts[i], type);
-	  }
+                    for (; i < len; i++) {
+                        stack = compiler.nameLookup(stack, parts[i], type);
+                    }
 
-	  if (requireTerminal) {
-	    return [compiler.aliasable('container.strict'), '(', stack, ', ', compiler.quotedString(parts[i]), ', ', JSON.stringify(compiler.source.currentLocation), ' )'];
-	  } else {
-	    return stack;
-	  }
-	}
+                    if (requireTerminal) {
+                        return [compiler.aliasable('container.strict'), '(', stack, ', ', compiler.quotedString(parts[i]), ', ', JSON.stringify(compiler.source.currentLocation), ' )'];
+                    } else {
+                        return stack;
+                    }
+                }
 
-	exports['default'] = JavaScriptCompiler;
-	module.exports = exports['default'];
+                exports['default'] = JavaScriptCompiler;
+                module.exports = exports['default'];
 
-/***/ }),
-/* 50 */
-/***/ (function(module, exports, __webpack_require__) {
+                /***/
+            }),
+            /* 50 */
+            /***/ (function (module, exports, __webpack_require__) {
 
-	/* global define */
-	'use strict';
+                /* global define */
+                'use strict';
 
-	var _Object$keys = __webpack_require__(13)['default'];
+                var _Object$keys = __webpack_require__(13)['default'];
 
-	exports.__esModule = true;
+                exports.__esModule = true;
 
-	var _utils = __webpack_require__(5);
+                var _utils = __webpack_require__(5);
 
-	var SourceNode = undefined;
+                var SourceNode = undefined;
 
-	try {
-	  /* istanbul ignore next */
-	  if (false) {
-	    // We don't support this in AMD environments. For these environments, we asusme that
-	    // they are running on the browser and thus have no need for the source-map library.
-	    var SourceMap = require('source-map');
-	    SourceNode = SourceMap.SourceNode;
-	  }
-	} catch (err) {}
-	/* NOP */
+                try {
+                    /* istanbul ignore next */
+                    if (false) {
+                        // We don't support this in AMD environments. For these environments, we asusme that
+                        // they are running on the browser and thus have no need for the source-map library.
+                        var SourceMap = require('source-map');
+                        SourceNode = SourceMap.SourceNode;
+                    }
+                } catch (err) {
+                }
+                /* NOP */
 
-	/* istanbul ignore if: tested but not covered in istanbul due to dist build  */
-	if (!SourceNode) {
-	  SourceNode = function (line, column, srcFile, chunks) {
-	    this.src = '';
-	    if (chunks) {
-	      this.add(chunks);
-	    }
-	  };
-	  /* istanbul ignore next */
-	  SourceNode.prototype = {
-	    add: function add(chunks) {
-	      if (_utils.isArray(chunks)) {
-	        chunks = chunks.join('');
-	      }
-	      this.src += chunks;
-	    },
-	    prepend: function prepend(chunks) {
-	      if (_utils.isArray(chunks)) {
-	        chunks = chunks.join('');
-	      }
-	      this.src = chunks + this.src;
-	    },
-	    toStringWithSourceMap: function toStringWithSourceMap() {
-	      return { code: this.toString() };
-	    },
-	    toString: function toString() {
-	      return this.src;
-	    }
-	  };
-	}
+                /* istanbul ignore if: tested but not covered in istanbul due to dist build  */
+                if (!SourceNode) {
+                    SourceNode = function (line, column, srcFile, chunks) {
+                        this.src = '';
+                        if (chunks) {
+                            this.add(chunks);
+                        }
+                    };
+                    /* istanbul ignore next */
+                    SourceNode.prototype = {
+                        add: function add(chunks) {
+                            if (_utils.isArray(chunks)) {
+                                chunks = chunks.join('');
+                            }
+                            this.src += chunks;
+                        },
+                        prepend: function prepend(chunks) {
+                            if (_utils.isArray(chunks)) {
+                                chunks = chunks.join('');
+                            }
+                            this.src = chunks + this.src;
+                        },
+                        toStringWithSourceMap: function toStringWithSourceMap() {
+                            return {code: this.toString()};
+                        },
+                        toString: function toString() {
+                            return this.src;
+                        }
+                    };
+                }
 
-	function castChunk(chunk, codeGen, loc) {
-	  if (_utils.isArray(chunk)) {
-	    var ret = [];
+                function castChunk(chunk, codeGen, loc) {
+                    if (_utils.isArray(chunk)) {
+                        var ret = [];
 
-	    for (var i = 0, len = chunk.length; i < len; i++) {
-	      ret.push(codeGen.wrap(chunk[i], loc));
-	    }
-	    return ret;
-	  } else if (typeof chunk === 'boolean' || typeof chunk === 'number') {
-	    // Handle primitives that the SourceNode will throw up on
-	    return chunk + '';
-	  }
-	  return chunk;
-	}
+                        for (var i = 0, len = chunk.length; i < len; i++) {
+                            ret.push(codeGen.wrap(chunk[i], loc));
+                        }
+                        return ret;
+                    } else if (typeof chunk === 'boolean' || typeof chunk === 'number') {
+                        // Handle primitives that the SourceNode will throw up on
+                        return chunk + '';
+                    }
+                    return chunk;
+                }
 
-	function CodeGen(srcFile) {
-	  this.srcFile = srcFile;
-	  this.source = [];
-	}
+                function CodeGen(srcFile) {
+                    this.srcFile = srcFile;
+                    this.source = [];
+                }
 
-	CodeGen.prototype = {
-	  isEmpty: function isEmpty() {
-	    return !this.source.length;
-	  },
-	  prepend: function prepend(source, loc) {
-	    this.source.unshift(this.wrap(source, loc));
-	  },
-	  push: function push(source, loc) {
-	    this.source.push(this.wrap(source, loc));
-	  },
+                CodeGen.prototype = {
+                    isEmpty: function isEmpty() {
+                        return !this.source.length;
+                    },
+                    prepend: function prepend(source, loc) {
+                        this.source.unshift(this.wrap(source, loc));
+                    },
+                    push: function push(source, loc) {
+                        this.source.push(this.wrap(source, loc));
+                    },
 
-	  merge: function merge() {
-	    var source = this.empty();
-	    this.each(function (line) {
-	      source.add(['  ', line, '\n']);
-	    });
-	    return source;
-	  },
+                    merge: function merge() {
+                        var source = this.empty();
+                        this.each(function (line) {
+                            source.add(['  ', line, '\n']);
+                        });
+                        return source;
+                    },
 
-	  each: function each(iter) {
-	    for (var i = 0, len = this.source.length; i < len; i++) {
-	      iter(this.source[i]);
-	    }
-	  },
+                    each: function each(iter) {
+                        for (var i = 0, len = this.source.length; i < len; i++) {
+                            iter(this.source[i]);
+                        }
+                    },
 
-	  empty: function empty() {
-	    var loc = this.currentLocation || { start: {} };
-	    return new SourceNode(loc.start.line, loc.start.column, this.srcFile);
-	  },
-	  wrap: function wrap(chunk) {
-	    var loc = arguments.length <= 1 || arguments[1] === undefined ? this.currentLocation || { start: {} } : arguments[1];
+                    empty: function empty() {
+                        var loc = this.currentLocation || {start: {}};
+                        return new SourceNode(loc.start.line, loc.start.column, this.srcFile);
+                    },
+                    wrap: function wrap(chunk) {
+                        var loc = arguments.length <= 1 || arguments[1] === undefined ? this.currentLocation || {start: {}} : arguments[1];
 
-	    if (chunk instanceof SourceNode) {
-	      return chunk;
-	    }
+                        if (chunk instanceof SourceNode) {
+                            return chunk;
+                        }
 
-	    chunk = castChunk(chunk, this, loc);
+                        chunk = castChunk(chunk, this, loc);
 
-	    return new SourceNode(loc.start.line, loc.start.column, this.srcFile, chunk);
-	  },
+                        return new SourceNode(loc.start.line, loc.start.column, this.srcFile, chunk);
+                    },
 
-	  functionCall: function functionCall(fn, type, params) {
-	    params = this.generateList(params);
-	    return this.wrap([fn, type ? '.' + type + '(' : '(', params, ')']);
-	  },
+                    functionCall: function functionCall(fn, type, params) {
+                        params = this.generateList(params);
+                        return this.wrap([fn, type ? '.' + type + '(' : '(', params, ')']);
+                    },
 
-	  quotedString: function quotedString(str) {
-	    return '"' + (str + '').replace(/\\/g, '\\\\').replace(/"/g, '\\"').replace(/\n/g, '\\n').replace(/\r/g, '\\r').replace(/\u2028/g, '\\u2028') // Per Ecma-262 7.3 + 7.8.4
-	    .replace(/\u2029/g, '\\u2029') + '"';
-	  },
+                    quotedString: function quotedString(str) {
+                        return '"' + (str + '').replace(/\\/g, '\\\\').replace(/"/g, '\\"').replace(/\n/g, '\\n').replace(/\r/g, '\\r').replace(/\u2028/g, '\\u2028') // Per Ecma-262 7.3 + 7.8.4
+                            .replace(/\u2029/g, '\\u2029') + '"';
+                    },
 
-	  objectLiteral: function objectLiteral(obj) {
-	    // istanbul ignore next
+                    objectLiteral: function objectLiteral(obj) {
+                        // istanbul ignore next
 
-	    var _this = this;
+                        var _this = this;
 
-	    var pairs = [];
+                        var pairs = [];
 
-	    _Object$keys(obj).forEach(function (key) {
-	      var value = castChunk(obj[key], _this);
-	      if (value !== 'undefined') {
-	        pairs.push([_this.quotedString(key), ':', value]);
-	      }
-	    });
+                        _Object$keys(obj).forEach(function (key) {
+                            var value = castChunk(obj[key], _this);
+                            if (value !== 'undefined') {
+                                pairs.push([_this.quotedString(key), ':', value]);
+                            }
+                        });
 
-	    var ret = this.generateList(pairs);
-	    ret.prepend('{');
-	    ret.add('}');
-	    return ret;
-	  },
+                        var ret = this.generateList(pairs);
+                        ret.prepend('{');
+                        ret.add('}');
+                        return ret;
+                    },
 
-	  generateList: function generateList(entries) {
-	    var ret = this.empty();
+                    generateList: function generateList(entries) {
+                        var ret = this.empty();
 
-	    for (var i = 0, len = entries.length; i < len; i++) {
-	      if (i) {
-	        ret.add(',');
-	      }
+                        for (var i = 0, len = entries.length; i < len; i++) {
+                            if (i) {
+                                ret.add(',');
+                            }
 
-	      ret.add(castChunk(entries[i], this));
-	    }
+                            ret.add(castChunk(entries[i], this));
+                        }
 
-	    return ret;
-	  },
+                        return ret;
+                    },
 
-	  generateArray: function generateArray(entries) {
-	    var ret = this.generateList(entries);
-	    ret.prepend('[');
-	    ret.add(']');
+                    generateArray: function generateArray(entries) {
+                        var ret = this.generateList(entries);
+                        ret.prepend('[');
+                        ret.add(']');
 
-	    return ret;
-	  }
-	};
+                        return ret;
+                    }
+                };
 
-	exports['default'] = CodeGen;
-	module.exports = exports['default'];
+                exports['default'] = CodeGen;
+                module.exports = exports['default'];
 
-/***/ })
-/******/ ])
+                /***/
+            })
+            /******/])
 });
 ;
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/webapp/static/js/jquery/jquery.animsition.js b/zy-acs-cv/src/main/webapp/static/js/jquery/jquery.animsition.js
index 4a26776..0440e34 100644
--- a/zy-acs-cv/src/main/webapp/static/js/jquery/jquery.animsition.js
+++ b/zy-acs-cv/src/main/webapp/static/js/jquery/jquery.animsition.js
@@ -5,229 +5,230 @@
  * Author : blivesta
  * http://blivesta.com/
  */
-(function($) {
-  "use strict";
-  var namespace = "animsition";
-  var methods = {
-    init: function(options) {
-      options = $.extend({
-        inClass: "fade-in",
-        outClass: "fade-out",
-        inDuration: 1500,
-        outDuration: 800,
-        linkElement: ".animsition-link",
-        loading: true,
-        loadingParentElement: "body",
-        loadingClass: "animsition-loading",
-        unSupportCss: [ "animation-duration", "-webkit-animation-duration", "-o-animation-duration" ],
-        overlay: false,
-        overlayClass: "animsition-overlay-slide",
-        overlayParentElement: "body"
-      }, options);
-      var support = methods.supportCheck.call(this, options);
-      if (!support) {
-        if (!("console" in window)) {
-          window.console = {};
-          window.console.log = function(str) {
-            return str;
-          };
+(function ($) {
+    "use strict";
+    var namespace = "animsition";
+    var methods = {
+        init: function (options) {
+            options = $.extend({
+                inClass: "fade-in",
+                outClass: "fade-out",
+                inDuration: 1500,
+                outDuration: 800,
+                linkElement: ".animsition-link",
+                loading: true,
+                loadingParentElement: "body",
+                loadingClass: "animsition-loading",
+                unSupportCss: ["animation-duration", "-webkit-animation-duration", "-o-animation-duration"],
+                overlay: false,
+                overlayClass: "animsition-overlay-slide",
+                overlayParentElement: "body"
+            }, options);
+            var support = methods.supportCheck.call(this, options);
+            if (!support) {
+                if (!("console" in window)) {
+                    window.console = {};
+                    window.console.log = function (str) {
+                        return str;
+                    };
+                }
+                console.log("Animsition does not support this browser.");
+                return methods.destroy.call(this);
+            }
+            var overlayMode = methods.optionCheck.call(this, options);
+            if (overlayMode) {
+                methods.addOverlay.call(this, options);
+            }
+            if (options.loading) {
+                methods.addLoading.call(this, options);
+            }
+            return this.each(function () {
+                var _this = this;
+                var $this = $(this);
+                var $window = $(window);
+                var data = $this.data(namespace);
+                if (!data) {
+                    options = $.extend({}, options);
+                    $this.data(namespace, {
+                        options: options
+                    });
+                    $window.on("load." + namespace + " pageshow." + namespace, function () {
+                        methods.pageIn.call(_this);
+                    });
+                    $window.on("unload." + namespace, function () {
+                    });
+                    $(options.linkElement).on("click." + namespace, function (event) {
+                        event.preventDefault();
+                        var $self = $(this);
+                        methods.pageOut.call(_this, $self);
+                    });
+                }
+            });
+        },
+        addOverlay: function (options) {
+            $(options.overlayParentElement).prepend('<div class="' + options.overlayClass + '"></div>');
+        },
+        addLoading: function (options) {
+            $(options.loadingParentElement).append('<div class="' + options.loadingClass + '"></div>');
+        },
+        removeLoading: function () {
+            var $this = $(this);
+            var options = $this.data(namespace).options;
+            var $loading = $(options.loadingParentElement).children("." + options.loadingClass);
+            $loading.fadeOut().remove();
+        },
+        supportCheck: function (options) {
+            var $this = $(this);
+            var props = options.unSupportCss;
+            var propsNum = props.length;
+            var support = false;
+            if (propsNum === 0) {
+                support = true;
+            }
+            for (var i = 0; i < propsNum; i++) {
+                if (typeof $this.css(props[i]) === "string") {
+                    support = true;
+                    break;
+                }
+            }
+            return support;
+        },
+        optionCheck: function (options) {
+            var $this = $(this);
+            var overlayMode;
+            if (options.overlay || $this.data("animsition-overlay")) {
+                overlayMode = true;
+            } else {
+                overlayMode = false;
+            }
+            return overlayMode;
+        },
+        animationCheck: function (data, stateClass, stateIn) {
+            var $this = $(this);
+            var options = $this.data(namespace).options;
+            var dataType = typeof data;
+            var dataDuration = !stateClass && dataType === "number";
+            var dataClass = stateClass && dataType === "string" && data.length > 0;
+            if (dataDuration || dataClass) {
+                data = data;
+            } else if (stateClass && stateIn) {
+                data = options.inClass;
+            } else if (!stateClass && stateIn) {
+                data = options.inDuration;
+            } else if (stateClass && !stateIn) {
+                data = options.outClass;
+            } else if (!stateClass && !stateIn) {
+                data = options.outDuration;
+            }
+            return data;
+        },
+        pageIn: function () {
+            var _this = this;
+            var $this = $(this);
+            var options = $this.data(namespace).options;
+            var thisInDuration = $this.data("animsition-in-duration");
+            var thisInClass = $this.data("animsition-in");
+            var inDuration = methods.animationCheck.call(_this, thisInDuration, false, true);
+            var inClass = methods.animationCheck.call(_this, thisInClass, true, true);
+            var overlayMode = methods.optionCheck.call(_this, options);
+            if (options.loading) {
+                methods.removeLoading.call(_this);
+            }
+            if (overlayMode) {
+                methods.pageInOverlay.call(_this, inClass, inDuration);
+            } else {
+                methods.pageInBasic.call(_this, inClass, inDuration);
+            }
+        },
+        pageInBasic: function (inClass, inDuration) {
+            var $this = $(this);
+            $this.css({
+                "animation-duration": inDuration / 1e3 + "s"
+            }).addClass(inClass).animateCallback(function () {
+                $this.removeClass(inClass).css({
+                    opacity: 1
+                });
+            });
+        },
+        pageInOverlay: function (inClass, inDuration) {
+            var $this = $(this);
+            var options = $this.data(namespace).options;
+            $this.css({
+                opacity: 1
+            });
+            $(options.overlayParentElement).children("." + options.overlayClass).css({
+                "animation-duration": inDuration / 1e3 + "s"
+            }).addClass(inClass);
+        },
+        pageOut: function ($self) {
+            var _this = this;
+            var $this = $(this);
+            var options = $this.data(namespace).options;
+            var selfOutClass = $self.data("animsition-out");
+            var thisOutClass = $this.data("animsition-out");
+            var selfOutDuration = $self.data("animsition-out-duration");
+            var thisOutDuration = $this.data("animsition-out-duration");
+            var isOutClass = selfOutClass ? selfOutClass : thisOutClass;
+            var isOutDuration = selfOutDuration ? selfOutDuration : thisOutDuration;
+            var outClass = methods.animationCheck.call(_this, isOutClass, true, false);
+            var outDuration = methods.animationCheck.call(_this, isOutDuration, false, false);
+            var overlayMode = methods.optionCheck.call(_this, options);
+            var url = $self.attr("href");
+            if (overlayMode) {
+                methods.pageOutOverlay.call(_this, outClass, outDuration, url);
+            } else {
+                methods.pageOutBasic.call(_this, outClass, outDuration, url);
+            }
+        },
+        pageOutBasic: function (outClass, outDuration, url) {
+            var $this = $(this);
+            $this.css({
+                "animation-duration": outDuration / 1e3 + "s"
+            }).addClass(outClass).animateCallback(function () {
+                location.href = url;
+            });
+        },
+        pageOutOverlay: function (outClass, outDuration, url) {
+            var _this = this;
+            var $this = $(this);
+            var options = $this.data(namespace).options;
+            var thisInClass = $this.data("animsition-in");
+            var inClass = methods.animationCheck.call(_this, thisInClass, true, true);
+            $(options.overlayParentElement).children("." + options.overlayClass).css({
+                "animation-duration": outDuration / 1e3 + "s"
+            }).removeClass(inClass).addClass(outClass).animateCallback(function () {
+                $this.css({
+                    opacity: 0
+                });
+                location.href = url;
+            });
+        },
+        destroy: function () {
+            return this.each(function () {
+                var $this = $(this);
+                $(window).unbind("." + namespace);
+                $this.css({
+                    opacity: 1
+                }).removeData(namespace);
+            });
         }
-        console.log("Animsition does not support this browser.");
-        return methods.destroy.call(this);
-      }
-      var overlayMode = methods.optionCheck.call(this, options);
-      if (overlayMode) {
-        methods.addOverlay.call(this, options);
-      }
-      if (options.loading) {
-        methods.addLoading.call(this, options);
-      }
-      return this.each(function() {
-        var _this = this;
-        var $this = $(this);
-        var $window = $(window);
-        var data = $this.data(namespace);
-        if (!data) {
-          options = $.extend({}, options);
-          $this.data(namespace, {
-            options: options
-          });
-          $window.on("load." + namespace + " pageshow." + namespace, function() {
-            methods.pageIn.call(_this);
-          });
-          $window.on("unload." + namespace, function() {});
-          $(options.linkElement).on("click." + namespace, function(event) {
-            event.preventDefault();
-            var $self = $(this);
-            methods.pageOut.call(_this, $self);
-          });
-        }
-      });
-    },
-    addOverlay: function(options) {
-      $(options.overlayParentElement).prepend('<div class="' + options.overlayClass + '"></div>');
-    },
-    addLoading: function(options) {
-      $(options.loadingParentElement).append('<div class="' + options.loadingClass + '"></div>');
-    },
-    removeLoading: function() {
-      var $this = $(this);
-      var options = $this.data(namespace).options;
-      var $loading = $(options.loadingParentElement).children("." + options.loadingClass);
-      $loading.fadeOut().remove();
-    },
-    supportCheck: function(options) {
-      var $this = $(this);
-      var props = options.unSupportCss;
-      var propsNum = props.length;
-      var support = false;
-      if (propsNum === 0) {
-        support = true;
-      }
-      for (var i = 0; i < propsNum; i++) {
-        if (typeof $this.css(props[i]) === "string") {
-          support = true;
-          break;
-        }
-      }
-      return support;
-    },
-    optionCheck: function(options) {
-      var $this = $(this);
-      var overlayMode;
-      if (options.overlay || $this.data("animsition-overlay")) {
-        overlayMode = true;
-      } else {
-        overlayMode = false;
-      }
-      return overlayMode;
-    },
-    animationCheck: function(data, stateClass, stateIn) {
-      var $this = $(this);
-      var options = $this.data(namespace).options;
-      var dataType = typeof data;
-      var dataDuration = !stateClass && dataType === "number";
-      var dataClass = stateClass && dataType === "string" && data.length > 0;
-      if (dataDuration || dataClass) {
-        data = data;
-      } else if (stateClass && stateIn) {
-        data = options.inClass;
-      } else if (!stateClass && stateIn) {
-        data = options.inDuration;
-      } else if (stateClass && !stateIn) {
-        data = options.outClass;
-      } else if (!stateClass && !stateIn) {
-        data = options.outDuration;
-      }
-      return data;
-    },
-    pageIn: function() {
-      var _this = this;
-      var $this = $(this);
-      var options = $this.data(namespace).options;
-      var thisInDuration = $this.data("animsition-in-duration");
-      var thisInClass = $this.data("animsition-in");
-      var inDuration = methods.animationCheck.call(_this, thisInDuration, false, true);
-      var inClass = methods.animationCheck.call(_this, thisInClass, true, true);
-      var overlayMode = methods.optionCheck.call(_this, options);
-      if (options.loading) {
-        methods.removeLoading.call(_this);
-      }
-      if (overlayMode) {
-        methods.pageInOverlay.call(_this, inClass, inDuration);
-      } else {
-        methods.pageInBasic.call(_this, inClass, inDuration);
-      }
-    },
-    pageInBasic: function(inClass, inDuration) {
-      var $this = $(this);
-      $this.css({
-        "animation-duration": inDuration / 1e3 + "s"
-      }).addClass(inClass).animateCallback(function() {
-        $this.removeClass(inClass).css({
-          opacity: 1
+    };
+    $.fn.animateCallback = function (callback) {
+        var end = "animationend webkitAnimationEnd mozAnimationEnd oAnimationEnd MSAnimationEnd";
+        return this.each(function () {
+            $(this).bind(end, function () {
+                $(this).unbind(end);
+                return callback.call(this);
+            });
         });
-      });
-    },
-    pageInOverlay: function(inClass, inDuration) {
-      var $this = $(this);
-      var options = $this.data(namespace).options;
-      $this.css({
-        opacity: 1
-      });
-      $(options.overlayParentElement).children("." + options.overlayClass).css({
-        "animation-duration": inDuration / 1e3 + "s"
-      }).addClass(inClass);
-    },
-    pageOut: function($self) {
-      var _this = this;
-      var $this = $(this);
-      var options = $this.data(namespace).options;
-      var selfOutClass = $self.data("animsition-out");
-      var thisOutClass = $this.data("animsition-out");
-      var selfOutDuration = $self.data("animsition-out-duration");
-      var thisOutDuration = $this.data("animsition-out-duration");
-      var isOutClass = selfOutClass ? selfOutClass : thisOutClass;
-      var isOutDuration = selfOutDuration ? selfOutDuration : thisOutDuration;
-      var outClass = methods.animationCheck.call(_this, isOutClass, true, false);
-      var outDuration = methods.animationCheck.call(_this, isOutDuration, false, false);
-      var overlayMode = methods.optionCheck.call(_this, options);
-      var url = $self.attr("href");
-      if (overlayMode) {
-        methods.pageOutOverlay.call(_this, outClass, outDuration, url);
-      } else {
-        methods.pageOutBasic.call(_this, outClass, outDuration, url);
-      }
-    },
-    pageOutBasic: function(outClass, outDuration, url) {
-      var $this = $(this);
-      $this.css({
-        "animation-duration": outDuration / 1e3 + "s"
-      }).addClass(outClass).animateCallback(function() {
-        location.href = url;
-      });
-    },
-    pageOutOverlay: function(outClass, outDuration, url) {
-      var _this = this;
-      var $this = $(this);
-      var options = $this.data(namespace).options;
-      var thisInClass = $this.data("animsition-in");
-      var inClass = methods.animationCheck.call(_this, thisInClass, true, true);
-      $(options.overlayParentElement).children("." + options.overlayClass).css({
-        "animation-duration": outDuration / 1e3 + "s"
-      }).removeClass(inClass).addClass(outClass).animateCallback(function() {
-        $this.css({
-          opacity: 0
-        });
-        location.href = url;
-      });
-    },
-    destroy: function() {
-      return this.each(function() {
-        var $this = $(this);
-        $(window).unbind("." + namespace);
-        $this.css({
-          opacity: 1
-        }).removeData(namespace);
-      });
-    }
-  };
-  $.fn.animateCallback = function(callback) {
-    var end = "animationend webkitAnimationEnd mozAnimationEnd oAnimationEnd MSAnimationEnd";
-    return this.each(function() {
-      $(this).bind(end, function() {
-        $(this).unbind(end);
-        return callback.call(this);
-      });
-    });
-  };
-  $.fn.animsition = function(method) {
-    if (methods[method]) {
-      return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
-    } else if (typeof method === "object" || !method) {
-      return methods.init.apply(this, arguments);
-    } else {
-      $.error("Method " + method + " does not exist on jQuery." + namespace);
-    }
-  };
+    };
+    $.fn.animsition = function (method) {
+        if (methods[method]) {
+            return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
+        } else if (typeof method === "object" || !method) {
+            return methods.init.apply(this, arguments);
+        } else {
+            $.error("Method " + method + " does not exist on jQuery." + namespace);
+        }
+    };
 })(jQuery);
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/webapp/static/js/tools/md5.js b/zy-acs-cv/src/main/webapp/static/js/tools/md5.js
index 950422b..bd10e20 100644
--- a/zy-acs-cv/src/main/webapp/static/js/tools/md5.js
+++ b/zy-acs-cv/src/main/webapp/static/js/tools/md5.js
@@ -1,19 +1,22 @@
 var hexcase = 0;
 var b64pad = "";
 var chrsz = 8;
-function hex_md5(s){ return binl2hex(core_md5(str2binl(s), s.length * chrsz));}
+
+function hex_md5(s) {
+    return binl2hex(core_md5(str2binl(s), s.length * chrsz));
+}
+
 /*
  * Perform a simple self-test to see if the VM is working
  */
-function md5_vm_test()
-{
+function md5_vm_test() {
     return hex_md5("abc") == "900150983cd24fb0d6963f7d28e17f72";
 }
+
 /*
  * Calculate the MD5 of an array of little-endian words, and a bit length
  */
-function core_md5(x, len)
-{
+function core_md5(x, len) {
     /* append padding */
     x[len >> 5] |= 0x80 << ((len) % 32);
     x[(((len + 64) >>> 9) << 4) + 14] = len;
@@ -21,76 +24,75 @@
     var b = -271733879;
     var c = -1732584194;
     var d = 271733878;
-    for(var i = 0; i < x.length; i += 16)
-    {
+    for (var i = 0; i < x.length; i += 16) {
         var olda = a;
         var oldb = b;
         var oldc = c;
         var oldd = d;
-        a = md5_ff(a, b, c, d, x[i+ 0], 7 , -680876936);
-        d = md5_ff(d, a, b, c, x[i+ 1], 12, -389564586);
-        c = md5_ff(c, d, a, b, x[i+ 2], 17, 606105819);
-        b = md5_ff(b, c, d, a, x[i+ 3], 22, -1044525330);
-        a = md5_ff(a, b, c, d, x[i+ 4], 7 , -176418897);
-        d = md5_ff(d, a, b, c, x[i+ 5], 12, 1200080426);
-        c = md5_ff(c, d, a, b, x[i+ 6], 17, -1473231341);
-        b = md5_ff(b, c, d, a, x[i+ 7], 22, -45705983);
-        a = md5_ff(a, b, c, d, x[i+ 8], 7 , 1770035416);
-        d = md5_ff(d, a, b, c, x[i+ 9], 12, -1958414417);
-        c = md5_ff(c, d, a, b, x[i+10], 17, -42063);
-        b = md5_ff(b, c, d, a, x[i+11], 22, -1990404162);
-        a = md5_ff(a, b, c, d, x[i+12], 7 , 1804603682);
-        d = md5_ff(d, a, b, c, x[i+13], 12, -40341101);
-        c = md5_ff(c, d, a, b, x[i+14], 17, -1502002290);
-        b = md5_ff(b, c, d, a, x[i+15], 22, 1236535329);
-        a = md5_gg(a, b, c, d, x[i+ 1], 5 , -165796510);
-        d = md5_gg(d, a, b, c, x[i+ 6], 9 , -1069501632);
-        c = md5_gg(c, d, a, b, x[i+11], 14, 643717713);
-        b = md5_gg(b, c, d, a, x[i+ 0], 20, -373897302);
-        a = md5_gg(a, b, c, d, x[i+ 5], 5 , -701558691);
-        d = md5_gg(d, a, b, c, x[i+10], 9 , 38016083);
-        c = md5_gg(c, d, a, b, x[i+15], 14, -660478335);
-        b = md5_gg(b, c, d, a, x[i+ 4], 20, -405537848);
-        a = md5_gg(a, b, c, d, x[i+ 9], 5 , 568446438);
-        d = md5_gg(d, a, b, c, x[i+14], 9 , -1019803690);
-        c = md5_gg(c, d, a, b, x[i+ 3], 14, -187363961);
-        b = md5_gg(b, c, d, a, x[i+ 8], 20, 1163531501);
-        a = md5_gg(a, b, c, d, x[i+13], 5 , -1444681467);
-        d = md5_gg(d, a, b, c, x[i+ 2], 9 , -51403784);
-        c = md5_gg(c, d, a, b, x[i+ 7], 14, 1735328473);
-        b = md5_gg(b, c, d, a, x[i+12], 20, -1926607734);
-        a = md5_hh(a, b, c, d, x[i+ 5], 4 , -378558);
-        d = md5_hh(d, a, b, c, x[i+ 8], 11, -2022574463);
-        c = md5_hh(c, d, a, b, x[i+11], 16, 1839030562);
-        b = md5_hh(b, c, d, a, x[i+14], 23, -35309556);
-        a = md5_hh(a, b, c, d, x[i+ 1], 4 , -1530992060);
-        d = md5_hh(d, a, b, c, x[i+ 4], 11, 1272893353);
-        c = md5_hh(c, d, a, b, x[i+ 7], 16, -155497632);
-        b = md5_hh(b, c, d, a, x[i+10], 23, -1094730640);
-        a = md5_hh(a, b, c, d, x[i+13], 4 , 681279174);
-        d = md5_hh(d, a, b, c, x[i+ 0], 11, -358537222);
-        c = md5_hh(c, d, a, b, x[i+ 3], 16, -722521979);
-        b = md5_hh(b, c, d, a, x[i+ 6], 23, 76029189);
-        a = md5_hh(a, b, c, d, x[i+ 9], 4 , -640364487);
-        d = md5_hh(d, a, b, c, x[i+12], 11, -421815835);
-        c = md5_hh(c, d, a, b, x[i+15], 16, 530742520);
-        b = md5_hh(b, c, d, a, x[i+ 2], 23, -995338651);
-        a = md5_ii(a, b, c, d, x[i+ 0], 6 , -198630844);
-        d = md5_ii(d, a, b, c, x[i+ 7], 10, 1126891415);
-        c = md5_ii(c, d, a, b, x[i+14], 15, -1416354905);
-        b = md5_ii(b, c, d, a, x[i+ 5], 21, -57434055);
-        a = md5_ii(a, b, c, d, x[i+12], 6 , 1700485571);
-        d = md5_ii(d, a, b, c, x[i+ 3], 10, -1894986606);
-        c = md5_ii(c, d, a, b, x[i+10], 15, -1051523);
-        b = md5_ii(b, c, d, a, x[i+ 1], 21, -2054922799);
-        a = md5_ii(a, b, c, d, x[i+ 8], 6 , 1873313359);
-        d = md5_ii(d, a, b, c, x[i+15], 10, -30611744);
-        c = md5_ii(c, d, a, b, x[i+ 6], 15, -1560198380);
-        b = md5_ii(b, c, d, a, x[i+13], 21, 1309151649);
-        a = md5_ii(a, b, c, d, x[i+ 4], 6 , -145523070);
-        d = md5_ii(d, a, b, c, x[i+11], 10, -1120210379);
-        c = md5_ii(c, d, a, b, x[i+ 2], 15, 718787259);
-        b = md5_ii(b, c, d, a, x[i+ 9], 21, -343485551);
+        a = md5_ff(a, b, c, d, x[i + 0], 7, -680876936);
+        d = md5_ff(d, a, b, c, x[i + 1], 12, -389564586);
+        c = md5_ff(c, d, a, b, x[i + 2], 17, 606105819);
+        b = md5_ff(b, c, d, a, x[i + 3], 22, -1044525330);
+        a = md5_ff(a, b, c, d, x[i + 4], 7, -176418897);
+        d = md5_ff(d, a, b, c, x[i + 5], 12, 1200080426);
+        c = md5_ff(c, d, a, b, x[i + 6], 17, -1473231341);
+        b = md5_ff(b, c, d, a, x[i + 7], 22, -45705983);
+        a = md5_ff(a, b, c, d, x[i + 8], 7, 1770035416);
+        d = md5_ff(d, a, b, c, x[i + 9], 12, -1958414417);
+        c = md5_ff(c, d, a, b, x[i + 10], 17, -42063);
+        b = md5_ff(b, c, d, a, x[i + 11], 22, -1990404162);
+        a = md5_ff(a, b, c, d, x[i + 12], 7, 1804603682);
+        d = md5_ff(d, a, b, c, x[i + 13], 12, -40341101);
+        c = md5_ff(c, d, a, b, x[i + 14], 17, -1502002290);
+        b = md5_ff(b, c, d, a, x[i + 15], 22, 1236535329);
+        a = md5_gg(a, b, c, d, x[i + 1], 5, -165796510);
+        d = md5_gg(d, a, b, c, x[i + 6], 9, -1069501632);
+        c = md5_gg(c, d, a, b, x[i + 11], 14, 643717713);
+        b = md5_gg(b, c, d, a, x[i + 0], 20, -373897302);
+        a = md5_gg(a, b, c, d, x[i + 5], 5, -701558691);
+        d = md5_gg(d, a, b, c, x[i + 10], 9, 38016083);
+        c = md5_gg(c, d, a, b, x[i + 15], 14, -660478335);
+        b = md5_gg(b, c, d, a, x[i + 4], 20, -405537848);
+        a = md5_gg(a, b, c, d, x[i + 9], 5, 568446438);
+        d = md5_gg(d, a, b, c, x[i + 14], 9, -1019803690);
+        c = md5_gg(c, d, a, b, x[i + 3], 14, -187363961);
+        b = md5_gg(b, c, d, a, x[i + 8], 20, 1163531501);
+        a = md5_gg(a, b, c, d, x[i + 13], 5, -1444681467);
+        d = md5_gg(d, a, b, c, x[i + 2], 9, -51403784);
+        c = md5_gg(c, d, a, b, x[i + 7], 14, 1735328473);
+        b = md5_gg(b, c, d, a, x[i + 12], 20, -1926607734);
+        a = md5_hh(a, b, c, d, x[i + 5], 4, -378558);
+        d = md5_hh(d, a, b, c, x[i + 8], 11, -2022574463);
+        c = md5_hh(c, d, a, b, x[i + 11], 16, 1839030562);
+        b = md5_hh(b, c, d, a, x[i + 14], 23, -35309556);
+        a = md5_hh(a, b, c, d, x[i + 1], 4, -1530992060);
+        d = md5_hh(d, a, b, c, x[i + 4], 11, 1272893353);
+        c = md5_hh(c, d, a, b, x[i + 7], 16, -155497632);
+        b = md5_hh(b, c, d, a, x[i + 10], 23, -1094730640);
+        a = md5_hh(a, b, c, d, x[i + 13], 4, 681279174);
+        d = md5_hh(d, a, b, c, x[i + 0], 11, -358537222);
+        c = md5_hh(c, d, a, b, x[i + 3], 16, -722521979);
+        b = md5_hh(b, c, d, a, x[i + 6], 23, 76029189);
+        a = md5_hh(a, b, c, d, x[i + 9], 4, -640364487);
+        d = md5_hh(d, a, b, c, x[i + 12], 11, -421815835);
+        c = md5_hh(c, d, a, b, x[i + 15], 16, 530742520);
+        b = md5_hh(b, c, d, a, x[i + 2], 23, -995338651);
+        a = md5_ii(a, b, c, d, x[i + 0], 6, -198630844);
+        d = md5_ii(d, a, b, c, x[i + 7], 10, 1126891415);
+        c = md5_ii(c, d, a, b, x[i + 14], 15, -1416354905);
+        b = md5_ii(b, c, d, a, x[i + 5], 21, -57434055);
+        a = md5_ii(a, b, c, d, x[i + 12], 6, 1700485571);
+        d = md5_ii(d, a, b, c, x[i + 3], 10, -1894986606);
+        c = md5_ii(c, d, a, b, x[i + 10], 15, -1051523);
+        b = md5_ii(b, c, d, a, x[i + 1], 21, -2054922799);
+        a = md5_ii(a, b, c, d, x[i + 8], 6, 1873313359);
+        d = md5_ii(d, a, b, c, x[i + 15], 10, -30611744);
+        c = md5_ii(c, d, a, b, x[i + 6], 15, -1560198380);
+        b = md5_ii(b, c, d, a, x[i + 13], 21, 1309151649);
+        a = md5_ii(a, b, c, d, x[i + 4], 6, -145523070);
+        d = md5_ii(d, a, b, c, x[i + 11], 10, -1120210379);
+        c = md5_ii(c, d, a, b, x[i + 2], 15, 718787259);
+        b = md5_ii(b, c, d, a, x[i + 9], 21, -343485551);
         a = safe_add(a, olda);
         b = safe_add(b, oldb);
         c = safe_add(c, oldc);
@@ -98,115 +100,111 @@
     }
     return Array(a, b, c, d);
 }
+
 /*
  * These functions implement the four basic operations the algorithm uses.
  */
-function md5_cmn(q, a, b, x, s, t)
-{
-    return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),b);
+function md5_cmn(q, a, b, x, s, t) {
+    return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s), b);
 }
-function md5_ff(a, b, c, d, x, s, t)
-{
+
+function md5_ff(a, b, c, d, x, s, t) {
     return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t);
 }
-function md5_gg(a, b, c, d, x, s, t)
-{
+
+function md5_gg(a, b, c, d, x, s, t) {
     return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t);
 }
-function md5_hh(a, b, c, d, x, s, t)
-{
+
+function md5_hh(a, b, c, d, x, s, t) {
     return md5_cmn(b ^ c ^ d, a, b, x, s, t);
 }
-function md5_ii(a, b, c, d, x, s, t)
-{
+
+function md5_ii(a, b, c, d, x, s, t) {
     return md5_cmn(c ^ (b | (~d)), a, b, x, s, t);
 }
+
 /*
  * Calculate the HMAC-MD5, of a key and some data
  */
-function core_hmac_md5(key, data)
-{
+function core_hmac_md5(key, data) {
     var bkey = str2binl(key);
-    if(bkey.length > 16) bkey = core_md5(bkey, key.length * chrsz);
+    if (bkey.length > 16) bkey = core_md5(bkey, key.length * chrsz);
     var ipad = Array(16), opad = Array(16);
-    for(var i = 0; i < 16; i++)
-    {
+    for (var i = 0; i < 16; i++) {
         ipad[i] = bkey[i] ^ 0x36363636;
         opad[i] = bkey[i] ^ 0x5C5C5C5C;
     }
     var hash = core_md5(ipad.concat(str2binl(data)), 512 + data.length * chrsz);
     return core_md5(opad.concat(hash), 512 + 128);
 }
+
 /*
  * Add integers, wrapping at 2^32. This uses 16-bit operations internally
  * to work around bugs in some JS interpreters.
  */
-function safe_add(x, y)
-{
+function safe_add(x, y) {
     var lsw = (x & 0xFFFF) + (y & 0xFFFF);
     var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
     return (msw << 16) | (lsw & 0xFFFF);
 }
+
 /*
  * Bitwise rotate a 32-bit number to the left.
  */
-function bit_rol(num, cnt)
-{
+function bit_rol(num, cnt) {
     return (num << cnt) | (num >>> (32 - cnt));
 }
+
 /*
  * Convert a string to an array of little-endian words
  * If chrsz is ASCII, characters >255 have their hi-byte silently ignored.
  */
-function str2binl(str)
-{
+function str2binl(str) {
     var bin = Array();
     var mask = (1 << chrsz) - 1;
-    for(var i = 0; i < str.length * chrsz; i += chrsz)
-        bin[i>>5] |= (str.charCodeAt(i / chrsz) & mask) << (i%32);
+    for (var i = 0; i < str.length * chrsz; i += chrsz)
+        bin[i >> 5] |= (str.charCodeAt(i / chrsz) & mask) << (i % 32);
     return bin;
 }
+
 /*
  * Convert an array of little-endian words to a string
  */
-function binl2str(bin)
-{
+function binl2str(bin) {
     var str = "";
     var mask = (1 << chrsz) - 1;
-    for(var i = 0; i < bin.length * 32; i += chrsz)
-        str += String.fromCharCode((bin[i>>5] >>> (i % 32)) & mask);
+    for (var i = 0; i < bin.length * 32; i += chrsz)
+        str += String.fromCharCode((bin[i >> 5] >>> (i % 32)) & mask);
     return str;
 }
+
 /*
  * Convert an array of little-endian words to a hex string.
  */
-function binl2hex(binarray)
-{
+function binl2hex(binarray) {
     var hex_tab = hexcase ? "0123456789ABCDEF" : "0123456789abcdef";
     var str = "";
-    for(var i = 0; i < binarray.length * 4; i++)
-    {
-        str += hex_tab.charAt((binarray[i>>2] >> ((i%4)*8+4)) & 0xF) +
-            hex_tab.charAt((binarray[i>>2] >> ((i%4)*8 )) & 0xF);
+    for (var i = 0; i < binarray.length * 4; i++) {
+        str += hex_tab.charAt((binarray[i >> 2] >> ((i % 4) * 8 + 4)) & 0xF) +
+            hex_tab.charAt((binarray[i >> 2] >> ((i % 4) * 8)) & 0xF);
     }
     return str;
 }
+
 /*
  * Convert an array of little-endian words to a base-64 string
  */
-function binl2b64(binarray)
-{
+function binl2b64(binarray) {
     var tab = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
     var str = "";
-    for(var i = 0; i < binarray.length * 4; i += 3)
-    {
-        var triplet = (((binarray[i >> 2] >> 8 * ( i %4)) & 0xFF) << 16)
-            | (((binarray[i+1 >> 2] >> 8 * ((i+1)%4)) & 0xFF) << 8 )
-            | ((binarray[i+2 >> 2] >> 8 * ((i+2)%4)) & 0xFF);
-        for(var j = 0; j < 4; j++)
-        {
-            if(i * 8 + j * 6 > binarray.length * 32) str += b64pad;
-            else str += tab.charAt((triplet >> 6*(3-j)) & 0x3F);
+    for (var i = 0; i < binarray.length * 4; i += 3) {
+        var triplet = (((binarray[i >> 2] >> 8 * (i % 4)) & 0xFF) << 16)
+            | (((binarray[i + 1 >> 2] >> 8 * ((i + 1) % 4)) & 0xFF) << 8)
+            | ((binarray[i + 2 >> 2] >> 8 * ((i + 2) % 4)) & 0xFF);
+        for (var j = 0; j < 4; j++) {
+            if (i * 8 + j * 6 > binarray.length * 32) str += b64pad;
+            else str += tab.charAt((triplet >> 6 * (3 - j)) & 0x3F);
         }
     }
     return str;
diff --git a/zy-acs-cv/src/main/webapp/static/layui/font/iconfont.svg b/zy-acs-cv/src/main/webapp/static/layui/font/iconfont.svg
index f407df7..0a5beca 100644
--- a/zy-acs-cv/src/main/webapp/static/layui/font/iconfont.svg
+++ b/zy-acs-cv/src/main/webapp/static/layui/font/iconfont.svg
@@ -4,482 +4,786 @@
 2013-9-30: Created.
 -->
 <svg>
-<metadata>
-Created by iconfont
-</metadata>
-<defs>
+    <metadata>
+        Created by iconfont
+    </metadata>
+    <defs>
 
-<font id="layui-icon" horiz-adv-x="1024" >
-  <font-face
-    font-family="layui-icon"
-    font-weight="500"
-    font-stretch="normal"
-    units-per-em="1024"
-    ascent="896"
-    descent="-128"
-  />
-    <missing-glyph />
-    
-    <glyph glyph-name="reply-fill" unicode="&#58897;" d="M507.904 835.5840000000001q93.184 1.024 175.104-33.792t143.872-94.72 97.792-141.312 36.864-174.592q1.024-88.064-30.208-165.888t-87.04-137.728-131.072-98.816-162.304-48.128q-22.528-3.072-48.128-5.12t-56.832-3.072-69.632 0-86.528 6.144q-106.496 10.24-158.208 26.624t-41.472 18.432q54.272 9.216 93.184 29.696 20.48 11.264 16.896 32.256t-19.968 39.424q-52.224 57.344-84.48 133.632t-34.304 164.352q-1.024 93.184 33.792 175.104t95.232 143.36 142.336 97.28 175.104 36.864zM707.584 385.024q0-26.624 18.432-45.568t45.056-18.944 45.568 18.944 18.944 45.568-18.944 45.056-45.568 18.432-45.056-18.432-18.432-45.056zM450.56 385.024q0-26.624 19.456-46.08t46.08-19.456q27.648 0 46.592 19.456t18.944 46.08q0 27.648-18.944 46.592t-46.592 18.944q-26.624 0-46.08-18.944t-19.456-46.592zM196.608 386.048q0-26.624 18.944-46.08t45.568-19.456q27.648 0 46.592 19.456t18.944 46.08-18.944 45.568-46.592 18.944q-26.624 0-45.568-18.944t-18.944-45.568z"  horiz-adv-x="1024" />
+        <font id="layui-icon" horiz-adv-x="1024">
+            <font-face
+                    font-family="layui-icon"
+                    font-weight="500"
+                    font-stretch="normal"
+                    units-per-em="1024"
+                    ascent="896"
+                    descent="-128"
+            />
+            <missing-glyph/>
 
-    
-    <glyph glyph-name="set-fill" unicode="&#58900;" d="M916.9398 445.2101l-69.9664 10.7833c-18.6619 2.863-38.1388 17.826-43.3424 33.2487-5.1618 15.3809-15.0883 65.4524-3.9288 80.6661l41.9004 57.135c11.1595 15.2346 9.3832 38.5985-3.9706 51.9314l-30.6364 30.6573c-13.3538 13.3538-36.7177 15.151-51.9314 3.9497l-57.135-41.8795c-15.2346-11.1804-39.4344-14.3987-53.7704-7.168-14.3569 7.2307-57.3022 35.7773-60.1652 54.4183l-10.7833 69.9664C570.3471 807.6016 552.542 822.8571 533.6712 822.8571h-43.34236734693877c-18.8709 0-36.6759-15.2555-39.5389-33.9174l-10.7833-69.9664c-2.863-18.6619-17.826-38.1388-33.2487-43.3424-15.4018-5.1827-65.4524-15.1092-80.687-3.9288L268.9567 713.5817c-15.2346 11.1804-38.6194 9.3832-51.9523-3.9497l-30.6364-30.6573c-13.3747-13.3538-15.151-36.7177-3.9706-51.9314l41.9004-57.135c11.1595-15.2346 14.3778-39.4136 7.168-53.7704-7.2307-14.3569-35.7773-57.2813-54.4183-60.1443l-69.9664-10.7833C88.3984 442.3471 73.1429 424.542 73.1429 405.6712v-43.34236734693877c0-18.8709 15.2555-36.6759 33.9174-39.5389l69.9664-10.7833c18.6619-2.863 38.1388-17.8469 43.3424-33.2487 5.1618-15.4018 15.0883-65.4733 3.9288-80.687l-41.9004-57.135c-11.1595-15.2346-9.3832-38.6194 3.9706-51.9314l30.6364-30.6573c13.3538-13.3538 36.7177-15.151 51.9523-3.9706l57.135 41.9213c15.2346 11.1386 39.4136 14.3778 53.7704 7.168 14.3569-7.2307 57.2813-35.7773 60.1443-54.4183l10.7833-69.9664c2.863-18.6619 20.6472-33.9174 39.5389-33.9174h43.34236734693877c18.8709 0 36.6759 15.2555 39.5389 33.9174l10.7833 69.9664c2.863 18.6619 17.826 38.1388 33.2487 43.3215 15.4018 5.1827 65.4524 15.0883 80.6661 3.9288l57.1559-41.9213c15.2346-11.1595 38.5985-9.3623 51.9314 3.9706l30.6364 30.6573c13.3747 13.3329 15.151 36.7177 3.9706 51.9314l-41.9004 57.135c-11.1595 15.2346-14.3778 39.4136-7.168 53.7496 7.2307 14.3778 35.7773 57.3231 54.4183 60.1861l69.9664 10.7833c18.6619 2.863 33.9174 20.6472 33.9174 39.5389v43.34236734693877C950.8571 424.542 935.6016 442.3471 916.9398 445.2101zM512 210.4633c-95.838 0-173.5367 77.6986-173.5367 173.5367s77.6986 173.5367 173.5367 173.5367 173.5367-77.6986 173.5367-173.5367S607.838 210.4633 512 210.4633zM512 384m-104.7824 0a5.014 5.014 0 1 1 209.5647 0 5.014 5.014 0 1 1-209.5647 0Z"  horiz-adv-x="1024" />
+            <glyph glyph-name="reply-fill" unicode="&#58897;"
+                   d="M507.904 835.5840000000001q93.184 1.024 175.104-33.792t143.872-94.72 97.792-141.312 36.864-174.592q1.024-88.064-30.208-165.888t-87.04-137.728-131.072-98.816-162.304-48.128q-22.528-3.072-48.128-5.12t-56.832-3.072-69.632 0-86.528 6.144q-106.496 10.24-158.208 26.624t-41.472 18.432q54.272 9.216 93.184 29.696 20.48 11.264 16.896 32.256t-19.968 39.424q-52.224 57.344-84.48 133.632t-34.304 164.352q-1.024 93.184 33.792 175.104t95.232 143.36 142.336 97.28 175.104 36.864zM707.584 385.024q0-26.624 18.432-45.568t45.056-18.944 45.568 18.944 18.944 45.568-18.944 45.056-45.568 18.432-45.056-18.432-18.432-45.056zM450.56 385.024q0-26.624 19.456-46.08t46.08-19.456q27.648 0 46.592 19.456t18.944 46.08q0 27.648-18.944 46.592t-46.592 18.944q-26.624 0-46.08-18.944t-19.456-46.592zM196.608 386.048q0-26.624 18.944-46.08t45.568-19.456q27.648 0 46.592 19.456t18.944 46.08-18.944 45.568-46.592 18.944q-26.624 0-45.568-18.944t-18.944-45.568z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="menu-fill" unicode="&#58895;" d="M511.999488 834.254727c-248.678712 0-450.273176-201.585181-450.273176-450.254727s201.594464-450.254727 450.273176-450.254727 450.273176 201.585181 450.273176 450.254727S760.6782 834.254727 511.999488 834.254727zM266.371377 589.705012l491.256222 0 0-33.772174L266.371377 555.932838 266.371377 589.705012zM757.627599 178.29396499999996L266.371377 178.29396499999996l0 33.773198 491.256222 0L757.627599 178.29396499999996zM140.487278 367.11340099999995l0 33.771151 743.024421 0 0-33.771151L140.487278 367.11340099999995z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="search" unicode="&#58901;" d="M439.323351 120.52219c-49.280352 0-97.09834 9.656941-142.126681 28.699646-43.480015 18.388812-82.522793 44.706201-116.043584 78.225619s-59.841305 72.560596-78.230871 116.03883C83.878729 388.513804 74.222416 436.330856 74.222416 485.609189c0 49.284473 9.656313 97.104595 28.699798 142.133138 18.388542 43.479257 44.71008 82.520435 78.231894 116.03883 33.518745 33.515325 72.562546 59.832713 116.043584 78.219479 45.027318 19.039635 92.846329 28.694529 142.125658 28.694529 49.280352 0 97.099364-9.653871 142.126681-28.694529 43.481039-18.385742 82.525863-44.704155 116.044608-78.220502 33.520791-33.518395 59.842328-72.559573 78.230871-116.03883 19.042462-45.028543 28.699798-92.848665 28.699798-142.133138 0-49.278333-9.657336-97.095385-28.701845-142.122905-18.388542-43.47721-44.708033-82.520435-78.228824-116.03883s-72.563569-59.838853-116.043584-78.226642C536.422715 130.177084 488.603703 120.52219 439.323351 120.52219zM439.323351 797.483242c-171.975699 0-311.887855-139.906423-311.887855-311.875077S267.347652 173.734112 439.323351 173.734112s311.887855 139.907447 311.887855 311.874053S611.299051 797.483242 439.323351 797.483242zM890.678206-48.734702c-22.121716 0-42.90387 8.562003-58.541653 24.115234L674.672953 128.025071l37.039062 38.20616 157.888289-153.058978c5.606924-5.606695 13.091693-8.692986 21.077901-8.692986 7.983139 0 15.464837 3.087315 21.070738 8.69094 5.616135 5.622044 8.715856 13.126972 8.715856 21.123087 0 7.980765-3.091535 15.46318-8.702552 21.067828l-0.301888 0.306992L758.714395 213.230662l38.207726 37.035498 152.611906-157.427472c15.571265-15.638165 24.144876-36.422538 24.144876-58.549487 0-22.195511-8.625801-43.054585-24.287121-58.735729C933.723298-40.112324 912.876674-48.734702 890.678206-48.734702zM281.015489 327.245392c-42.340005 42.320874-65.652899 98.584296-65.643689 158.421102 0.008187 59.818387 23.319034 116.074645 65.637549 158.4078l37.634651-37.619806c-66.60666-66.629513-66.60973-175.00071-0.007163-241.577011L281.015489 327.245392z"  horiz-adv-x="1024" />
+            <glyph glyph-name="set-fill" unicode="&#58900;"
+                   d="M916.9398 445.2101l-69.9664 10.7833c-18.6619 2.863-38.1388 17.826-43.3424 33.2487-5.1618 15.3809-15.0883 65.4524-3.9288 80.6661l41.9004 57.135c11.1595 15.2346 9.3832 38.5985-3.9706 51.9314l-30.6364 30.6573c-13.3538 13.3538-36.7177 15.151-51.9314 3.9497l-57.135-41.8795c-15.2346-11.1804-39.4344-14.3987-53.7704-7.168-14.3569 7.2307-57.3022 35.7773-60.1652 54.4183l-10.7833 69.9664C570.3471 807.6016 552.542 822.8571 533.6712 822.8571h-43.34236734693877c-18.8709 0-36.6759-15.2555-39.5389-33.9174l-10.7833-69.9664c-2.863-18.6619-17.826-38.1388-33.2487-43.3424-15.4018-5.1827-65.4524-15.1092-80.687-3.9288L268.9567 713.5817c-15.2346 11.1804-38.6194 9.3832-51.9523-3.9497l-30.6364-30.6573c-13.3747-13.3538-15.151-36.7177-3.9706-51.9314l41.9004-57.135c11.1595-15.2346 14.3778-39.4136 7.168-53.7704-7.2307-14.3569-35.7773-57.2813-54.4183-60.1443l-69.9664-10.7833C88.3984 442.3471 73.1429 424.542 73.1429 405.6712v-43.34236734693877c0-18.8709 15.2555-36.6759 33.9174-39.5389l69.9664-10.7833c18.6619-2.863 38.1388-17.8469 43.3424-33.2487 5.1618-15.4018 15.0883-65.4733 3.9288-80.687l-41.9004-57.135c-11.1595-15.2346-9.3832-38.6194 3.9706-51.9314l30.6364-30.6573c13.3538-13.3538 36.7177-15.151 51.9523-3.9706l57.135 41.9213c15.2346 11.1386 39.4136 14.3778 53.7704 7.168 14.3569-7.2307 57.2813-35.7773 60.1443-54.4183l10.7833-69.9664c2.863-18.6619 20.6472-33.9174 39.5389-33.9174h43.34236734693877c18.8709 0 36.6759 15.2555 39.5389 33.9174l10.7833 69.9664c2.863 18.6619 17.826 38.1388 33.2487 43.3215 15.4018 5.1827 65.4524 15.0883 80.6661 3.9288l57.1559-41.9213c15.2346-11.1595 38.5985-9.3623 51.9314 3.9706l30.6364 30.6573c13.3747 13.3329 15.151 36.7177 3.9706 51.9314l-41.9004 57.135c-11.1595 15.2346-14.3778 39.4136-7.168 53.7496 7.2307 14.3778 35.7773 57.3231 54.4183 60.1861l69.9664 10.7833c18.6619 2.863 33.9174 20.6472 33.9174 39.5389v43.34236734693877C950.8571 424.542 935.6016 442.3471 916.9398 445.2101zM512 210.4633c-95.838 0-173.5367 77.6986-173.5367 173.5367s77.6986 173.5367 173.5367 173.5367 173.5367-77.6986 173.5367-173.5367S607.838 210.4633 512 210.4633zM512 384m-104.7824 0a5.014 5.014 0 1 1 209.5647 0 5.014 5.014 0 1 1-209.5647 0Z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="share" unicode="&#58945;" d="M769.714 306.453c-51.754 0-97.702-24.851-126.571-63.269L394.479 367.94100000000003c3.93 13.798 6.034 28.364 6.034 43.424 0 16.496-2.527 32.399-7.211 47.35l247.724 124.288c28.71-40.052 75.647-66.151 128.687-66.151 87.388 0 158.229 70.84 158.229 158.229 0 87.388-70.841 158.229-158.229 158.229-87.389 0-158.229-70.841-158.229-158.229 0-6.046 0.352-12.009 1.011-17.88L351.22 526.116c-28.371 26.943-66.723 43.479-108.938 43.479-87.388 0-158.229-70.84-158.229-158.229s70.84-158.229 158.229-158.229c43.752 0 83.354 17.758 111.997 46.459l258.676-129.779c-0.964-7.062-1.474-14.266-1.474-21.592 0-87.389 70.84-158.229 158.229-158.229s158.229 70.84 158.229 158.229C927.938 235.61199999999997 857.103 306.453 769.714 306.453L769.714 306.453z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="set-sm" unicode="&#58912;" d="M946.367 405.895c0.02 21.85-13.04 38.49-31.74 41.57-18.69 3.07-79.05 13.01-85.99 14.14-6.95 1.15-14.09 8.07-15.4 11.45-1.32 3.37-8.94 22.2-11.87 29.46-2.95 7.27-1.92 16.58 4.39 25.52 6.3 8.93 39.9 55.87 48.38 67.72 8.49 11.87 8.65 34.61-4.84 48.39-13.48 13.78-47.75 47.09-56.73 55.86-8.99 8.76-31.08 8.64-42.67 0.43-11.58-8.2-71.69-51.01-71.69-51.01s-9.97-6.89-20.67-2.64c-10.7 4.24-33.43 14.07-33.43 14.07s-7.19 5.43-9.68 19.79c-2.5 14.37-11.11 65.28-14.07 82.7-2.97 17.42-20.67 29.62-37.83 29.46-17.16-0.14-57.91 0-74.33 0s-32.26-15.68-34.75-29.46c-2.49-13.79-11.56-69.16-14.07-84.45-2.52-15.3-11.44-18.48-11.44-18.48s-19.56-8.06-29.91-12.31c-10.34-4.26-15.39-2.64-30.35 7.48-14.95 10.11-44.74 31.03-63.04 43.83-18.3 12.81-38.12 7.92-49.26-3.52s-36.06-35.77-51.02-50.43c-14.95-14.66-12.61-37.54 0.58-55.71 13.2-18.18 32.34-45.43 41.35-58.21 9.01-12.78 10.84-19.5 8.36-26.82-2.49-7.34-6.64-16.58-11.43-27.72-4.81-11.13-9.69-13.64-27.86-17.01-17.36-3.21-58.42-9.92-77.4-13.31-18.99-3.37-30.66-21.43-30.66-41.81l0-64.66c0-24.34 13.2-37.24 38.42-41.93 25.22-4.69 62.66-10.66 74.77-12.61 12.1-1.95 17.67-6.6 21.41-15.54 3.73-8.94 5.13-10.12 9.37-22.57 4.26-12.47 6.46-15.55-4.98-31.67-11.44-16.13-34.31-48.11-46.03-64.51-11.74-16.4-6.45-37.83 4.98-49.85 11.44-12.03 35.47-35.64 48.97-48.97 13.49-13.33 35.19-16.28 53.36-3.52 18.19 12.75 54.98 38.99 65.69 46.62 10.7 7.63 21.91 5.28 27.85 2.94 5.94-2.35 11.25-4.6 22-9.1 10.73-4.48 13.85-11.2 16.41-23.45 2.57-12.24 10.19-56.85 13.93-78.59 3.75-21.72 18.91-33.43 40.62-33.72 21.7-0.29 33.27-0.12 61.57 0 28.29 0.13 41.86 12.61 45.45 31.38 3.59 18.76 12.45 72.94 14.22 83.72 1.78 10.76 5.94 14.73 13.63 18.47 7.7 3.74 14.32 6.47 26.84 11.88 12.51 5.4 18.91 0.66 27.7-5.72 8.8-6.39 47.51-33.78 63.78-45.31 16.28-11.53 36.73-10.33 51.9 4.4 15.18 14.73 31.62 30.99 49.27 48.38 17.64 17.4 12.16 39.59 4.4 51.46-7.77 11.88-44.49 62.95-49.71 70.23-5.21 7.28-4.4 18.62-1.75 24.63 2.64 6.01 8.44 18.24 11.72 25.22 3.29 6.97 9.6 11.22 18.18 12.9 8.58 1.69 62.72 11 83.75 14.61 21.03 3.64 31.11 19.92 31.26 39.92C946.427 359.93499999999995 946.347 388.525 946.367 405.895zM908.587 338.615c0.21-5.76-4.66-10.65-8.82-11.38-4.17-0.73-63.26-11.38-81.48-14.29-18.21-2.92-33.23-15.07-38.72-28.06-3.98-9.44-5.47-13.51-10.59-26.96-5.12-13.44-4.64-32.19 2.56-42.26 7.2-10.08 46.82-64.9 50.38-70.45s4.27-11.95-1.28-17.5-40.99-41.2-47.39-47.39c-6.41-6.19-11.83-4.8-18.79 0-6.95 4.8-39.61 26.39-64.44 44.36-16.96 12.28-32.82 12.43-48.7 6.02-15.87-6.42 1.28 0.28-22.2-8.97-23.48-9.25-30.23-27.62-33.73-48.24-3.5-20.63-10.67-62.98-11.95-70.45-1.28-7.47-5.55-11.1-13.66-11.1l-64.9 0c-8.11 0-11.74 2.99-14.52 11.95-2.77 8.97-10.03 54.87-12.8 74.29-2.78 19.43-13.82 36.12-24.77 40.56-10.94 4.45-4.98 2.14-27.32 11.1-22.34 8.97-39.63 4.5-51.23-3.84-11.61-8.34-58.64-42.69-65.33-46.96-6.68-4.28-14.65-3.28-18.35 0.42-3.7 3.7-40.56 40.56-46.54 46.54-5.98 5.98-5.36 12.92 0 20.49 5.36 7.58 28.39 40.76 40.99 57.95 12.59 17.2 17.93 34.74 9.82 53.49-8.12 18.74-4.42 10.24-12.39 28.6-7.96 18.36-24.28 24.46-38.42 26.9-14.14 2.43-68.88 11.53-76.85 13.23-7.97 1.71-11.95 7.26-11.95 14.09l0 66.18c0 9.53 7.67 12.44 12.38 13.23 4.7 0.8 54.22 9.18 73 12.39 18.79 3.2 36.36 11.32 43.55 29.03 7.19 17.7 4.27 11.1 11.1 27.32 6.83 16.23 3.8 33.94-7.68 49.96-11.49 16.01-38.85 54-44.4 61.9-5.55 7.9-5.77 12.6 0.85 19.21 6.62 6.62 42.05 42.48 46.96 46.97 4.91 4.48 12.07 5.4 18.36 0.85 6.3-4.55 49.31-35.65 64.04-46.11 14.73-10.46 32.35-12.56 49.1-5.55 16.75 7.02 10.25 4.48 26.9 11.1s24.84 19.09 28.18 39.71c3.33 20.61 11.95 74.14 12.81 77.7 0.85 3.55 5.55 10.46 11.74 10.46s65.82-0.07 69.8 0c3.99 0.07 10.3-3.29 11.32-9.18 1.02-5.9 13.02-74.29 14.94-86.25 1.92-11.95 15.58-28.57 25.54-32.73 9.96-4.16 21.35-8.75 31.31-13.09 9.97-4.34 30.13-1.91 36.15 2.28 6.03 4.18 70.52 48.81 75.43 52.37 4.91 3.56 11.52 3.27 17.64-2.85s43.34-43.19 47.54-47.53c4.19-4.34 4.66-8.66 1.14-13.66-3.53-5.01-36.72-51.8-47.54-67.46-10.81-15.65-11.73-33.73-5.41-48.96 6.33-15.22 3.99-9.39 9.11-21.91 5.13-12.53 16.28-29.03 33.59-31.88 17.31-2.85 76.92-12.74 84.82-13.95 7.9-1.21 11.1-7.18 11.1-13.37S908.377 344.385 908.587 338.615zM526.833 573.1949999999999c-110.45 0-200-89.54-200-200s89.55-200 200-200c110.46 0 200 89.54 200 200S637.293 573.1949999999999 526.833 573.1949999999999zM526.833 208.19500000000005c-91.12 0-165 73.87-165 165s73.88 165 165 165c91.13 0 165-73.87 165-165S617.963 208.19500000000005 526.833 208.19500000000005z"  horiz-adv-x="1024" />
+            <glyph glyph-name="menu-fill" unicode="&#58895;"
+                   d="M511.999488 834.254727c-248.678712 0-450.273176-201.585181-450.273176-450.254727s201.594464-450.254727 450.273176-450.254727 450.273176 201.585181 450.273176 450.254727S760.6782 834.254727 511.999488 834.254727zM266.371377 589.705012l491.256222 0 0-33.772174L266.371377 555.932838 266.371377 589.705012zM757.627599 178.29396499999996L266.371377 178.29396499999996l0 33.773198 491.256222 0L757.627599 178.29396499999996zM140.487278 367.11340099999995l0 33.771151 743.024421 0 0-33.771151L140.487278 367.11340099999995z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="engine" unicode="&#58920;" d="M422.214332 360.70413299999996L186.183684 360.70413299999996l0 46.568461 236.030648 0c10.379577 40.075407 46.47537 69.794509 89.785668 69.794509 51.432433 0 93.067103-41.657943 93.067103-93.067103C605.067103 332.56756700000005 563.40916 290.909624 512 290.909624 468.689703 290.909624 432.593909 320.65199900000005 422.214332 360.70413299999996L422.214332 360.70413299999996zM512 779.634098c-218.529658 0-395.634098-177.10444-395.634098-395.634098 0-218.529658 177.10444-395.634098 395.634098-395.634098 154.76275 0 288.417257 89.064217 353.440885 218.55293l101.398692-59.112389-23.063141-39.959044-62.161099 35.909613c-33.745261-51.595341-77.42792-96.115813-129.093079-129.744711l35.653614-61.765464-40.308133-23.295867-35.653614 61.765464c-53.620057-27.345298-113.360805-44.404109-176.894987-47.73209L535.319139-127.99706800000001l-46.568461 0 0 70.981412c-63.534182 3.327981-123.27493 20.386792-176.894987 47.73209l-35.653614-61.765464-40.308133 23.295867 35.653614 61.765464c-51.665159 33.628898-95.347818 78.149371-129.093079 129.744711l-62.161099-35.909613-23.295867 40.308133 62.114553 35.863067c-27.415116 53.550239-44.799743 113.104807-48.127724 176.685534L0.002932 360.70413299999996l0 46.568461 70.958139 0c3.327981 63.580727 20.712609 123.135295 48.127724 176.685534l-62.114553 35.863067 23.295867 40.308133 62.161099-35.909613c33.745261 51.595341 77.42792 96.115813 129.093079 129.744711l-35.653614 61.765464 40.308133 23.295867 35.653614-61.765464c53.620057 27.345298 113.360805 44.404109 176.894987 47.73209L488.727406 895.997068l46.568461 0 0-70.981412c63.534182-3.327981 123.27493-20.386792 176.894987-47.73209l35.653614 61.765464 40.308133-23.295867-35.653614-61.765464c51.665159-33.628898 95.347818-78.149371 129.093079-129.744711l62.161099 35.909613 23.063141-39.959044-101.398692-59.112389C800.417257 690.569881 666.76275 779.634098 512 779.634098L512 779.634098z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="close" unicode="&#4102;" d="M783.483 701.249L512 429.775 240.517 701.249c-10.082 10.083-26.429 10.083-36.51 0-10.083-10.082-10.083-26.429 0-36.509l271.481-271.475L204.008 121.78800000000001c-10.083-10.081-10.083-26.428 0-36.508 10.082-10.082 26.429-10.082 36.51 0L512 356.755l271.483-271.475c10.082-10.082 26.429-10.082 36.513 0 10.081 10.083 10.081 26.428 0 36.508L548.51 393.265l271.485 271.474c10.081 10.083 10.081 26.429 0 36.509C809.912 711.33 793.564 711.33 783.483 701.249z"  horiz-adv-x="1024" />
+            <glyph glyph-name="search" unicode="&#58901;"
+                   d="M439.323351 120.52219c-49.280352 0-97.09834 9.656941-142.126681 28.699646-43.480015 18.388812-82.522793 44.706201-116.043584 78.225619s-59.841305 72.560596-78.230871 116.03883C83.878729 388.513804 74.222416 436.330856 74.222416 485.609189c0 49.284473 9.656313 97.104595 28.699798 142.133138 18.388542 43.479257 44.71008 82.520435 78.231894 116.03883 33.518745 33.515325 72.562546 59.832713 116.043584 78.219479 45.027318 19.039635 92.846329 28.694529 142.125658 28.694529 49.280352 0 97.099364-9.653871 142.126681-28.694529 43.481039-18.385742 82.525863-44.704155 116.044608-78.220502 33.520791-33.518395 59.842328-72.559573 78.230871-116.03883 19.042462-45.028543 28.699798-92.848665 28.699798-142.133138 0-49.278333-9.657336-97.095385-28.701845-142.122905-18.388542-43.47721-44.708033-82.520435-78.228824-116.03883s-72.563569-59.838853-116.043584-78.226642C536.422715 130.177084 488.603703 120.52219 439.323351 120.52219zM439.323351 797.483242c-171.975699 0-311.887855-139.906423-311.887855-311.875077S267.347652 173.734112 439.323351 173.734112s311.887855 139.907447 311.887855 311.874053S611.299051 797.483242 439.323351 797.483242zM890.678206-48.734702c-22.121716 0-42.90387 8.562003-58.541653 24.115234L674.672953 128.025071l37.039062 38.20616 157.888289-153.058978c5.606924-5.606695 13.091693-8.692986 21.077901-8.692986 7.983139 0 15.464837 3.087315 21.070738 8.69094 5.616135 5.622044 8.715856 13.126972 8.715856 21.123087 0 7.980765-3.091535 15.46318-8.702552 21.067828l-0.301888 0.306992L758.714395 213.230662l38.207726 37.035498 152.611906-157.427472c15.571265-15.638165 24.144876-36.422538 24.144876-58.549487 0-22.195511-8.625801-43.054585-24.287121-58.735729C933.723298-40.112324 912.876674-48.734702 890.678206-48.734702zM281.015489 327.245392c-42.340005 42.320874-65.652899 98.584296-65.643689 158.421102 0.008187 59.818387 23.319034 116.074645 65.637549 158.4078l37.634651-37.619806c-66.60666-66.629513-66.60973-175.00071-0.007163-241.577011L281.015489 327.245392z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="close-fill" unicode="&#4103;" d="M512 822.022125c-217.47508 0-394.423141-176.949085-394.423141-394.423141 0-217.474057 176.948061-394.422118 394.423141-394.422118 217.473033 0 394.422118 176.948061 394.422118 394.422118C906.422118 645.07304 729.473033 822.022125 512 822.022125zM702.228529 270.92978200000005c8.030907-8.030907 8.030907-21.052478 0-29.083385s-21.052478-8.030907-29.083385 0L512 402.992563 350.853833 241.84741899999995c-8.030907-8.030907-21.052478-8.030907-29.083385 0s-8.030907 21.052478 0 29.083385l161.146167 161.146167L321.771471 593.222115c-8.030907 8.030907-8.030907 21.052478 0 29.083385s21.052478 8.030907 29.083385 0l161.146167-161.146167L673.145144 622.305501c8.030907 8.030907 21.052478 8.030907 29.083385 0s8.030907-21.052478 0-29.083385L541.082362 432.075949 702.228529 270.92978200000005z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="chart-screen" unicode="&#58921;" d="M963.930903 179.21903299999997l0 34.824133-37.354769-2.675946L926.576133 694.8538169999999 691.413206 694.8538169999999l0 70.462818L330.260819 765.316635l0-70.462818L95.690386 694.8538169999999l0-480.809627-35.621289 0 0-34.824133 432.583253 0 0-141.228535-90.313935 0 0-35.307134 216.753649 0 0 35.307134-90.313935 0L528.778128 179.21903299999997 963.930903 179.21903299999997zM366.212636 730.008478L655.216819 730.008478l0-35.307134L366.212636 694.7013440000001 366.212636 730.008478zM364.817869 332.73133600000006L222.224244 406.252817l14.295588 27.736715 123.238812-63.523779 173.928285 159.755494 127.5807-92.634794 93.13826 122.414027 12.420891-9.449209 12.420891-9.449209L667.639756 394.365068l-131.636063 95.621824L364.817869 332.73133600000006z"  horiz-adv-x="1024" />
+            <glyph glyph-name="share" unicode="&#58945;"
+                   d="M769.714 306.453c-51.754 0-97.702-24.851-126.571-63.269L394.479 367.94100000000003c3.93 13.798 6.034 28.364 6.034 43.424 0 16.496-2.527 32.399-7.211 47.35l247.724 124.288c28.71-40.052 75.647-66.151 128.687-66.151 87.388 0 158.229 70.84 158.229 158.229 0 87.388-70.841 158.229-158.229 158.229-87.389 0-158.229-70.841-158.229-158.229 0-6.046 0.352-12.009 1.011-17.88L351.22 526.116c-28.371 26.943-66.723 43.479-108.938 43.479-87.388 0-158.229-70.84-158.229-158.229s70.84-158.229 158.229-158.229c43.752 0 83.354 17.758 111.997 46.459l258.676-129.779c-0.964-7.062-1.474-14.266-1.474-21.592 0-87.389 70.84-158.229 158.229-158.229s158.229 70.84 158.229 158.229C927.938 235.61199999999997 857.103 306.453 769.714 306.453L769.714 306.453z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="star" unicode="&#58880;" d="M749.624889-84.152889c-15.672889 0-31.246222 3.882667-45.084444 11.306667l-192.526222 103.637333L319.544889-72.817778c-31.203556-16.64-70.314667-14.392889-99.043556 5.304889-29.511111 20.337778-44.743111 55.921778-38.840889 90.695111l37.703111 225.251556L56.661333 410.908444c-25.002667 24.888889-33.464889 60.984889-22.058667 94.193778 11.349333 32.910222 40.064 56.576 74.965333 61.752889l221.326222 32.896 96.128 199.580444c15.488 32.085333 48.853333 52.807111 84.992 52.807111 36.167111 0 69.518222-20.736 84.963556-52.807111l96.156444-199.580444 221.297778-32.910222c34.872889-5.162667 63.616-28.8 74.979556-61.696 11.392-33.28 2.944-69.361778-22.030222-94.250667L804.622222 248.433778l37.745778-225.28c5.845333-34.773333-9.386667-70.357333-38.812444-90.638222C787.569778-78.392889 768.938667-84.152889 749.624889-84.152889zM512.014222 91.548444c4.636444 0 9.272889-1.137778 13.482667-3.384889l205.937778-110.862222c12.373333-6.641778 28.316444-5.802667 39.936 2.133333 11.392 7.836444 17.123556 21.006222 14.890667 34.304L746.097778 253.496889c-1.507556 9.088 1.450667 18.332444 7.964444 24.832l173.141333 172.842667c9.457778 9.429333 12.686222 23.025778 8.405333 35.484444-4.380444 12.672-15.701333 21.873778-29.525333 23.921778L669.866667 545.706667c-9.315556 1.379556-17.365333 7.296-21.447111 15.786667L545.720889 774.641778c-6.030222 12.529778-19.256889 20.608-33.706667 20.608s-27.690667-8.092444-33.763556-20.622222L375.608889 561.493333c-4.081778-8.490667-12.131556-14.407111-21.447111-15.786667L117.930667 510.577778c-13.624889-2.033778-25.201778-11.434667-29.539556-23.992889-4.266667-12.416-1.024-25.984 8.433778-35.399111L269.937778 278.328889c6.513778-6.499556 9.472-15.744 7.964444-24.832l-40.135111-239.744c-2.247111-13.312 3.484444-26.439111 14.976-34.360889 11.434667-7.836444 27.349333-8.775111 39.950222-2.062222l205.852444 110.833778C502.741333 90.410667 507.377778 91.548444 512.014222 91.548444zM200.32 439.210667c-6.840889 0-12.885333 4.963556-14.023111 11.946667-1.251556 7.751111 4.010667 15.061333 11.761778 16.312889l9.443556 1.536c7.793778 1.336889 15.061333-4.010667 16.312889-11.761778 1.251556-7.751111-4.010667-15.061333-11.761778-16.312889l-9.443556-1.536C201.856 439.267556 201.073778 439.210667 200.32 439.210667zM252.544 447.687111c-6.684444 0-12.643556 4.721778-13.937778 11.534222-1.493333 7.708444 3.555556 15.175111 11.264 16.654222l153.927111 29.696 58.055111 133.148444c3.157333 7.182222 11.548444 10.496 18.716444 7.352889 7.210667-3.143111 10.510222-11.52 7.367111-18.716444l-61.056-140.017778c-1.877333-4.295111-5.745778-7.395556-10.353778-8.277333l-161.28-31.118222C254.336 447.758222 253.44 447.687111 252.544 447.687111z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="circle-dot" unicode="&#58903;" d="M513.133312 830.6731560000001c-247.538793 0-448.208115-200.669322-448.208115-448.207092 0-247.538793 200.670346-448.208115 448.208115-448.208115 247.538793 0 448.208115 200.670346 448.208115 448.208115C961.341427 630.004857 760.673128 830.6731560000001 513.133312 830.6731560000001zM513.132288-6.649187999999981c-214.901465 0-389.113205 174.212764-389.113205 389.114229 0 214.902488 174.21174 389.115252 389.113205 389.115252 214.903511 0 389.115252-174.212764 389.115252-389.115252C902.24754 167.563576 728.0358-6.649187999999981 513.132288-6.649187999999981zM513.133312 382.46504100000004m-344.602456 0a336.754 336.754 0 1 1 689.204911 0 336.754 336.754 0 1 1-689.204911 0Z"  horiz-adv-x="1024" />
+            <glyph glyph-name="set-sm" unicode="&#58912;"
+                   d="M946.367 405.895c0.02 21.85-13.04 38.49-31.74 41.57-18.69 3.07-79.05 13.01-85.99 14.14-6.95 1.15-14.09 8.07-15.4 11.45-1.32 3.37-8.94 22.2-11.87 29.46-2.95 7.27-1.92 16.58 4.39 25.52 6.3 8.93 39.9 55.87 48.38 67.72 8.49 11.87 8.65 34.61-4.84 48.39-13.48 13.78-47.75 47.09-56.73 55.86-8.99 8.76-31.08 8.64-42.67 0.43-11.58-8.2-71.69-51.01-71.69-51.01s-9.97-6.89-20.67-2.64c-10.7 4.24-33.43 14.07-33.43 14.07s-7.19 5.43-9.68 19.79c-2.5 14.37-11.11 65.28-14.07 82.7-2.97 17.42-20.67 29.62-37.83 29.46-17.16-0.14-57.91 0-74.33 0s-32.26-15.68-34.75-29.46c-2.49-13.79-11.56-69.16-14.07-84.45-2.52-15.3-11.44-18.48-11.44-18.48s-19.56-8.06-29.91-12.31c-10.34-4.26-15.39-2.64-30.35 7.48-14.95 10.11-44.74 31.03-63.04 43.83-18.3 12.81-38.12 7.92-49.26-3.52s-36.06-35.77-51.02-50.43c-14.95-14.66-12.61-37.54 0.58-55.71 13.2-18.18 32.34-45.43 41.35-58.21 9.01-12.78 10.84-19.5 8.36-26.82-2.49-7.34-6.64-16.58-11.43-27.72-4.81-11.13-9.69-13.64-27.86-17.01-17.36-3.21-58.42-9.92-77.4-13.31-18.99-3.37-30.66-21.43-30.66-41.81l0-64.66c0-24.34 13.2-37.24 38.42-41.93 25.22-4.69 62.66-10.66 74.77-12.61 12.1-1.95 17.67-6.6 21.41-15.54 3.73-8.94 5.13-10.12 9.37-22.57 4.26-12.47 6.46-15.55-4.98-31.67-11.44-16.13-34.31-48.11-46.03-64.51-11.74-16.4-6.45-37.83 4.98-49.85 11.44-12.03 35.47-35.64 48.97-48.97 13.49-13.33 35.19-16.28 53.36-3.52 18.19 12.75 54.98 38.99 65.69 46.62 10.7 7.63 21.91 5.28 27.85 2.94 5.94-2.35 11.25-4.6 22-9.1 10.73-4.48 13.85-11.2 16.41-23.45 2.57-12.24 10.19-56.85 13.93-78.59 3.75-21.72 18.91-33.43 40.62-33.72 21.7-0.29 33.27-0.12 61.57 0 28.29 0.13 41.86 12.61 45.45 31.38 3.59 18.76 12.45 72.94 14.22 83.72 1.78 10.76 5.94 14.73 13.63 18.47 7.7 3.74 14.32 6.47 26.84 11.88 12.51 5.4 18.91 0.66 27.7-5.72 8.8-6.39 47.51-33.78 63.78-45.31 16.28-11.53 36.73-10.33 51.9 4.4 15.18 14.73 31.62 30.99 49.27 48.38 17.64 17.4 12.16 39.59 4.4 51.46-7.77 11.88-44.49 62.95-49.71 70.23-5.21 7.28-4.4 18.62-1.75 24.63 2.64 6.01 8.44 18.24 11.72 25.22 3.29 6.97 9.6 11.22 18.18 12.9 8.58 1.69 62.72 11 83.75 14.61 21.03 3.64 31.11 19.92 31.26 39.92C946.427 359.93499999999995 946.347 388.525 946.367 405.895zM908.587 338.615c0.21-5.76-4.66-10.65-8.82-11.38-4.17-0.73-63.26-11.38-81.48-14.29-18.21-2.92-33.23-15.07-38.72-28.06-3.98-9.44-5.47-13.51-10.59-26.96-5.12-13.44-4.64-32.19 2.56-42.26 7.2-10.08 46.82-64.9 50.38-70.45s4.27-11.95-1.28-17.5-40.99-41.2-47.39-47.39c-6.41-6.19-11.83-4.8-18.79 0-6.95 4.8-39.61 26.39-64.44 44.36-16.96 12.28-32.82 12.43-48.7 6.02-15.87-6.42 1.28 0.28-22.2-8.97-23.48-9.25-30.23-27.62-33.73-48.24-3.5-20.63-10.67-62.98-11.95-70.45-1.28-7.47-5.55-11.1-13.66-11.1l-64.9 0c-8.11 0-11.74 2.99-14.52 11.95-2.77 8.97-10.03 54.87-12.8 74.29-2.78 19.43-13.82 36.12-24.77 40.56-10.94 4.45-4.98 2.14-27.32 11.1-22.34 8.97-39.63 4.5-51.23-3.84-11.61-8.34-58.64-42.69-65.33-46.96-6.68-4.28-14.65-3.28-18.35 0.42-3.7 3.7-40.56 40.56-46.54 46.54-5.98 5.98-5.36 12.92 0 20.49 5.36 7.58 28.39 40.76 40.99 57.95 12.59 17.2 17.93 34.74 9.82 53.49-8.12 18.74-4.42 10.24-12.39 28.6-7.96 18.36-24.28 24.46-38.42 26.9-14.14 2.43-68.88 11.53-76.85 13.23-7.97 1.71-11.95 7.26-11.95 14.09l0 66.18c0 9.53 7.67 12.44 12.38 13.23 4.7 0.8 54.22 9.18 73 12.39 18.79 3.2 36.36 11.32 43.55 29.03 7.19 17.7 4.27 11.1 11.1 27.32 6.83 16.23 3.8 33.94-7.68 49.96-11.49 16.01-38.85 54-44.4 61.9-5.55 7.9-5.77 12.6 0.85 19.21 6.62 6.62 42.05 42.48 46.96 46.97 4.91 4.48 12.07 5.4 18.36 0.85 6.3-4.55 49.31-35.65 64.04-46.11 14.73-10.46 32.35-12.56 49.1-5.55 16.75 7.02 10.25 4.48 26.9 11.1s24.84 19.09 28.18 39.71c3.33 20.61 11.95 74.14 12.81 77.7 0.85 3.55 5.55 10.46 11.74 10.46s65.82-0.07 69.8 0c3.99 0.07 10.3-3.29 11.32-9.18 1.02-5.9 13.02-74.29 14.94-86.25 1.92-11.95 15.58-28.57 25.54-32.73 9.96-4.16 21.35-8.75 31.31-13.09 9.97-4.34 30.13-1.91 36.15 2.28 6.03 4.18 70.52 48.81 75.43 52.37 4.91 3.56 11.52 3.27 17.64-2.85s43.34-43.19 47.54-47.53c4.19-4.34 4.66-8.66 1.14-13.66-3.53-5.01-36.72-51.8-47.54-67.46-10.81-15.65-11.73-33.73-5.41-48.96 6.33-15.22 3.99-9.39 9.11-21.91 5.13-12.53 16.28-29.03 33.59-31.88 17.31-2.85 76.92-12.74 84.82-13.95 7.9-1.21 11.1-7.18 11.1-13.37S908.377 344.385 908.587 338.615zM526.833 573.1949999999999c-110.45 0-200-89.54-200-200s89.55-200 200-200c110.46 0 200 89.54 200 200S637.293 573.1949999999999 526.833 573.1949999999999zM526.833 208.19500000000005c-91.12 0-165 73.87-165 165s73.88 165 165 165c91.13 0 165-73.87 165-165S617.963 208.19500000000005 526.833 208.19500000000005z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="chat" unicode="&#58886;" d="M132.682393 414.567179c0 208.287837 166.471452 377.143593 379.317095 377.143593s385.380184-168.855756 385.380184-377.143593c0-177.196725-122.197086-325.812507-290.49821-366.259708l-116.291586-51.04763 0 41.126676C290.570353 52.175568999999996 132.682393 215.31206599999996 132.682393 414.567179zM83.799056 414.567179c0-211.946157 160.764474-387.135154 369.469819-415.152255-3.2623-20.458961-10.036587-65.024969-7.286963-65.024969 2.384303 0 114.89068 47.294143 189.700503 78.865185 176.193885 51.91437 304.518528 211.946157 304.518528 401.312038 0 231.432976-191.70823 419.042865-428.200432 419.042865S83.799056 646.0001560000001 83.799056 414.567179zM340.71952 276.63573699999995c22.935362-41.481763 89.831958-75.102489 170.391738-75.102489 79.650061 0 148.489916 32.909527 172.168198 73.681116-12.701277 5.979178-19.068288 8.02886-28.131711 12.21009-19.894096-31.257911-75.425853-59.661821-142.729725-59.661821-66.969251 0-122.836653 28.40391-143.598512 61.083194L340.71952 276.63573699999995z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="release" unicode="&#58889;" d="M990.78144 828.5388800000001c-3.35872 1.59744-7.04512 2.37568-11.01824 2.37568-14.45888 0-27.60704-10.81344-27.40224-10.81344-8.8064-4.42368-880.59904-443.22816-911.44192-459.44832-17.408-9.13408-27.36128-24.73984-25.92768-40.71424 1.10592-13.14816 9.78944-23.51104 23.10144-27.77088 26.17344-8.27392 290.24256-91.58656 290.24256-91.58656l4.83328-1.47456 16.67072 50.05312-254.32064 79.54432 780.73856 406.28224c-82.82112-93.88032-420.53632-476.32384-436.10112-493.93664-20.11136-22.48704-29.4912-45.09696-29.40928-70.98368l0.28672-153.27232-0.08192 0c0 0 0.08192-53.49376 0.08192-53.6576l0-1.96608 0 0c1.18784-13.5168 12.73856-24.24832 26.54208-24.24832s25.51808 10.73152 26.74688 24.24832l0 0c0 0 0.53248 191.03744 0 205.08672-0.49152 12.4928 5.07904 26.54208 10.69056 33.05472 5.65248 6.38976 390.63552 442.61376 465.75616 527.81056-21.38112-106.41408-126.68928-629.76-128.24576-637.41952-0.8192-4.05504-2.58048-4.05504-3.35872-4.05504-0.6144 0-1.31072 0.12288-2.048 0.36864-7.45472 2.37568-268.82048 81.55136-279.92064 84.91008l-4.7104 1.4336-17.16224-50.50368 5.07904-1.59744c2.58048-0.77824 258.90816-79.09376 284.38528-86.46656 5.07904-1.47456 10.24-2.2528 15.44192-2.2528 26.99264 0 49.5616 19.37408 54.8864 46.98112 2.08896 10.93632 27.0336 134.67648 55.9104 277.99552 39.77216 197.14048 84.7872 420.61824 85.93408 427.6224l0.6144 3.31776C1009.70496 798.96576 1013.26848 817.9712 990.78144 828.5388800000001z"  horiz-adv-x="1024" />
+            <glyph glyph-name="engine" unicode="&#58920;"
+                   d="M422.214332 360.70413299999996L186.183684 360.70413299999996l0 46.568461 236.030648 0c10.379577 40.075407 46.47537 69.794509 89.785668 69.794509 51.432433 0 93.067103-41.657943 93.067103-93.067103C605.067103 332.56756700000005 563.40916 290.909624 512 290.909624 468.689703 290.909624 432.593909 320.65199900000005 422.214332 360.70413299999996L422.214332 360.70413299999996zM512 779.634098c-218.529658 0-395.634098-177.10444-395.634098-395.634098 0-218.529658 177.10444-395.634098 395.634098-395.634098 154.76275 0 288.417257 89.064217 353.440885 218.55293l101.398692-59.112389-23.063141-39.959044-62.161099 35.909613c-33.745261-51.595341-77.42792-96.115813-129.093079-129.744711l35.653614-61.765464-40.308133-23.295867-35.653614 61.765464c-53.620057-27.345298-113.360805-44.404109-176.894987-47.73209L535.319139-127.99706800000001l-46.568461 0 0 70.981412c-63.534182 3.327981-123.27493 20.386792-176.894987 47.73209l-35.653614-61.765464-40.308133 23.295867 35.653614 61.765464c-51.665159 33.628898-95.347818 78.149371-129.093079 129.744711l-62.161099-35.909613-23.295867 40.308133 62.114553 35.863067c-27.415116 53.550239-44.799743 113.104807-48.127724 176.685534L0.002932 360.70413299999996l0 46.568461 70.958139 0c3.327981 63.580727 20.712609 123.135295 48.127724 176.685534l-62.114553 35.863067 23.295867 40.308133 62.161099-35.909613c33.745261 51.595341 77.42792 96.115813 129.093079 129.744711l-35.653614 61.765464 40.308133 23.295867 35.653614-61.765464c53.620057 27.345298 113.360805 44.404109 176.894987 47.73209L488.727406 895.997068l46.568461 0 0-70.981412c63.534182-3.327981 123.27493-20.386792 176.894987-47.73209l35.653614 61.765464 40.308133-23.295867-35.653614-61.765464c51.665159-33.628898 95.347818-78.149371 129.093079-129.744711l62.161099 35.909613 23.063141-39.959044-101.398692-59.112389C800.417257 690.569881 666.76275 779.634098 512 779.634098L512 779.634098z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="list" unicode="&#58890;" d="M618.04471 733.97072l-397.175835 0c-16.927531 0-30.699186-13.771655-30.699186-30.699186l0-638.543068c0-16.927531 13.771655-30.699186 30.699186-30.699186l582.261227 0c16.927531 0 30.699186 13.771655 30.699186 30.699186l-0.726547 476.760404L618.04471 733.97072zM803.771715 541.488871 619.537713 541.488871 619.537713 705.552483 803.771715 541.488871zM813.363164 64.728466c0-5.64251-4.590552-10.233062-10.233062-10.233062l-582.261227 0c-5.64251 0-10.233062 4.590552-10.233062 10.233062l0 638.543068c0 5.64251 4.590552 10.233062 10.233062 10.233062l378.202715 0 0-192.481849 214.291574 0L813.363164 64.728466zM298.129516 482.495268l55.258535 0 0-55.258535-55.258535 0 0 55.258535ZM399.777591 468.168981l323.364759 0 0-26.605961-323.364759 0 0 26.605961ZM298.129516 342.044446l55.258535 0 0-55.258535-55.258535 0 0 55.258535ZM399.777591 327.718159l323.364759 0 0-26.605961-323.364759 0 0 26.605961ZM298.129516 199.804884l55.258535 0 0-55.258535-55.258535 0 0 55.258535ZM399.777591 185.478598l323.364759 0 0-26.605961-323.364759 0 0 26.605961ZM881.315812 53.053566"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="chart" unicode="&#58924;" d="M953.440991 315.668729L784.061302 315.668729 681.06451 437.392024c-0.312108 0.373507-0.635473 0.737804-0.969071 1.094938-0.013303 0.014326-0.026606 0.027629-0.039909 0.041956-0.276293 0.293689-0.559748 0.582261-0.851391 0.86367-0.053212 0.051165-0.107447 0.099261-0.160659 0.150426-0.249687 0.237407-0.50142 0.470721-0.76134 0.697895-0.089028 0.078795-0.181125 0.153496-0.272199 0.230244-0.225127 0.191358-0.451278 0.381693-0.683569 0.565888-0.124843 0.099261-0.251733 0.192382-0.3776 0.288572-0.200568 0.153496-0.402159 0.306992-0.607844 0.454348-0.159636 0.11461-0.322341 0.224104-0.485047 0.334621-0.177032 0.12075-0.354064 0.242524-0.535189 0.35918-0.195451 0.12689-0.394996 0.246617-0.593518 0.367367-0.152473 0.092098-0.302899 0.186242-0.457418 0.275269-0.237407 0.137123-0.477884 0.268106-0.718361 0.397043-0.121773 0.065492-0.2415 0.132006-0.364297 0.195451-0.283456 0.146333-0.571005 0.285502-0.859577 0.420579-0.085958 0.040932-0.170892 0.082888-0.257873 0.122797-0.337691 0.154519-0.679475 0.298805-1.022283 0.437975-0.044002 0.017396-0.086981 0.036839-0.130983 0.055259-1.604544 0.638543-3.2623 1.113357-4.948709 1.416256-0.343831 0.062422-0.687662 0.112564-1.031493 0.160659-0.055259 0.008186-0.110517 0.01842-0.165776 0.025583-1.633197 0.216941-3.25923 0.26913-4.861728 0.173962-0.013303-0.001023-0.026606-0.001023-0.040932-0.002047-0.363274-0.022513-0.724501-0.054235-1.085728-0.091074-0.060375-0.00614-0.119727-0.011256-0.180102-0.017396-0.310062-0.034792-0.618077-0.077771-0.926092-0.122797-0.116657-0.017396-0.232291-0.032746-0.348947-0.051165-0.24764-0.040932-0.494257-0.086981-0.740874-0.135076-0.178055-0.033769-0.355087-0.067538-0.532119-0.105401-0.183172-0.039909-0.36532-0.083911-0.547469-0.127913-0.237407-0.056282-0.474814-0.113587-0.710175-0.176009-0.12075-0.032746-0.240477-0.068562-0.360204-0.102331-0.292666-0.082888-0.584308-0.168846-0.874927-0.26299-0.063445-0.020466-0.125867-0.042979-0.188288-0.063445-0.338714-0.112564-0.675382-0.230244-1.010003-0.357134-0.019443-0.007163-0.038886-0.01535-0.058328-0.022513-1.493004-0.571005-2.948145-1.284249-4.340865-2.149966-0.067538-0.041956-0.13303-0.088004-0.200568-0.12996-0.273223-0.172939-0.545422-0.346901-0.813528-0.531096-1.416256-0.971118-2.734274-2.089591-3.936659-3.333932-0.025583-0.026606-0.049119-0.053212-0.074701-0.079818-0.26299-0.275269-0.521886-0.555655-0.773619-0.843204-0.058328-0.066515-0.112564-0.134053-0.169869-0.200568-0.211824-0.246617-0.420579-0.496304-0.62217-0.751107-0.083911-0.106424-0.164752-0.214894-0.246617-0.322341-0.167822-0.218988-0.334621-0.437975-0.49528-0.663102-0.102331-0.14224-0.199545-0.287549-0.298805-0.431835-0.13303-0.194428-0.26606-0.387833-0.393973-0.586354-0.115634-0.179079-0.225127-0.360204-0.335644-0.541329-0.103354-0.168846-0.207731-0.336668-0.306992-0.508583-0.12689-0.220011-0.24764-0.443092-0.36839-0.666172-0.074701-0.138146-0.151449-0.275269-0.223081-0.416486-0.137123-0.265036-0.265036-0.533143-0.39295-0.802272-0.050142-0.105401-0.101307-0.209778-0.150426-0.316202-0.144286-0.317225-0.279363-0.63752-0.410346-0.958838-0.026606-0.064468-0.055259-0.127913-0.080841-0.193405-0.150426-0.378623-0.291642-0.760317-0.423649-1.14508-0.005117-0.016373-0.011256-0.031722-0.017396-0.048095-0.157589-0.463558-0.303922-0.930185-0.434905-1.400906l-97.897657-342.642824L435.093423 811.832042c-0.071631 0.569982-0.165776 1.13587-0.275269 1.696642-0.008186 0.040932-0.017396 0.081864-0.025583 0.12382-0.071631 0.356111-0.148379 0.709151-0.234337 1.061169-0.031722 0.128937-0.065492 0.255827-0.099261 0.38374-0.066515 0.254803-0.135076 0.508583-0.208754 0.760317-0.060375 0.206708-0.124843 0.411369-0.190335 0.615007-0.053212 0.166799-0.107447 0.332575-0.164752 0.49835-0.092098 0.26913-0.190335 0.535189-0.290619 0.800225-0.037862 0.098237-0.074701 0.196475-0.113587 0.293689-0.12382 0.313132-0.25378 0.623193-0.38988 0.930185-0.022513 0.050142-0.044002 0.100284-0.066515 0.150426-0.152473 0.338714-0.311085 0.672312-0.477884 1.00284-0.01228 0.024559-0.024559 0.049119-0.037862 0.074701-0.173962 0.343831-0.356111 0.682545-0.545422 1.017166-0.011256 0.019443-0.022513 0.039909-0.033769 0.059352-0.188288 0.330528-0.382717 0.654916-0.584308 0.975211-0.021489 0.034792-0.044002 0.068562-0.065492 0.103354-0.190335 0.298805-0.385786 0.592494-0.587378 0.88209-0.045025 0.065492-0.091074 0.12996-0.137123 0.194428-0.180102 0.252757-0.363274 0.502443-0.551562 0.74906-0.079818 0.105401-0.162706 0.208754-0.24457 0.312108-0.157589 0.199545-0.317225 0.396019-0.480954 0.590448-0.124843 0.149403-0.252757 0.295735-0.381693 0.442068-0.125867 0.14224-0.251733 0.284479-0.38067 0.424672-0.174985 0.191358-0.355087 0.378623-0.536212 0.563842-0.088004 0.090051-0.176009 0.180102-0.26606 0.26913-0.224104 0.222057-0.452301 0.440022-0.684592 0.653893-0.054235 0.050142-0.10847 0.100284-0.163729 0.150426-0.265036 0.240477-0.535189 0.474814-0.810459 0.704035-0.028653 0.023536-0.056282 0.047072-0.084934 0.070608-0.294712 0.243547-0.595564 0.479931-0.902556 0.711198-0.01535 0.011256-0.029676 0.022513-0.045025 0.033769-0.311085 0.232291-0.627287 0.458441-0.949628 0.677429-0.019443 0.013303-0.037862 0.025583-0.057305 0.038886-0.309038 0.208754-0.623193 0.411369-0.942465 0.606821-0.045025 0.027629-0.090051 0.054235-0.134053 0.081864-0.288572 0.174985-0.581238 0.343831-0.877997 0.50756-0.090051 0.050142-0.181125 0.098237-0.272199 0.147356-0.25071 0.134053-0.502443 0.265036-0.759293 0.391926-0.156566 0.077771-0.314155 0.151449-0.472767 0.226151-0.194428 0.091074-0.38988 0.182149-0.587378 0.268106-0.239454 0.105401-0.481977 0.204661-0.724501 0.302899-0.12382 0.049119-0.246617 0.100284-0.37146 0.148379-0.334621 0.128937-0.673335 0.249687-1.014096 0.36532-0.042979 0.014326-0.085958 0.029676-0.128937 0.044002-1.6158 0.536212-3.296069 0.915859-5.02034 1.119497-0.01535 0.002047-0.029676 0.004093-0.044002 0.00614-0.309038 0.035816-0.620124 0.062422-0.931209 0.086981-0.132006 0.010233-0.265036 0.025583-0.397043 0.033769-0.174985 0.011256-0.349971 0.01535-0.525979 0.022513-0.270153 0.01228-0.539282 0.024559-0.808412 0.027629-0.054235 0.001023-0.10847-0.001023-0.162706-0.001023-1.696642 0.010233-3.371794-0.149403-5.006014-0.466628-0.065492-0.01228-0.12996-0.027629-0.195451-0.039909-0.331551-0.067538-0.662079-0.13917-0.989537-0.218988-0.148379-0.035816-0.295735-0.075725-0.443092-0.11461-0.234337-0.061398-0.468674-0.124843-0.700965-0.192382-0.224104-0.065492-0.445138-0.135076-0.666172-0.206708-0.149403-0.048095-0.297782-0.096191-0.446162-0.147356-0.286526-0.098237-0.568958-0.201591-0.850367-0.309038-0.079818-0.030699-0.160659-0.061398-0.240477-0.093121-0.330528-0.12996-0.655939-0.267083-0.979304-0.410346-0.033769-0.01535-0.067538-0.029676-0.101307-0.045025-0.355087-0.159636-0.705058-0.325411-1.050935-0.500397-0.008186-0.004093-0.016373-0.008186-0.023536-0.01228-0.360204-0.182149-0.714268-0.372483-1.064238-0.569982-0.004093-0.002047-0.008186-0.005117-0.013303-0.007163-0.344854-0.196475-0.684592-0.399089-1.019213-0.610914-0.020466-0.013303-0.040932-0.025583-0.060375-0.038886-0.313132-0.199545-0.621147-0.404206-0.925069-0.61603-0.050142-0.034792-0.099261-0.070608-0.149403-0.105401-0.268106-0.190335-0.532119-0.38374-0.791016-0.583285-0.091074-0.069585-0.181125-0.141216-0.271176-0.212848-0.212848-0.167822-0.422625-0.337691-0.629333-0.512676-0.137123-0.11461-0.271176-0.232291-0.406253-0.349971-0.154519-0.1361-0.308015-0.272199-0.459464-0.412392-0.179079-0.164752-0.354064-0.332575-0.528026-0.502443-0.102331-0.100284-0.204661-0.199545-0.304945-0.301875-0.211824-0.212848-0.418532-0.430812-0.623193-0.651846-0.059352-0.064468-0.119727-0.128937-0.179079-0.194428-0.231267-0.254803-0.456395-0.515746-0.678452-0.780783-0.031722-0.037862-0.063445-0.075725-0.095167-0.11461-0.23536-0.285502-0.465604-0.577145-0.688685-0.874927-0.01842-0.024559-0.036839-0.048095-0.055259-0.072655-0.226151-0.301875-0.445138-0.60989-0.657986-0.923022-0.019443-0.028653-0.038886-0.057305-0.058328-0.084934-0.202615-0.300852-0.400113-0.606821-0.590448-0.916882-0.032746-0.053212-0.064468-0.105401-0.096191-0.158612-0.169869-0.282433-0.335644-0.567935-0.49528-0.857531-0.053212-0.097214-0.105401-0.194428-0.158612-0.292666-0.130983-0.24457-0.258896-0.490164-0.381693-0.73985-0.080841-0.162706-0.157589-0.326435-0.234337-0.491187-0.088004-0.189312-0.177032-0.378623-0.260943-0.571005-0.107447-0.245593-0.209778-0.493234-0.310062-0.741897-0.047072-0.11768-0.095167-0.234337-0.141216-0.354064-0.130983-0.340761-0.25378-0.684592-0.370437-1.030469-0.013303-0.037862-0.026606-0.075725-0.038886-0.113587-0.180102-0.543376-0.345877-1.092891-0.48914-1.650593L244.22942 305.59939599999996 67.355037 305.59939599999996c-14.128789 0-25.582655-11.453866-25.582655-25.582655s11.453866-25.582655 25.582655-25.582655l191.314257 0c0.867764 0 1.725294 0.044002 2.570545 0.128937 0.828878-0.080841 1.656733-0.1361 2.478448-0.1361 11.218506 0 21.512966 7.439436 24.644283 18.779715l113.358791 410.43686 103.412254-723.884758c0.00921-0.072655 0.021489-0.145309 0.030699-0.217964l0.046049-0.320295c0.002047-0.011256 0.005117-0.021489 0.00614-0.032746 0.109494-0.7552 0.25071-1.502213 0.425695-2.238994 0.01535-0.064468 0.031722-0.12689 0.047072-0.191358 0.166799-0.679475 0.358157-1.350764 0.579191-2.01182 0.041956-0.124843 0.088004-0.24764 0.130983-0.37146 0.210801-0.600681 0.437975-1.194198 0.692778-1.77646 0.068562-0.156566 0.144286-0.309038 0.215918-0.464581 0.223081-0.484024 0.460488-0.961908 0.713244-1.431605 0.106424-0.196475 0.213871-0.390903 0.325411-0.584308 0.265036-0.462534 0.545422-0.914836 0.838088-1.359974 0.088004-0.13303 0.170892-0.268106 0.260943-0.399089 0.354064-0.51677 0.732687-1.016143 1.12359-1.506307 0.078795-0.099261 0.156566-0.198521 0.237407-0.296759 0.420579-0.511653 0.864694-1.004887 1.325182-1.482771 0.051165-0.052189 0.101307-0.105401 0.152473-0.157589 0.494257-0.50449 1.010003-0.989537 1.548262-1.454118 0.00921-0.007163 0.017396-0.014326 0.026606-0.022513 1.636267-1.408069 3.466961-2.620687 5.466502-3.592828 0.075725-0.036839 0.151449-0.074701 0.228197-0.11154 0.576121-0.273223 1.165546-0.525979 1.768273-0.75827 0.158612-0.061398 0.319272-0.118704 0.478907-0.177032 0.558725-0.202615 1.124614-0.393973 1.704828-0.559748 0.005117-0.001023 0.010233-0.002047 0.01535-0.004093 0.278339-0.079818 0.562818-0.13917 0.844228-0.209778 0.394996-0.098237 0.789992-0.194428 1.184989-0.274246 0.283456-0.056282 0.568958-0.103354 0.854461-0.149403 0.445138-0.073678 0.889253-0.134053 1.333368-0.183172 0.229221-0.024559 0.456395-0.052189 0.686638-0.071631 0.710175-0.059352 1.418302-0.099261 2.122337-0.099261 0.337691 0 0.671289 0.027629 1.007957 0.040932 0.276293 0.011256 0.550539 0.013303 0.828878 0.033769 0.401136 0.029676 0.799202 0.079818 1.196245 0.127913 0.191358 0.022513 0.38067 0.033769 0.572028 0.061398 0.069585 0.010233 0.1361 0.024559 0.205685 0.034792 0.232291 0.034792 0.462534 0.075725 0.692778 0.116657 0.463558 0.082888 0.921999 0.176009 1.3743 0.283456 0.109494 0.025583 0.218988 0.047072 0.327458 0.074701 0.582261 0.145309 1.152243 0.316202 1.716084 0.499373 0.098237 0.031722 0.196475 0.063445 0.293689 0.097214 1.90335 0.644683 3.694135 1.50119 5.351891 2.540869 0.014326 0.00921 0.028653 0.01842 0.042979 0.027629 1.089821 0.686638 2.121314 1.452071 3.087315 2.287089 0.083911 0.071631 0.167822 0.143263 0.25071 0.215918 0.424672 0.3776 0.837064 0.76748 1.235131 1.170662 0.12382 0.124843 0.243547 0.254803 0.36532 0.382717 0.317225 0.334621 0.626263 0.677429 0.925069 1.028423 0.155543 0.183172 0.308015 0.36839 0.458441 0.556679 0.26606 0.331551 0.523933 0.670266 0.773619 1.01512 0.130983 0.180102 0.261966 0.35918 0.387833 0.543376 0.294712 0.429789 0.575098 0.86981 0.843204 1.316995 0.099261 0.165776 0.195451 0.334621 0.290619 0.503467 0.283456 0.499373 0.555655 1.004887 0.806365 1.52268 0.031722 0.065492 0.060375 0.13303 0.091074 0.199545 0.276293 0.584308 0.530073 1.178849 0.762363 1.784646 0.00614 0.017396 0.014326 0.034792 0.020466 0.051165 0.251733 0.661056 0.472767 1.336438 0.669242 2.020006 0.002047 0.008186 0.00614 0.016373 0.008186 0.024559l0.061398 0.215918c0.029676 0.106424 0.062422 0.210801 0.090051 0.317225l117.579929 411.527704 79.800487-94.308923c0.070608-0.083911 0.146333-0.161682 0.217964-0.243547 0.190335-0.220011 0.38374-0.436952 0.581238-0.649799 0.134053-0.144286 0.26913-0.285502 0.405229-0.425695 0.164752-0.168846 0.331551-0.335644 0.50142-0.500397 0.164752-0.159636 0.329505-0.319272 0.496304-0.473791 0.138146-0.12689 0.279363-0.25071 0.419556-0.37453 0.198521-0.174985 0.397043-0.350994 0.599657-0.518816 0.081864-0.067538 0.166799-0.132006 0.249687-0.198521 0.817622-0.661056 1.667989-1.264806 2.545986-1.811252 0.098237-0.061398 0.195451-0.125867 0.294712-0.185218 0.228197-0.138146 0.459464-0.267083 0.691755-0.398066 0.157589-0.089028 0.315178-0.178055 0.474814-0.264013 0.200568-0.107447 0.403183-0.208754 0.606821-0.311085 0.202615-0.101307 0.406253-0.201591 0.611937-0.297782 0.173962-0.080841 0.348947-0.159636 0.523933-0.237407 0.245593-0.10847 0.494257-0.212848 0.743944-0.313132 0.144286-0.058328 0.289596-0.115634 0.434905-0.171915 0.291642-0.11154 0.586354-0.216941 0.883113-0.317225 0.11154-0.037862 0.223081-0.076748 0.334621-0.113587 0.337691-0.109494 0.677429-0.210801 1.02126-0.305969 0.078795-0.021489 0.157589-0.046049 0.236384-0.066515 0.376577-0.101307 0.757247-0.193405 1.140986-0.277316 0.050142-0.011256 0.100284-0.023536 0.150426-0.034792 0.405229-0.085958 0.813528-0.162706 1.225921-0.229221 0.031722-0.005117 0.063445-0.01228 0.096191-0.017396 0.412392-0.065492 0.828878-0.12075 1.24741-0.165776 0.032746-0.004093 0.064468-0.00921 0.097214-0.01228 0.382717-0.039909 0.768503-0.068562 1.155313-0.092098 0.068562-0.004093 0.1361-0.01228 0.204661-0.01535 0.25992-0.013303 0.521886-0.01535 0.782829-0.020466 0.188288-0.004093 0.376577-0.01535 0.564865-0.01535 0.008186 0 0.01535 0.001023 0.023536 0.001023l181.208085 0c14.129812 0 25.582655 11.453866 25.582655 25.582655S967.56978 315.668729 953.440991 315.668729z"  horiz-adv-x="1024" />
+            <glyph glyph-name="close" unicode="&#4102;"
+                   d="M783.483 701.249L512 429.775 240.517 701.249c-10.082 10.083-26.429 10.083-36.51 0-10.083-10.082-10.083-26.429 0-36.509l271.481-271.475L204.008 121.78800000000001c-10.083-10.081-10.083-26.428 0-36.508 10.082-10.082 26.429-10.082 36.51 0L512 356.755l271.483-271.475c10.082-10.082 26.429-10.082 36.513 0 10.081 10.083 10.081 26.428 0 36.508L548.51 393.265l271.485 271.474c10.081 10.083 10.081 26.429 0 36.509C809.912 711.33 793.564 711.33 783.483 701.249z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="ok-circle" unicode="&#4101;" d="M516.152065-63.152063c-60.696384 0-119.594819 11.894911-175.056991 35.353183-53.55473 22.651906-101.646028 55.073316-142.936433 96.364745-41.291428 41.291428-73.712839 89.381703-96.363721 142.936433-23.458271 55.462173-35.353183 114.359584-35.353183 175.055968s11.894911 119.594819 35.353183 175.056991c22.651906 53.55473 55.073316 101.646028 96.363721 142.936433 41.290405 41.291428 89.381703 73.712839 142.936433 96.363721 55.462173 23.458271 114.359584 35.353183 175.056991 35.353183s119.594819-11.894911 175.056991-35.353183c53.55473-22.651906 101.645005-55.073316 142.936433-96.363721 41.291428-41.290405 73.711815-89.38068 96.363721-142.936433 23.459295-55.462173 35.353183-114.359584 35.353183-175.056991 0-60.696384-11.893888-119.593795-35.353183-175.055968-22.651906-53.55473-55.072293-101.645005-96.363721-142.936433s-89.381703-73.712839-142.936433-96.364745C635.747907-51.25715200000002 576.849472-63.152063 516.152065-63.152063zM516.152065 774.870222c-214.115566 0-388.311956-174.196391-388.311956-388.311956s174.196391-388.311956 388.311956-388.311956 388.311956 174.196391 388.311956 388.311956S730.268654 774.870222 516.152065 774.870222zM434.74908 132.830517L209.49278 358.08784 289.087583 437.68162 434.74908 292.020122 743.218594 600.488613 822.812373 520.89381Z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="layim-theme" unicode="&#58907;" d="M958.830745 538.643056L740.659817 692.753993l-100.539834 0-3.977591-9.332553c-0.37146-0.871857-38.021965-86.8613-124.772748-88.667435-35.691897 0.76441-67.206658 15.500019-93.680613 43.828204-20.658506 22.106484-30.374798 44.584428-30.456662 44.776809l-3.955078 9.393951-100.587929 0L64.518433 538.643056 169.320337 379.756349l89.956801 65.019853-19.016099-368.05254 268.86654 0 4.093225 0 269.866311 0-19.016099 368.051517 89.956801-65.018829L958.830745 538.643056zM730.105437 507.20402l20.655436-399.781172-237.540068 0-4.093225 0L272.587282 107.42284700000005l20.656459 399.781172-115.938546-83.797521-36.3243 55.070246 159.440315 111.641683-19.276019 30.638811L121.066333 508.667348l-14.548344 22.056342 185.921433 131.330094 71.077825 0c5.332449-10.04375 15.433504-26.779923 30.951943-43.580564 32.047904-34.69622 72.256674-53.486168 116.345822-54.411237l0-0.031722c0.203638 0.00307 0.406253 0.01228 0.60989 0.016373 0.203638-0.00307 0.406253-0.013303 0.60989-0.016373l0 0.031722c44.073798 0.925069 84.359316 19.703761 116.566856 54.379515 15.623839 16.821107 25.814945 33.579793 31.188326 43.612287l71.120804 0 185.921433-131.330094-14.548344-22.056342L742.203986 620.7551920000001l-19.276019-30.638811 159.440315-111.641683-36.3243-55.070246L730.105437 507.20402z"  horiz-adv-x="1024" />
+            <glyph glyph-name="close-fill" unicode="&#4103;"
+                   d="M512 822.022125c-217.47508 0-394.423141-176.949085-394.423141-394.423141 0-217.474057 176.948061-394.422118 394.423141-394.422118 217.473033 0 394.422118 176.948061 394.422118 394.422118C906.422118 645.07304 729.473033 822.022125 512 822.022125zM702.228529 270.92978200000005c8.030907-8.030907 8.030907-21.052478 0-29.083385s-21.052478-8.030907-29.083385 0L512 402.992563 350.853833 241.84741899999995c-8.030907-8.030907-21.052478-8.030907-29.083385 0s-8.030907 21.052478 0 29.083385l161.146167 161.146167L321.771471 593.222115c-8.030907 8.030907-8.030907 21.052478 0 29.083385s21.052478 8.030907 29.083385 0l161.146167-161.146167L673.145144 622.305501c8.030907 8.030907 21.052478 8.030907 29.083385 0s8.030907-21.052478 0-29.083385L541.082362 432.075949 702.228529 270.92978200000005z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="table" unicode="&#58925;" d="M304.738028 343.684806M729.544153 511.153982M595.52788 637.723655M143.806755 686.614156l0-601.704045L881.172549 84.91011100000003l0 601.704045L143.806755 686.614156zM420.318416 299.80441299999995l0 128.936581 184.341448 0 0-128.936581L420.318416 299.80441299999995zM604.659865 256.825552l0-128.936581L420.318416 127.88897099999997l0 128.936581L604.659865 256.825552zM604.659865 600.656435l0-128.936581L420.318416 471.719854l0 128.936581L604.659865 600.656435zM374.232798 600.656435l0-128.936581L189.89135 471.719854l0 128.936581L374.232798 600.656435zM189.89135 428.740994L374.232798 428.740994l0-128.936581L189.89135 299.80441299999995 189.89135 428.740994zM650.745483 428.740994l184.341448 0 0-128.936581L650.745483 299.80441299999995 650.745483 428.740994zM650.745483 471.719854l0 128.936581 184.341448 0 0-128.936581L650.745483 471.719854zM189.89135 256.825552L374.232798 256.825552l0-128.936581L189.89135 127.88897099999997 189.89135 256.825552zM650.745483 127.88897099999997l0 128.936581 184.341448 0 0-128.936581L650.745483 127.88897099999997z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="right" unicode="&#58882;" d="M283.648 721.9189759999999L340.873216 780.926976 740.352 383.99795200000005 340.876288-12.925952000000052 283.648 46.07795199999998 619.52 383.99795200000005Z"  horiz-adv-x="1024" />
+            <glyph glyph-name="chart-screen" unicode="&#58921;"
+                   d="M963.930903 179.21903299999997l0 34.824133-37.354769-2.675946L926.576133 694.8538169999999 691.413206 694.8538169999999l0 70.462818L330.260819 765.316635l0-70.462818L95.690386 694.8538169999999l0-480.809627-35.621289 0 0-34.824133 432.583253 0 0-141.228535-90.313935 0 0-35.307134 216.753649 0 0 35.307134-90.313935 0L528.778128 179.21903299999997 963.930903 179.21903299999997zM366.212636 730.008478L655.216819 730.008478l0-35.307134L366.212636 694.7013440000001 366.212636 730.008478zM364.817869 332.73133600000006L222.224244 406.252817l14.295588 27.736715 123.238812-63.523779 173.928285 159.755494 127.5807-92.634794 93.13826 122.414027 12.420891-9.449209 12.420891-9.449209L667.639756 394.365068l-131.636063 95.621824L364.817869 332.73133600000006z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="star" unicode="&#58880;"
+                   d="M749.624889-84.152889c-15.672889 0-31.246222 3.882667-45.084444 11.306667l-192.526222 103.637333L319.544889-72.817778c-31.203556-16.64-70.314667-14.392889-99.043556 5.304889-29.511111 20.337778-44.743111 55.921778-38.840889 90.695111l37.703111 225.251556L56.661333 410.908444c-25.002667 24.888889-33.464889 60.984889-22.058667 94.193778 11.349333 32.910222 40.064 56.576 74.965333 61.752889l221.326222 32.896 96.128 199.580444c15.488 32.085333 48.853333 52.807111 84.992 52.807111 36.167111 0 69.518222-20.736 84.963556-52.807111l96.156444-199.580444 221.297778-32.910222c34.872889-5.162667 63.616-28.8 74.979556-61.696 11.392-33.28 2.944-69.361778-22.030222-94.250667L804.622222 248.433778l37.745778-225.28c5.845333-34.773333-9.386667-70.357333-38.812444-90.638222C787.569778-78.392889 768.938667-84.152889 749.624889-84.152889zM512.014222 91.548444c4.636444 0 9.272889-1.137778 13.482667-3.384889l205.937778-110.862222c12.373333-6.641778 28.316444-5.802667 39.936 2.133333 11.392 7.836444 17.123556 21.006222 14.890667 34.304L746.097778 253.496889c-1.507556 9.088 1.450667 18.332444 7.964444 24.832l173.141333 172.842667c9.457778 9.429333 12.686222 23.025778 8.405333 35.484444-4.380444 12.672-15.701333 21.873778-29.525333 23.921778L669.866667 545.706667c-9.315556 1.379556-17.365333 7.296-21.447111 15.786667L545.720889 774.641778c-6.030222 12.529778-19.256889 20.608-33.706667 20.608s-27.690667-8.092444-33.763556-20.622222L375.608889 561.493333c-4.081778-8.490667-12.131556-14.407111-21.447111-15.786667L117.930667 510.577778c-13.624889-2.033778-25.201778-11.434667-29.539556-23.992889-4.266667-12.416-1.024-25.984 8.433778-35.399111L269.937778 278.328889c6.513778-6.499556 9.472-15.744 7.964444-24.832l-40.135111-239.744c-2.247111-13.312 3.484444-26.439111 14.976-34.360889 11.434667-7.836444 27.349333-8.775111 39.950222-2.062222l205.852444 110.833778C502.741333 90.410667 507.377778 91.548444 512.014222 91.548444zM200.32 439.210667c-6.840889 0-12.885333 4.963556-14.023111 11.946667-1.251556 7.751111 4.010667 15.061333 11.761778 16.312889l9.443556 1.536c7.793778 1.336889 15.061333-4.010667 16.312889-11.761778 1.251556-7.751111-4.010667-15.061333-11.761778-16.312889l-9.443556-1.536C201.856 439.267556 201.073778 439.210667 200.32 439.210667zM252.544 447.687111c-6.684444 0-12.643556 4.721778-13.937778 11.534222-1.493333 7.708444 3.555556 15.175111 11.264 16.654222l153.927111 29.696 58.055111 133.148444c3.157333 7.182222 11.548444 10.496 18.716444 7.352889 7.210667-3.143111 10.510222-11.52 7.367111-18.716444l-61.056-140.017778c-1.877333-4.295111-5.745778-7.395556-10.353778-8.277333l-161.28-31.118222C254.336 447.758222 253.44 447.687111 252.544 447.687111z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="circle-dot" unicode="&#58903;"
+                   d="M513.133312 830.6731560000001c-247.538793 0-448.208115-200.669322-448.208115-448.207092 0-247.538793 200.670346-448.208115 448.208115-448.208115 247.538793 0 448.208115 200.670346 448.208115 448.208115C961.341427 630.004857 760.673128 830.6731560000001 513.133312 830.6731560000001zM513.132288-6.649187999999981c-214.901465 0-389.113205 174.212764-389.113205 389.114229 0 214.902488 174.21174 389.115252 389.113205 389.115252 214.903511 0 389.115252-174.212764 389.115252-389.115252C902.24754 167.563576 728.0358-6.649187999999981 513.132288-6.649187999999981zM513.133312 382.46504100000004m-344.602456 0a336.754 336.754 0 1 1 689.204911 0 336.754 336.754 0 1 1-689.204911 0Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="chat" unicode="&#58886;"
+                   d="M132.682393 414.567179c0 208.287837 166.471452 377.143593 379.317095 377.143593s385.380184-168.855756 385.380184-377.143593c0-177.196725-122.197086-325.812507-290.49821-366.259708l-116.291586-51.04763 0 41.126676C290.570353 52.175568999999996 132.682393 215.31206599999996 132.682393 414.567179zM83.799056 414.567179c0-211.946157 160.764474-387.135154 369.469819-415.152255-3.2623-20.458961-10.036587-65.024969-7.286963-65.024969 2.384303 0 114.89068 47.294143 189.700503 78.865185 176.193885 51.91437 304.518528 211.946157 304.518528 401.312038 0 231.432976-191.70823 419.042865-428.200432 419.042865S83.799056 646.0001560000001 83.799056 414.567179zM340.71952 276.63573699999995c22.935362-41.481763 89.831958-75.102489 170.391738-75.102489 79.650061 0 148.489916 32.909527 172.168198 73.681116-12.701277 5.979178-19.068288 8.02886-28.131711 12.21009-19.894096-31.257911-75.425853-59.661821-142.729725-59.661821-66.969251 0-122.836653 28.40391-143.598512 61.083194L340.71952 276.63573699999995z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="release" unicode="&#58889;"
+                   d="M990.78144 828.5388800000001c-3.35872 1.59744-7.04512 2.37568-11.01824 2.37568-14.45888 0-27.60704-10.81344-27.40224-10.81344-8.8064-4.42368-880.59904-443.22816-911.44192-459.44832-17.408-9.13408-27.36128-24.73984-25.92768-40.71424 1.10592-13.14816 9.78944-23.51104 23.10144-27.77088 26.17344-8.27392 290.24256-91.58656 290.24256-91.58656l4.83328-1.47456 16.67072 50.05312-254.32064 79.54432 780.73856 406.28224c-82.82112-93.88032-420.53632-476.32384-436.10112-493.93664-20.11136-22.48704-29.4912-45.09696-29.40928-70.98368l0.28672-153.27232-0.08192 0c0 0 0.08192-53.49376 0.08192-53.6576l0-1.96608 0 0c1.18784-13.5168 12.73856-24.24832 26.54208-24.24832s25.51808 10.73152 26.74688 24.24832l0 0c0 0 0.53248 191.03744 0 205.08672-0.49152 12.4928 5.07904 26.54208 10.69056 33.05472 5.65248 6.38976 390.63552 442.61376 465.75616 527.81056-21.38112-106.41408-126.68928-629.76-128.24576-637.41952-0.8192-4.05504-2.58048-4.05504-3.35872-4.05504-0.6144 0-1.31072 0.12288-2.048 0.36864-7.45472 2.37568-268.82048 81.55136-279.92064 84.91008l-4.7104 1.4336-17.16224-50.50368 5.07904-1.59744c2.58048-0.77824 258.90816-79.09376 284.38528-86.46656 5.07904-1.47456 10.24-2.2528 15.44192-2.2528 26.99264 0 49.5616 19.37408 54.8864 46.98112 2.08896 10.93632 27.0336 134.67648 55.9104 277.99552 39.77216 197.14048 84.7872 420.61824 85.93408 427.6224l0.6144 3.31776C1009.70496 798.96576 1013.26848 817.9712 990.78144 828.5388800000001z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="list" unicode="&#58890;"
+                   d="M618.04471 733.97072l-397.175835 0c-16.927531 0-30.699186-13.771655-30.699186-30.699186l0-638.543068c0-16.927531 13.771655-30.699186 30.699186-30.699186l582.261227 0c16.927531 0 30.699186 13.771655 30.699186 30.699186l-0.726547 476.760404L618.04471 733.97072zM803.771715 541.488871 619.537713 541.488871 619.537713 705.552483 803.771715 541.488871zM813.363164 64.728466c0-5.64251-4.590552-10.233062-10.233062-10.233062l-582.261227 0c-5.64251 0-10.233062 4.590552-10.233062 10.233062l0 638.543068c0 5.64251 4.590552 10.233062 10.233062 10.233062l378.202715 0 0-192.481849 214.291574 0L813.363164 64.728466zM298.129516 482.495268l55.258535 0 0-55.258535-55.258535 0 0 55.258535ZM399.777591 468.168981l323.364759 0 0-26.605961-323.364759 0 0 26.605961ZM298.129516 342.044446l55.258535 0 0-55.258535-55.258535 0 0 55.258535ZM399.777591 327.718159l323.364759 0 0-26.605961-323.364759 0 0 26.605961ZM298.129516 199.804884l55.258535 0 0-55.258535-55.258535 0 0 55.258535ZM399.777591 185.478598l323.364759 0 0-26.605961-323.364759 0 0 26.605961ZM881.315812 53.053566"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="chart" unicode="&#58924;"
+                   d="M953.440991 315.668729L784.061302 315.668729 681.06451 437.392024c-0.312108 0.373507-0.635473 0.737804-0.969071 1.094938-0.013303 0.014326-0.026606 0.027629-0.039909 0.041956-0.276293 0.293689-0.559748 0.582261-0.851391 0.86367-0.053212 0.051165-0.107447 0.099261-0.160659 0.150426-0.249687 0.237407-0.50142 0.470721-0.76134 0.697895-0.089028 0.078795-0.181125 0.153496-0.272199 0.230244-0.225127 0.191358-0.451278 0.381693-0.683569 0.565888-0.124843 0.099261-0.251733 0.192382-0.3776 0.288572-0.200568 0.153496-0.402159 0.306992-0.607844 0.454348-0.159636 0.11461-0.322341 0.224104-0.485047 0.334621-0.177032 0.12075-0.354064 0.242524-0.535189 0.35918-0.195451 0.12689-0.394996 0.246617-0.593518 0.367367-0.152473 0.092098-0.302899 0.186242-0.457418 0.275269-0.237407 0.137123-0.477884 0.268106-0.718361 0.397043-0.121773 0.065492-0.2415 0.132006-0.364297 0.195451-0.283456 0.146333-0.571005 0.285502-0.859577 0.420579-0.085958 0.040932-0.170892 0.082888-0.257873 0.122797-0.337691 0.154519-0.679475 0.298805-1.022283 0.437975-0.044002 0.017396-0.086981 0.036839-0.130983 0.055259-1.604544 0.638543-3.2623 1.113357-4.948709 1.416256-0.343831 0.062422-0.687662 0.112564-1.031493 0.160659-0.055259 0.008186-0.110517 0.01842-0.165776 0.025583-1.633197 0.216941-3.25923 0.26913-4.861728 0.173962-0.013303-0.001023-0.026606-0.001023-0.040932-0.002047-0.363274-0.022513-0.724501-0.054235-1.085728-0.091074-0.060375-0.00614-0.119727-0.011256-0.180102-0.017396-0.310062-0.034792-0.618077-0.077771-0.926092-0.122797-0.116657-0.017396-0.232291-0.032746-0.348947-0.051165-0.24764-0.040932-0.494257-0.086981-0.740874-0.135076-0.178055-0.033769-0.355087-0.067538-0.532119-0.105401-0.183172-0.039909-0.36532-0.083911-0.547469-0.127913-0.237407-0.056282-0.474814-0.113587-0.710175-0.176009-0.12075-0.032746-0.240477-0.068562-0.360204-0.102331-0.292666-0.082888-0.584308-0.168846-0.874927-0.26299-0.063445-0.020466-0.125867-0.042979-0.188288-0.063445-0.338714-0.112564-0.675382-0.230244-1.010003-0.357134-0.019443-0.007163-0.038886-0.01535-0.058328-0.022513-1.493004-0.571005-2.948145-1.284249-4.340865-2.149966-0.067538-0.041956-0.13303-0.088004-0.200568-0.12996-0.273223-0.172939-0.545422-0.346901-0.813528-0.531096-1.416256-0.971118-2.734274-2.089591-3.936659-3.333932-0.025583-0.026606-0.049119-0.053212-0.074701-0.079818-0.26299-0.275269-0.521886-0.555655-0.773619-0.843204-0.058328-0.066515-0.112564-0.134053-0.169869-0.200568-0.211824-0.246617-0.420579-0.496304-0.62217-0.751107-0.083911-0.106424-0.164752-0.214894-0.246617-0.322341-0.167822-0.218988-0.334621-0.437975-0.49528-0.663102-0.102331-0.14224-0.199545-0.287549-0.298805-0.431835-0.13303-0.194428-0.26606-0.387833-0.393973-0.586354-0.115634-0.179079-0.225127-0.360204-0.335644-0.541329-0.103354-0.168846-0.207731-0.336668-0.306992-0.508583-0.12689-0.220011-0.24764-0.443092-0.36839-0.666172-0.074701-0.138146-0.151449-0.275269-0.223081-0.416486-0.137123-0.265036-0.265036-0.533143-0.39295-0.802272-0.050142-0.105401-0.101307-0.209778-0.150426-0.316202-0.144286-0.317225-0.279363-0.63752-0.410346-0.958838-0.026606-0.064468-0.055259-0.127913-0.080841-0.193405-0.150426-0.378623-0.291642-0.760317-0.423649-1.14508-0.005117-0.016373-0.011256-0.031722-0.017396-0.048095-0.157589-0.463558-0.303922-0.930185-0.434905-1.400906l-97.897657-342.642824L435.093423 811.832042c-0.071631 0.569982-0.165776 1.13587-0.275269 1.696642-0.008186 0.040932-0.017396 0.081864-0.025583 0.12382-0.071631 0.356111-0.148379 0.709151-0.234337 1.061169-0.031722 0.128937-0.065492 0.255827-0.099261 0.38374-0.066515 0.254803-0.135076 0.508583-0.208754 0.760317-0.060375 0.206708-0.124843 0.411369-0.190335 0.615007-0.053212 0.166799-0.107447 0.332575-0.164752 0.49835-0.092098 0.26913-0.190335 0.535189-0.290619 0.800225-0.037862 0.098237-0.074701 0.196475-0.113587 0.293689-0.12382 0.313132-0.25378 0.623193-0.38988 0.930185-0.022513 0.050142-0.044002 0.100284-0.066515 0.150426-0.152473 0.338714-0.311085 0.672312-0.477884 1.00284-0.01228 0.024559-0.024559 0.049119-0.037862 0.074701-0.173962 0.343831-0.356111 0.682545-0.545422 1.017166-0.011256 0.019443-0.022513 0.039909-0.033769 0.059352-0.188288 0.330528-0.382717 0.654916-0.584308 0.975211-0.021489 0.034792-0.044002 0.068562-0.065492 0.103354-0.190335 0.298805-0.385786 0.592494-0.587378 0.88209-0.045025 0.065492-0.091074 0.12996-0.137123 0.194428-0.180102 0.252757-0.363274 0.502443-0.551562 0.74906-0.079818 0.105401-0.162706 0.208754-0.24457 0.312108-0.157589 0.199545-0.317225 0.396019-0.480954 0.590448-0.124843 0.149403-0.252757 0.295735-0.381693 0.442068-0.125867 0.14224-0.251733 0.284479-0.38067 0.424672-0.174985 0.191358-0.355087 0.378623-0.536212 0.563842-0.088004 0.090051-0.176009 0.180102-0.26606 0.26913-0.224104 0.222057-0.452301 0.440022-0.684592 0.653893-0.054235 0.050142-0.10847 0.100284-0.163729 0.150426-0.265036 0.240477-0.535189 0.474814-0.810459 0.704035-0.028653 0.023536-0.056282 0.047072-0.084934 0.070608-0.294712 0.243547-0.595564 0.479931-0.902556 0.711198-0.01535 0.011256-0.029676 0.022513-0.045025 0.033769-0.311085 0.232291-0.627287 0.458441-0.949628 0.677429-0.019443 0.013303-0.037862 0.025583-0.057305 0.038886-0.309038 0.208754-0.623193 0.411369-0.942465 0.606821-0.045025 0.027629-0.090051 0.054235-0.134053 0.081864-0.288572 0.174985-0.581238 0.343831-0.877997 0.50756-0.090051 0.050142-0.181125 0.098237-0.272199 0.147356-0.25071 0.134053-0.502443 0.265036-0.759293 0.391926-0.156566 0.077771-0.314155 0.151449-0.472767 0.226151-0.194428 0.091074-0.38988 0.182149-0.587378 0.268106-0.239454 0.105401-0.481977 0.204661-0.724501 0.302899-0.12382 0.049119-0.246617 0.100284-0.37146 0.148379-0.334621 0.128937-0.673335 0.249687-1.014096 0.36532-0.042979 0.014326-0.085958 0.029676-0.128937 0.044002-1.6158 0.536212-3.296069 0.915859-5.02034 1.119497-0.01535 0.002047-0.029676 0.004093-0.044002 0.00614-0.309038 0.035816-0.620124 0.062422-0.931209 0.086981-0.132006 0.010233-0.265036 0.025583-0.397043 0.033769-0.174985 0.011256-0.349971 0.01535-0.525979 0.022513-0.270153 0.01228-0.539282 0.024559-0.808412 0.027629-0.054235 0.001023-0.10847-0.001023-0.162706-0.001023-1.696642 0.010233-3.371794-0.149403-5.006014-0.466628-0.065492-0.01228-0.12996-0.027629-0.195451-0.039909-0.331551-0.067538-0.662079-0.13917-0.989537-0.218988-0.148379-0.035816-0.295735-0.075725-0.443092-0.11461-0.234337-0.061398-0.468674-0.124843-0.700965-0.192382-0.224104-0.065492-0.445138-0.135076-0.666172-0.206708-0.149403-0.048095-0.297782-0.096191-0.446162-0.147356-0.286526-0.098237-0.568958-0.201591-0.850367-0.309038-0.079818-0.030699-0.160659-0.061398-0.240477-0.093121-0.330528-0.12996-0.655939-0.267083-0.979304-0.410346-0.033769-0.01535-0.067538-0.029676-0.101307-0.045025-0.355087-0.159636-0.705058-0.325411-1.050935-0.500397-0.008186-0.004093-0.016373-0.008186-0.023536-0.01228-0.360204-0.182149-0.714268-0.372483-1.064238-0.569982-0.004093-0.002047-0.008186-0.005117-0.013303-0.007163-0.344854-0.196475-0.684592-0.399089-1.019213-0.610914-0.020466-0.013303-0.040932-0.025583-0.060375-0.038886-0.313132-0.199545-0.621147-0.404206-0.925069-0.61603-0.050142-0.034792-0.099261-0.070608-0.149403-0.105401-0.268106-0.190335-0.532119-0.38374-0.791016-0.583285-0.091074-0.069585-0.181125-0.141216-0.271176-0.212848-0.212848-0.167822-0.422625-0.337691-0.629333-0.512676-0.137123-0.11461-0.271176-0.232291-0.406253-0.349971-0.154519-0.1361-0.308015-0.272199-0.459464-0.412392-0.179079-0.164752-0.354064-0.332575-0.528026-0.502443-0.102331-0.100284-0.204661-0.199545-0.304945-0.301875-0.211824-0.212848-0.418532-0.430812-0.623193-0.651846-0.059352-0.064468-0.119727-0.128937-0.179079-0.194428-0.231267-0.254803-0.456395-0.515746-0.678452-0.780783-0.031722-0.037862-0.063445-0.075725-0.095167-0.11461-0.23536-0.285502-0.465604-0.577145-0.688685-0.874927-0.01842-0.024559-0.036839-0.048095-0.055259-0.072655-0.226151-0.301875-0.445138-0.60989-0.657986-0.923022-0.019443-0.028653-0.038886-0.057305-0.058328-0.084934-0.202615-0.300852-0.400113-0.606821-0.590448-0.916882-0.032746-0.053212-0.064468-0.105401-0.096191-0.158612-0.169869-0.282433-0.335644-0.567935-0.49528-0.857531-0.053212-0.097214-0.105401-0.194428-0.158612-0.292666-0.130983-0.24457-0.258896-0.490164-0.381693-0.73985-0.080841-0.162706-0.157589-0.326435-0.234337-0.491187-0.088004-0.189312-0.177032-0.378623-0.260943-0.571005-0.107447-0.245593-0.209778-0.493234-0.310062-0.741897-0.047072-0.11768-0.095167-0.234337-0.141216-0.354064-0.130983-0.340761-0.25378-0.684592-0.370437-1.030469-0.013303-0.037862-0.026606-0.075725-0.038886-0.113587-0.180102-0.543376-0.345877-1.092891-0.48914-1.650593L244.22942 305.59939599999996 67.355037 305.59939599999996c-14.128789 0-25.582655-11.453866-25.582655-25.582655s11.453866-25.582655 25.582655-25.582655l191.314257 0c0.867764 0 1.725294 0.044002 2.570545 0.128937 0.828878-0.080841 1.656733-0.1361 2.478448-0.1361 11.218506 0 21.512966 7.439436 24.644283 18.779715l113.358791 410.43686 103.412254-723.884758c0.00921-0.072655 0.021489-0.145309 0.030699-0.217964l0.046049-0.320295c0.002047-0.011256 0.005117-0.021489 0.00614-0.032746 0.109494-0.7552 0.25071-1.502213 0.425695-2.238994 0.01535-0.064468 0.031722-0.12689 0.047072-0.191358 0.166799-0.679475 0.358157-1.350764 0.579191-2.01182 0.041956-0.124843 0.088004-0.24764 0.130983-0.37146 0.210801-0.600681 0.437975-1.194198 0.692778-1.77646 0.068562-0.156566 0.144286-0.309038 0.215918-0.464581 0.223081-0.484024 0.460488-0.961908 0.713244-1.431605 0.106424-0.196475 0.213871-0.390903 0.325411-0.584308 0.265036-0.462534 0.545422-0.914836 0.838088-1.359974 0.088004-0.13303 0.170892-0.268106 0.260943-0.399089 0.354064-0.51677 0.732687-1.016143 1.12359-1.506307 0.078795-0.099261 0.156566-0.198521 0.237407-0.296759 0.420579-0.511653 0.864694-1.004887 1.325182-1.482771 0.051165-0.052189 0.101307-0.105401 0.152473-0.157589 0.494257-0.50449 1.010003-0.989537 1.548262-1.454118 0.00921-0.007163 0.017396-0.014326 0.026606-0.022513 1.636267-1.408069 3.466961-2.620687 5.466502-3.592828 0.075725-0.036839 0.151449-0.074701 0.228197-0.11154 0.576121-0.273223 1.165546-0.525979 1.768273-0.75827 0.158612-0.061398 0.319272-0.118704 0.478907-0.177032 0.558725-0.202615 1.124614-0.393973 1.704828-0.559748 0.005117-0.001023 0.010233-0.002047 0.01535-0.004093 0.278339-0.079818 0.562818-0.13917 0.844228-0.209778 0.394996-0.098237 0.789992-0.194428 1.184989-0.274246 0.283456-0.056282 0.568958-0.103354 0.854461-0.149403 0.445138-0.073678 0.889253-0.134053 1.333368-0.183172 0.229221-0.024559 0.456395-0.052189 0.686638-0.071631 0.710175-0.059352 1.418302-0.099261 2.122337-0.099261 0.337691 0 0.671289 0.027629 1.007957 0.040932 0.276293 0.011256 0.550539 0.013303 0.828878 0.033769 0.401136 0.029676 0.799202 0.079818 1.196245 0.127913 0.191358 0.022513 0.38067 0.033769 0.572028 0.061398 0.069585 0.010233 0.1361 0.024559 0.205685 0.034792 0.232291 0.034792 0.462534 0.075725 0.692778 0.116657 0.463558 0.082888 0.921999 0.176009 1.3743 0.283456 0.109494 0.025583 0.218988 0.047072 0.327458 0.074701 0.582261 0.145309 1.152243 0.316202 1.716084 0.499373 0.098237 0.031722 0.196475 0.063445 0.293689 0.097214 1.90335 0.644683 3.694135 1.50119 5.351891 2.540869 0.014326 0.00921 0.028653 0.01842 0.042979 0.027629 1.089821 0.686638 2.121314 1.452071 3.087315 2.287089 0.083911 0.071631 0.167822 0.143263 0.25071 0.215918 0.424672 0.3776 0.837064 0.76748 1.235131 1.170662 0.12382 0.124843 0.243547 0.254803 0.36532 0.382717 0.317225 0.334621 0.626263 0.677429 0.925069 1.028423 0.155543 0.183172 0.308015 0.36839 0.458441 0.556679 0.26606 0.331551 0.523933 0.670266 0.773619 1.01512 0.130983 0.180102 0.261966 0.35918 0.387833 0.543376 0.294712 0.429789 0.575098 0.86981 0.843204 1.316995 0.099261 0.165776 0.195451 0.334621 0.290619 0.503467 0.283456 0.499373 0.555655 1.004887 0.806365 1.52268 0.031722 0.065492 0.060375 0.13303 0.091074 0.199545 0.276293 0.584308 0.530073 1.178849 0.762363 1.784646 0.00614 0.017396 0.014326 0.034792 0.020466 0.051165 0.251733 0.661056 0.472767 1.336438 0.669242 2.020006 0.002047 0.008186 0.00614 0.016373 0.008186 0.024559l0.061398 0.215918c0.029676 0.106424 0.062422 0.210801 0.090051 0.317225l117.579929 411.527704 79.800487-94.308923c0.070608-0.083911 0.146333-0.161682 0.217964-0.243547 0.190335-0.220011 0.38374-0.436952 0.581238-0.649799 0.134053-0.144286 0.26913-0.285502 0.405229-0.425695 0.164752-0.168846 0.331551-0.335644 0.50142-0.500397 0.164752-0.159636 0.329505-0.319272 0.496304-0.473791 0.138146-0.12689 0.279363-0.25071 0.419556-0.37453 0.198521-0.174985 0.397043-0.350994 0.599657-0.518816 0.081864-0.067538 0.166799-0.132006 0.249687-0.198521 0.817622-0.661056 1.667989-1.264806 2.545986-1.811252 0.098237-0.061398 0.195451-0.125867 0.294712-0.185218 0.228197-0.138146 0.459464-0.267083 0.691755-0.398066 0.157589-0.089028 0.315178-0.178055 0.474814-0.264013 0.200568-0.107447 0.403183-0.208754 0.606821-0.311085 0.202615-0.101307 0.406253-0.201591 0.611937-0.297782 0.173962-0.080841 0.348947-0.159636 0.523933-0.237407 0.245593-0.10847 0.494257-0.212848 0.743944-0.313132 0.144286-0.058328 0.289596-0.115634 0.434905-0.171915 0.291642-0.11154 0.586354-0.216941 0.883113-0.317225 0.11154-0.037862 0.223081-0.076748 0.334621-0.113587 0.337691-0.109494 0.677429-0.210801 1.02126-0.305969 0.078795-0.021489 0.157589-0.046049 0.236384-0.066515 0.376577-0.101307 0.757247-0.193405 1.140986-0.277316 0.050142-0.011256 0.100284-0.023536 0.150426-0.034792 0.405229-0.085958 0.813528-0.162706 1.225921-0.229221 0.031722-0.005117 0.063445-0.01228 0.096191-0.017396 0.412392-0.065492 0.828878-0.12075 1.24741-0.165776 0.032746-0.004093 0.064468-0.00921 0.097214-0.01228 0.382717-0.039909 0.768503-0.068562 1.155313-0.092098 0.068562-0.004093 0.1361-0.01228 0.204661-0.01535 0.25992-0.013303 0.521886-0.01535 0.782829-0.020466 0.188288-0.004093 0.376577-0.01535 0.564865-0.01535 0.008186 0 0.01535 0.001023 0.023536 0.001023l181.208085 0c14.129812 0 25.582655 11.453866 25.582655 25.582655S967.56978 315.668729 953.440991 315.668729z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="ok-circle" unicode="&#4101;"
+                   d="M516.152065-63.152063c-60.696384 0-119.594819 11.894911-175.056991 35.353183-53.55473 22.651906-101.646028 55.073316-142.936433 96.364745-41.291428 41.291428-73.712839 89.381703-96.363721 142.936433-23.458271 55.462173-35.353183 114.359584-35.353183 175.055968s11.894911 119.594819 35.353183 175.056991c22.651906 53.55473 55.073316 101.646028 96.363721 142.936433 41.290405 41.291428 89.381703 73.712839 142.936433 96.363721 55.462173 23.458271 114.359584 35.353183 175.056991 35.353183s119.594819-11.894911 175.056991-35.353183c53.55473-22.651906 101.645005-55.073316 142.936433-96.363721 41.291428-41.290405 73.711815-89.38068 96.363721-142.936433 23.459295-55.462173 35.353183-114.359584 35.353183-175.056991 0-60.696384-11.893888-119.593795-35.353183-175.055968-22.651906-53.55473-55.072293-101.645005-96.363721-142.936433s-89.381703-73.712839-142.936433-96.364745C635.747907-51.25715200000002 576.849472-63.152063 516.152065-63.152063zM516.152065 774.870222c-214.115566 0-388.311956-174.196391-388.311956-388.311956s174.196391-388.311956 388.311956-388.311956 388.311956 174.196391 388.311956 388.311956S730.268654 774.870222 516.152065 774.870222zM434.74908 132.830517L209.49278 358.08784 289.087583 437.68162 434.74908 292.020122 743.218594 600.488613 822.812373 520.89381Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="layim-theme" unicode="&#58907;"
+                   d="M958.830745 538.643056L740.659817 692.753993l-100.539834 0-3.977591-9.332553c-0.37146-0.871857-38.021965-86.8613-124.772748-88.667435-35.691897 0.76441-67.206658 15.500019-93.680613 43.828204-20.658506 22.106484-30.374798 44.584428-30.456662 44.776809l-3.955078 9.393951-100.587929 0L64.518433 538.643056 169.320337 379.756349l89.956801 65.019853-19.016099-368.05254 268.86654 0 4.093225 0 269.866311 0-19.016099 368.051517 89.956801-65.018829L958.830745 538.643056zM730.105437 507.20402l20.655436-399.781172-237.540068 0-4.093225 0L272.587282 107.42284700000005l20.656459 399.781172-115.938546-83.797521-36.3243 55.070246 159.440315 111.641683-19.276019 30.638811L121.066333 508.667348l-14.548344 22.056342 185.921433 131.330094 71.077825 0c5.332449-10.04375 15.433504-26.779923 30.951943-43.580564 32.047904-34.69622 72.256674-53.486168 116.345822-54.411237l0-0.031722c0.203638 0.00307 0.406253 0.01228 0.60989 0.016373 0.203638-0.00307 0.406253-0.013303 0.60989-0.016373l0 0.031722c44.073798 0.925069 84.359316 19.703761 116.566856 54.379515 15.623839 16.821107 25.814945 33.579793 31.188326 43.612287l71.120804 0 185.921433-131.330094-14.548344-22.056342L742.203986 620.7551920000001l-19.276019-30.638811 159.440315-111.641683-36.3243-55.070246L730.105437 507.20402z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="table" unicode="&#58925;"
+                   d="M304.738028 343.684806M729.544153 511.153982M595.52788 637.723655M143.806755 686.614156l0-601.704045L881.172549 84.91011100000003l0 601.704045L143.806755 686.614156zM420.318416 299.80441299999995l0 128.936581 184.341448 0 0-128.936581L420.318416 299.80441299999995zM604.659865 256.825552l0-128.936581L420.318416 127.88897099999997l0 128.936581L604.659865 256.825552zM604.659865 600.656435l0-128.936581L420.318416 471.719854l0 128.936581L604.659865 600.656435zM374.232798 600.656435l0-128.936581L189.89135 471.719854l0 128.936581L374.232798 600.656435zM189.89135 428.740994L374.232798 428.740994l0-128.936581L189.89135 299.80441299999995 189.89135 428.740994zM650.745483 428.740994l184.341448 0 0-128.936581L650.745483 299.80441299999995 650.745483 428.740994zM650.745483 471.719854l0 128.936581 184.341448 0 0-128.936581L650.745483 471.719854zM189.89135 256.825552L374.232798 256.825552l0-128.936581L189.89135 127.88897099999997 189.89135 256.825552zM650.745483 127.88897099999997l0 128.936581 184.341448 0 0-128.936581L650.745483 127.88897099999997z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="right" unicode="&#58882;"
+                   d="M283.648 721.9189759999999L340.873216 780.926976 740.352 383.99795200000005 340.876288-12.925952000000052 283.648 46.07795199999998 619.52 383.99795200000005Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="left" unicode="&#58883;"
+                   d="M740.352 721.9189759999999L683.126784 780.926976 283.648 383.99795200000005 683.123712-12.925952000000052 740.352 46.07795199999998 404.48 383.99795200000005Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="cart-simple" unicode="&#59032;"
+                   d="M235.097303 196.866982C247.384597 160.417152 286.382106 132.37606800000003 324.772759 132.37606800000003L861.658537 132.37606800000003 880.429732 132.37606800000003 885.649214 150.54185399999994 1009.08775 580.154957C1021.388907 622.967661 993.187631 660.786325 949.051586 660.786325L424.585365 660.786325C410.791718 660.786325 399.609756 649.5207379999999 399.609756 635.623932 399.609756 621.727125 410.791718 610.461538 424.585365 610.461538L949.051586 610.461538C959.924 610.461538 964.161052 604.779539 961.106394 594.148171L837.667859 164.53506800000002 861.658537 182.70085500000005 324.772759 182.70085500000005C307.742153 182.70085500000005 287.789837 197.04752900000005 282.395194 213.05054900000005L73.600164 832.433664C69.16437 845.592294 54.980454 852.636656 41.919502 848.167687 28.858551 843.698719 21.86648 829.408727 26.302275 816.250097L235.097303 196.866982ZM399.609756-6.017094000000043C399.609756 49.57012899999995 354.881911 94.63247799999999 299.707317 94.63247799999999 244.532723 94.63247799999999 199.804878 49.57012899999995 199.804878-6.017094000000043 199.804878-61.604318000000035 244.532723-106.66666699999996 299.707317-106.66666699999996 354.881911-106.66666699999996 399.609756-61.604318000000035 399.609756-6.017094000000043ZM249.756098-6.017094000000043C249.756098 21.77651800000001 272.120021 44.30769299999997 299.707317 44.30769299999997 327.294613 44.30769299999997 349.658537 21.77651800000001 349.658537-6.017094000000043 349.658537-33.810704999999984 327.294613-56.34187899999995 299.707317-56.34187899999995 272.120021-56.34187899999995 249.756098-33.810704999999984 249.756098-6.017094000000043ZM924.097562-6.017094000000043C924.097562 49.57012899999995 879.369715 94.63247799999999 824.195121 94.63247799999999 769.020529 94.63247799999999 724.292683 49.57012899999995 724.292683-6.017094000000043 724.292683-61.604318000000035 769.020529-106.66666699999996 824.195121-106.66666699999996 879.369715-106.66666699999996 924.097562-61.604318000000035 924.097562-6.017094000000043ZM774.243902-6.017094000000043C774.243902 21.77651800000001 796.607825 44.30769299999997 824.195121 44.30769299999997 851.782419 44.30769299999997 874.146342 21.77651800000001 874.146342-6.017094000000043 874.146342-33.810704999999984 851.782419-56.34187899999995 824.195121-56.34187899999995 796.607825-56.34187899999995 774.243902-33.810704999999984 774.243902-6.017094000000043Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="face-cry" unicode="&#59036;"
+                   d="M1024 384C1024 666.769792 794.769792 896 512 896 229.230208 896 0 666.769792 0 384 0 101.23020799999995 229.230208-128 512-128 629.410831-128 740.826187-88.33104600000001 830.768465-16.686661999999956 841.557579-8.092490999999995 843.33693 7.620766000000003 834.742758 18.409879000000046 826.148587 29.198990999999978 810.43533 30.978341999999998 799.646219 22.384173000000033 718.470035-42.277495000000044 618.001779-78.04878099999996 512-78.04878099999996 256.817504-78.04878099999996 49.951219 128.81750399999999 49.951219 384 49.951219 639.182496 256.817504 846.048781 512 846.048781 767.182496 846.048781 974.048781 639.182496 974.048781 384 974.048781 296.507166 949.714859 212.66323599999998 904.470807 140.039307 897.177109 128.33175700000004 900.755245 112.92820300000005 912.462793 105.63450699999999 924.170342 98.34080900000004 939.573897 101.91894200000002 946.867595 113.62649199999998 997.013826 194.11920399999997 1024 287.101621 1024 384ZM337.170731 396.487806C371.654852 396.487806 399.609756 424.442709 399.609756 458.926829 399.609756 493.41095 371.654852 521.365854 337.170731 521.365854 302.686611 521.365854 274.731708 493.41095 274.731708 458.926829 274.731708 424.442709 302.686611 396.487806 337.170731 396.487806ZM711.804879 396.487806C746.288998 396.487806 774.243902 424.442709 774.243902 458.926829 774.243902 493.41095 746.288998 521.365854 711.804879 521.365854 677.320757 521.365854 649.365854 493.41095 649.365854 458.926829 649.365854 424.442709 677.320757 396.487806 711.804879 396.487806ZM352.788105 191.21547499999997C396.165222 225.91716899999994 453.151987 246.639629 524.487806 246.639629 595.823622 246.639629 652.810387 225.91716899999994 696.187505 191.21547499999997 722.700531 170.00505399999997 738.882517 148.42907300000002 746.631548 132.931012 752.800254 120.59359800000004 747.799529 105.59142399999996 735.462114 99.42271600000004 723.124702 93.25401 708.122526 98.25473499999998 701.953818 110.59214899999995 701.03616 112.42746499999998 698.492224 116.61747600000001 694.165854 122.38597100000004 686.602473 132.47047699999996 676.927317 142.654852 664.983226 152.21012499999995 630.311565 179.947456 584.273939 196.68840999999998 524.487806 196.68840999999998 464.70167 196.68840999999998 418.664045 179.947456 383.992384 152.21012499999995 372.048292 142.654852 362.373137 132.47047699999996 354.809756 122.38597100000004 350.483386 116.61747600000001 347.93945 112.42746499999998 347.021792 110.59214899999995 340.853084 98.25473499999998 325.850908 93.25401 313.513495 99.42271600000004 301.176081 105.59142399999996 296.175356 120.59359800000004 302.344062 132.931012 310.093092 148.42907300000002 326.275078 170.00505399999997 352.788105 191.21547499999997Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="face-smile" unicode="&#59055;"
+                   d="M1024 384C1024 666.769792 794.769792 896 512 896 229.230208 896 0 666.769792 0 384 0 101.23020799999995 229.230208-128 512-128 629.410831-128 740.826187-88.33104600000001 830.768465-16.686661999999956 841.557579-8.092490999999995 843.33693 7.620766000000003 834.742758 18.409879000000046 826.148587 29.198990999999978 810.43533 30.978341999999998 799.646219 22.384173000000033 718.470035-42.277495000000044 618.001779-78.04878099999996 512-78.04878099999996 256.817504-78.04878099999996 49.951219 128.81750399999999 49.951219 384 49.951219 639.182496 256.817504 846.048781 512 846.048781 767.182496 846.048781 974.048781 639.182496 974.048781 384 974.048781 296.507166 949.714859 212.66323599999998 904.470807 140.039307 897.177109 128.33175700000004 900.755245 112.92820300000005 912.462793 105.63450699999999 924.170342 98.34080900000004 939.573897 101.91894200000002 946.867595 113.62649199999998 997.013826 194.11920399999997 1024 287.101621 1024 384ZM337.170731 396.487806C371.654852 396.487806 399.609756 424.442709 399.609756 458.926829 399.609756 493.41095 371.654852 521.365854 337.170731 521.365854 302.686611 521.365854 274.731708 493.41095 274.731708 458.926829 274.731708 424.442709 302.686611 396.487806 337.170731 396.487806ZM711.804879 396.487806C746.288998 396.487806 774.243902 424.442709 774.243902 458.926829 774.243902 493.41095 746.288998 521.365854 711.804879 521.365854 677.320757 521.365854 649.365854 493.41095 649.365854 458.926829 649.365854 424.442709 677.320757 396.487806 711.804879 396.487806ZM352.788105 127.22903299999996C396.165222 92.52733899999998 453.151987 71.80487900000003 524.487806 71.80487900000003 595.823622 71.80487900000003 652.810387 92.52733899999998 696.187505 127.22903299999996 722.700531 148.43945399999996 738.882517 170.01543500000002 746.631548 185.51349500000003 752.800254 197.850908 747.799529 212.85308399999997 735.462114 219.021792 723.124702 225.19049800000005 708.122526 220.18977299999995 701.953818 207.85235799999998 701.03616 206.01704299999994 698.492224 201.82703100000003 694.165854 196.058537 686.602473 185.97402899999997 676.927317 175.78965500000004 664.983226 166.23438299999998 630.311565 138.49705200000005 584.273939 121.75609799999995 524.487806 121.75609799999995 464.70167 121.75609799999995 418.664045 138.49705200000005 383.992384 166.23438299999998 372.048292 175.78965500000004 362.373137 185.97402899999997 354.809756 196.058537 350.483386 201.82703100000003 347.93945 206.01704299999994 347.021792 207.85235799999998 340.853084 220.18977299999995 325.850908 225.19049800000005 313.513495 219.021792 301.176081 212.85308399999997 296.175356 197.850908 302.344062 185.51349500000003 310.093092 170.01543500000002 326.275078 148.43945399999996 352.788105 127.22903299999996Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="survey" unicode="&#59058;"
+                   d="M722.355804 849.454545C761.006291 849.454545 792.380951 818.166023 792.380951 779.627344L792.380951 437.500928 799.081094 453.813218 401.874746 51.22138 418.539682 58.181818 138.070006 58.181818C99.387643 58.181818 68.063492 89.328555 68.063492 127.771428L68.063492 872.727273 44.698413 849.454545 722.355804 849.454545ZM21.333333 896 21.333333 872.727273 21.333333 127.771428C21.333333 63.604277 73.59726 11.636363 138.070006 11.636363L418.539682 11.636363 428.337293 11.636363 435.204619 18.596802 832.410967 421.18864 839.11111 427.979625 839.11111 437.500928 839.11111 779.627344C839.11111 843.859757 786.827324 896 722.355804 896L44.698413 896 21.333333 896ZM775.859347 307.365395 759.337741 290.90909 775.859347 274.452787 869.319663 181.361879 885.841269 164.905574 902.362876 181.361879 972.458114 251.18006 988.979721 267.636363 972.458114 284.092668 878.997796 377.183575 862.47619 393.639878 845.954583 377.183575 775.859347 307.365395ZM845.954583 344.27097 939.414901 251.18006 939.414901 284.092668 869.319663 214.274485 902.362876 214.274485 808.902558 307.365395 808.902558 274.452787 878.997796 344.27097 845.954583 344.27097ZM518.843473 51.365395 513.841133 46.382827 512.453734 39.473248 489.088655-76.890387 482.215251-111.121568 516.58227-104.275332 633.407665-81.002605 640.344663-79.620689 645.347004-74.638121 902.362876 181.361879 918.884482 197.818182 902.362876 214.274485 808.902558 307.365395 792.380951 323.821698 775.859347 307.365395 518.843473 51.365395ZM775.859347 274.452787 869.319663 181.361879 869.319663 214.274485 612.303791-41.725515 624.243127-35.361033 507.41773-58.633758 534.911345-86.018703 558.276425 30.344934 551.886686 18.452787 808.902558 274.452787 775.859347 274.452787ZM426.576706 298.269073C444.201086 298.269073 458.488469 284.053815 458.488469 266.500753L458.488469 258.086116C458.488469 240.540958 444.323959 226.317797 426.576706 226.317797L426.576706 226.317797C408.952326 226.317797 394.664943 240.533054 394.664943 258.086116L394.664943 266.500753C394.664943 284.045911 408.829453 298.269073 426.576706 298.269073L426.576706 298.269073ZM278.349205 552.435127C278.349205 552.435127 280.851125 530.485568 305.477133 530.485568 330.103138 530.485568 331.559155 552.435127 331.559155 552.435127 329.927383 623.508937 362.988497 657.25782 430.67155 653.905282 475.722639 648.839223 499.06407 623.508937 500.624896 577.839917 497.503245 557.501184 480.405116 531.202385 449.969026 499.092521 409.671358 458.489557 389.522524 422.133143 389.522524 390.023279L389.522524 357.093903C389.522524 357.093903 392.614705 337.454532 414.885933 337.454532 437.157161 337.454532 440.249342 357.093903 440.249342 357.093903L440.249342 379.965664C440.249342 406.785969 459.546816 439.044836 498.21271 476.369762 538.652271 513.471183 558.730159 547.369069 558.730159 577.839917 555.395669 662.323878 511.195938 706.353877 425.776235 709.780917 327.515198 711.419936 278.349205 658.971339 278.349205 552.435127Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="tree" unicode="&#58926;"
+                   d="M962.691679 258.53447400000005c-8.721639 54.163597-34.298154 97.584526-73.089645 133.8638-44.721551 41.825594-99.282191 65.724911-156.512636 84.432994-26.935466 8.80555-54.079686 16.971533-81.129762 25.427112 41.188074 7.485485 81.495082 10.991332 121.872698 12.269441 39.906895 1.26276 79.885422 0.276293 120.633475 0.276293-30.644951 44.233434-74.588789 71.110571-127.260405 84.384899-53.004191 13.357216-103.742782 9.715269-152.261822-32.081673 18.715247 66.336848 12.464893 120.18936-38.810934 160.830989-32.450063 25.719778-77.127611 31.000038-111.319341 14.916734 58.583257-31.127951 82.051761-84.265172 94.304829-145.102772-44.638663 69.056795-110.067838 96.432283-187.710173 86.487793-56.123228-7.187703-110.723777-26.270317-166.003801-40.048111 15.677051-14.358009 31.136138-24.116257 47.932686-27.839045 51.427276-11.399631 103.405091-20.301372 155.098427-30.524201 37.036521-7.323802 75.163887-12.144598 104.448864-40.879036-78.096682 23.458271-155.928329 30.034037-235.541551 9.092076C186.718589 530.20385 104.838743 479.821369 81.996502 429.437865c46.955428 23.955598 95.807043 18.776645 144.606469 17.139356 37.737486-1.266853 76.089979-3.461845 113.238041 1.594311 52.683896 7.170307 104.513332 20.624736 159.209048 31.909757-91.88164-62.077847-186.516997-122.342396-159.194722-259.889075 58.852386 100.205213 163.392324 150.107763 229.951229 238.105956-16.239869-91.498924 6.980995-169.376619 66.432015-237.83785 41.815361-48.152696 89.979314-92.010577 110.706381-156.013263 12.758582 141.877311-25.823132 270.789333-97.911984 396.334677C755.996107 391.809873 858.199837 325.909977 962.691679 258.53447400000005zM513.476631 320.10169099999996c-27.767414-14.065344-39.008432-35.954887-42.252313-64.998363-6.078439-54.437843-15.162328-108.532879-21.799492-162.916487-3.90903-32.026414-5.519714-64.333214-8.16496-96.53052 30.078039 0 55.507198 0 79.961146 0 9.912767 78.200036 19.732413 154.247037 28.913517 230.369761 0.883113 7.322779-0.756223 15.746636-3.705392 22.591531C536.246217 272.25086999999996 524.967336 295.41135899999995 513.476631 320.10169099999996z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="upload-circle" unicode="&#58927;"
+                   d="M512-128c282.768 0 512 229.216 512 512C1024 666.768 794.768 896 512 896 229.216 896 0 666.768 0 384 0 101.21600000000001 229.216-128 512-128zM512 848c256.272 0 464-207.744 464-464 0-256.272-207.728-464-464-464S48 127.72799999999995 48 384C48 640.256 255.728 848 512 848zM377.728 534.544L480 534.544l0-478c0-17.664 14.336-32 32-32s32 14.336 32 32L544 534.544l102.272 0c17.616 0 23.424 11.568 12.944 25.68l-128.128 172.624c-10.496 14.128-27.664 14.128-38.16 0L364.8 560.24C354.32 546.1120000000001 360.128 534.544 377.728 534.544z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="add-circle" unicode="&#58911;"
+                   d="M675.04 412.736l-127.04 0 0 127.264c0 20.064-16.288 36.32-36.32 36.32-20.064 0-36.32-16.192-36.32-36.32l0-127.232-127.072 0c-20.064 0-36.352-16.32-36.352-36.352 0-20.064 16.224-36.352 36.352-36.352l127.072 0 0-127.232c0-20 16.256-36.384 36.32-36.384 20.032 0 36.32 16.256 36.32 36.384l0 127.136 127.04 0c19.968 0 36.352 16.256 36.352 36.384C711.36 396.448 695.136 412.736 675.04 412.736L675.04 412.736zM511.328 830.56c-250.24 0-453.952-203.616-453.952-453.952 0-250.336 203.712-453.952 453.952-453.952 250.336 0 453.984 203.584 453.984 453.952C965.312 626.944 761.696 830.56 511.328 830.56L511.328 830.56zM511.328-20.576000000000022c-219.04 0-397.184 178.176-397.184 397.152 0 219.104 178.144 397.216 397.184 397.216s397.216-178.112 397.216-397.216C908.576 157.63199999999995 730.368-20.576000000000022 511.328-20.576000000000022L511.328-20.576000000000022zM511.328-20.576000000000022"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="download-circle" unicode="&#58881;"
+                   d="M510.771521 828.211081c-244.998947 0-443.597097-198.60429-443.597097-443.590957s198.59815-443.591981 443.597097-443.591981c244.986667 0 443.583794 198.60429 443.583794 443.591981S755.758188 828.211081 510.771521 828.211081zM510.771521-30.044013999999947c-229.010811 0-414.664138 185.65435-414.664138 414.664138 0 229.010811 185.653327 414.657998 414.664138 414.657998 228.996484 0 414.652881-185.647187 414.652881-414.657998C925.424402 155.60931300000004 739.768005-30.044013999999947 510.771521-30.044013999999947zM662.749888 352.39518799999996L537.719266 245.82501100000002l0 324.388065c0 14.887059-12.06478 26.953885-26.947745 26.953885-14.894222 0-26.961048-12.066827-26.961048-26.953885l0-325.410348L357.936647 352.39518799999996c-10.56359 10.599406-27.693736 10.599406-38.267559 0-10.56359-10.596336-10.56359-27.777647 0-38.375006l170.181961-161.220868c5.629207-5.652743 13.111622-8.060583 20.49887-7.680936 7.373944-0.379647 14.859429 2.02717 20.488637 7.680936l170.181961 161.220868c10.562567 10.597359 10.562567 27.77867 0 38.375006C690.443623 362.99561700000004 673.313477 362.99561700000004 662.749888 352.39518799999996z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="templeate-1" unicode="&#58928;"
+                   d="M320 384L106.666667 384c-35.349333 0-64-28.650667-64-64l0-213.333333c0-35.349333 28.650667-64 64-64l213.333333 0c35.349333 0 64 28.650667 64 64L384 320C384 355.349333 355.349333 384 320 384zM256 341.33333300000004l0-256L170.666667 85.33333300000004 170.666667 341.33333300000004 256 341.33333300000004zM85.333333 106.66666699999996L85.333333 320c0 11.754667 9.578667 21.333333 21.333333 21.333333l42.666667 0 0-256L106.666667 85.33333300000004C94.912 85.33333300000004 85.333333 94.91200000000003 85.333333 106.66666699999996zM341.333333 106.66666699999996c0-11.754667-9.578667-21.333333-21.333333-21.333333l-42.666667 0L277.333333 341.33333300000004l42.666667 0c11.754667 0 21.333333-9.578667 21.333333-21.333333L341.333333 106.66666699999996zM576 554.666667L234.666667 554.666667c-47.061333 0-85.333333-38.272-85.333333-85.333333l0-42.666667 42.666667 0 0 42.666667c0 23.530667 19.136 42.666667 42.666667 42.666667l42.666667 0 0-96 21.333333 0L298.666667 512l213.333333 0 0-426.666667-85.333333 0-21.333333-42.666667 170.666667 0c47.061333 0 85.333333 38.272 85.333333 85.333333L661.333333 469.333333C661.333333 516.394667 623.061333 554.666667 576 554.666667zM618.666667 128c0-23.530667-19.136-42.666667-42.666667-42.666667l-42.666667 0L533.333333 512l42.666667 0c23.530667 0 42.666667-19.136 42.666667-42.666667L618.666667 128zM853.333333 42.66666699999996c47.061333 0 85.333333 38.272 85.333333 85.333333L938.666667 640c0 47.061333-38.272 85.333333-85.333333 85.333333L341.333333 725.333333c-47.061333 0-85.333333-38.272-85.333333-85.333333l0-42.666667 42.666667 0 0 42.666667c0 23.530667 19.136 42.666667 42.666667 42.666667l85.333333 0 0-85.333333 21.333333 0 0 85.333333 298.666667 0 0-597.333333-42.666667 0-21.333333-42.666667L853.333333 42.66666699999996zM896 128c0-23.530667-19.136-42.666667-42.666667-42.666667l-85.333333 0L768 682.666667l85.333333 0c23.530667 0 42.666667-19.136 42.666667-42.666667L896 128z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="util" unicode="&#58929;"
+                   d="M282.127566 639.0826059999999c-13.120832-13.221116-30.625508-20.50808-49.278333-20.50808-18.618033 0-36.157501 7.286963-49.311079 20.50808l-32.885991 33.019021 98.623181 99.027387 32.885991-33.019021c13.186324-13.221116 20.473287-30.829146 20.473287-49.548486C302.599829 669.8769589999999 295.347658 652.26893 282.127566 639.0826059999999L282.127566 639.0826059999999zM249.308089 705.0899489999999l-0.032746 0-32.884968-32.987299c4.418636-4.417613 10.252505-6.845918 16.458857-6.845918 6.206352 0 12.041244 2.428306 16.426111 6.813173 4.418636 4.452405 6.845918 10.288321 6.845918 16.493649C256.121262 694.802652 253.693979 700.671313 249.308089 705.0899489999999L249.308089 705.0899489999999zM396.703067 496.343671L249.578242 638.778684l32.278147 33.626865 147.157571-142.468782L396.703067 496.343671 396.703067 496.343671zM751.45979 133.92852400000004L618.131179 274.071332l32.884968 32.985252 133.330658-140.141784L751.45979 133.92852400000004 751.45979 133.92852400000004zM850.184279 67.95597399999997c-22.700001-22.766516-52.481282-34.168194-82.264609-34.168194-29.714765 0-59.395762 11.333116-81.994456 34.033118L538.194592 222.398462l32.884968 33.021068L718.811206 100.806149c27.117614-27.183106 71.269183-27.116591 98.488105 0.169869 27.186176 27.287483 27.117614 71.773673-0.135076 99.196233l-147.426701 154.273642 32.851199 33.021068 147.461493-154.308435C895.447159 187.557956 895.514697 113.421468 850.184279 67.95597399999997L850.184279 67.95597399999997zM801.716404 468.380806c-30.726815-30.860868-71.605851-47.861054-115.082038-47.861054-43.442418 0-84.321454 16.999163-115.082038 47.861054-30.760584 30.861892-47.692209 71.877027-47.692209 115.521037s16.931624 84.691891 47.692209 115.554806l42.497906 42.666752 32.885991-32.986275-42.497906-42.667775c-21.99085-22.090111-34.099632-51.367925-34.065863-82.566484 0-31.163767 12.108782-60.441581 34.065863-82.499969 21.956058-22.058388 51.16531-34.20094 82.196047-34.20094 31.064506 0 60.239989 12.142551 82.196047 34.20094l42.49893 42.665729 32.884968-33.019021L801.716404 468.380806 801.716404 468.380806zM844.214311 511.049604l-49.311079 49.51267-16.45988-16.493649c-17.538445-17.638729-40.879036-27.352975-65.73719-27.352975l-0.032746 0c-24.824385 0-48.198745 9.713222-65.73719 27.352975-17.539468 17.607006-27.252691 41.082674-27.252691 66.007343 0 24.925692 9.679453 48.400337 27.252691 66.040089l16.458857 16.495696-49.344848 49.51267 32.885991 33.021068 82.196047-82.533738-49.311079-49.482995c-8.769734-8.835226-13.626345-20.571525-13.626345-33.051767 0-12.446473 4.856611-24.183795 13.626345-32.987299 8.768711-8.835226 20.439518-13.69286 32.884968-13.69286 12.411681 0 24.082488 4.857635 32.852222 13.69286l49.344848 49.514717 82.196047-82.534761L844.214311 511.049604 844.214311 511.049604zM233.591129 129.139451l0 46.681182 46.512337 0 0-46.681182L233.591129 129.139451 233.591129 129.139451zM538.160823 356.538555l-92.247984 91.572602 32.717146 33.18889 92.214215-91.539856L538.160823 356.538555 538.160823 356.538555zM304.2187 101.04355599999997l173.634596 239.842507 37.641295-27.454282L338.318332 69.23715300000003c-21.923312-22.057365-51.132564-34.20094-82.19707-34.20094-31.028691 0-60.237943 12.143575-82.196047 34.168194-21.958104 22.057365-34.065863 51.335179-34.065863 82.533738 0 31.198559 12.107759 60.476373 34.065863 82.533738l2.765997 2.360767L417.243893 412.054963l27.353998-37.742603L205.596542 200.00340600000004c-12.411681-13.053294-19.224854-30.119995-19.224854-48.26526 0-18.71934 7.252171-36.291554 20.438495-49.513694C232.747925 76.15265599999998 277.775444 75.71263499999998 304.2187 101.04355599999997L304.2187 101.04355599999997z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="face-surprised" unicode="&#58980;"
+                   d="M485.656116-128C221.592397-128 6.762016 86.81718000000001 6.762016 350.87649799999997s214.830381 478.867697 478.8941 478.867697c264.041716 0 478.854495-214.812779 478.854495-478.867697S749.697832-128 485.656116-128zM485.656116 798.834741c-247.024795 0-447.975846-200.959852-447.975846-447.962644 0-247.002792 200.951051-447.962644 447.975846-447.962644 247.002792 0 447.953843 200.959852 447.953843 447.962644C933.609959 597.8748889999999 732.658908 798.834741 485.656116 798.834741zM352.033458 447.380528c0-30.469398-24.682677-55.147675-55.143274-55.147675-30.451796 0-55.143274 24.678276-55.143274 55.147675 0 30.460597 24.691478 55.138874 55.143274 55.138874C327.350781 502.519402 352.033458 477.845526 352.033458 447.380528zM674.417647 502.519402c-30.460597 0-55.156476-24.678276-55.156476-55.138874 0-30.469398 24.695879-55.147675 55.156476-55.147675 30.451796 0 55.143274 24.678276 55.143274 55.147675C729.560922 477.845526 704.869444 502.519402 674.417647 502.519402zM562.005634 165.30976499999997c0-59.733046-34.192262-108.165484-76.349518-108.165484-42.166057 0-76.36272 48.432438-76.36272 108.165484 0 59.724245 34.196663 108.152282 76.36272 108.152282C527.813371 273.45764699999995 562.005634 225.03400999999997 562.005634 165.30976499999997zM835.631745 793.712503c0 0 12.871605 56.819883 41.959231 85.925112 29.083226 29.096427 69.915916 15.124685 78.492585-8.801097 9.461179-26.385689-2.033053-50.069442-29.092027-56.164202C899.404495 808.463141 874.880237 826.192952 835.631745 793.712503zM916.698651 757.570797c0 0 35.767659 20.576965 64.877288 19.393218 29.136032-1.174946 41.431165-29.144833 33.109728-45.110024-9.192746-17.588993-27.054573-22.966463-43.217788-11.797871C954.979023 731.44034 952.453108 752.721393 916.698651 757.570797z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="edit" unicode="&#58946;"
+                   d="M769.089 516.251l-125.896 125.89 62.974 62.947c20.866 20.838 54.652 20.838 75.517 0l50.353-50.351c20.865-20.865 20.865-54.703 0-75.567L769.089 516.251zM403.349 150.52700000000004L277.453 276.418 619.706 615.982 745.601 490.09ZM176.314 47.283000000000015L252.912 251.87699999999995 377.753 127.01199999999994Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="speaker" unicode="&#58949;"
+                   d="M587.182306 754.7203c-6.003737 2.705622-13.043061 1.642406-17.984606-2.721994l-259.223926-229.293243-148.246369 0c-9.253758 0-16.752546-7.498788-16.752546-16.756639l0-267.886213c0-9.249665 7.498788-16.756639 16.752546-16.756639l144.050814 0c9.253758 0 16.752546 7.506974 16.752546 16.756639L322.530764 490.391099c1.774413 0.704035 3.433192 1.719154 4.892427 3.010567l236.127905 208.861912 0-653.332912-160.751171 137.64287c-2.12643 1.824555-90.300632 78.69941-93.927229 76.162634-4.427846-3.097548-15.768125-17.59882-18.419512-22.512736-0.953721-1.768273-2.196015-1.334391 15.413038-16.379039 25.674753-21.936615 73.780377-61.548798 75.144444-62.717414l10.007935-8.570189 178.388876-152.761196c3.093455-2.653433 6.978948-4.028757 10.900258-4.028757 2.369977 0 4.756327 0.503467 7.003508 1.534959 5.939269 2.738367 9.749038 8.677637 9.749038 15.217586L597.060281 739.446431C597.060281 746.034477 593.190137 752.013655 587.182306 754.7203L587.182306 754.7203zM290.453185 254.814756l-115.040083 0L175.413102 489.195877l115.03906 0 0-234.381122L290.453185 254.814756zM747.742119 375.98444300000006c0-51.55212-34.83232-96.658434-84.702124-109.693308-1.415232-0.375553-2.846838-0.551562-4.245697-0.551562-7.438413 0-14.234189 4.992711-16.200984 12.523221-2.338255 8.949836 3.021823 18.104333 11.967566 20.442588 35.136242 9.18929 59.672054 40.96397 59.672054 77.279061 0 36.307927-24.535813 68.090794-59.672054 77.271898-8.945743 2.346441-14.305821 11.492752-11.967566 20.450774 2.342348 8.953929 11.499915 14.305821 20.446681 11.967566C712.909799 472.643899 747.742119 427.530422 747.742119 375.98444300000006L747.742119 375.98444300000006zM864.950588 375.793084c0-88.87619-48.554856-170.44495-126.718053-212.883505-2.537799-1.375324-5.276167-2.02717-7.982812-2.02717-5.939269 0-11.69946 3.166109-14.733563 8.762571-4.417613 8.134261-1.39886 18.303878 6.727215 22.720468 67.350944 36.566824 109.198028 106.851587 109.198028 183.427636 0 76.844156-42.055838 147.272181-109.741403 183.78784-8.154727 4.396123-11.192923 14.557554-6.795776 22.700001 4.38896 8.142447 14.558577 11.184737 22.701025 6.795776C816.151162 546.697499 864.950588 464.976266 864.950588 375.793084L864.950588 375.793084z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="down" unicode="&#58906;"
+                   d="M888.306 619.94c15.615 15.617 40.93 15.617 56.545 0v0c15.617-15.615 15.617-40.93 0-56.545l-405.733-405.734c-15.615-15.617-40.928-15.617-56.545 0v0c-15.615 15.615-15.615 40.93 0 56.545l405.733 405.734zM538.619 214.20600000000002c15.617-15.615 15.617-40.93 0-56.545v0c-15.615-15.617-40.928-15.617-56.545 0l-405.734 405.734c-15.615 15.615-15.615 40.93 0 56.545v0c15.617 15.617 40.93 15.617 56.547 0l405.732-405.734zM538.619 214.20600000000002z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="file" unicode="&#58913;"
+                   d="M887.443911 598.6304l0-44.578133 0-45.511111 0-477.866667c0-37.705956-30.560711-68.266667-68.266667-68.266667l-614.4 0c-37.705956 0-68.266667 30.560711-68.266667 68.266667l0 705.422222c0 37.6832 30.560711 68.266667 68.266667 68.266667l386.844444 0 45.511111 0 38.024533 0c7.805156 2.594133 16.566044 1.2288 22.778311-5.006222l183.136711-183.159467C885.919289 611.373511 887.876267 604.9564439999999 887.443911 598.6304zM659.888356 531.296711c-12.583822 0-22.755556 10.171733-22.755556 22.755556l0 204.8-45.511111 0-364.088889 0c-25.122133 0-45.511111-20.388978-45.511111-45.511111l0-659.911111c0-25.122133 20.388978-45.511111 45.511111-45.511111l568.888889 0c25.122133 0 45.511111 20.388978 45.511111 45.511111l0 455.111111 0 22.755556L659.888356 531.296711zM682.643911 750.273422l0-173.4656 159.288889 0 0 14.176711L682.643911 750.273422z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="layouts" unicode="&#58930;"
+                   d="M917.213-103.239h-810.426c-23.151 0-41.918 18.766-41.918 41.917l0 698.644c0 23.148 18.767 41.917 41.918 41.917h810.426c23.149 0 41.918-18.769 41.918-41.917v-698.643c0-23.151-18.769-41.918-41.918-41.918zM316.38-61.321h600.833v363.294h-600.833v-363.294zM106.787-61.321h167.674v363.294h-167.674v-363.294zM148.705 637.322c-23.151 0-41.918-18.769-41.918-41.92s18.767-41.92 41.918-41.92 41.92 18.768 41.92 41.92-18.769 41.92-41.92 41.92zM274.461 637.322c-23.151 0-41.918-18.769-41.918-41.92s18.767-41.92 41.918-41.92c23.151 0 41.92 18.768 41.92 41.92s-18.77 41.92-41.92 41.92zM400.216 637.322c-23.15 0-41.918-18.769-41.918-41.92s18.769-41.92 41.918-41.92c23.152 0 41.92 18.768 41.92 41.92s-18.768 41.92-41.92 41.92zM875.293 511.566h-768.506v-167.675h810.426l0 167.675h-41.921z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="rate-half" unicode="&#59081;"
+                   d="M1012.064 504l-359.552 31.008-140.512 331.04-140.512-331.552-359.552-30.496 273.024-236.544-82.016-351.552 309.056 186.528 309.056-186.528-81.504 351.552 272.544 236.544zM512 195.96799999999996l0 465.056 85.504-202.016 219.04-19.008-166.016-144.032 50.016-214.016-188.512 114.016z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="add-circle-fine" unicode="&#58888;"
+                   d="M509.989715-60.972421000000054c-246.734474 0-446.75195 200.023616-446.75195 446.75809 0 246.732427 200.017476 446.75195 446.75195 446.75195 246.733451 0 446.757067-200.019523 446.757067-446.75195C956.746782 139.051195 756.723166-60.972421000000054 509.989715-60.972421000000054L509.989715-60.972421000000054zM509.989715 812.433746c-235.633648 0-426.650123-191.014428-426.650123-426.648077 0-235.639788 191.016475-426.654216 426.650123-426.654216 235.638765 0 426.654216 191.014428 426.654216 426.654216C936.643931 621.419318 745.62848 812.433746 509.989715 812.433746L509.989715 812.433746zM527.863804 153.46957999999995l-35.741016 0L492.122789 367.909533 277.678742 367.909533 277.678742 403.653619l214.443024 0L492.121765 618.0956189999999l35.741016 0L527.862781 403.653619l214.442 0 0-35.744086L527.863804 367.909533 527.863804 153.46957999999995 527.863804 153.46957999999995zM527.863804 153.46957999999995"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="prev-circle" unicode="&#58931;"
+                   d="M508.638018 827.97307c-246.403458 0-446.845649-200.463469-446.845649-446.845649 0-246.382179 200.442191-446.845649 446.845649-446.845649 246.382179 0 446.845649 200.463469 446.845649 446.845649C955.483667 627.5096 755.041476 827.97307 508.638018 827.97307zM508.638018-23.16149900000005c-222.933422 0-404.28892 181.355498-404.28892 404.28892 0 222.933422 181.355498 404.28892 404.28892 404.28892 222.912144 0 404.28892-181.355498 404.28892-404.28892C912.926939 158.19399899999996 731.57144-23.16149900000005 508.638018-23.16149900000005zM252.87208 485.1999c8.639016 26.129831-32.470784 37.215859-41.067243 11.32009-27.810822-83.730363-22.321004-168.545923 14.086277-248.573851 11.362646-24.938243 48.025268-3.298146 36.747735 21.491148C230.976644 339.081373 228.806251 412.853462 252.87208 485.1999zM599.262572 247.73335499999996l-127.627629 133.394065 127.47868 133.223838c9.043305 9.064583 9.022026 23.789211-0.021278 32.832516-8.809243 8.830521-24.087108 8.766686-32.832516 0l-148.310199-148.310199c-4.617405-4.638683-6.979303-11.064749-6.553736-17.746156-0.404289-6.702685 1.936331-13.107472 6.575015-17.788712l148.310199-148.28892c4.383343-4.383343 10.213615-6.787798 16.405619-6.787798 6.170726 0 12.000997 2.404455 16.405619 6.787798C608.156928 224.114371 608.156928 238.83899899999994 599.262572 247.73335499999996z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="read" unicode="&#59141;"
+                   d="M335.282306 712.495464C399.587328 713.451107 442.778899 696.882717 470.183494 669.3706540000001 479.127332 660.39174 485.691302 650.857363 490.241971 641.442689 492.795622 636.159553 494.049041 632.438701 494.358795 631.0740940000001L493.723712 636.7409230000001 493.723706 196.90019600000005C493.723706 199.018106 495.816045 203.920655 503.591595 207.36436700000002 511.039185 210.66283299999998 515.68422 209.16527399999995 517.176538 207.906613L500.671543 188.33763 521.297207 203.50146800000005C514.140179 213.23636899999997 499.631258 225.71450900000002 476.134074 237.35914000000002 439.577969 255.475456 390.86048 266.10507900000005 328.491925 266.10508200000004 265.860796 266.10508200000004 219.424582 255.71817999999996 186.827162 237.741581 164.977332 225.69198700000004 152.538132 212.28117299999997 147.220271 201.30886999999996L170.257196 190.14374199999997 151.035786 207.05224299999998C152.884078 209.15336100000002 158.307299 211.80336599999998 167.849005 208.050434 177.092077 204.41496099999995 179.2 199.20011699999998 179.2 196.66445199999998L179.2 497.049743 179.2 636.7409230000001 175.817447 624.023021C177.078908 626.226721 180.088681 630.807811 184.828724 636.965629 192.95423 647.521524 202.792594 658.127492 214.297641 668.007961 247.526453 696.544681 287.381649 713.209056 334.514421 712.495571L335.282306 712.495464ZM335.289387 763.689705C274.661039 764.607483 223.081402 743.04085 180.940156 706.850184 156.32698 685.712527 139.975514 664.470237 131.382553 649.4588249999999L128 643.549699 128 636.7409230000001 128 497.049743 128 196.66445199999998C128 159.26104999999995 164.542545 144.88818300000003 189.478606 173.23524099999997L191.776657 175.84764199999995 193.294121 178.978613C194.07832 180.59664399999997 199.156367 186.07133399999998 211.552092 192.907243 236.030601 206.40648099999999 274.024879 214.905082 328.491925 214.905082 383.221547 214.905079 424.163878 205.97190999999998 453.399258 191.483569 469.376966 183.56540600000005 477.614626 176.48075300000005 480.045882 173.17379000000005L481.844905 170.72677999999996 484.166551 168.768644C511.279708 145.90070000000003 544.923706 160.801293 544.923706 196.90019600000005L544.923712 636.740922 544.288627 642.407751C540.427211 659.419023 529.175531 682.697124 506.45814 705.503602 468.987716 743.1209699999999 412.352271 764.846461 334.521502 763.689812L335.289387 763.689705ZM0 506.026694L0 27.856867999999963C0-8.875636999999983 34.793167-23.40043300000002 61.4635 1.2485080000000153L63.46242 3.315859000000046C65.301149 5.444836000000009 69.655573 9.862312999999972 76.498228 15.820363000000043 88.306297 26.101906999999983 102.566352 36.46294 119.251411 46.17438500000003 167.295691 74.13829099999998 224.90855 90.95018200000004 292.337329 90.95018200000004 358.378978 90.95018000000005 409.459345 71.66956600000003 448.125308 39.64774 461.506042 28.56627400000002 472.380655 16.734758000000056 480.912593 4.997000999999955 485.832384-1.7713730000000396 488.762874-6.741985999999997 489.872527-9.02252199999998 496.058545-21.73590200000001 511.379537-27.027375000000006 524.092917-20.84135500000002 536.806298-14.655337000000031 542.097771 0.6656550000000152 535.91175 13.379036000000042 527.471002 30.726293000000055 509.777717 55.06771800000001 480.782336 79.08069999999998 433.134118 118.54132300000003 370.586889 142.15017999999998 292.337329 142.15018199999997 215.474895 142.15018499999996 149.074727 122.77408400000002 93.495781 90.424668 59.761154 70.78961500000003 36.872315 50.859801999999945 24.713677 36.78188399999999L44.088049 20.048869999999965 26.712598 38.84923500000002C28.162783 40.189508000000046 32.877261 41.946117999999956 40.792576 38.64178100000004 49.035365 35.200736000000006 51.2 30.12989200000004 51.2 27.856867999999963L51.2 506.026694C51.2 520.165184 39.73849 531.626694 25.6 531.626694 11.46151 531.626694 0 520.165184 0 506.026694L0 506.026694ZM696.80221 763.689812C618.971441 764.846461 562.335996 743.1209699999999 524.86557 705.503602 502.148181 682.697124 490.896501 659.419023 487.035083 642.407751L486.4 636.740922 486.400004 196.90019600000005C486.400006 160.801293 520.044004 145.90070000000003 547.157161 168.768644L549.478807 170.72677999999996 551.27783 173.17379000000005C553.709086 176.48075300000005 561.946746 183.56540600000005 577.924452 191.483569 607.159834 205.97190999999998 648.102165 214.905079 702.831787 214.905082 757.298833 214.905082 795.293111 206.40648099999999 819.77162 192.907243 832.167345 186.07133399999998 837.245391 180.59664399999997 838.029591 178.978613L839.547055 175.84764199999995 841.845105 173.23524099999997C866.781167 144.88818300000003 903.323712 159.26104999999995 903.323712 196.66445199999998L903.323712 497.049743 903.323712 636.7409230000001 903.323712 643.549699 899.941158 649.4588249999999C891.348196 664.470237 874.996732 685.712527 850.383556 706.850184 808.24231 743.04085 756.662673 764.607483 696.034325 763.689705L696.80221 763.689812ZM696.809291 712.495571C743.942063 713.209056 783.797257 696.544681 817.026071 668.007961 828.531119 658.127492 838.369481 647.521524 846.494989 636.965629 851.235031 630.807811 854.244804 626.226721 855.506263 624.023021L852.123712 636.7409230000001 852.123712 497.049743 852.123712 196.66445199999998C852.123712 199.20011699999998 854.231635 204.41496099999995 863.474707 208.050434 873.016412 211.80336599999998 878.439633 209.15336100000002 880.287925 207.05224299999998L861.066515 190.14374199999997 884.103441 201.30886999999996C878.785579 212.28117299999997 866.346381 225.69198700000004 844.49655 237.741581 811.89913 255.71817999999996 765.462916 266.10508200000004 702.831785 266.10508200000004 640.463232 266.10507900000005 591.745741 255.475456 555.189638 237.35914000000002 531.692454 225.71450900000002 517.183533 213.23636899999997 510.026502 203.50146800000005L530.652166 188.33763 514.147172 207.906613C515.63949 209.16527399999995 520.284527 210.66283299999998 527.732117 207.36436700000002 535.507665 203.920655 537.600004 199.018106 537.600004 196.90019600000005L537.6 636.7409230000001 536.964917 631.0740940000001C537.274671 632.438701 538.52809 636.159553 541.081741 641.442689 545.63241 650.857363 552.196378 660.39174 561.140218 669.3706540000001 588.544813 696.882717 631.736384 713.451107 696.041406 712.495464L696.809291 712.495571ZM972.799998 506.026694L972.799998 27.856867999999963C972.799998 30.12989200000004 974.964631 35.200736000000006 983.207422 38.64178100000004 991.122737 41.946117999999956 995.837214 40.189508000000046 997.287401 38.84923500000002L979.911949 20.048869999999965 999.286321 36.78188399999999C987.127682 50.859801999999945 964.238844 70.78961500000003 930.504218 90.424668 874.925269 122.77408400000002 808.525103 142.15018499999996 731.662669 142.15018199999997 653.132708 142.15017999999998 590.55104 117.26282200000003 543.127755 75.73800100000005 514.370099 50.55719499999998 496.945662 25.10259599999995 488.705389 7.022771000000034 482.841769-5.842485000000011 488.517717-21.02524200000005 501.382974-26.888862000000017 514.248233-32.752481999999986 529.430987-27.07653300000004 535.294607-14.211275 536.420563-11.740835999999945 539.350332-6.450639000000024 544.25735 0.7178109999999833 552.731727 13.097653000000037 563.54464 25.561581000000047 576.856734 37.21792900000003 615.190044 70.78337499999998 665.901421 90.95018000000005 731.662669 90.95018200000004 799.091447 90.95018200000004 856.704307 74.13829099999998 904.748587 46.17438500000003 921.433645 36.46294 935.6937 26.101906999999983 947.501771 15.820363000000043 954.344425 9.862312999999972 958.698848 5.444836000000009 960.537577 3.315859000000046L962.536497 1.2485080000000153C989.206831-23.40043300000002 1023.999998-8.875636999999983 1023.999998 27.856867999999963L1023.999998 506.026694C1023.999998 520.165184 1012.538487 531.626694 998.399998 531.626694 984.261508 531.626694 972.799998 520.165184 972.799998 506.026694L972.799998 506.026694Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="404" unicode="&#58908;"
+                   d="M300.197309 299.705317l4.427931 1.803972c1.147982-2.787956 10.167841-7.543882 26.89558-14.267777l5.411915-12.955798c10.659833-24.927611 23.123639-62.483024 37.555413-112.66624 14.431775 5.575913 34.439462 0.983985 60.351057-13.611787l1.803972-4.427931L389.575913 107.828315l18.203716-42.639334c2.459962-5.575913-12.463805-15.579757-44.7713-29.847534-11.151826 7.215887-19.84369 9.675849-26.403587 7.05189l-0.983985 2.131967c-10.823831 25.419603-16.235746 42.311339-16.399744 50.675208l-4.427931-1.803972 6.3959-14.923767-11.151826-4.263933c-41.655349-16.235746-71.830878-18.695708-90.690583-7.871877l-4.427931-1.803972-1.803972 4.263933c-7.05189 16.727739 3.607944 77.406791 32.307495 182.037156 11.479821 4.427931 19.1877 14.923767 22.959641 31.323511C281.337604 290.685458 291.83344 296.425368 300.197309 299.705317L300.197309 299.705317zM216.230621 80.276746c28.371557 19.515695 40.999359 32.799488 38.047406 39.68738-0.983985 2.131967-0.65599 5.575913 0.65599 10.167841l-0.983985 2.131967c-25.5836-21.483664-38.047406-32.963485-37.391416-34.439462C215.246637 88.804612 215.082639 83.064702 216.230621 80.276746L216.230621 80.276746zM216.722614 72.896861l0.983985-2.131967c11.643818 1.147982 21.155669 3.279949 28.699552 6.231903 0.819987 0.327995 7.379885 5.411915 19.84369 15.251762l-0.983985 2.131967c-7.543882-2.951954-12.7918-0.983985-15.743754 6.067905C226.398463 85.032671 215.574632 75.848815 216.722614 72.896861L216.722614 72.896861zM225.90647 143.743754l11.151826 4.263933c-1.147982-2.623959-6.3959-8.691864-15.579757-18.53171-2.295964-10.823831-2.787956-17.547726-1.639974-20.335682 27.715567 20.663677 40.34337 33.783472 37.883408 39.523382l0.819987 10.331839-3.443946-3.935939-9.019859-3.443946-0.983985 2.131967c11.151826 4.263933 17.875721 16.891736 20.49968 37.719411l-0.983985 2.131967C239.35426 172.443306 227.21845 160.307495 227.874439 157.027546L225.90647 143.743754 225.90647 143.743754zM231.646381 173.42729l0.983985-2.131967 2.131967 0.819987c28.371557 23.123639 40.179372 40.179372 35.423447 51.331198 1.475977 0.65599 1.967969 1.639974 1.475977 2.951954l-2.295964-0.819987c-28.863549-21.647662-40.999359-38.047406-36.407431-49.035234C231.482383 175.723254 230.990391 174.73927 231.646381 173.42729L231.646381 173.42729zM240.994234 211.966688l0.983985-2.131967c13.775785 10.331839 35.915439 29.847534 66.418962 58.21909l2.131967 0.819987-6.3959 14.923767 0.491992 5.083921-2.295964-0.819987c-36.571429-32.963485-55.431134-51.82319-56.579116-56.743113L240.994234 211.966688 240.994234 211.966688zM311.67713 107.336323l-35.751441-13.939782c-1.475977-0.491992-6.887892-4.263933-16.235746-11.315823l0.819987-1.967969 12.299808 2.131967 20.007687 7.871877c11.643818 4.591928 32.143498 19.84369 61.171044 46.08328l-6.3959 14.923767-2.131967-0.819987c-24.107623-16.891736-34.439462-29.191544-31.159513-36.899423C315.449071 110.616272 314.629084 108.484305 311.67713 107.336323L311.67713 107.336323zM267.889814 264.773863l0.819987-1.967969c17.875721 16.891736 27.387572 25.419603 28.207559 25.747598l-0.983985 2.131967-8.855862-3.443946C274.941704 282.485586 268.545804 274.941704 267.889814 264.773863L267.889814 264.773863zM275.597694 222.954516c16.071749-37.883408 20.007687-67.894939 11.971813-90.034593l-3.443946-28.863549 26.89558 10.495836c-7.543882 30.011531-18.367713 65.598975-32.471493 106.926329l-0.983985 2.131967L275.597694 222.954516 275.597694 222.954516zM279.369635 231.810378l6.3959-14.923767c13.44779 15.087764 24.435618 24.271621 32.63549 27.55157l-3.607944 8.527867-2.459962 11.643818-2.131967-0.819987C289.045484 247.06214 278.713645 236.566304 279.369635 231.810378L279.369635 231.810378zM292.817425 194.58296c23.943626 17.219731 33.619475 30.995516 29.191544 41.491352l-2.787956 6.3959-2.295964-0.819987c-21.483664-18.859705-30.667521-31.651505-27.879564-38.3754L292.817425 194.58296 292.817425 194.58296zM294.457399 190.483024l2.787956-6.3959 2.295964-11.807816 2.295964 0.819987-0.491992-5.083921 6.3959-14.923767 32.471493 27.387572-6.3959 15.087764c-9.347854-10.331839-16.235746-16.399744-20.827675-18.203716l-2.295964-0.983985c-0.65599 1.639974 6.067905 10.167841 20.335682 25.419603l-3.115951 13.611787-0.983985 2.131967L294.457399 190.483024 294.457399 190.483024zM307.413197 148.171685l2.787956-6.3959 2.295964-11.643818c23.943626 17.219731 35.259449 27.387572 33.94747 30.503523l-5.411915 12.955798C329.224856 165.719411 318.07303 157.191544 307.413197 148.171685L307.413197 148.171685zM355.792441 131.935939c-23.779628-17.711723-34.111467-30.011531-30.995516-37.227418l1.475977-9.347854c25.255605 18.039718 36.899423 29.355541 34.931454 33.783472 24.435618 21.155669 38.703395 32.471493 42.803331 33.94747l-0.819987 1.967969c-1.803972 2.787956-6.723895 4.099936-14.595772 4.427931l-30.831518-31.9795L355.792441 131.935939 355.792441 131.935939zM327.912876 81.26073l4.591928-10.659833-0.491992-5.083921 2.295964 0.819987c23.451634 14.595772 34.275464 23.615631 32.63549 27.55157l-5.411915 12.955798L327.912876 81.26073 327.912876 81.26073zM333.816784 61.253043l5.411915-12.7918c25.747598 13.283792 37.719411 22.139654 35.915439 26.403587l-4.591928 10.659833C348.412556 70.272902 336.112748 62.237028 333.816784 61.253043L333.816784 61.253043zM357.596413 139.971813l1.803972-4.099936c4.919923 1.967969 8.527867 9.839846 10.823831 23.943626l-2.295964-0.819987C364.648302 147.679693 361.204356 141.44779 357.596413 139.971813L357.596413 139.971813zM731.674568 256.081999l3.935939-0.163997c-0.163997-2.459962 4.755926-9.019859 14.759769-19.515695l-0.65599-11.315823c-1.147982-21.975657-5.411915-53.955157-12.955798-95.774504 12.627803-0.65599 25.911595-10.659833 39.68738-30.175529l-0.163997-3.935939-47.887252-10.823831-1.967969-37.719411c-0.327995-4.919923-14.923767-7.379885-43.951313-7.379885-5.575913 9.019859-11.151826 13.775785-16.891736 13.939782l0.163997 1.967969c1.147982 22.467649 3.279949 36.735426 6.231903 42.967329l-3.935939 0.163997-0.65599-13.119795-9.839846 0.491992c-36.571429 1.803972-60.023062 9.839846-70.026906 24.271621l-3.935939 0.163997 0.163997 3.771941c0.819987 14.759769 30.667521 56.087124 89.706598 124.14606 10.167841-0.491992 19.515695 4.755926 28.371557 15.579757C714.290839 255.754004 724.294683 256.573991 731.674568 256.081999L731.674568 256.081999zM587.848815 115.86419l-0.163997-1.967969c9.019859-2.951954 16.891736-4.591928 23.615631-4.919923 0.65599 0 7.379885 1.475977 20.171685 4.755926l0.163997 1.967969c-6.723895 0.327995-9.839846 3.607944-9.511851 9.675849C599.328635 121.6041 588.012812 118.324151 587.848815 115.86419L587.848815 115.86419zM590.144779 121.440102c28.043562 5.083921 42.147341 10.659833 42.475336 16.727739 0.163997 1.803972 1.475977 4.263933 4.099936 7.215887l0.163997 1.967969c-26.731582-7.379885-40.015375-11.807816-40.179372-13.119795C592.440743 128.163997 590.308776 123.900064 590.144779 121.440102L590.144779 121.440102zM620.15631 165.227418l9.839846-0.491992c-1.803972-1.475977-7.871877-4.427931-18.367713-8.527867-5.575913-7.215887-8.527867-12.13581-8.527867-14.595772 28.043562 6.067905 42.147341 11.643818 42.311339 16.727739l4.263933 7.379885-3.935939-1.803972-8.035874 0.327995 0.163997 1.967969c9.839846-0.491992 19.351698 6.559898 28.863549 21.155669l0.163997 1.967969c-26.23959-7.379885-39.68738-12.463805-40.34337-14.923767L620.15631 165.227418 620.15631 165.227418zM670.667521 109.960282l-31.487508 1.475977c-1.31198 0-6.559898-0.983985-16.071749-2.951954l-0.163997-1.803972 9.839846-2.459962 17.711723-0.819987c10.331839-0.491992 30.995516 4.099936 61.991031 13.939782l0.65599 13.119795-1.803972 0.163997c-23.943626-4.591928-36.079436-10.167841-36.407431-16.891736C674.603459 110.944266 673.29148 109.796284 670.667521 109.960282L670.667521 109.960282zM635.244074 185.399103l-0.163997-1.967969 1.803972-0.163997c29.355541 7.70788 44.279308 16.563741 44.7713 26.23959 1.31198 0 2.131967 0.491992 2.131967 1.639974l-1.967969 0.163997c-29.191544-6.3959-44.115311-14.595772-44.607303-24.271621C635.900064 187.039078 635.244074 186.547085 635.244074 185.399103L635.244074 185.399103zM685.755285 207.37476c-1.803972-33.29148-9.675849-56.907111-23.615631-70.682896l-12.955798-20.171685 23.779628-1.147982c5.247918 24.763613 10.167841 54.611147 14.595772 89.870596l0.163997 1.967969L685.755285 207.37476 685.755285 207.37476zM656.071749 210.818706l-0.163997-1.967969c13.939782 3.115951 37.391416 10.167841 70.354901 21.155669l1.803972-0.163997 0.65599 13.119795 2.295964 3.607944-1.967969 0.163997c-39.03139-12.299808-59.859065-20.007687-62.483024-23.287636L656.071749 210.818706 656.071749 210.818706zM670.339526 68.46893l-0.65599-11.315823c23.943626 1.31198 35.915439 3.935939 36.079436 7.70788l0.491992 9.347854C684.443306 70.272902 672.471493 68.304933 670.339526 68.46893L670.339526 68.46893zM673.29148 85.196669l-0.491992-9.347854-2.295964-3.607944 1.967969-0.163997c22.631646 2.951954 33.94747 6.231903 34.111467 9.511851l0.65599 11.315823L673.29148 85.196669 673.29148 85.196669zM712.158873 113.568225c-23.943626-5.247918-36.079436-10.987828-36.407431-17.219731l-2.295964-7.379885c25.255605 5.083921 37.883408 9.511851 38.211403 13.44779 25.747598 7.543882 40.34337 11.151826 43.951313 10.987828l0.163997 1.803972c-0.327995 2.623959-3.443946 5.247918-9.347854 8.035874l-34.439462-13.44779L712.158873 113.568225 712.158873 113.568225zM682.147341 141.611787l-0.327995-5.73991-2.459962-9.347854c23.943626 4.755926 36.079436 8.691864 36.079436 11.479821l0.65599 11.315823C704.778988 147.351698 693.463165 144.727739 682.147341 141.611787L682.147341 141.611787zM688.051249 177.199231l-0.327995-5.73991-2.623959-9.511851 1.967969-0.163997-2.295964-3.607944-0.65599-13.119795 33.94747 9.511851 0.65599 13.283792c-10.659833-4.591928-18.039718-6.723895-21.975657-6.559898l-1.967969 0.163997c0 1.475977 8.199872 5.411915 24.271621 12.13581l2.623959 11.151826 0.163997 1.967969L688.051249 177.199231 688.051249 177.199231zM688.215247 180.807175c23.943626 4.755926 36.243434 11.807816 36.735426 20.991672l0.327995 5.73991-1.967969 0.163997c-22.631646-6.887892-34.275464-13.283792-34.603459-19.1877L688.215247 180.807175 688.215247 180.807175zM691.82319 212.786675l-0.65599-13.119795c15.415759 6.723895 26.89558 10.003844 34.111467 9.511851l0.327995 7.543882 2.459962 9.511851-1.803972 0.163997C704.450993 220.986547 692.971172 216.558616 691.82319 212.786675L691.82319 212.786675zM695.103139 240.994234l-0.163997-1.803972c19.351698 6.559898 29.355541 9.839846 30.339526 9.839846l0.163997 1.967969-7.871877 0.327995C706.746957 251.818065 699.367072 248.374119 695.103139 240.994234L695.103139 240.994234zM716.422806 118.980141l-0.163997-3.607944c4.427931-0.163997 10.003844 4.427931 16.727739 14.10378l-1.967969 0.163997C724.45868 122.26009 719.538757 118.816143 716.422806 118.980141L716.422806 118.980141zM479.118514 382.196028c53.627162 10.167841 89.870596 1.967969 109.222293-24.599616 9.675849-18.695708 15.579757-33.455477 17.875721-44.279308 11.807816-56.743113-5.903908-103.154388-53.299167-138.741832-12.463805-5.083921-22.631646-8.363869-30.339526-10.003844-31.651505-6.067905-63.631006 5.083921-95.938501 33.455477-9.347854 16.399744-15.251762 31.159513-18.039718 44.279308-13.283792 63.795003 1.967969 108.238309 45.919283 133.165919L479.118514 382.196028 479.118514 382.196028zM410.075593 265.429853c6.231903 5.247918 11.479821 8.199872 15.579757 9.019859-9.675849-9.347854-14.431775-15.087764-13.939782-17.219731-0.327995-5.411915-0.163997-10.167841 0.819987-14.267777l2.131967 0.327995c24.271621 15.743754 35.915439 25.5836 35.095452 29.519539l-2.131967 10.003844c-4.099936-3.607944-8.035874-5.73991-11.643818-6.559898l-0.819987 4.099936c10.823831 2.131967 15.251762 11.971813 13.44779 29.519539l-1.967969-0.327995c-22.467649-16.399744-34.603459-27.715567-36.407431-33.94747C409.255605 273.30173 409.255605 269.857783 410.075593 265.429853L410.075593 265.429853zM410.23959 286.257527c33.127482 21.647662 47.887252 40.34337 44.607303 56.251121-29.683536-23.615631-44.443306-36.079436-44.279308-37.555413C409.747598 295.769379 409.5836 289.537476 410.23959 286.257527L410.23959 286.257527zM412.699552 315.777066l0.491992-2.131967c27.059577 20.663677 44.607303 37.227418 52.643177 49.527226 10.331839 1.967969 17.055734 7.379885 20.49968 16.235746l-2.131967-0.491992C447.303011 372.028187 423.523382 350.872518 412.699552 315.777066L412.699552 315.777066zM414.339526 234.926329c2.459962-4.919923 4.263933-9.347854 5.083921-13.44779 18.859705 14.759769 30.339526 22.467649 34.111467 23.123639l-3.771941 18.039718C444.18706 261.493914 432.379244 252.310058 414.339526 234.926329L414.339526 234.926329zM421.883408 220.002562c2.131967-9.839846 5.247918-14.759769 9.675849-14.759769l27.879564 21.975657c-0.327995 1.147982-2.131967 6.231903-5.411915 15.415759C437.299167 228.530429 426.639334 220.986547 421.883408 220.002562L421.883408 220.002562zM432.707239 199.174888c5.083921-5.903908 8.527867-8.691864 10.495836-8.363869l3.935939 0.819987c10.987828 10.495836 19.1877 16.235746 24.599616 17.219731-0.819987 3.935939-3.935939 8.855862-9.511851 14.759769C442.21909 209.014734 432.379244 200.814862 432.707239 199.174888L432.707239 199.174888zM448.450993 185.563101l0.491992-2.131967c2.459962 0.491992 6.3959-0.819987 11.807816-3.771941 18.859705 10.003844 28.207559 16.727739 28.207559 19.84369-6.067905 1.639974-9.511851 4.427931-10.331839 8.363869C466.818706 202.946829 456.814862 195.566944 448.450993 185.563101L448.450993 185.563101zM469.442665 179.331198l0.491992-2.131967 14.923767 0.65599 12.627803 2.459962c2.459962 0.491992 8.199872 3.771941 17.547726 9.839846l-0.491992 2.131967c-6.887892-1.31198-13.611787 0.163997-20.49968 4.263933L469.442665 179.331198 469.442665 179.331198zM476.494555 249.030109l4.591928-21.811659c2.951954-14.431775 12.463805-25.091608 28.535554-31.9795l4.099936 0.819987c24.599616 34.275464 32.143498 73.798847 22.795644 118.570147l-2.459962 11.971813-6.231903 19.515695-6.067905-1.147982c-3.935939-0.819987-14.267777 0-30.831518 2.295964C473.870596 316.597053 469.278668 283.961563 476.494555 249.030109L476.494555 249.030109zM476.494555 363.172325l0.327995-1.967969c10.823831-2.131967 17.547726-3.115951 20.007687-2.623959 13.939782 10.167841 21.647662 17.875721 23.287636 23.287636l-21.319667-1.967969C496.174247 379.408072 488.630365 373.832159 476.494555 363.172325L476.494555 363.172325zM508.966047 363.172325l3.771941 2.787956c1.147982 0.163997 6.231903-2.951954 15.087764-9.675849 10.331839 13.119795 18.203716 20.171685 23.779628 21.155669-0.65599 2.951954-8.199872 4.263933-22.467649 4.099936C515.361947 370.716208 508.638053 364.648302 508.966047 363.172325L508.966047 363.172325zM511.590006 185.235106l0.491992-2.131967 4.099936 0.819987c19.84369 3.771941 35.751441 17.219731 47.723254 40.34337C554.557335 214.754644 537.173607 201.634849 511.590006 185.235106L511.590006 185.235106zM521.921845 197.534914c38.211403 24.271621 56.087124 42.311339 53.79116 53.79116 1.967969 4.919923 2.623959 8.527867 2.295964 10.823831-35.095452-26.567585-51.495195-44.935298-49.363229-54.939142C526.349776 206.71877 524.217809 203.602819 521.921845 197.534914L521.921845 197.534914zM528.64574 352.348495l7.543882-15.251762 2.131967 0.491992c4.263933 5.73991 13.283792 14.431775 27.059577 25.911595l-0.491992 2.131967c-5.411915 5.247918-8.363869 8.855862-8.855862 10.823831l-4.099936-0.819987L528.64574 352.348495 528.64574 352.348495zM536.845612 333.324792l4.263933-9.675849-0.491992-8.363869 4.099936 0.819987c19.515695 17.711723 29.027546 27.059577 28.863549 28.371557l-0.491992 2.131967c-1.967969 9.347854-4.263933 13.611787-7.05189 13.119795C548.817425 342.508648 539.141576 333.652787 536.845612 333.324792L536.845612 333.324792zM539.797566 236.402306c27.715567 19.84369 40.999359 32.63549 39.68738 38.703395 1.31198 7.215887 1.803972 12.13581 1.147982 14.759769l-1.967969-0.327995-35.095452-29.519539C540.78155 245.586163 539.469571 237.714286 539.797566 236.402306L539.797566 236.402306zM542.257527 307.413197l2.459962-11.971813 10.003844 3.935939c-7.05189-7.871877-10.331839-12.627803-10.003844-14.267777-0.65599-10.495836-0.819987-16.727739-0.327995-18.695708 18.695708 13.611787 30.831518 24.927611 36.243434 33.94747l-2.459962 11.971813c-7.05189-7.05189-12.7918-10.987828-16.727739-11.807816 8.035874 11.315823 13.939782 17.383728 17.711723 18.039718l-4.099936 19.84369C554.557335 320.532992 543.733504 310.201153 542.257527 307.413197L542.257527 307.413197zM307.249199 569.153107c-9.675849 0-17.711723-6.887892-19.84369-16.071749-4.263933-12.463805 1.639974-28.863549 29.519539-35.751441 1.31198 35.587444 0 49.527226 0 49.527226C313.809097 568.33312 310.693145 569.153107 307.249199 569.153107L307.249199 569.153107zM709.862908 537.173607c0-1.147982 0-2.131967-0.163997-3.115951 2.131967 3.279949 3.279949 7.215887 3.279949 11.479821 0 11.643818-9.183857 21.155669-20.49968 21.155669-3.443946 0-6.723895-0.819987-9.511851-2.459962C697.891095 563.905189 709.862908 551.933376 709.862908 537.173607L709.862908 537.173607zM531.761691 520.281871c0.65599 15.743754-32.963485 49.199231-32.963485 49.199231 0-18.203716 9.347854-42.803331 12.463805-48.707239-8.035874-11.643818-13.283792-32.307495-13.283792-32.307495S531.105701 504.374119 531.761691 520.281871L531.761691 520.281871zM488.794363 507.326073c2.459962 0 4.427931 1.967969 4.427931 4.427931 0 2.459962-1.967969 4.427931-4.427931 4.427931-2.459962 0-4.427931-1.967969-4.427931-4.427931C484.366432 509.294042 486.334401 507.326073 488.794363 507.326073L488.794363 507.326073zM445.335042 629.668161c-0.819987 8.855862-2.131967 16.235746-2.131967 16.235746s-53.627162 7.05189-63.959001-30.503523C395.151826 632.94811 427.623318 631.144138 445.335042 629.668161L445.335042 629.668161zM620.648302 614.908392c-9.675849 37.719411-63.303011 31.651505-63.303011 31.651505s-1.475977-7.379885-2.459962-16.235746C572.597053 631.636131 605.232543 632.784113 620.648302 614.908392L620.648302 614.908392zM419.587444 518.313901c29.847534 0 53.955157 21.975657 53.955157 49.035234 0 27.059577-24.271621 49.035234-53.955157 49.035234-29.847534 0-53.955157-21.975657-53.955157-49.035234C365.632287 540.289558 389.903908 518.313901 419.587444 518.313901L419.587444 518.313901zM419.587444 613.76041c28.371557 0 51.331198-20.827675 51.331198-46.411275 0-25.5836-22.959641-46.411275-51.331198-46.411275-28.207559 0-51.331198 20.827675-51.331198 46.411275C368.256246 592.932735 391.379885 613.76041 419.587444 613.76041L419.587444 613.76041zM419.587444 534.38565c20.007687 0 36.243434 14.759769 36.243434 32.799488 0 18.203716-16.235746 32.799488-36.243434 32.799488s-36.243434-14.759769-36.243434-32.799488C383.34401 549.14542 399.579757 534.38565 419.587444 534.38565L419.587444 534.38565zM435.331198 552.261371c1.967969 2.131967 4.919923 2.623959 6.559898 1.147982 1.639974-1.475977 1.475977-4.263933-0.491992-6.3959-1.967969-2.131967-4.919923-2.623959-6.559898-1.147982C433.035234 547.341448 433.199231 550.129404 435.331198 552.261371L435.331198 552.261371zM395.971813 585.880846c5.411915 5.73991 13.283792 7.05189 17.875721 3.115951 4.591928-3.935939 3.935939-11.807816-1.475977-17.547726-5.411915-5.73991-13.283792-7.05189-17.875721-3.115951C389.903908 572.433056 390.559898 580.304933 395.971813 585.880846L395.971813 585.880846zM584.240871 518.313901c29.847534 0 53.955157 21.975657 53.955157 49.035234 0 27.059577-24.271621 49.035234-53.955157 49.035234-29.847534 0-53.955157-21.975657-53.955157-49.035234C530.121717 540.289558 554.393338 518.313901 584.240871 518.313901L584.240871 518.313901zM584.240871 613.76041c28.371557 0 51.331198-20.827675 51.331198-46.411275 0-25.5836-22.959641-46.411275-51.331198-46.411275-28.207559 0-51.331198 20.827675-51.331198 46.411275C532.909673 592.932735 555.869315 613.76041 584.240871 613.76041L584.240871 613.76041zM584.240871 534.38565c20.007687 0 36.243434 14.759769 36.243434 32.799488 0 18.203716-16.235746 32.799488-36.243434 32.799488-20.007687 0-36.243434-14.759769-36.243434-32.799488C547.997438 549.14542 564.233184 534.38565 584.240871 534.38565L584.240871 534.38565zM599.820628 552.261371c1.967969 2.131967 4.919923 2.623959 6.559898 1.147982 1.639974-1.475977 1.475977-4.263933-0.491992-6.3959-1.967969-2.131967-4.919923-2.623959-6.559898-1.147982C597.688661 547.341448 597.852659 550.129404 599.820628 552.261371L599.820628 552.261371zM560.62524 585.880846c5.411915 5.73991 13.283792 7.05189 17.875721 3.115951 4.591928-3.935939 3.935939-11.807816-1.475977-17.547726-5.411915-5.73991-13.283792-7.05189-17.875721-3.115951C554.557335 572.433056 555.213325 580.304933 560.62524 585.880846L560.62524 585.880846zM957.171044 381.540038C957.171044 381.540038 957.171044 381.540038 957.171044 381.540038c-0.65599 0.983985-1.31198 1.803972-1.967969 2.951954-0.327995 0.327995-0.491992 0.65599-0.819987 0.983985-0.327995 0.327995-1.967969 0.65599-2.295964 0.983985-11.315823 14.759769-29.355541 40.34337-62.975016 46.247277l0 34.931454c0 4.263933-0.819987 8.691864-5.083921 8.691864L685.919283 476.330557c-0.163997 10.331839-0.327995 18.203716-0.65599 27.879564 24.435618 1.803972 43.295324 19.351698 43.295324 41.491352 0 22.467649-19.84369 40.671365-45.263293 41.819347-1.967969 78.226778-5.903908 143.98975-7.70788 150.549648l-0.491992 0.983985c-1.967969 2.295964-9.511851 5.247918-21.155669 8.363869 0.327995 13.939782-3.279949 29.355541-11.643818 46.08328 3.443946-21.647662-22.795644-36.079436-26.567585-38.047406-0.163997 0-0.327995 0-0.491992 0 0.163997 4.427931 0 57.727098-88.230621 97.90647-1.475977-44.115311-14.10378-70.682896-31.9795-86.754644L494.534273 766.606022l-5.411915-0.327995 0-0.163997 0 0 0 0 0.327995 0 0.327995-0.163997c-0.819987-0.163997-0.983985-0.491992-1.147982-1.147982-10.331839-8.035874-28.043562-18.203716-64.450993-18.203716-13.283792 0-28.207559 1.31198-44.607303 3.935939-4.099936 0.819987-7.70788 1.147982-11.151826 1.147982-5.575913 0-10.003844-0.983985-16.071749-2.295964l-0.327995 0-0.327995-0.163997c-17.547726-4.099936-27.55157-7.70788-30.011531-10.659833l-0.491992-0.983985c-0.491992-2.131967-2.295964-8.363869-5.73991-150.549648-25.255605-0.983985-45.263293-19.351698-45.263293-41.983344 0-22.139654 18.859705-39.523382 43.459321-41.163357-0.163997-9.675849-0.327995-17.547726-0.65599-27.879564L132.099936 476.002562c-4.427931 0-10.495836-4.591928-10.495836-8.691864l0-97.414478c-11.807816-0.65599-19.679693-2.295964-26.731582-4.755926-29.027546-10.495836-35.751441-35.915439-35.587444-60.023062 0-1.475977 0.491992-2.787956 0.983985-3.771941-6.723895-11.643818-6.231903-25.5836-5.083921-35.587444 0.983985-8.035874 2.623959-12.13581 4.427931-13.939782-4.263933-8.855862-0.983985-18.859705 1.967969-26.731582 3.771941-10.167841 12.13581-11.971813 22.139654-10.003844-4.755926-9.019859-2.459962-17.219731 11.643818-28.699552 4.427931-3.607944 14.267777 7.05189 26.075593 16.071749l0-267.151826c0-4.263933 6.067905-6.067905 10.331839-6.067905l751.928251 0c4.427931 0 5.083921 1.803972 5.083921 6.067905L888.784113 248.374119c16.727739 0.983985 29.355541 7.70788 38.539398 19.84369 4.591928 6.231903 7.871877 11.807816 8.691864 16.891736C977.670724 313.153107 982.262652 344.640615 957.171044 381.540038L957.171044 381.540038zM316.433056 508.638053c-22.959641 0.491992-40.835362 16.727739-40.835362 36.735426 0 20.335682 18.859705 36.899423 41.983344 36.899423l0 2.623959 0.163997-0.65599c0-0.819987 0-1.475977 0-2.295964 0.491992 0.163997 0.983985 0.163997 1.475977 0.327995l1.803972 0 0 0.491992c5.247918 1.31198 12.7918 2.951954 19.351698 3.771941 10.003844 35.095452 34.111467 64.122998 34.111467 64.122998s-9.839846 28.863549-13.939782 67.238949c51.167201-85.11467 229.268418-81.178732 280.107623-10.823831-4.591928-32.799488-12.627803-56.415119-12.627803-56.415119s24.107623-28.863549 34.111467-64.122998c6.559898-0.819987 13.939782-1.147982 19.023703-2.295964 0 0.491992 0 2.623959 0 2.623959l0.491992 0c23.123639 0 41.983344-18.695708 41.983344-39.03139 0-9.347854-3.935939-18.695708-10.495836-25.419603-10.167841-6.723895-25.091608-10.331839-40.835362-10.331839 0-6.723895 0.983985-19.351698 1.803972-35.423447L318.401025 476.658552c0.163997 10.331839 0.491992 19.84369 0.65599 30.175529l0 2.131967L316.433056 508.638053 316.433056 508.638053zM126.524023 462.554773c0 4.099936 6.3959 9.183857 10.823831 9.183857l741.432415 0c4.263933 0 5.575913-4.919923 5.575913-9.183857l0-29.027546c0 0.491992-6.723895 1.475977-10.823831 1.147982-22.795644-2.295964-44.443306-3.607944-60.679052-9.183857L176.215247 425.491352l-1.31198-2.787956 0-60.18706c-10.823831 5.903908-25.5836 8.363869-48.215247 7.871877L126.68802 462.554773 126.524023 462.554773zM821.381166-13.693786 180.807175-13.693786 180.807175 282.649584c10.823831 4.263933 15.579757 10.987828 15.087764 21.975657-0.491992 8.363869-4.263933 13.611787-15.087764 16.727739l0 7.379885c5.903908 1.967969 3.935939 4.263933 5.247918 6.723895 5.411915 10.495836 5.575913 18.203716-5.247918 23.779628l0 55.759129 615.318386 0c-2.787956-5.575913-4.755926-7.871877-5.575913-12.299808-1.475977-8.035874-1.639974-18.367713-1.147982-28.207559L697.891095 315.449071c0 0-28.371557-15.251762-16.727739-32.799488 11.643818-17.383728 32.307495-11.479821 50.511211-0.327995 12.13581 7.379885 39.68738 23.287636 63.959001 40.179372 0.163997-0.163997 0.327995-0.163997 0.491992-0.327995-1.803972-1.31198-2.951954-2.295964-2.951954-2.295964-11.151826-7.543882-6.887892-36.899423 15.415759-41.327354 3.115951-0.65599 9.675849 0 9.675849 1.147982l0-293.391416L821.381166-13.693786 821.381166-13.693786zM177.855221 271.169763c0 3.443946-2.131967 6.231903-4.755926 8.035874 1.639974 0.491992 3.771941 0.983985 4.755926 1.475977L177.855221 271.169763 177.855221 271.169763zM177.855221 322.828956c-0.983985 0.163997-1.639974 0.327995-2.459962 0.491992 0.819987 0.491992 1.475977 0.983985 2.459962 1.475977L177.855221 322.828956 177.855221 322.828956zM878.780269-65.516976 137.347854-65.516976c-4.263933 0-10.823831 2.131967-10.823831 6.3959L126.524023 206.882767c5.903908 1.147982 4.919923 2.295964 6.723895 3.279949 19.679693 8.035874 38.047406 25.255605 25.747598 33.127482-0.163997 0-1.475977 0.163997-1.639974 0.163997 9.511851 3.771941 17.547726 9.839846 17.547726 20.663677l0-289.29148 655.169763 2.459962 0 291.915439c9.839846-9.675849 21.647662-14.595772 34.603459-10.331839 3.279949-6.559898 13.611787-9.839846 19.515695-10.331839l0-307.495195C884.192184-63.38501 883.044202-65.516976 878.780269-65.516976L878.780269-65.516976zM878.780269-65.516976"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="carousel" unicode="&#58932;"
+                   d="M1002.069333 144.38400000000001L1002.069333 611.6906670000001c0 24.213333-16.917333 49.578667-42.069333 49.578667l-64 0 1.152 6.4c0 31.338667-26.005333 57.6-58.538667 57.6L186.432 725.269333c-31.936 0-58.410667-31.957333-58.410667-64l-0.213333 0.96L67.178667 662.229333c-25.152 0-45.226667-20.288-45.226667-44.501333l0-467.328L21.354667 150.39999999999998c0-24.789333 20.629333-44.693333 45.312-44.693333L127.786667 105.70666700000004l0-5.184C127.786667 69.03466700000001 153.792 42.66666699999996 186.432 42.66666699999996l652.842667 0c31.658667 0 56.277333 10.901333 56.725333 42.602667l64 0c24.661333 0 42.666667 34.325333 42.666667 59.114667L1002.069333 144.38400000000001zM128 149.26933299999996L64 149.26933299999996l0 469.333333 64 0L128 149.26933299999996zM853.333333 106.602667c0-6.421333-14.848-21.333333-21.333333-21.333333l-640 0c-6.485333 0-21.333333 14.848-21.333333 21.333333l0 554.666667c0 6.378667 9.258667 18.56 15.744 18.56l5.589333 2.773333 640 0c6.442667 0 21.333333-14.954667 21.333333-21.333333L853.333333 106.602667zM960 127.93600000000004l-64 0 0 490.666667 60.842667 1.984c4.970667 0 3.157333 2.944 3.157333-1.984l0-469.333333C960 144.29866700000002 965.013333 127.93600000000004 960 127.93600000000004zM412.458667 399.829333c43.925333 0 79.637333 34.773333 79.637333 77.482667 0 42.752-35.712 77.482667-79.637333 77.482667-43.925333 0-79.637333-34.730667-79.637333-77.482667C332.8 434.602667 368.533333 399.829333 412.458667 399.829333zM412.458667 516.0533330000001c21.952 0 39.829333-17.365333 39.829333-38.741333 0-21.333333-17.877333-38.741333-39.829333-38.741333-21.952 0-39.829333 17.408-39.829333 38.741333C372.629333 498.709333 390.506667 516.0533330000001 412.458667 516.0533330000001zM785.92 457.386667c-95.914667-23.338667-137.728-87.765333-168.256-134.805333-24.213333-37.269333-39.082667-58.346667-65.109333-58.346667l-0.042667 0c-35.456 0-57.109333 14.272-80.042667 28.16-24.362667 14.741333-49.536 29.952-88.64 29.952-75.648 0-156.906667-93.269333-165.930667-103.893333L213.333333 167.38133300000004c0-10.709333 8.917333-18.112 19.925333-18.112l557.504 0c10.986667 0 19.904 7.402667 19.904 18.112L810.666667 438.570667c0 5.973333-2.837333 11.626667-7.658667 15.296C798.186667 457.536 791.872 458.858667 785.92 457.386667zM770.858667 188.52266699999996L253.162667 188.52266699999996c24.874667 27.733333 85.290667 95.082667 130.666667 95.082667 27.733333 0 46.229333-11.157333 67.605333-24.128 25.152-15.168 53.632-32.426667 99.712-33.941333l2.944-0.064c47.637333 0 71.722667 37.12 97.237333 76.416 26.645333 41.088 56.469333 79.104 119.530667 102.485333L770.858667 188.52266699999996z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="help" unicode="&#58887;"
+                   d="M690.2 741.8C635.2 783.6 573.2 798 494.6 798c-59.6 0-110.6-12.2-151-39.4C284 718 256 649.8 256 542l153.6 0c0 28.8-2.8 59.8 14 86.4 16.8 26.6 40.2 47 80.4 47 40.8 0 61.8-11.8 81.6-36.2 16.8-20.8 23.2-45.6 23.2-72 0-22.8-11.6-43.8-25.4-62.8-7.6-11.2-17.6-21.2-30.2-30.8 0 0-83-49.4-112.2-96.2-21.8-34.8-29.6-78.4-31.4-130.6-0.2-3.8 1.2-11.6 14.4-11.6 13 0 112 0 123.6 0 11.6 0 14 8.8 14.2 12.4 0.8 19 3.2 48.2 6.6 59.2 6.6 20.8 19.4 39 39.4 54.6l41.4 28.6c37.4 29.2 67.2 53 80.4 71.8 22.6 30.8 38.4 68.8 38.4 113.8C768 649 741 703.2 690.2 741.8zM484 155.6c-51.8 1.6-94.6-34.4-96.4-90.6-1.6-56.4 39-93.4 91-95 54-1.6 95.8 33.2 97.4 89.4C577.6 115.6 538 154 484 155.6z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="code-circle" unicode="&#58933;"
+                   d="M513.544163 893.525741c-282.101629 0-510.78094-228.679311-510.78094-510.76288 0-282.083569 228.679311-510.76288 510.78094-510.76288s510.76288 228.679311 510.76288 510.76288C1024.325103 664.8464309999999 795.645793 893.525741 513.544163 893.525741zM513.544163-83.46335899999997c-257.503523 0-466.22622 208.740757-466.22622 466.22622S256.0587 848.989082 513.544163 848.989082s466.22622-208.740757 466.22622-466.22622S771.047686-83.46335899999997 513.544163-83.46335899999997zM171.771357 359.77212099999997L414.357086 256.088033 414.357086 300.805295 221.978945 380.50532599999997 414.357086 459.464886 414.357086 504.182148 171.771357 401.76228ZM442.585309 193.38272800000004L478.814238 193.38272800000004 584.737801 572.1429949999999 548.743656 572.1429949999999ZM612.749301 504.182148L612.749301 459.464886 804.874598 380.50532599999997 612.749301 300.805295 612.749301 256.088033 855.33503 359.77212099999997 855.33503 401.76228Z"
+                   horiz-adv-x="1025"/>
+
+
+            <glyph glyph-name="water" unicode="&#58934;"
+                   d="M862.315763 33.684211000000005C802.869868 33.684211000000005 754.526289 82.94399999999996 754.526289 143.50371900000005 754.526289 162.33094700000004 759.35885 180.96056099999998 768.520956 197.43438600000002 768.64671 197.79368399999998 768.808394 198.15298199999995 769.006008 198.49431600000003L849.075622 334.542596 849.057657 334.542596 862.315763 357.052632 875.573868 334.542596 875.573868 334.542596 955.140464 199.356632C955.715341 198.67396499999995 956.164464 197.865544 956.380043 196.96729800000003 965.380464 180.60126300000002 970.123201 162.151298 970.105236 143.50371900000005 970.105236 82.94399999999996 921.761657 33.684211000000005 862.315763 33.684211000000005L862.315763 33.684211000000005ZM924.33064 188.57768399999998C924.204885 188.79326300000002 924.115061 189.02680699999996 924.025236 189.27831600000002L862.315763 302.996211 800.606289 189.260351C800.516464 189.02680699999996 800.42664 188.79326300000002 800.300885 188.57768399999998 793.977236 176.505263 790.635763 162.81600000000003 790.635763 148.965053 790.635763 105.29235100000005 822.792956 69.75775399999998 862.333727 69.75775399999998 901.856534 69.75775399999998 933.995763 105.29235100000005 933.995763 148.98301800000002 933.995763 162.81600000000003 930.654289 176.52322800000002 924.33064 188.57768399999998L924.33064 188.57768399999998ZM682.684605 392.982456C593.50678 392.982456 520.982429 469.602807 520.982429 563.8108070000001 520.982429 593.093614 528.240254 622.071018 541.965447 647.706947 542.163061 648.281825 542.396605 648.820772 542.684043 649.341754L662.815412 860.968421 662.797447 860.968421 682.684605 896 702.571763 860.968421 702.535833 860.968421 821.89471 650.689123C822.774991 649.647158 823.439692 648.3716489999999 823.781026 646.970386 837.25471 621.514105 844.368815 592.8241399999999 844.35085 563.8108070000001 844.35085 469.602807 771.844464 392.982456 682.684605 392.982456L682.684605 392.982456ZM791.408254 630.1192980000001C791.21064 630.4965609999999 791.030991 630.891789 790.887271 631.322947L682.684605 823.924772 574.446008 631.287018C574.320254 630.891789 574.140605 630.4965609999999 573.942991 630.1013330000001 562.840675 609.6931930000001 556.912254 596.075789 556.912254 572.631579 556.912254 498.634105 613.375973 428.876351 682.684605 428.876351 751.993236 428.876351 808.367131 489.058807 808.367131 563.056281 808.367131 586.500491 802.492605 609.6931930000001 791.408254 630.1192980000001L791.408254 630.1192980000001ZM538.695833 276.983018C540.115061 275.330246 541.174991 273.33614 541.713938 271.12645599999996 563.433517 231.11859600000003 574.895131 186.02666699999997 574.895131 140.43171900000004 574.895131-7.581192999999985 458.051341-128 314.403903-128 170.738499-128 53.89471-7.581192999999985 53.89471 140.43171900000004 53.89471 186.47578899999996 65.589868 231.998877 87.704675 272.294175 88.010078 273.17445599999996 88.387341 274.01880700000004 88.872394 274.863158L282.408394 607.411649 282.372464 607.411649 314.403903 662.45614 346.453306 607.411649 346.399412 607.411649 538.695833 276.983018 538.695833 276.983018ZM314.403903 590.614456L119.807973 257.79649099999995C119.556464 257.113825 119.251061 256.449123 118.873798 255.78442099999995 98.932745 220.48336800000004 88.387341 180.42161399999998 88.387341 139.91073700000004 88.387341 12.072420999999963 189.799271-91.89052600000002 314.421868-91.89052600000002 439.026499-91.89052600000002 540.420464 12.072420999999963 540.402499 139.91073700000004 540.402499 180.42161399999998 529.857096 220.50133300000005 509.916043 255.78442099999995 509.53878 256.449123 509.233377 257.131789 508.963903 257.86835099999996L314.403903 590.614456 314.403903 590.614456Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="username" unicode="&#58991;"
+                   d="M514.594 824.888c-144.11 0-260.979-118.46-260.979-264.558 0-88.783 43.497-166.928 109.711-214.898-135.361-59.354-230.159-195.858-230.159-354.931h0.894c1.541-21.375 18.641-38.377 40.117-38.377s38.575 17.051 40.117 38.377h0.645c0 0.944-0.099 1.79-0.099 2.734 0 0.05 0 0.099 0 0.149 0 0.099-0.05 0.149-0.05 0.199 0.05 159.967 120 291.054 273.009 304.924 8.948-0.944 17.598-2.734 26.844-2.734 144.11 0 260.979 118.46 260.979 264.558s-116.919 264.558-261.029 264.558zM514.594 377.54499999999996c-99.769 0-180.698 81.972-180.698 183.183s80.879 183.183 180.698 183.183c99.719 0 180.647-81.972 180.647-183.183s-80.879-183.183-180.647-183.183zM896.021-6.615000000000009c0 0.348-0.199 0.645-0.199 0.994-1.043 105.038-43.397 200.034-111.35 269.131v0c-7.157 7.357-17.001 11.98-27.986 11.98-21.574 0-39.122-17.747-39.122-39.668 0-11.135 4.573-21.127 11.83-28.334l-0.099-0.05c52.742-55.229 85.302-130.589 85.302-213.853 0-1.043-0.149-1.987-0.149-3.034h0.994c1.491-21.375 18.691-38.377 40.117-38.377 21.475 0 38.575 17.051 40.117 38.377h0.597c0 0.796-0.099 1.491-0.099 2.287-0.05 0.149 0.05 0.348 0.05 0.547z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="find-fill" unicode="&#58992;"
+                   d="M512 896C229.236364 896 0 666.763636 0 384c0-282.786909 229.236364-512 512-512s512 229.213091 512 512C1024 666.763636 794.763636 896 512 896zM657.291636 383.976727c0-77.195636-60.392727-139.729455-136.424727-144.407273l-175.732364-151.714909-22.877091 13.242182 58.228364 222.021818c-8.634182 18.548364-13.800727 39.074909-13.800727 60.858182 0 77.195636 60.369455 139.729455 136.378182 144.430545l175.802182 151.714909 22.877091-13.172364-58.251636-222.068364C652.125091 426.309818 657.291636 405.806545 657.291636 383.976727zM512 384m-66.048 0a2.838 2.838 0 1 1 132.096 0 2.838 2.838 0 1 1-132.096 0Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="about" unicode="&#58891;"
+                   d="M514.27174 834.607768c-249.516844 0-451.789687-202.272843-451.789687-451.789687s202.272843-451.789687 451.789687-451.789687 451.789687 202.272843 451.789687 451.789687S763.788583 834.607768 514.27174 834.607768zM514.27174-20.12919999999997c-222.541469 0-402.947282 180.405813-402.947282 402.947282s180.405813 402.947282 402.947282 402.947282 402.947282-180.405813 402.947282-402.947282S736.814232-20.12919999999997 514.27174-20.12919999999997zM514.295276 593.979362c-9.44614-10.360975-14.307867-22.951735-14.307867-37.483706 0-11.960403 3.886517-22.396079 11.534707-30.457686 7.783267-8.211009 17.853623-12.450567 29.313629-12.450567 9.312086 0 23.139 2.849908 35.782971 16.900925 9.865695 10.641361 14.866592 23.437805 14.866592 37.693484 0 11.68104-4.031826 21.900799-11.744485 29.832446C562.925856 615.325529 532.358677 613.449809 514.295276 593.979362zM549.461193 293.282882c-12.110829-11.541871-20.589944-18.759249-26.236548-23.316032 2.77009 14.953573 9.976212 44.614104 27.330462 103.023398 17.297968 57.890478 18.799158 67.991534 18.799158 72.955592 0 8.65717-3.63683 16.335037-9.921977 21.642926-14.124695 11.661597-39.035038 9.349949-69.131497-7.677866-16.779152-9.408277-34.595936-24.759917-54.493102-46.576805l-10.377348-11.541871 34.425044-26.548656 8.818853 8.715499c9.573029 9.292644 16.086373 15.35164 20.411889 19.393699-26.294876-86.460164-39.093367-140.190903-39.093367-164.262134 0-10.907421 3.172249-19.970844 9.573029-26.839275 6.460132-7.039323 15.510252-10.736529 25.891693-10.736529 10.146081 0 21.792329 3.926426 35.922141 11.949146 12.741185 7.212262 31.883151 23.029506 58.641585 48.190559l10.837836 10.391674-31.30703 30.475082L549.461193 293.282882z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="location" unicode="&#59157;"
+                   d="M451.673935-98.39569900000004C478.883834-129.01914699999998 524.254807-128.8089789999999 551.400292-97.92885100000001 553.755808-95.38790800000004 558.821323-89.79676199999994 565.872444-81.84834999999998 577.572838-68.65901699999995 590.597131-53.62432000000001 604.615947-36.99831500000005 644.662065 10.495494000000008 684.708678 61.282182000000034 722.129538 113.35355300000003 759.658524 165.575381 792.492213 216.29072599999995 819.314991 264.54153799999995 868.685946 353.35368300000005 896 430.456574 896 493.714285 896 715.890551 719.301715 896 501.333333 896 283.364952 896 106.666667 715.890551 106.666667 493.714285 106.666667 430.401284 134.05152 353.19426999999996 183.54613 264.23737800000004 210.371803 216.02347099999997 243.193308 165.34812399999998 280.699364 113.16684599999996 318.155192 61.05544999999995 358.239268 10.22578999999996 398.322835-37.31103099999996 412.354743-53.95207300000004 425.391185-69.00072999999998 437.102468-82.20257900000001 444.160087-90.15846599999998 449.230214-95.75492099999997 451.982775-98.73670600000003L451.673935-98.39569900000004ZM486.822684-65.32134799999994C484.281231-62.568254000000024 479.425084-57.207989 472.585916-49.49835900000005 461.135889-36.591016999999965 448.364015-21.84776099999999 434.602351-5.527214999999956 395.275714 41.11192700000004 355.949587 90.98045200000001 319.289224 141.985137 282.808749 192.739548 250.983685 241.87642200000005 225.158316 288.29247799999996 179.388826 370.55419500000005 154.50505 440.709839 154.50505 493.714285 154.50505 688.960095 309.785362 847.238095 501.333333 847.238095 692.881306 847.238095 848.161617 688.960095 848.161617 493.714285 848.161617 440.753978 823.345286 370.701737 777.693969 288.58074899999997 751.873483 242.13293399999998 720.038415 192.96007499999996 683.537446 142.16873799999996 646.912604 91.20503299999996 607.624538 41.38032599999997 568.335977-5.21503800000005 554.587654-21.52024300000005 541.828177-36.24924999999996 530.389289-49.14379699999995 523.556841-56.84571100000005 518.705521-62.20043499999997 516.166694-64.95052599999997 507.543772-74.74891100000002 495.255793-74.80583000000001 487.131524-65.66235300000005L486.822684-65.32134799999994ZM714.955981 428.971194C723.919106 453.372045 728.565658 479.331002 728.565658 505.904762 728.565658 627.091817 632.184774 725.333333 513.29293 725.333333 394.401086 725.333333 298.020202 627.091817 298.020202 505.904762 298.020202 384.717709 394.401086 286.47619 513.29293 286.47619 549.003859 286.47619 583.510052 295.36805300000003 614.373097 312.125591 626.032316 318.456132 630.449257 333.22218 624.238611 345.10648100000003 618.027966 356.99078199999997 603.541579 361.49299399999995 591.882359 355.16245100000003 567.900883 342.14136099999996 541.111735 335.23809500000004 513.29293 335.23809500000004 420.821495 335.23809500000004 345.858586 411.648164 345.858586 505.904762 345.858586 600.161359 420.821495 676.571428 513.29293 676.571428 605.764365 676.571428 680.727273 600.161359 680.727273 505.904762 680.727273 485.192019 677.117041 465.022684 670.154965 446.069408 665.522846 433.459117 671.796821 419.408892 684.168282 414.687349 696.53974 409.965809 710.323861 416.360905 714.955981 428.971194L714.955981 428.971194Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="up" unicode="&#58905;"
+                   d="M513.6 539.2l384-384c12.8-12.8 32-12.8 44.8 0 12.801 12.8 12.801 32 0 44.8l-403.2 403.2C532.8 609.6 520 616 513.6 616c-6.4 0-19.2 0-25.599-6.4L78.399 200c-12.8-12.8-12.8-32 0-44.8s32-12.8 44.8 0L513.6 539.2z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="pause" unicode="&#58961;"
+                   d="M512-128c-282.714 0-511.893 229.232-511.893 512 0 282.768 229.179 512 511.893 512 282.714 0 511.893-229.232 511.893-512 0-282.768-229.179-512-511.893-512zM512 863.996c-265.043 0-479.9-214.91-479.9-479.996 0-265.097 214.857-479.996 479.9-479.996 265.043 0 479.9 214.899 479.9 479.996 0 265.086-214.857 479.996-479.9 479.996zM639.973 181.32299999999998h-21.329c-23.558 0-42.658 19.1-42.658 42.658v319.933c0 23.558 19.1 42.658 42.658 42.658h21.329c23.558 0 42.658-19.1 42.658-42.658v-319.933c0-23.558-19.1-42.658-42.658-42.658zM405.356 181.32299999999998h-21.329c-23.558 0-42.658 19.1-42.658 42.658v319.933c0 23.558 19.1 42.658 42.658 42.658h21.329c23.558 0 42.658-19.1 42.658-42.658v-319.933c0-23.558-19.1-42.658-42.658-42.658z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="date" unicode="&#58935;"
+                   d="M933.185668 758.3591759999999l-167.054737 0 0 56.506968L732.333174 814.866145l0-56.506968L539.505447 758.3591759999999l0 56.506968-33.796734 0 0-56.506968-216.255299 0 0 56.506968-33.796734 0 0-56.506968L88.005356 758.3591759999999c-12.255115 0-22.224164-9.970072-22.224164-22.224164l0-706.60521c0-12.255115 9.970072-22.225187 22.224164-22.225187l845.179288 0c12.255115 0 22.225187 9.970072 22.225187 22.225187L955.409832 736.135012C955.409832 748.389104 945.43976 758.3591759999999 933.185668 758.3591759999999zM939.036933 29.528778999999986c0-3.226484-2.62478-5.852288-5.852288-5.852288l-845.179288 0c-3.226484 0-5.851265 2.62478-5.851265 5.852288L82.154092 736.135012c0 3.226484 2.62478 5.851265 5.851265 5.851265l167.650301 0 0-55.657624 33.796734 0 0 55.657624 216.255299 0 0-55.657624 33.796734 0 0 55.657624L732.333174 741.986277l0-55.657624 33.796734 0 0 55.657624 167.054737 0c3.226484 0 5.852288-2.62478 5.852288-5.851265L939.036933 29.528778999999986zM206.835765 608.260623l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM458.879152 608.260623l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM684.827207 608.260623l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM206.835765 433.345871l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM458.879152 433.345871l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM684.827207 433.345871l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM206.835765 257.877511l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM458.879152 257.877511l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM684.827207 257.877511l129.098263 0 0-94.008071-129.098263 0 0 94.008071Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="layim-uploadfile" unicode="&#58909;"
+                   d="M914.7359263333336 663.0359498888887c-20.806884999999987 20.806885000000012-48.471967999999976 32.265868000000026-77.89816099999994 32.265868000000054l-352.221993 2.2737367544323206e-13-120.26099099999992 95.03035300000005-11.157106999999995 8.816806000000007-14.220886 9.769962616701378e-15L197.09333633333344 799.148976888889c-51.69538300000001 2.1316282072803006e-14-93.75224400000005-42.88778599999995-93.75224400000006-95.60442799999993l-1.5631940186722204e-13-255.13888799999998c-1.7763568394002505e-15-2.302439 0.08391099999999785-4.716417999999999 0.24968699999999489-7.196911999999999l-1.9895196601282805e-13-340.692403c-1.9539925233402755e-14-29.426192999999998 11.458982999999954-57.09127599999999 32.26586799999994-77.89816100000002 20.806884999999987-20.806885000000012 48.471967999999976-32.265868000000026 77.89816099999994-32.265868000000054l623.083981-3.410605131648481e-13c29.426192999999998-1.9539925233402755e-14 57.09127599999999 11.458982999999954 77.89816100000002 32.26586799999994 20.806885000000012 20.806884999999987 32.265868000000026 48.471967999999976 32.265868000000054 77.89816099999994L947.0028173333335 585.1377888888885C947.0017943333336 614.5639818888885 935.5428113333334 642.2280418888886 914.7359263333336 663.0359498888887zM197.09333633333372 758.2167298888891l141.88345099999998-8.526512829121202e-14L470.3948853333333 654.369569888889l366.44287999999995-2.2737367544323206e-13c38.236859-2.1316282072803006e-14 69.23178099999997-30.99492100000004 69.23178099999994-69.23178100000004L906.0695463333333 465.9195468888886 144.27334033333327 465.91954688888893 144.2733403333336 703.5445488888892C144.2733403333336 733.7361748888891 167.92296933333355 758.2167298888891 197.09333633333372 758.2167298888891zM836.8377653333331 31.28558888888881L213.75480733333322 31.28558888888915c-38.236859 2.1316282072803006e-14-69.23178099999997 30.99492100000004-69.23178099999994 69.23178100000004L144.52302633333338 424.4776928888892l761.546519-6.252776074688882e-13-2.2737367544323206e-13-323.96134599999993C906.0695463333333 62.28050988888867 875.0746243333334 31.285588888888583 836.8377653333331 31.28558888888881z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="delete" unicode="&#58944;"
+                   d="M738.923 24.288h-451.956c-27.2 0-49.327 21.603-49.327 48.157v418.017c0 26.548 22.129 48.147 49.327 48.147h451.956c27.2 0 49.327-21.598 49.327-48.147v-418.017c0-26.555-22.129-48.157-49.327-48.157zM286.966 494.547c-4.447 0-7.168-2.644-7.168-4.084v-418.017c0-1.443 2.722-4.093 7.168-4.093h451.956c4.448 0 7.168 2.651 7.168 4.093v418.017c0 1.44-2.722 4.084-7.168 4.084h-451.956zM832.199 496.302h-640.401c-27.201 0-49.327 20.131-49.327 44.876v61.045c0 24.74 22.128 44.867 49.327 44.867h640.401c27.2 0 49.327-20.127 49.327-44.867v-61.045c0-24.744-22.129-44.876-49.327-44.876zM184.631 541.327c0.387-0.733 2.722-2.866 7.168-2.866h640.401c4.445 0 6.782 2.132 7.168 2.867v60.741c-0.393 0.736-2.733 2.863-7.168 2.863h-640.401c-4.437 0-6.776-2.128-7.168-2.863v-60.742zM600.748 605.354h-174.546c-27.201 0-49.327 20.13-49.327 44.876v10.736c0 24.74 22.128 44.867 49.327 44.867h174.546c27.2 0 49.327-20.126 49.327-44.867v-10.736c0-24.745-22.128-44.876-49.327-44.876zM419.034 650.378c0.387-0.733 2.722-2.865 7.168-2.865h174.546c4.446 0 6.782 2.131 7.168 2.865v10.432c-0.393 0.736-2.734 2.862-7.168 2.862h-174.546c-4.437 0-6.776-2.126-7.168-2.862v-10.432zM404.099 430.833h-30.097c-7.297 0-13.213-5.916-13.213-13.213v-272.34c0-7.297 5.916-13.212 13.213-13.212h30.098c7.297 0 13.212 5.916 13.212 13.212v272.341c0 7.297-5.916 13.213-13.212 13.213zM659.583 430.833h-30.097c-7.298 0-13.213-5.916-13.213-13.213v-272.34c0-7.297 5.917-13.212 13.213-13.212h30.097c7.297 0 13.212 5.916 13.212 13.212v272.341c0 7.297-5.916 13.213-13.212 13.213zM531.841 430.833h-30.098c-7.297 0-13.213-5.916-13.213-13.213v-272.34c0-7.297 5.917-13.212 13.213-13.212h30.098c7.297 0 13.212 5.916 13.212 13.212v272.341c0 7.297-5.916 13.213-13.212 13.213z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="play" unicode="&#58962;"
+                   d="M512 896C229.376 896 0 666.624 0 384 0 101.37599999999998 229.376-128 512-128 794.624-128 1024 101.37599999999998 1024 384 1024 666.624 794.624 896 512 896L512 896 512 896zM512-95.23199999999997C245.76-95.23199999999997 32.768 117.75999999999999 32.768 384 32.768 650.24 245.76 863.232 512 863.232S991.232 650.24 991.232 384C991.232 117.75999999999999 778.24-95.23199999999997 512-95.23199999999997L512-95.23199999999997 512-95.23199999999997zM733.184 392.192L393.216 588.8c-4.096 4.096-8.192 4.096-12.288 0C376.832 588.8 372.736 584.704 372.736 580.608l0-393.216c0-4.096 4.096-8.192 4.096-8.192 4.096-4.096 8.192-4.096 12.288 0l344.064 196.608c4.096 4.096 4.096 4.096 4.096 8.192C741.376 388.096 737.28 392.192 733.184 392.192L733.184 392.192 733.184 392.192zM733.184 392.192"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="top" unicode="&#58884;"
+                   d="M812 153.4l-300 172.8-300-172.8 300 604L812 153.4zM264.5 209.2l247.5 142.5 247.5-142.5L512 707.5 264.5 209.2zM371.7 138.3l0-126.2-15.9 0 0 126.2-45.9 0L309.9 153l107.4 0 0-14.8L371.7 138.2zM506.6 154.5c26.6 0 43.3-3.9 50-11.7 6.7-7.8 10-27.2 10-58.3 0-33.5-3.2-54.2-9.6-62-6.4-7.8-23.2-11.8-50.4-11.8-27 0-43.8 3.9-50.3 11.7-6.5 7.8-9.8 27.9-9.8 60.3l0 9.9 0.2 13.3c0 18.7 4.2 31.5 12.6 38.4C467.8 151 483.5 154.5 506.6 154.5zM506.5 141c-22.3 0-35.3-2.5-39.1-7.4-3.8-5-5.7-22-5.7-51 0-29.1 1.9-46.1 5.7-51.1 3.8-5 16.8-7.4 39.1-7.4 22.4 0 35.4 2.5 39.2 7.4 3.8 5 5.7 22 5.7 51.1l0 9.2-0.1 13.3c0 15.6-2.6 25.4-7.8 29.6S525.9 141 506.5 141zM608.4 12.1 608.4 153l59.2 0 5.4 0c15.9 0 26.7-3.1 32.5-9.2 5.8-6.1 8.7-17.6 8.7-34.4 0-16.1-3-27.1-9-32.9-6-5.9-17.3-8.8-33.9-8.8l-6.2-0.1-40.7 0 0-55.5L608.4 12.1zM624.3 81.1l37.7 0c15.8 0 25.9 1.6 30.3 4.9 4.4 3.2 6.7 10.7 6.7 22.3 0 13.6-1.5 22.2-4.5 25.9-3 3.6-10.1 5.4-21.3 5.4l-6.1 0.1-42.7 0L624.4 81.1z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="friends" unicode="&#58898;"
+                   d="M672.02974 765.933689c7.66047-32.266891 8.420787-62.237483 7.713682-95.365998-0.283456-12.778024-7.291057-71.832002-5.3918-89.926102 1.561565-14.936177 5.132904-16.128329 10.759041-28.436656 9.803273-21.422915 6.51846-50.970882 2.76088-72.566736-2.056845-11.816117-6.404873-28.64541-13.017478-38.287001-7.291057-10.645454-21.864984-10.711969-28.319999-23.12365-9.29469-17.848507-4.045129-42.930765-9.903557-62.21497-6.65763-21.883403-23.599488-23.420409-24.877597-52.040237 8.316409-1.243317 16.59598-2.479471 24.877597-3.722788 8.316409-18.498306 23.533996-55.70265 39.08518-66.900689 13.024641-3.728928 26.048259-7.448646 39.07904-11.156084 45.641503-19.593244 96.365768-43.032072 142.108578-63.215764 41.656749-18.381649 91.51325-24.937972 106.575294-70.629617 0-31.026644 2.795673-104.309694 2.025123-144.978952L58.155515-56.631556000000046c-0.757247 40.669258 2.029216 113.952308 2.029216 144.978952 15.065114 45.691645 64.928778 52.247968 106.578364 70.629617 45.74281 20.182668 96.467075 43.62252 142.098345 63.215764 13.027711 3.707438 26.054399 7.427156 39.08211 11.156084 15.554254 11.197016 30.78105 48.402383 39.09439 66.900689l18.492166 4.710278c-4.196579 24.429389-18.658965 26.322505-24.682146 43.62559-2.356674 26.013467-4.729721 52.052516-7.095605 78.079286 0.107447-1.234107-17.006326 3.246951-19.252483 4.716418-24.130583 15.838733-24.618701 80.075757-26.941606 106.793258-1.063215 12.222369 15.163351 22.240537 10.654664 44.62536-26.433022 131.125433 11.437493 219.776496 71.330582 240.123916 41.564651 17.633612 119.167077 50.323129 191.563944 3.716648l17.971303-17.428951 29.061896-5.237281C662.71663 795.172617 672.02974 765.933689 672.02974 765.933689z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="refresh-3" unicode="&#59818;"
+                   d="M820.376904 697.14807C740.637816 774.519228 631.884926 822.157201 511.999488 822.157201c-244.621347 0-442.925808-198.305485-442.925808-442.926832 0-244.6193 198.304462-442.925808 442.925808-442.925808 206.075449 0 379.271046 140.739395 428.740738 331.337337L822.859445 267.64189899999997c-45.759183-127.45381-167.656441-218.623229-310.859957-218.623229-182.371584 0-330.210677 147.842163-330.210677 330.210677 0 182.371584 147.840116 330.2117 330.210677 330.2117 88.762603 0 169.32443-35.035958 228.655723-92.015693L557.051567 433.822732l280.641725 0 113.880677 0 3.351328 0L954.925297 831.695438 820.376904 697.14807z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="ok" unicode="&#58885;"
+                   d="M960 640L915.2 684.8 371.2 172.79999999999995 108.8 454.4 64 409.6 358.4 83.20000000000005 364.8 89.60000000000002 371.2 83.20000000000005Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="layer" unicode="&#58936;"
+                   d="M96.089 724.318l0-684.236 831.822 0L927.911 724.318 96.089 724.318zM884.178 84.457L140.464 84.457 140.464 489.559l743.714 0L884.178 84.457z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="face-smile-fine" unicode="&#58892;"
+                   d="M511.558443 852.9315573333333c-246.787686 0-447.597201-200.783932-447.597201-447.598224 0-246.815315 200.783932-447.598224 447.597201-447.598224 246.841921 0 447.64939 200.782909 447.64939 447.598224C959.207833 652.1476253333334 758.400365 852.9315573333333 511.558443 852.9315573333333zM511.558443-4.962310666666667c-226.247884 0-410.295644 184.046736-410.295644 410.295644 0 226.249931 184.072319 410.296667 410.295644 410.296667 226.27449 0 410.346809-184.046736 410.346809-410.296667C921.905252 179.08442633333334 737.832933-4.962310666666667 511.558443-4.962310666666667zM724.38055 303.5726953333334c-9.698896 3.457752-20.366863-1.566682-23.848151-11.264555-28.500101-79.45461-104.372116-132.844587-188.82353-132.844587-84.798315 0-160.770614 53.689806-189.070146 133.590578-3.432169 9.723455-14.075577 14.772448-23.823592 11.364839-9.699919-3.432169-14.797008-14.100136-11.364839-23.823592 33.547047-94.77248 123.668601-158.434405 224.234017-158.434405 100.142791 0 190.140525 63.314001 223.935212 157.564595C739.125369 289.3978573333334 734.102982 300.0903843333334 724.38055 303.5726953333334zM302.49494 515.3479593333334c0-24.653493 19.98517-44.638663 44.638663-44.638663 24.653493 0 44.638663 19.98517 44.638663 44.638663s-19.98517 44.63764-44.638663 44.63764C322.48011 559.9855993333333 302.49494 540.0014523333333 302.49494 515.3479593333334L302.49494 515.3479593333334zM631.398856 515.3479593333334c0-24.653493 19.98517-44.638663 44.63764-44.638663 24.653493 0 44.63764 19.98517 44.63764 44.638663s-19.984147 44.63764-44.63764 44.63764C651.384026 559.9855993333333 631.398856 540.0014523333333 631.398856 515.3479593333334L631.398856 515.3479593333334z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="dollar" unicode="&#58969;"
+                   d="M517.565-65.45399999999995c-244.263 0-442.299 198.014-442.299 442.299s198.014 442.299 442.299 442.299c244.263 0 442.299-198.014 442.299-442.299 0-244.263-198.014-442.299-442.299-442.299zM517.565 863.383c-268.751 0-486.564-217.834-486.564-486.564s217.834-486.564 486.564-486.564c268.751 0 486.564 217.834 486.564 486.564 0 268.751-217.834 486.564-486.564 486.564zM497.036 425.349c-18.443 6.957-33.605 16.314-45.238 27.617-11.581 11.306-20.059 23.465-25.468 36.742-5.423 13.177-8.178 26.235-8.178 39.172-0.004 18.194 2.564 34.357 7.846 48.514 5.327 14.231 13.748 25.85 25.468 35.02 11.581 9.167 26.798 15.204 45.482 18.295v-205.52zM534.455 356.13199999999995c16.937-6.756 32.277-14.997 46.035-24.855 13.748-9.678 24.613-21.601 32.929-35.57 8.204-13.909 12.436-30.734 12.622-50.307 0-14.231-1.859-27.907-5.785-40.833-3.858-12.866-9.542-24.531-17.271-34.804-7.691-10.211-17.271-18.443-28.678-24.613-11.328-6.318-24.613-9.678-39.76-10.341v221.377zM534.455 94.18299999999999c29.037 3.318 53.978 11.306 74.785 24.134 20.985 12.866 37.018 30.15 48.281 51.734 11.125 21.535 16.876 46.832 16.937 76.196 0 16.08-1.67 30.377-5.033 42.985-3.318 12.622-8.204 24.15-14.836 34.357-6.739 10.341-14.836 20.189-24.613 29.326-8.853 8.204-19.107 15.957-30.659 23.041-11.328 7.197-22.836 13.706-34.281 19.261-11.581 5.694-21.601 10.516-30.659 14.231v221.377c14.527-3.318 26.662-8.594 36.62-16.192 9.859-7.395 17.766-16.192 23.776-26.384 5.941-10.211 10.341-20.985 12.972-32.345 2.666-11.328 4.026-22.836 3.858-34.097h46.155c0.004 16.314-1.566 32.345-5.327 48.281-3.543 15.957-9.938 30.909-19.107 44.969-8.996 13.909-21.601 26.235-37.684 36.742-16.192 10.521-36.62 18.295-61.318 23.562v49.426h-37.441v-53.316c-23.465-2.624-42.985-8.178-58.595-16.314-15.633-8.204-28.279-18.194-37.684-29.562-9.441-11.328-16.523-23.302-21.226-35.317-4.59-12.062-7.846-23.302-9.316-33.326-1.566-10.211-2.256-18.194-2.115-24.029 0.004-21.601 3.452-40.612 9.863-57.238 6.479-16.523 15.58-30.909 27.178-43.441 11.659-12.436 25.361-23.562 40.833-33.204 15.633-9.678 32.649-18.443 51.098-26.235v-237.329c-18.194 1.984-33.326 7.197-45.094 15.633-11.97 8.369-21.074 19.107-27.714 31.902-6.739 12.972-11.011 27.178-13.363 42.701-2.256 15.58-3.034 31.313-2.115 47.367h-47.803c-1.183-23.776 0.397-46.035 5.033-66.676s12.357-39.03 23.376-55.019c10.892-16.08 25.361-29.037 43.142-39.03 17.847-9.863 39.472-16.08 64.586-18.295v-65.283h37.441v65.283z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="group" unicode="&#58899;"
+                   d="M1383.17753-39.75895700000001L1380.048488-13.938771999999972 1373.005994 17.35852699999998 1362.834458 47.090445000000045 1348.751189 77.605053 1334.667921 101.07716700000003 1315.107539 123.76659099999995 1293.199086 141.76331100000004 1262.684478 158.97562200000004 1240.777745 169.147158 1211.828518 176.18965200000002 1182.87757 183.23042599999997 1157.840075 192.61927200000002 1126.544497 207.48523 1101.507002 219.22214799999995 1070.992393 233.30541600000004 1047.52028 246.607714 1047.52028 329.54366300000004 1057.690095 341.280581 1067.080661 356.92751 1074.121435 372.57615899999996 1079.598549 392.136541 1085.858352 415.610375 1088.204704 433.605376 1091.595216 432.822685 1098.37624 433.866846 1103.593603 438.040048 1109.330466 447.428894 1112.982449 458.3814 1115.06905 471.943448 1117.676871 496.459723 1118.719312 517.324016 1117.676871 535.059266 1114.024889 546.0134929999999 1106.722645 550.186695 1102.549442 549.142535 1106.201425 572.614649 1109.330466 600.782906 1110.374627 626.341621 1109.851687 646.684693 1106.722645 665.4623839999999 1100.984061 683.718855 1093.160597 700.409945 1082.20637 719.189356 1069.688483 734.838006 1055.082274 746.8346730000001 1036.304583 758.83134 1012.832469 769.785566 993.010617 775.00121 969.017283 779.174412 945.543448 779.695632 921.550114 775.52243 898.599221 767.698965 878.256148 759.35256 860.520898 747.877113 844.089558 733.2726250000001 828.440908 716.058594 814.35764 695.715522 804.186104 673.8087889999999 797.92802 648.771294 797.14533 616.691305 800.274372 586.959387 804.186104 548.621314 795.579949 548.621314 790.102836 541.57882 788.539175 529.060933 790.102836 499.329015 794.014568 464.902674 797.14533 447.688644 802.622443 438.299798 812.793979 432.822685 819.052063 433.605376 822.965515 406.221529 826.877248 389.790189 833.137051 371.79346899999996 841.743207 353.79846799999996 851.914743 339.7152 859.738207 329.54366300000004 858.955517 245.04233299999999 867.267518 242.13003600000002 878.734364 238.975192 891.063029 234.389141 902.817148 229.80137100000002 913.712888 225.78814699999998 923.459535 220.91310299999998 935.215374 216.03977999999995 948.116866 208.58615799999995 961.018358 201.13081599999998 971.625104 193.38992099999996 985.386695 183.06872699999997 997.142535 172.174708 1008.323827 158.41311700000006 1020.077947 143.21860000000004 1032.549389 125.72933699999999 1043.300632 105.086951 1052.476173 82.72436500000003 1060.502621 62.08197800000005 1066.093267 42.72974099999999 1069.963715 22.517404000000056 1073.834162-0.27523199999995995 1076.41446-26.93831499999999 1076.84451-45.000403000000006 1075.984411-61.12726799999996 1072.328988-73.59870999999998 1065.377664-87.28805299999999 1057.277248-96.391345 1042.440532-103.91721500000006 1351.099261-103.91721500000006 1365.182529-96.87472100000002 1376.136756-85.92221500000005 1383.17753-74.18529799999999 1384.742911-59.319339000000014ZM438.650719 816.389195L421.44873 797.467007 405.96694 775.104421 394.785647 751.021637 387.904851 723.498455 387.044752 688.234377 390.48515 655.550598 394.785647 613.4057250000001 385.324553 613.4057250000001 379.303857 605.6648299999999 377.583658 591.903239 379.303857 559.21946 383.604354 521.375084 387.044752 502.452896 393.065448 492.131703 404.246741 486.111007 411.127537 486.971106 415.428034 456.867625 419.728531 438.805537 426.609327 419.02325 436.070421 399.240962 447.251713 383.75917200000004 455.852708 372.57787900000005 454.992609 279.687139 440.370918 270.226045 405.96694 253.88415499999996 370.702863 238.40236500000003 342.319581 224.64077399999996 319.956995 215.17967999999996 295.014111 207.43878500000005 269.211128 202.278188 244.268244 196.25749199999996 218.46526 185.07619899999997 194.382475 173.034807 172.879989 157.55301699999995 148.797205 133.470232 131.595216 108.52734799999996 118.693724 84.44456400000001 108.372531 58.641579999999976 98.051337 29.398198999999977 92.89074 6.175514000000021 88.590243-13.606772999999976 86.009945-36.829458000000045 86.009945-57.47184500000003 89.450343-78.11423200000002 99.771536-91.87582299999997 115.253326-102.19701699999996 135.035613-103.91721500000006 995.995162-103.91721500000006 1011.476952-96.17632000000003 1023.518344-84.13492799999995 1031.259239-71.23343599999998 1032.979438-54.891546999999946 1031.259239-33.38906099999997 1027.818842-5.005778999999961 1020.077947 29.398198999999977 1008.896654 62.08197800000005 993.414864 95.625857 977.933074 121.42884000000004 956.430587 146.37172399999997 932.347803 166.15401199999997 898.803924 185.07619899999997 874.72114 196.25749199999996 842.89746 203.99838699999998 811.07378 211.739282 783.550598 222.060476 749.14662 238.40236500000003 721.623438 251.303857 688.079559 266.78564700000004 662.276576 281.407338 662.276576 372.57787900000005 673.457869 385.479371 683.779062 402.68136 691.519957 419.883349 697.540653 441.385835 704.421449 467.188819 707.001747 486.971106 710.729418 486.111007 718.18304 487.258379 723.916463 491.84443 730.224432 502.165623 734.237656 514.207015 736.532402 529.1159789999999 739.398253 556.066335 740.545626 579.001747 739.398253 598.496761 735.385029 610.538153 727.356861 615.1259239999999 722.77081 613.9785509999999 726.784034 639.7815350000001 730.224432 670.7451149999999 731.371805 698.842844 730.797258 721.205429 727.356861 741.847816 721.050611 761.915656 712.449617 780.265018 700.408225 800.907405 686.646634 818.109394 670.590297 831.2981589999999 649.94791 844.485204 624.144927 856.526596 602.356888 862.261739 575.979358 866.847789 550.176374 867.422336 523.800564 862.834565 498.570407 854.233571 476.207822 845.05975 456.712807 832.443811Z"
+                   horiz-adv-x="1449"/>
+
+
+            <glyph glyph-name="layim-download" unicode="&#58910;"
+                   d="M186.888458 77.07363199999998l0 581.729108c14.85022-14.450107 35.050284-23.436782 57.359382-23.436782l560.03604 0 0-151.561881 25.029046 0 0 176.591951-585.065086 0c-31.191396 0-57.359382 26.166963-57.359382 57.359382 0 31.191396 26.165939 57.359382 57.359382 57.359382l572.551074 0L816.798914 800.143838 244.24784 800.143838c-45.431725 0-82.388429-36.957727-82.388429-82.388429l0-640.681778c0-41.796942 34.000372-75.789127 75.789127-75.789127l225.950102 0 0 25.029046L237.648538 26.31355099999996C209.661114 26.31355099999996 186.888458 49.078021000000035 186.888458 77.07363199999998zM236.947574 730.269421l560.38601 0 0-25.029046-560.38601 0 0 25.029046ZM686.086897 428.171012c-85.917812 0-164.908864-55.248302-194.553021-135.882783-30.013571-81.641415-4.269233-175.567621 62.624293-230.942813 67.00302-55.465243 164.474982-62.808488 238.931764-17.720593 74.094532 44.868907 113.272833 133.533272 96.080266 218.517829C869.882923 357.47283300000004 783.297916 428.171012 686.086897 428.171012zM686.086897 38.82858599999997c-75.595722 0-145.060817 48.634674-171.092703 119.595842-26.354228 71.839165-3.63069 154.438395 55.287187 203.074092 59.017138 48.718585 144.762011 55.029314 210.191186 15.237029 65.11195-39.59888 99.396801-117.681236 84.064604-192.408171C847.384513 100.72940100000005 771.387655 38.82858599999997 686.086897 38.82858599999997zM698.600909 152.23547199999996L698.600909 311.02496499999995 673.571862 311.02496499999995 673.571862 152.28459099999998 604.675726 221.17254100000002 586.978668 203.47548400000005 686.111456 104.35190499999999 785.185916 203.42738799999995 767.489882 221.123422Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="picture-fine" unicode="&#58893;"
+                   d="M958.648085 84.30682933333333L65.772494 84.30682933333333 65.772494 721.9115253333333l892.87559 0L958.648085 84.30682933333333zM97.660762 116.20328333333339l829.099055 0L926.759817 690.0570263333334 97.660762 690.0570263333334 97.660762 116.20328333333339zM648.731616 419.05893933333334l-1.991354 0c-47.801702 0-86.696548 38.900985-86.696548 86.695524l0 1.978051c0 47.809889 38.894845 86.671988 86.696548 86.671988l1.991354 0c47.801702 0 86.698594-38.862099 86.698594-86.671988l0-1.978051C735.43021 457.95992433333333 696.533318 419.05893933333334 648.731616 419.05893933333334zM646.740262 562.5193053333333c-30.224372 0-54.810327-24.582885-54.810327-54.787814l0-1.978051c0-30.230512 24.584931-54.803163 54.810327-54.803163l1.991354 0c30.222325 0 54.810327 24.572652 54.810327 54.803163l0 1.978051c0 30.203906-24.586978 54.787814-54.810327 54.787814L646.740262 562.5193053333333zM91.097276 181.7900473333334l-22.748097 22.338774 274.373974 279.332916 22.750143-22.351054L91.097276 181.7900473333334zM604.886015 215.92242633333342L339.999113 480.74793033333333l22.548552 22.525016L627.433544 238.4638153333334 604.886015 215.92242633333342zM619.007641 202.70744933333333l-22.763446 22.337751 167.989015 171.035398 22.765493-22.350031L619.007641 202.70744933333333zM925.622924 222.7939273333334L758.534418 389.8343373333333l22.548552 22.529109 167.086459-167.044504L925.622924 222.7939273333334z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="link" unicode="&#58956;"
+                   d="M262.4-121.60000000000002c-64 0-128 25.6-179.2 76.8-102.4 102.4-102.4 262.4 0 364.8l134.4 134.4 89.6-89.6-134.4-134.4c-51.2-51.2-51.2-128 0-179.2 51.2-51.2 128-51.2 179.2 0l179.2 179.2c25.6 25.6 38.4 57.6 38.4 89.6S556.8 384 537.6 409.6L467.2 473.6l89.6 89.6 70.4-70.4C672 448 697.6 384 697.6 313.6c0-70.4-25.6-134.4-76.8-179.2l-179.2-179.2C396.8-96 326.4-121.60000000000002 262.4-121.60000000000002zM467.2 204.79999999999995L396.8 268.79999999999995c-102.4 102.4-102.4 262.4 0 364.8l179.2 179.2c102.4 102.4 262.4 102.4 364.8 0 102.4-102.4 102.4-262.4 0-364.8l-134.4-134.4-89.6 89.6 134.4 134.4c51.2 51.2 51.2 128 0 179.2-51.2 51.2-134.4 51.2-179.2 0L486.4 544c-51.2-51.2-51.2-128 0-179.2l70.4-70.4L467.2 204.79999999999995z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="diamond" unicode="&#59189;"
+                   d="M998.4 526.933333L797.866667 802.133333c-4.266667 6.4-12.8 10.666667-19.2 10.666667L243.2 812.8c0 0-14.933333-2.133333-23.466667-17.066667C194.133333 753.066667 32 512 32 512L21.333333 494.933333l12.8-14.933333L469.333333-27.733333000000016c4.266667-4.266667 6.4-6.4 10.666667-8.533333 6.4-4.266667 32-10.666667 46.933333 0 4.266667 2.133333 6.4 6.4 10.666667 8.533333l409.6 420.266667c10.666667 8.533333 10.666667 25.6 0 34.133333-8.533333 10.666667-23.466667 10.666667-32 0L561.066667 61.86666700000001l153.6 422.4 0 0 251.733333 0c2.133333 0 19.2 0 23.466667 4.266667l2.133333 2.133333C1004.8 497.066667 1006.933333 512 998.4 526.933333zM782.933333 763.733333l-96-226.133333L341.333333 537.6l-85.333333 226.133333L782.933333 763.733333zM221.866667 714.666667l72.533333-179.2-192 0L221.866667 714.666667zM91.733333 488.533333l215.466667 0 138.666667-416L91.733333 488.533333zM503.466667 44.799999999999955l-147.2 443.733333 307.2 0L503.466667 44.799999999999955zM736 535.4666669999999L810.666667 701.866667l119.466667-168.533333L736 533.333333z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="log" unicode="&#58894;"
+                   d="M828.01742 700.357158C743.476979 784.899646 631.076002 831.458031 511.516999 831.458031c-119.55798 0-231.959979-46.558385-316.500421-131.09985C110.47716 615.81774 63.918775 503.41574 63.918775 383.85776c0-87.103824 25.045419-171.548074 72.429613-244.204861 9.393951-14.402011 28.685319-18.46249 43.087331-9.071609 14.404058 9.393951 18.46556 28.685319 9.072633 43.089377-40.768519 62.511729-62.317301 135.194098-62.317301 210.187093 0 212.469066 172.85586 385.326972 385.325949 385.326972s385.325949-172.857906 385.325949-385.326972-172.85586-385.326972-385.325949-385.326972c-70.357418 0-139.188062 19.131733-199.052498 55.323003-14.71412 8.900717-33.856086 4.180206-42.753733-10.534937-8.896624-14.71719-4.180206-33.856086 10.534937-42.753733 69.584821-42.070164 149.556201-64.307631 231.271294-64.307631 119.559003 0 231.959979 46.558385 316.500421 131.09985 84.539418 84.539418 131.097804 196.941418 131.097804 316.499397S912.556838 615.81774 828.01742 700.357158zM494.28964 690.216193c-21.782096 0-39.397289-17.658172-39.397289-39.439244l0-283.524378c0-1.360997 0.358157-2.706645 0.493234-4.03285 2.020006-19.886933 18.959817-34.573423 39.379892-34.573423l0 0 0.146333 0.832971 223.590358 0c21.782096 0 39.438221 17.616216 39.438221 39.397289s-17.658172 39.397289-39.439244 39.397289L533.686928 408.273846l0 242.503103C533.686928 672.5580219999999 516.071735 690.216193 494.28964 690.216193z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="rate-solid" unicode="&#59002;"
+                   d="M957.111079 492.519576c-3.927449 11.669784-14.447037 19.86442-26.723641 20.816095L647.68068 535.250796 540.183388 811.873997c-4.586458 11.803837-15.951297 19.579941-28.614711 19.579941s-24.02723-7.776104-28.614711-19.579941L375.458719 535.250796l-282.708803-21.915126c-12.276604-0.951675-22.796192-9.146311-26.723641-20.816095-3.927449-11.669784-0.50142-24.557302 8.701173-32.737612l217.547735-193.358823-67.980277-291.298436c-2.848884-12.20702 2.009773-24.919553 12.273535-32.114418 10.264784-7.195889 23.87271-7.42818 34.375925-0.586354l240.624313 156.709111 240.625336-156.709111c5.099135-3.320629 10.92891-4.974291 16.752546-4.974291 6.173606 0 12.342096 1.858324 17.623379 5.561669 10.263761 7.194866 15.122419 19.907399 12.273535 32.114418l-67.980277 291.299459L948.409906 459.781964C957.613522 467.962274 961.037505 480.849792 957.111079 492.519576z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="fonts-del" unicode="&#58959;"
+                   d="M928 448l-143.616 0c-3.456 55.616-14.272 106.56-29.504 144.96C725.504 666.816 617.344 768 464.32 768L256 768l0-320L96 448C78.336 448 64 433.664 64 416S78.336 384 96 384L256 384l0-320 229.632 0c156.288 0 240.768 97.856 267.904 167.488C772.736 280.96000000000004 782.272 333.312 784.96 384L928 384C945.664 384 960 398.336 960 416S945.664 448 928 448zM349.376 711.488l63.936 0c35.712 0 251.84 27.968 266.944-263.488l-330.88 0L349.376 711.488zM439.296 120.51199999999994L349.376 120.51199999999994 349.376 382.528 349.376 384l330.88 0C665.344 113.98400000000004 467.968 120.51199999999994 439.296 120.51199999999994z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="unlink" unicode="&#58957;"
+                   d="M150.336 767.6800000000001C133.44 762.304 124.16 744.3199999999999 129.472 727.488 131.2 722.1759999999999 134.208 717.44 138.304 713.664l122.624-122.432C270.208 576.192 289.92 571.52 304.96 580.736 320 590.0799999999999 324.672 609.7280000000001 315.456 624.832 312.832 629.056 309.184 632.64 304.96 635.264L182.336 757.696C175.168 765.44 164.672 769.216 154.304 767.6800000000001 152.96 767.808 151.552 767.808 150.336 767.6800000000001L150.336 767.6800000000001zM406.08 831.424c-13.696-4.48-22.72-17.6-22.016-32L384.064 672c0-17.664 14.336-32 32-32s31.872 14.336 31.872 32L447.936 799.424C448.256 817.088 434.304 831.6800000000001 416.64 832 414.464 832.064 412.16 831.808 410.048 831.424 408.704 831.552 407.296 831.552 406.08 831.424L406.08 831.424zM91.392 511.872C73.728 509.12 61.632 492.544 64.384 474.88 67.136 457.28 83.712 445.248 101.376 448L224 448C241.664 448 256 462.208 256 479.872s-14.336 32-32 32L101.376 511.872c-1.984 0.192-3.968 0.192-6.016 0C94.016 512 92.608 512 91.392 511.872L91.392 511.872zM795.456 320c-17.728-2.752-29.824-14.08-27.072-31.744 2.752-17.6 19.328-35.008 36.992-32.256L928 256c17.664 0 32 19.584 32 37.248S945.664 320 928 320l-122.624 0c-1.984 0.192-3.968 0.192-6.016 0-1.344 0.128-2.688 0.128-4.032 0L795.456 320zM598.272 127.42399999999998c-13.76-4.48-22.72-17.6-22.08-32L576.192-32c0-17.664 14.336-32 32-32S640-49.66399999999999 640-32l0 127.424c0.32 17.6-13.568 32.256-31.232 32.576-2.176 0.064-4.352-0.192-6.592-0.576-1.344 0.128-2.688 0.128-4.032 0L598.272 127.42399999999998zM726.272 191.67999999999995c-16.896-5.376-26.24-23.36-20.864-40.192 1.664-5.312 4.736-10.048 8.832-13.824l122.56-122.432c9.28-15.04 28.928-19.776 44.032-10.496 14.976 9.344 19.712 28.992 10.368 44.032-2.624 4.224-6.144 7.808-10.368 10.432l-122.56 122.432c-7.168 7.744-17.6 11.52-28.032 9.984-1.344 0.128-2.688 0.128-4.032 0L726.272 191.61599999999999zM339.968 28.03200000000004c-49.152 0-98.304 18.688-135.744 56.128-74.816 74.88-74.816 196.608 0 271.488l87.744 87.744c12.48 12.48 32.768 12.48 45.248 0s12.48-32.768 0-45.248L249.408 310.46400000000006c-49.92-49.856-49.92-131.136 0-180.992 49.856-49.856 131.136-49.856 180.992 0l87.744 87.744c12.48 12.48 32.768 12.48 45.248 0s12.48-32.768 0-45.248l-87.744-87.744C438.272 46.72000000000003 389.12 28.03200000000004 339.968 28.03200000000004zM702.144 323.712c-8.192 0-16.384 3.136-22.656 9.344-12.48 12.48-12.48 32.768 0 45.248l87.744 87.744c49.856 49.92 49.856 131.072 0 180.992-49.856 49.856-131.136 49.856-180.992 0L498.496 559.296c-12.48-12.48-32.768-12.48-45.248 0s-12.48 32.768 0 45.248l87.744 87.744c74.88 74.88 196.608 74.88 271.488 0 74.88-74.816 74.88-196.672 0-271.488l-87.744-87.744C718.528 326.784 710.336 323.712 702.144 323.712z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="fonts-clear" unicode="&#58937;"
+                   d="M944.787709 197.20939699999997L857.081297 197.20939699999997 741.092979-127.73993700000005 815.146059-127.73993700000005 832.440281-65.58476199999996 966.82809-65.58476199999996 984.512408-127.73993700000005 1062.011328-127.73993700000005 944.787709 197.20939699999997 944.787709 197.20939699999997ZM848.04409 1.1865400000000363L898.951519 153.25866699999995 949.923963 1.1865400000000363 848.04409 1.1865400000000363 848.04409 1.1865400000000363ZM210.238376 489.910857L183.386821 513.121524 12.46009 313.522794C-5.874386 292.652698-3.728862 260.989968 17.271265 242.720508 38.401424 224.45104800000001 70.454249 226.66158700000005 88.853741 247.53168300000004L100.361551 260.599873C106.603075 267.55657099999996 117.200662 268.20673 124.287392 262.22527 131.309106 256.048762 132.024281 245.51619000000005 125.912789 238.55949199999998 107.448281 217.62438099999997 98.085995 173.08850800000005 119.216154 154.81904799999995 140.281297 136.614603 183.841932 151.76330199999995 202.371455 172.69841299999996 208.417932 179.525079 219.145551 180.30526999999995 226.167265 174.19377799999995 233.188979 168.14730199999997 233.904154 157.61473 227.792662 150.65803200000005 209.328154 129.85295199999996 199.965868 85.05701599999998 221.096027 66.91758700000003 242.16117 48.648127000000045 285.656789 63.86184100000003 304.186313 84.666921 310.362821 91.62361899999996 321.025424 92.40381000000002 327.982122 86.29231700000003 335.068852 80.18082500000003 335.784027 69.71326999999997 329.672535 62.75657100000001 311.143011 41.82146 301.845741-2.9094599999999673 322.910884-20.983873000000017 344.041043-39.253333 387.601678-24.039619000000016 406.00117-3.234540000000038 412.177678 3.7221590000000333 422.840281 4.437332999999967 429.927011-1.6091430000000173 436.948725-7.720635000000016 437.598884-18.31822199999999 431.487392-25.144889000000035 413.022884-46.08000000000004 403.725614-90.81092100000001 424.790757-109.01536499999997 445.920916-127.15479400000004 477.973741-125.00927000000001 496.373233-104.20419000000004L667.299963 95.52457100000004 658.652852 132.90869799999996 210.238376 489.910857 210.238376 489.910857ZM844.013106 329.516698L680.10809 471.12127 929.639011 715.190857C933.2799 718.376635 936.725741 721.562413 939.976535 725.203302 977.815773 768.048762 973.524725 833.129651 930.28917 870.513778 887.183646 907.702857 821.58263 903.281778 783.808408 860.631365L783.483328 860.761397 564.249805 571.3107299999999 399.824662 713.56546C385.391138 726.113524 363.480789 724.553143 350.867709 710.249651L248.14263 593.871238 225.322059 567.994921 251.393424 545.434413 695.7119 161.25561900000002 726.26936 136.679619 847.328916 281.014857C859.941995 295.318349 858.44663 316.96863499999995 844.013106 329.516698L844.013106 329.516698ZM817.941741 830.724063C839.136916 854.779937 876.000916 857.315556 900.186821 836.250413 924.372725 815.380317 926.908344 778.906413 905.648154 754.85054 884.452979 730.924698 847.588979 728.389079 823.403075 749.3892060000001 799.21717 770.324317 796.811582 806.798222 817.941741 830.724063L817.941741 830.724063ZM765.473932 758.491429C768.919773 741.522286 777.6319 725.593397 791.80536 713.305397 806.043836 701.017397 823.533106 694.580825 841.087392 693.540571L643.634186 494.526984 593.116852 538.2176509999999 765.473932 758.491429 765.473932 758.491429ZM776.006503 299.739429L709.755328 219.314794 307.502122 566.369524 376.809043 645.03873C382.920535 651.865397 393.38809 652.5155560000001 400.409805 646.534095L774.381106 323.01511100000005C781.337805 317.098667 782.117995 306.69612700000005 776.006503 299.739429L776.006503 299.739429Z"
+                   horiz-adv-x="1063"/>
+
+
+            <glyph glyph-name="triangle-r" unicode="&#58915;" d="M293.291 728.256l426.88-355.456-426.88-355.52z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="circle" unicode="&#58943;"
+                   d="M511.998 847.999C255.739 847.999 48 640.26 48 383.999c0-256.258 207.739-463.998 463.998-463.998C768.261-79.99900000000002 976 127.74199999999996 976 383.999 976 640.26 768.261 847.999 511.998 847.999zM512.002-16.000999999999976c-220.915 0-400.002 179.088-400.002 400 0 220.917 179.086 400 400.002 400 220.912 0 399.998-179.083 399.998-400C912 163.087 732.914-16.000999999999976 512.002-16.000999999999976z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="radio" unicode="&#58947;"
+                   d="M512.5 383.5m-192 0a192 192 0 1 1 384 0 192 192 0 1 1-384 0ZM511.998 847.999C255.739 847.999 48 640.26 48 383.999c0-256.258 207.739-463.998 463.998-463.998C768.261-79.99900000000002 976 127.74199999999996 976 383.999 976 640.26 768.261 847.999 511.998 847.999zM512.002-16.000999999999976c-220.915 0-400.002 179.088-400.002 400 0 220.917 179.086 400 400.002 400 220.912 0 399.998-179.083 399.998-400C912 163.087 732.914-16.000999999999976 512.002-16.000999999999976z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="align-center" unicode="&#58951;"
+                   d="M992 448L32 448C14.32 448 0 462.336 0 480 0 497.664 14.32 512 32 512L992 512C1009.68 512 1024 497.664 1024 480 1024 462.336 1009.68 448 992 448ZM800 704C817.664 704 832 689.664 832 672 832 654.336 817.664 640 800 640L224 640C206.32 640 192 654.336 192 672 192 689.664 206.32 704 224 704L800 704ZM992 832L32 832C14.32 832 0 846.336 0 864 0 881.664 14.32 896 32 896L992 896C1009.68 896 1024 881.664 1024 864 1024 846.336 1009.68 832 992 832ZM224 256C206.32 256 192 270.336 192 288 192 305.664 206.32 320 224 320L800 320C817.664 320 832 305.664 832 288 832 270.336 817.664 256 800 256L224 256ZM32 128L992 128C1009.68 128 1024 113.66399999999999 1024 96 1024 78.33600000000001 1009.68 64 992 64L32 64C14.32 64 0 78.33600000000001 0 96 0 113.66399999999999 14.32 128 32 128ZM224-64L800-64C817.664-64 832-78.33600000000001 832-96 832-113.66399999999999 817.664-128 800-128L224-128C206.32-128 192-113.66399999999999 192-96 192-78.33600000000001 206.32-64 224-64Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="align-right" unicode="&#58952;"
+                   d="M992 64L32 64C14.32 64 0 78.33600000000001 0 96 0 113.66399999999999 14.32 128 32 128L992 128C1009.68 128 1024 113.66399999999999 1024 96 1024 78.33600000000001 1009.68 64 992 64ZM992 256L288 256C270.32 256 256 270.336 256 288 256 305.664 270.32 320 288 320L992 320C1009.68 320 1024 305.664 1024 288 1024 270.336 1009.68 256 992 256ZM992 448L32 448C14.32 448 0 462.336 0 480 0 497.664 14.32 512 32 512L992 512C1009.68 512 1024 497.664 1024 480 1024 462.336 1009.68 448 992 448ZM992 640L288 640C270.32 640 256 654.336 256 672 256 689.664 270.32 704 288 704L992 704C1009.68 704 1024 689.664 1024 672 1024 654.336 1009.68 640 992 640ZM992 832L32 832C14.32 832 0 846.336 0 864 0 881.664 14.32 896 32 896L992 896C1009.68 896 1024 881.664 1024 864 1024 846.336 1009.68 832 992 832ZM288-64L992-64C1009.68-64 1024-78.33600000000001 1024-96 1024-113.66399999999999 1009.68-128 992-128L288-128C270.32-128 256-113.66399999999999 256-96 256-78.33600000000001 270.32-64 288-64Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="align-left" unicode="&#58953;"
+                   d="M992 448L32 448C14.336 448 0 462.336 0 480 0 497.664 14.336 512 32 512L992 512C1009.664 512 1024 497.664 1024 480 1024 462.336 1009.664 448 992 448ZM32 704L736 704C753.68 704 768 689.664 768 672 768 654.336 753.68 640 736 640L32 640C14.336 640 0 654.336 0 672 0 689.664 14.336 704 32 704ZM992 832L32 832C14.336 832 0 846.336 0 864 0 881.664 14.336 896 32 896L992 896C1009.664 896 1024 881.664 1024 864 1024 846.336 1009.664 832 992 832ZM32 320L736 320C753.68 320 768 305.664 768 288 768 270.336 753.68 256 736 256L32 256C14.336 256 0 270.336 0 288 0 305.664 14.336 320 32 320ZM32 128L992 128C1009.664 128 1024 113.66399999999999 1024 96 1024 78.33600000000001 1009.664 64 992 64L32 64C14.336 64 0 78.33600000000001 0 96 0 113.66399999999999 14.336 128 32 128ZM32-64L736-64C753.68-64 768-78.33600000000001 768-96 768-113.66399999999999 753.68-128 736-128L32-128C14.336-128 0-113.66399999999999 0-96 0-78.33600000000001 14.336-64 32-64Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="loading-1" unicode="&#58942;"
+                   d="M537.574469 831.696462c-14.123672 0-25.574469-11.447726-25.574469-25.574469 0-14.123672 11.450796-25.574469 25.574469-25.574469 204.495464 0 370.82877-166.358889 370.82877-370.82877 0-14.123672 11.450796-25.574469 25.574469-25.574469 14.123672 0 25.574469 11.450796 25.574469 25.574469C959.551152 642.385838 770.241552 831.696462 537.574469 831.696462z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="return" unicode="&#58972;"
+                   d="M927.858848 417.938973L168.863431 417.938973l308.721247 308.86758c11.685133 11.69025 11.435447 30.881334-0.557702 42.868343-11.992125 11.985986-31.18321 12.226462-42.868343 0.536212L75.199191 411.071565c-1.994424-1.662873-3.773953-3.583618-5.294586-5.713119-4.047176-5.373381-6.013971-11.839653-5.9055-18.328437-0.12996-7.794523 2.725064-15.561417 8.595772-21.432125l361.565802-361.744881c11.685133-11.691273 30.876218-11.449773 42.868343 0.535189 11.993149 11.985986 12.242835 31.17707 0.557702 42.868343L168.441828 356.54571799999997l759.417019 0c16.527418 0 29.925566 13.738909 29.925566 30.694069S944.386266 417.938973 927.858848 417.938973z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="fonts-strong" unicode="&#58923;"
+                   d="M199.092919 848.487893l355.326704 0c70.335928 0 122.780371-2.942005 157.349701-8.809643 34.568307-5.884011 65.491597-18.131963 92.78522-36.759205 27.27725-18.627243 50.01409-43.427068 68.209498-74.397431 18.195408-30.986735 27.293623-65.699328 27.293623-104.169501 0-41.7161-11.17655-79.977519-33.496905-114.802676s-52.604078-60.951187-90.818425-78.362742c54.075593-15.765055 95.647407-42.626843 124.715443-80.585363s43.602054-82.58388 43.602054-133.877103c0-40.388872-9.417487-79.673597-28.220738-117.839849-18.803251-38.182624-44.482097-68.673056-77.035514-91.489714-32.55444-22.833031-72.702835-36.855396-120.414487-42.09984-29.931706-3.229554-102.122889-5.260817-216.572524-6.060019L199.092919-40.765192999999954 199.092919 848.487893zM378.171504 700.1084940000001l0-205.684546 117.64849 0c69.935816 0 113.410979 1.006933 130.390699 3.038196 30.730908 3.629667 54.891168 14.246469 72.478731 31.850405 17.588587 17.588587 26.381857 40.756239 26.381857 69.473281 0 27.501354-7.594979 49.838082-22.75219 67.042929-15.158235 17.188474-37.702694 27.597545-67.618027 31.242562-17.796318 2.01489-68.945255 3.038196-153.431461 3.038196L378.171504 700.109518zM378.171504 346.04454999999996l0-236.383732 166.622902 0c64.85203 0 106.008382 1.807159 123.43631 5.420453 26.750247 4.828982 48.543599 16.58063 65.363683 35.272341s25.247011 43.714617 25.247011 75.085092c0 26.526143-6.491855 49.03888-19.459191 67.538209-12.983709 18.48398-31.722492 31.961946-56.250118 40.404222s-77.739549 12.663414-159.619394 12.663414L378.171504 346.04454999999996z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="upload" unicode="&#59004;"
+                   d="M831.488 478.208C831.488 478.208 831.488 478.208 831.488 478.208c0 143.36-114.688 258.048-253.952 258.048-98.304 0-184.32-57.344-225.28-139.264C327.68 605.184 307.2 609.28 286.72 609.28c-90.112 0-159.744-73.728-159.744-159.744 0-16.384 4.096-28.672 8.192-40.96C57.344 379.904 0 310.27200000000005 0 224.25599999999997c0-106.496 86.016-192.512 192.512-192.512l192.512 0 0 192.512L258.048 224.25599999999997l258.048 258.048 258.048-258.048-126.976 0 0-192.512 192.512 0L839.68 35.84000000000003c106.496 16.384 192.512 110.592 192.512 221.184C1024 371.712 937.984 465.92 831.488 478.208z"
+                   horiz-adv-x="1033"/>
+
+
+            <glyph glyph-name="dialogue" unicode="&#58938;"
+                   d="M998.4 500.992C998.4 682.24 811.392 829.696 581.632 829.696c-121.216 0-235.904-41.472-315.264-114.048 37.504 8.192 76.416 13.056 115.456 14.464 59.264 30.592 128.256 46.72 199.808 46.72 198.144 0 359.296-123.776 359.296-275.968 0-31.872-7.04-63.232-20.992-93.056 7.552-28.16 11.264-57.344 11.008-86.528C975.104 374.784 998.4 436.736 998.4 500.992L998.4 500.992zM442.368 398.72c-30.72 0-55.808-23.04-55.808-51.328s25.088-51.328 55.808-51.328 55.808 23.04 55.808 51.328S473.088 398.72 442.368 398.72zM243.328 398.72c-30.72 0-55.808-23.04-55.808-51.328s25.088-51.328 55.808-51.328 55.808 23.04 55.808 51.328C299.264 375.67999999999995 274.176 398.72 243.328 398.72zM641.28 398.72c-30.72 0-55.808-23.04-55.808-51.328s25.088-51.328 55.808-51.328 55.808 23.04 55.808 51.328S672.128 398.72 641.28 398.72zM442.368 677.888C212.608 677.888 25.6 530.432 25.6 349.312c0-179.968 173.696-296.192 332.544-321.664l60.8-78.336c5.632-7.424 14.464-11.008 23.296-11.008 8.832 0 17.792 3.712 23.424 11.008l60.8 78.464C685.312 53.24800000000005 859.008 169.47199999999998 859.008 349.44000000000005 859.136 530.432 672.128 677.888 442.368 677.888zM714.88 173.82399999999996c-52.224-45.184-124.288-77.952-197.376-89.6C503.168 81.91999999999996 490.112 74.24000000000001 481.28 62.72000000000003l-38.784-49.92-38.912 49.92c-8.96 11.52-21.888 19.2-36.224 21.504-73.216 11.776-145.152 44.416-197.376 89.728-39.68 34.304-86.912 92.544-86.912 175.36 0 69.76 35.584 136.192 100.352 187.264 68.736 54.144 160.768 84.096 258.944 84.096 98.304 0 190.336-29.824 259.072-84.096 64.768-51.072 100.352-117.504 100.352-187.264C801.664 266.36800000000005 754.56 208.12800000000004 714.88 173.82399999999996z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="video" unicode="&#59117;"
+                   d="M952.523633 599.2477269999999L952.523633 599.2477269999999 952.523633 599.2477269999999zM100.53762400000005 661.054062C100.53762400000005 661.054062 100.53762400000005 661.054062 100.53762400000005 661.054062 100.53762400000005 661.054062 100.53762400000005 661.054062 100.53762400000005 661.054062zM100.74228 720.404517L100.74228 720.404517 100.74228 720.404517zM660.990107 739.9449716666666c8.697911 0 17.498151-0.511642 25.684421-2.353553 12.279404-2.865194 23.22854-8.18627 34.382332-16.679524 15.144599-11.460777 26.196063-29.572899 32.02878-52.187469 3.479165-13.405016 2.967523-28.651944 2.558209-42.05696-0.102328-4.195463-0.204657-8.083941-0.204657-11.665434l0-37.759169 101.407415 70.401919 25.479764 17.60048c0.511642 0.306985 1.330269 1.023284 2.148896 1.637254 4.40012 3.376836 11.051464 8.595583 20.977316 11.051464 3.274508 0.818627 6.549016 1.22794 10.02818 1.22794 9.618867 0 19.44239-3.274508 27.730987999999996-9.311882 18.82842-13.916657999999998 18.726092-35.405616 18.726092-51.061857 0-1.023284 0-2.148896 0-3.172179l0-409.620466c0-15.963226 0.102328-37.963825-19.647047-51.982812-6.753672-4.809433-16.679524-8.390926-27.219346-8.390926-5.01409 0-10.130509 0.818627-15.144599 2.762866-7.162986 2.762866-12.279404 6.856000999999999-16.065554 9.823524-0.920955 0.716299-1.841911 1.432597-2.353553 1.841911l-24.968122 17.395823-101.10043 70.094934 0-37.963825c0-3.581493 0.102328-7.367643 0.204657-11.460777 0.409313-14.735285 0.818627-29.982212-2.865194-43.796542-5.62806-21.488957999999997-16.679524-39.396423-31.107825-50.447886-7.879285-6.037374-18.930748-13.405016-34.075347-16.986509-7.776956-1.841911-16.167882-2.353553-24.45648-2.353553-4.297792 0-8.595583 0.102328-12.688718 0.204657-3.683821 0.102328-7.162986 0.204657-10.232837 0.204657L167.15339300000005 84.94107466666674c-1.944239 0-3.888478 0-5.832717 0-1.944239 0-3.990806 0-5.935045 0-16.577196 0-33.461377 0.61397-47.787349 6.549016-27.935644999999997 11.563106-46.764065 37.759169-53.006096 73.574098l-0.409313 2.251224 0 2.353553c-0.102328 18.930748-0.204657 37.861497-0.306985 56.792245l0 0.511642L53.87588699999998 598.0155226666666c0 4.40012-0.102328 8.902568-0.102328 13.712001999999998-0.306985 27.01469-0.716299 54.950335 9.311882 76.643949 9.823524 21.284300999999996 27.526331999999996 38.066154 48.708304 45.945438 5.730389 2.148896 11.051464 2.762866 15.04227 3.172179 1.023284 0.102328 2.353553 0.306985 3.069851 0.409313l4.093135 1.534926 500.9997 0c3.581493 0 7.572299 0.102328 11.767763 0.306985C651.166583 739.7403146666667 656.078345 739.9449716666666 660.990107 739.9449716666666M304.273409 266.7785886666668L559.889677 394.2797376666667l0 33.973019L304.273409 555.9585626666667 304.273409 266.7785886666668M660.990107 780.8763196666666c-5.62806 0-10.949136-0.204657-15.758569-0.306985-3.888478-0.102328-7.469971-0.204657-10.437494-0.204657L133.79434400000002 780.3646776666667l-7.265314 0-6.446687-2.353553c-5.3210749999999996-0.61397-13.609673-1.841911-22.716898-5.218747-31.210153-11.665434-57.303887-36.121915-71.629859-67.229739-13.814329999999998-30.084541-13.405016-64.159888-12.995703-94.244429 0.102328-4.604777 0.102328-9.004897 0.102328-13.20036l0-371.349655 0-0.102328 0-0.102328 0-0.511642c0.102328-18.930748 0.204657-37.861497 0.306985-56.792245l0-2.251224 0-3.479165 0.61397-3.376836 0.409313-2.251224c4.195463-23.944839 12.791046-45.126811 25.479764-62.727291 13.609673-18.82842 31.107825-32.847407 52.08514-41.545318 21.488957999999997-8.902568 44.001199-9.618867 63.443589-9.618867 2.046567 0 4.093135 0 6.139702 0 1.841911 0 3.78615 0 5.62806 0l473.166384 0c2.558209 0 5.62806-0.102328 9.004897-0.204657 4.195463-0.102328 8.902568-0.306985 13.916657999999998-0.306985 13.302688 0 24.149495 1.125612 33.973019 3.479165 22.819227 5.423404 39.089437 16.474868 49.322274 24.251824 21.693613999999997 16.577196 37.963825 42.363944999999994 45.84311 72.653143 2.251224 8.595583 3.376836 17.088838 3.990806 25.377436l36.838213-25.582093 24.558809-17.088838c0.306985-0.204657 0.61397-0.511642 0.920955-0.716299 4.809433-3.683821 13.609673-10.642149999999999 26.400719-15.656241 9.516538-3.683821 19.647047-5.62806 30.084541-5.62806 18.009793 0 36.53122799999999 5.832717 50.8572 15.963226 16.577196 11.767763 27.730987999999996 27.935644999999997 33.052064 48.094334 3.78615 14.4283 3.78615 27.628659999999996 3.78615 37.34985499999999l0 409.518137c0 0.920955 0 1.739582 0 2.660538l0 0.409313c0 9.41421 0.102328 22.409913-3.479165 36.53122799999999-5.116419 19.749375-15.758569 35.81493-31.721795 47.68502-15.144599 11.153792-33.666034 17.293495-52.08514 17.293495-6.753672 0-13.507345-0.818627-19.954032-2.455881-18.21445-4.604777-30.289198-13.916657999999998-36.019586-18.419107l0 0c-0.204657-0.204657-0.511642-0.409313-0.716299-0.511642l-25.172779-17.293495-0.102328 0-0.102328 0-37.14519799999999-25.786749c-0.511642 7.674628-1.637254 15.553912-3.683821 23.433197-8.18627 31.721795-24.354152 57.508544-46.866394 74.597382-15.758569 11.972419-32.02878 19.851704-49.833916 23.944839C685.8559009999999 779.7507076666667 674.702109 780.8763196666666 660.990107 780.8763196666666L660.990107 780.8763196666666zM345.204757 332.9850436666668L345.204757 489.75210666666663l157.074048-78.48586L345.204757 332.9850436666668 345.204757 332.9850436666668zM347.455981 429.177975L347.455981 308.02118499999995 347.455981 429.177975Z"
+                   horiz-adv-x="1024"/>
+
+
+            <glyph glyph-name="headset" unicode="&#59132;"
+                   d="M356.285031 2.1522690000000466L356.396571 2.1522690000000466 356.396571 285.236626 253.462201 285.236626 253.462201 2.1522690000000466ZM665.076886 285.236626l103.042841 0 0-283.08538-103.042841 0 0 283.08538ZM63.809793 301.950286c0-38.758746-3.195785-112.220874 5.457292-148.208507l65.735144 0c-10.112312 35.644825-7.747451 109.176538-7.747451 148.208507 0 219.937155 172.264389 398.231887 384.763131 398.231887 212.498742 0 384.763131-178.294732 384.763131-398.231887 0-39.031968 2.266623-112.563682-7.845689-148.208507l65.735144 0c8.653077 35.987632 5.555529 109.449761 5.555529 148.208507 0 256.20415-200.670346 463.898469-448.208115 463.898469C264.479115 765.848755 63.809793 558.1544349999999 63.809793 301.950286z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="left" unicode="&#58883;" d="M740.352 721.9189759999999L683.126784 780.926976 283.648 383.99795200000005 683.123712-12.925952000000052 740.352 46.07795199999998 404.48 383.99795200000005Z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="cart-simple" unicode="&#59032;" d="M235.097303 196.866982C247.384597 160.417152 286.382106 132.37606800000003 324.772759 132.37606800000003L861.658537 132.37606800000003 880.429732 132.37606800000003 885.649214 150.54185399999994 1009.08775 580.154957C1021.388907 622.967661 993.187631 660.786325 949.051586 660.786325L424.585365 660.786325C410.791718 660.786325 399.609756 649.5207379999999 399.609756 635.623932 399.609756 621.727125 410.791718 610.461538 424.585365 610.461538L949.051586 610.461538C959.924 610.461538 964.161052 604.779539 961.106394 594.148171L837.667859 164.53506800000002 861.658537 182.70085500000005 324.772759 182.70085500000005C307.742153 182.70085500000005 287.789837 197.04752900000005 282.395194 213.05054900000005L73.600164 832.433664C69.16437 845.592294 54.980454 852.636656 41.919502 848.167687 28.858551 843.698719 21.86648 829.408727 26.302275 816.250097L235.097303 196.866982ZM399.609756-6.017094000000043C399.609756 49.57012899999995 354.881911 94.63247799999999 299.707317 94.63247799999999 244.532723 94.63247799999999 199.804878 49.57012899999995 199.804878-6.017094000000043 199.804878-61.604318000000035 244.532723-106.66666699999996 299.707317-106.66666699999996 354.881911-106.66666699999996 399.609756-61.604318000000035 399.609756-6.017094000000043ZM249.756098-6.017094000000043C249.756098 21.77651800000001 272.120021 44.30769299999997 299.707317 44.30769299999997 327.294613 44.30769299999997 349.658537 21.77651800000001 349.658537-6.017094000000043 349.658537-33.810704999999984 327.294613-56.34187899999995 299.707317-56.34187899999995 272.120021-56.34187899999995 249.756098-33.810704999999984 249.756098-6.017094000000043ZM924.097562-6.017094000000043C924.097562 49.57012899999995 879.369715 94.63247799999999 824.195121 94.63247799999999 769.020529 94.63247799999999 724.292683 49.57012899999995 724.292683-6.017094000000043 724.292683-61.604318000000035 769.020529-106.66666699999996 824.195121-106.66666699999996 879.369715-106.66666699999996 924.097562-61.604318000000035 924.097562-6.017094000000043ZM774.243902-6.017094000000043C774.243902 21.77651800000001 796.607825 44.30769299999997 824.195121 44.30769299999997 851.782419 44.30769299999997 874.146342 21.77651800000001 874.146342-6.017094000000043 874.146342-33.810704999999984 851.782419-56.34187899999995 824.195121-56.34187899999995 796.607825-56.34187899999995 774.243902-33.810704999999984 774.243902-6.017094000000043Z"  horiz-adv-x="1024" />
+            <glyph glyph-name="cellphone-fine" unicode="&#58939;"
+                   d="M731.514252 896L292.485748 896C195.323702 896 116.154627 816.830925 116.154627 719.6688790000001l0-671.337759c0-97.162046 79.169075-176.331121 176.331121-176.331121l438.628661 0c97.162046 0 176.331121 79.169075 176.331121 176.331121L907.445529 719.6688790000001C907.845373 816.830925 828.676298 896 731.514252 896zM292.485748 853.216712l438.628661 0c70.772355 0 128.349863-55.178446 133.147989-124.751269L159.737602 728.465443C164.135884 798.038266 222.113237 853.216712 292.485748 853.216712zM865.062085 48.73096399999997c0-73.571261-59.976572-133.547833-133.547833-133.547833L292.485748-84.816868c-73.571261 0-133.547833 59.976572-133.547833 133.547833l0 45.582194 705.724326 0L864.662241 48.73096399999997zM865.062085 137.096447L158.937915 137.096447 158.937915 685.682155l705.724326 0L864.662241 137.096447zM512-54.82858299999998c13.59469 0 26.789535 5.597813 36.385787 15.194065 9.596251 9.596251 15.194065 22.791097 15.194065 36.385787 0 13.59469-5.597813 26.789535-15.194065 36.385787-9.596251 9.596251-22.791097 15.194065-36.385787 15.194065-13.59469 0-26.789535-5.597813-36.385787-15.194065-9.596251-9.596251-15.194065-22.791097-15.194065-36.385787 0-13.59469 5.597813-26.789535 15.194065-36.385787C485.210465-49.23076900000001 498.40531-54.82858299999998 512-54.82858299999998z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="face-cry" unicode="&#59036;" d="M1024 384C1024 666.769792 794.769792 896 512 896 229.230208 896 0 666.769792 0 384 0 101.23020799999995 229.230208-128 512-128 629.410831-128 740.826187-88.33104600000001 830.768465-16.686661999999956 841.557579-8.092490999999995 843.33693 7.620766000000003 834.742758 18.409879000000046 826.148587 29.198990999999978 810.43533 30.978341999999998 799.646219 22.384173000000033 718.470035-42.277495000000044 618.001779-78.04878099999996 512-78.04878099999996 256.817504-78.04878099999996 49.951219 128.81750399999999 49.951219 384 49.951219 639.182496 256.817504 846.048781 512 846.048781 767.182496 846.048781 974.048781 639.182496 974.048781 384 974.048781 296.507166 949.714859 212.66323599999998 904.470807 140.039307 897.177109 128.33175700000004 900.755245 112.92820300000005 912.462793 105.63450699999999 924.170342 98.34080900000004 939.573897 101.91894200000002 946.867595 113.62649199999998 997.013826 194.11920399999997 1024 287.101621 1024 384ZM337.170731 396.487806C371.654852 396.487806 399.609756 424.442709 399.609756 458.926829 399.609756 493.41095 371.654852 521.365854 337.170731 521.365854 302.686611 521.365854 274.731708 493.41095 274.731708 458.926829 274.731708 424.442709 302.686611 396.487806 337.170731 396.487806ZM711.804879 396.487806C746.288998 396.487806 774.243902 424.442709 774.243902 458.926829 774.243902 493.41095 746.288998 521.365854 711.804879 521.365854 677.320757 521.365854 649.365854 493.41095 649.365854 458.926829 649.365854 424.442709 677.320757 396.487806 711.804879 396.487806ZM352.788105 191.21547499999997C396.165222 225.91716899999994 453.151987 246.639629 524.487806 246.639629 595.823622 246.639629 652.810387 225.91716899999994 696.187505 191.21547499999997 722.700531 170.00505399999997 738.882517 148.42907300000002 746.631548 132.931012 752.800254 120.59359800000004 747.799529 105.59142399999996 735.462114 99.42271600000004 723.124702 93.25401 708.122526 98.25473499999998 701.953818 110.59214899999995 701.03616 112.42746499999998 698.492224 116.61747600000001 694.165854 122.38597100000004 686.602473 132.47047699999996 676.927317 142.654852 664.983226 152.21012499999995 630.311565 179.947456 584.273939 196.68840999999998 524.487806 196.68840999999998 464.70167 196.68840999999998 418.664045 179.947456 383.992384 152.21012499999995 372.048292 142.654852 362.373137 132.47047699999996 354.809756 122.38597100000004 350.483386 116.61747600000001 347.93945 112.42746499999998 347.021792 110.59214899999995 340.853084 98.25473499999998 325.850908 93.25401 313.513495 99.42271600000004 301.176081 105.59142399999996 296.175356 120.59359800000004 302.344062 132.931012 310.093092 148.42907300000002 326.275078 170.00505399999997 352.788105 191.21547499999997Z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="face-smile" unicode="&#59055;" d="M1024 384C1024 666.769792 794.769792 896 512 896 229.230208 896 0 666.769792 0 384 0 101.23020799999995 229.230208-128 512-128 629.410831-128 740.826187-88.33104600000001 830.768465-16.686661999999956 841.557579-8.092490999999995 843.33693 7.620766000000003 834.742758 18.409879000000046 826.148587 29.198990999999978 810.43533 30.978341999999998 799.646219 22.384173000000033 718.470035-42.277495000000044 618.001779-78.04878099999996 512-78.04878099999996 256.817504-78.04878099999996 49.951219 128.81750399999999 49.951219 384 49.951219 639.182496 256.817504 846.048781 512 846.048781 767.182496 846.048781 974.048781 639.182496 974.048781 384 974.048781 296.507166 949.714859 212.66323599999998 904.470807 140.039307 897.177109 128.33175700000004 900.755245 112.92820300000005 912.462793 105.63450699999999 924.170342 98.34080900000004 939.573897 101.91894200000002 946.867595 113.62649199999998 997.013826 194.11920399999997 1024 287.101621 1024 384ZM337.170731 396.487806C371.654852 396.487806 399.609756 424.442709 399.609756 458.926829 399.609756 493.41095 371.654852 521.365854 337.170731 521.365854 302.686611 521.365854 274.731708 493.41095 274.731708 458.926829 274.731708 424.442709 302.686611 396.487806 337.170731 396.487806ZM711.804879 396.487806C746.288998 396.487806 774.243902 424.442709 774.243902 458.926829 774.243902 493.41095 746.288998 521.365854 711.804879 521.365854 677.320757 521.365854 649.365854 493.41095 649.365854 458.926829 649.365854 424.442709 677.320757 396.487806 711.804879 396.487806ZM352.788105 127.22903299999996C396.165222 92.52733899999998 453.151987 71.80487900000003 524.487806 71.80487900000003 595.823622 71.80487900000003 652.810387 92.52733899999998 696.187505 127.22903299999996 722.700531 148.43945399999996 738.882517 170.01543500000002 746.631548 185.51349500000003 752.800254 197.850908 747.799529 212.85308399999997 735.462114 219.021792 723.124702 225.19049800000005 708.122526 220.18977299999995 701.953818 207.85235799999998 701.03616 206.01704299999994 698.492224 201.82703100000003 694.165854 196.058537 686.602473 185.97402899999997 676.927317 175.78965500000004 664.983226 166.23438299999998 630.311565 138.49705200000005 584.273939 121.75609799999995 524.487806 121.75609799999995 464.70167 121.75609799999995 418.664045 138.49705200000005 383.992384 166.23438299999998 372.048292 175.78965500000004 362.373137 185.97402899999997 354.809756 196.058537 350.483386 201.82703100000003 347.93945 206.01704299999994 347.021792 207.85235799999998 340.853084 220.18977299999995 325.850908 225.19049800000005 313.513495 219.021792 301.176081 212.85308399999997 296.175356 197.850908 302.344062 185.51349500000003 310.093092 170.01543500000002 326.275078 148.43945399999996 352.788105 127.22903299999996Z"  horiz-adv-x="1024" />
+            <glyph glyph-name="add-1" unicode="&#58964;"
+                   d="M566.935 57.63900000000001c0-30.366-24.612-54.972-54.935-54.972v0c-30.384 0-54.996 24.612-54.996 54.972v610.057c0 30.361 24.612 54.972 54.996 54.972v0c30.33 0 54.935-24.612 54.935-54.972v-610.057zM817.004 417.633c30.384 0 54.996-24.606 54.996-54.966v0c0-30.354-24.612-54.966-54.996-54.966h-610.062c-30.33 0-54.942 24.612-54.942 54.966v0c0 30.359 24.612 54.966 54.942 54.966h610.062zM817.004 417.633z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="survey" unicode="&#59058;" d="M722.355804 849.454545C761.006291 849.454545 792.380951 818.166023 792.380951 779.627344L792.380951 437.500928 799.081094 453.813218 401.874746 51.22138 418.539682 58.181818 138.070006 58.181818C99.387643 58.181818 68.063492 89.328555 68.063492 127.771428L68.063492 872.727273 44.698413 849.454545 722.355804 849.454545ZM21.333333 896 21.333333 872.727273 21.333333 127.771428C21.333333 63.604277 73.59726 11.636363 138.070006 11.636363L418.539682 11.636363 428.337293 11.636363 435.204619 18.596802 832.410967 421.18864 839.11111 427.979625 839.11111 437.500928 839.11111 779.627344C839.11111 843.859757 786.827324 896 722.355804 896L44.698413 896 21.333333 896ZM775.859347 307.365395 759.337741 290.90909 775.859347 274.452787 869.319663 181.361879 885.841269 164.905574 902.362876 181.361879 972.458114 251.18006 988.979721 267.636363 972.458114 284.092668 878.997796 377.183575 862.47619 393.639878 845.954583 377.183575 775.859347 307.365395ZM845.954583 344.27097 939.414901 251.18006 939.414901 284.092668 869.319663 214.274485 902.362876 214.274485 808.902558 307.365395 808.902558 274.452787 878.997796 344.27097 845.954583 344.27097ZM518.843473 51.365395 513.841133 46.382827 512.453734 39.473248 489.088655-76.890387 482.215251-111.121568 516.58227-104.275332 633.407665-81.002605 640.344663-79.620689 645.347004-74.638121 902.362876 181.361879 918.884482 197.818182 902.362876 214.274485 808.902558 307.365395 792.380951 323.821698 775.859347 307.365395 518.843473 51.365395ZM775.859347 274.452787 869.319663 181.361879 869.319663 214.274485 612.303791-41.725515 624.243127-35.361033 507.41773-58.633758 534.911345-86.018703 558.276425 30.344934 551.886686 18.452787 808.902558 274.452787 775.859347 274.452787ZM426.576706 298.269073C444.201086 298.269073 458.488469 284.053815 458.488469 266.500753L458.488469 258.086116C458.488469 240.540958 444.323959 226.317797 426.576706 226.317797L426.576706 226.317797C408.952326 226.317797 394.664943 240.533054 394.664943 258.086116L394.664943 266.500753C394.664943 284.045911 408.829453 298.269073 426.576706 298.269073L426.576706 298.269073ZM278.349205 552.435127C278.349205 552.435127 280.851125 530.485568 305.477133 530.485568 330.103138 530.485568 331.559155 552.435127 331.559155 552.435127 329.927383 623.508937 362.988497 657.25782 430.67155 653.905282 475.722639 648.839223 499.06407 623.508937 500.624896 577.839917 497.503245 557.501184 480.405116 531.202385 449.969026 499.092521 409.671358 458.489557 389.522524 422.133143 389.522524 390.023279L389.522524 357.093903C389.522524 357.093903 392.614705 337.454532 414.885933 337.454532 437.157161 337.454532 440.249342 357.093903 440.249342 357.093903L440.249342 379.965664C440.249342 406.785969 459.546816 439.044836 498.21271 476.369762 538.652271 513.471183 558.730159 547.369069 558.730159 577.839917 555.395669 662.323878 511.195938 706.353877 425.776235 709.780917 327.515198 711.419936 278.349205 658.971339 278.349205 552.435127Z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="tree" unicode="&#58926;" d="M962.691679 258.53447400000005c-8.721639 54.163597-34.298154 97.584526-73.089645 133.8638-44.721551 41.825594-99.282191 65.724911-156.512636 84.432994-26.935466 8.80555-54.079686 16.971533-81.129762 25.427112 41.188074 7.485485 81.495082 10.991332 121.872698 12.269441 39.906895 1.26276 79.885422 0.276293 120.633475 0.276293-30.644951 44.233434-74.588789 71.110571-127.260405 84.384899-53.004191 13.357216-103.742782 9.715269-152.261822-32.081673 18.715247 66.336848 12.464893 120.18936-38.810934 160.830989-32.450063 25.719778-77.127611 31.000038-111.319341 14.916734 58.583257-31.127951 82.051761-84.265172 94.304829-145.102772-44.638663 69.056795-110.067838 96.432283-187.710173 86.487793-56.123228-7.187703-110.723777-26.270317-166.003801-40.048111 15.677051-14.358009 31.136138-24.116257 47.932686-27.839045 51.427276-11.399631 103.405091-20.301372 155.098427-30.524201 37.036521-7.323802 75.163887-12.144598 104.448864-40.879036-78.096682 23.458271-155.928329 30.034037-235.541551 9.092076C186.718589 530.20385 104.838743 479.821369 81.996502 429.437865c46.955428 23.955598 95.807043 18.776645 144.606469 17.139356 37.737486-1.266853 76.089979-3.461845 113.238041 1.594311 52.683896 7.170307 104.513332 20.624736 159.209048 31.909757-91.88164-62.077847-186.516997-122.342396-159.194722-259.889075 58.852386 100.205213 163.392324 150.107763 229.951229 238.105956-16.239869-91.498924 6.980995-169.376619 66.432015-237.83785 41.815361-48.152696 89.979314-92.010577 110.706381-156.013263 12.758582 141.877311-25.823132 270.789333-97.911984 396.334677C755.996107 391.809873 858.199837 325.909977 962.691679 258.53447400000005zM513.476631 320.10169099999996c-27.767414-14.065344-39.008432-35.954887-42.252313-64.998363-6.078439-54.437843-15.162328-108.532879-21.799492-162.916487-3.90903-32.026414-5.519714-64.333214-8.16496-96.53052 30.078039 0 55.507198 0 79.961146 0 9.912767 78.200036 19.732413 154.247037 28.913517 230.369761 0.883113 7.322779-0.756223 15.746636-3.705392 22.591531C536.246217 272.25086999999996 524.967336 295.41135899999995 513.476631 320.10169099999996z"  horiz-adv-x="1024" />
+            <glyph glyph-name="face-smile-b" unicode="&#58960;"
+                   d="M511.931733-128c-136.738133 0-265.284267 53.213867-361.984 149.879467C53.282133 118.51093300000002 0 247.09119999999996 0 384c0 136.738133 53.282133 265.3184 150.050133 362.0864C246.749867 842.683733 375.296 896 512.136533 896s265.4208-53.316267 362.1888-149.9136c199.645867-199.714133 199.543467-524.5952 0-724.206933C777.454933-74.71786699999996 648.772267-128 511.931733-128L511.931733-128 511.931733-128 511.931733-128 511.931733-128 511.931733-128zM512.034133 829.303467c-118.920533 0-230.741333-46.2848-314.914133-130.389333C113.083733 614.8778669999999 66.7648 502.8864 66.7648 384c0-118.9888 46.2848-230.912 130.3552-315.016533 84.0704-84.0704 195.857067-130.321067 314.811733-130.321067 119.022933 0 230.946133 46.318933 315.016533 130.423467 173.704533 173.636267 173.704533 456.157867 0 629.794133C742.877867 782.984533 631.057067 829.303467 512.034133 829.303467L512.034133 829.303467 512.034133 829.303467 512.034133 829.303467 512.034133 829.303467 512.034133 829.303467zM330.103467 244.25813300000004c0 0 59.904-95.9488 181.828267-95.9488s201.8304 95.9488 201.8304 95.9488 45.294933 0.136533 45.192533-47.957333c0 0-78.506667-111.8208-247.022933-111.8208s-223.368533 111.8208-223.368533 111.8208S286.856533 244.25813300000004 330.103467 244.25813300000004L330.103467 244.25813300000004 330.103467 244.25813300000004 330.103467 244.25813300000004 330.103467 244.25813300000004zM363.2128 548.590933c-34.5088 0-62.702933-28.091733-62.702933-62.737067 0-34.679467 28.194133-62.6688 62.702933-62.6688 34.679467 0 62.702933 28.091733 62.702933 62.6688C425.915733 520.4992 397.858133 548.590933 363.2128 548.590933L363.2128 548.590933 363.2128 548.590933 363.2128 548.590933 363.2128 548.590933 363.2128 548.590933zM684.544 548.590933c-34.679467 0-62.702933-28.091733-62.702933-62.737067 0-34.679467 28.023467-62.6688 62.702933-62.6688 34.6112 0 62.600533 28.091733 62.600533 62.6688C747.144533 520.4992 719.121067 548.590933 684.544 548.590933L684.544 548.590933 684.544 548.590933 684.544 548.590933 684.544 548.590933 684.544 548.590933zM684.544 548.590933"
+                   horiz-adv-x="1025"/>
 
-    
-    <glyph glyph-name="upload-circle" unicode="&#58927;" d="M512-128c282.768 0 512 229.216 512 512C1024 666.768 794.768 896 512 896 229.216 896 0 666.768 0 384 0 101.21600000000001 229.216-128 512-128zM512 848c256.272 0 464-207.744 464-464 0-256.272-207.728-464-464-464S48 127.72799999999995 48 384C48 640.256 255.728 848 512 848zM377.728 534.544L480 534.544l0-478c0-17.664 14.336-32 32-32s32 14.336 32 32L544 534.544l102.272 0c17.616 0 23.424 11.568 12.944 25.68l-128.128 172.624c-10.496 14.128-27.664 14.128-38.16 0L364.8 560.24C354.32 546.1120000000001 360.128 534.544 377.728 534.544z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="add-circle" unicode="&#58911;" d="M675.04 412.736l-127.04 0 0 127.264c0 20.064-16.288 36.32-36.32 36.32-20.064 0-36.32-16.192-36.32-36.32l0-127.232-127.072 0c-20.064 0-36.352-16.32-36.352-36.352 0-20.064 16.224-36.352 36.352-36.352l127.072 0 0-127.232c0-20 16.256-36.384 36.32-36.384 20.032 0 36.32 16.256 36.32 36.384l0 127.136 127.04 0c19.968 0 36.352 16.256 36.352 36.384C711.36 396.448 695.136 412.736 675.04 412.736L675.04 412.736zM511.328 830.56c-250.24 0-453.952-203.616-453.952-453.952 0-250.336 203.712-453.952 453.952-453.952 250.336 0 453.984 203.584 453.984 453.952C965.312 626.944 761.696 830.56 511.328 830.56L511.328 830.56zM511.328-20.576000000000022c-219.04 0-397.184 178.176-397.184 397.152 0 219.104 178.144 397.216 397.184 397.216s397.216-178.112 397.216-397.216C908.576 157.63199999999995 730.368-20.576000000000022 511.328-20.576000000000022L511.328-20.576000000000022zM511.328-20.576000000000022"  horiz-adv-x="1024" />
+            <glyph glyph-name="fonts-html" unicode="&#58955;"
+                   d="M194.33 416.235h-101.295v101.28h-46.035v-267.03h46.035v119.7h101.28v-119.7h46.035v267.03h-46.035v-101.28zM277.205 480.69h73.665v-230.205h46.035v230.205h73.665v36.825h-193.365v-36.825zM627.815 335.58000000000004l-46.755 181.935h-73.665v-267.03h46.035v211.785l46.035-211.785h55.245l46.83 213.93-0.795-213.93h46.035v267.03h-73.665l-45.3-181.935zM848.09 287.30999999999995v230.205h-46.035v-267.03h174.945v36.825h-128.91z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="download-circle" unicode="&#58881;" d="M510.771521 828.211081c-244.998947 0-443.597097-198.60429-443.597097-443.590957s198.59815-443.591981 443.597097-443.591981c244.986667 0 443.583794 198.60429 443.583794 443.591981S755.758188 828.211081 510.771521 828.211081zM510.771521-30.044013999999947c-229.010811 0-414.664138 185.65435-414.664138 414.664138 0 229.010811 185.653327 414.657998 414.664138 414.657998 228.996484 0 414.652881-185.647187 414.652881-414.657998C925.424402 155.60931300000004 739.768005-30.044013999999947 510.771521-30.044013999999947zM662.749888 352.39518799999996L537.719266 245.82501100000002l0 324.388065c0 14.887059-12.06478 26.953885-26.947745 26.953885-14.894222 0-26.961048-12.066827-26.961048-26.953885l0-325.410348L357.936647 352.39518799999996c-10.56359 10.599406-27.693736 10.599406-38.267559 0-10.56359-10.596336-10.56359-27.777647 0-38.375006l170.181961-161.220868c5.629207-5.652743 13.111622-8.060583 20.49887-7.680936 7.373944-0.379647 14.859429 2.02717 20.488637 7.680936l170.181961 161.220868c10.562567 10.597359 10.562567 27.77867 0 38.375006C690.443623 362.99561700000004 673.313477 362.99561700000004 662.749888 352.39518799999996z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="templeate-1" unicode="&#58928;" d="M320 384L106.666667 384c-35.349333 0-64-28.650667-64-64l0-213.333333c0-35.349333 28.650667-64 64-64l213.333333 0c35.349333 0 64 28.650667 64 64L384 320C384 355.349333 355.349333 384 320 384zM256 341.33333300000004l0-256L170.666667 85.33333300000004 170.666667 341.33333300000004 256 341.33333300000004zM85.333333 106.66666699999996L85.333333 320c0 11.754667 9.578667 21.333333 21.333333 21.333333l42.666667 0 0-256L106.666667 85.33333300000004C94.912 85.33333300000004 85.333333 94.91200000000003 85.333333 106.66666699999996zM341.333333 106.66666699999996c0-11.754667-9.578667-21.333333-21.333333-21.333333l-42.666667 0L277.333333 341.33333300000004l42.666667 0c11.754667 0 21.333333-9.578667 21.333333-21.333333L341.333333 106.66666699999996zM576 554.666667L234.666667 554.666667c-47.061333 0-85.333333-38.272-85.333333-85.333333l0-42.666667 42.666667 0 0 42.666667c0 23.530667 19.136 42.666667 42.666667 42.666667l42.666667 0 0-96 21.333333 0L298.666667 512l213.333333 0 0-426.666667-85.333333 0-21.333333-42.666667 170.666667 0c47.061333 0 85.333333 38.272 85.333333 85.333333L661.333333 469.333333C661.333333 516.394667 623.061333 554.666667 576 554.666667zM618.666667 128c0-23.530667-19.136-42.666667-42.666667-42.666667l-42.666667 0L533.333333 512l42.666667 0c23.530667 0 42.666667-19.136 42.666667-42.666667L618.666667 128zM853.333333 42.66666699999996c47.061333 0 85.333333 38.272 85.333333 85.333333L938.666667 640c0 47.061333-38.272 85.333333-85.333333 85.333333L341.333333 725.333333c-47.061333 0-85.333333-38.272-85.333333-85.333333l0-42.666667 42.666667 0 0 42.666667c0 23.530667 19.136 42.666667 42.666667 42.666667l85.333333 0 0-85.333333 21.333333 0 0 85.333333 298.666667 0 0-597.333333-42.666667 0-21.333333-42.666667L853.333333 42.66666699999996zM896 128c0-23.530667-19.136-42.666667-42.666667-42.666667l-85.333333 0L768 682.666667l85.333333 0c23.530667 0 42.666667-19.136 42.666667-42.666667L896 128z"  horiz-adv-x="1024" />
+            <glyph glyph-name="screen-full" unicode="&#58914;"
+                   d="M641.750109 511.899972l205.227128 204.519-0.704035-115.89966c-0.282433-9.611915 7.489578-18.09103 17.101493-17.808598l12.297071 0c9.611915 0.283456 17.667382 5.936199 17.808598 15.689331l0.565888 172.57752c0 0.14224 0.282433 9.187243 0.282433 9.187243 0.14224 4.804423-0.99056 9.187243-4.100388 12.297071-3.109828 3.109828-7.347339 5.086855-12.297071 4.946662l-8.763594-0.14224c-0.141216 0-0.278339 0-0.420579-0.14224L697.581696 797.833213c-9.611915-0.283456-17.667382-8.200776-17.808598-17.950837l0-12.297071c1.416256-11.44875 10.458189-18.092054 20.070104-17.808598l112.789832-0.283456-204.66124-203.814965c-9.329483-9.329483-9.329483-24.449855 0-33.778314 9.329483-9.470699 24.452925-9.470699 33.782408 0L641.750109 511.899972zM383.095141 319.11010699999997L177.726797 115.29411900000002l0.707105 115.338888c0.283456 9.607822-7.492648 18.086937-17.104563 17.808598l-13.001105 0c-9.611915-0.283456-17.667382-5.937223-17.808598-15.690354l-0.565888-172.718737c0-0.14224-0.282433-9.187243-0.282433-9.187243-0.14224-4.808516 0.99056-9.187243 4.096295-12.297071 3.109828-3.109828 7.351432-5.086855 12.297071-4.946662l8.762571 0.14224c0.14224 0 0.283456 0 0.425695 0.14224l171.873486-0.708128c9.607822 0.283456 17.667382 8.196683 17.808598 17.950837L344.93503 63.42477399999996c-1.415232 11.44875-10.461259 18.092054-20.074198 17.808598L212.069977 81.51682800000003 416.59 285.32872299999997c9.329483 9.329483 9.329483 24.453948 0 33.782408C407.40685 328.58182999999997 392.424624 328.58182999999997 383.095141 319.11010699999997L383.095141 319.11010699999997zM894.047276 60.03251399999999l-0.424672 172.718737c-0.283456 9.612938-8.200776 15.406898-17.809621 15.690354l-12.296047 0c-9.612938 0.278339-17.243733-8.200776-17.105586-17.808598l0.708128-115.903753L641.750109 319.11010699999997c-9.329483 9.329483-24.452925 9.329483-33.782408 0-9.325389-9.328459-9.325389-24.452925 0-33.782408L812.490795 81.51682800000003l-112.789832-0.283456c-9.611915 0.283456-18.515702-6.502088-20.073174-17.808598l0-12.297071c0.282433-9.611915 8.200776-17.667382 17.808598-17.950837l171.166381 0.708128c0.141216 0 0.282433-0.14224 0.424672-0.14224l8.763594-0.14224c4.803399-0.141216 9.187243 1.694595 12.296047 4.946662 3.109828 3.109828 4.238534 7.488555 4.097318 12.297071 0 0-0.14224 9.046027-0.14224 9.187243L894.047276 60.03149099999996zM212.216309 749.493252l112.789832 0.283456c9.607822-0.283456 18.512632 6.502088 20.070104 17.808598L345.076246 779.883399c-0.283456 9.611915-8.196683 17.667382-17.808598 17.950837l-172.011632-0.708128c-0.14224 0-0.283456 0.14224-0.425695 0.14224l-8.761548 0.14224c-4.808516 0.141216-9.187243-1.694595-12.297071-4.946662-3.109828-3.109828-4.242627-7.488555-4.096295-12.297071 0 0 0.282433-9.046027 0.282433-9.187243l0.420579-172.718737c0.14224-9.608845 8.200776-15.406898 17.808598-15.686261l13.005198 0c9.611915-0.282433 17.242709 8.196683 17.10047 17.808598l-0.564865 115.334795 205.231221-203.958228c9.324366-9.329483 24.448832-9.329483 33.777291 0 9.329483 9.329483 9.329483 24.452925 0 33.782408L212.216309 749.493252 212.216309 749.493252zM212.216309 749.493252"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="util" unicode="&#58929;" d="M282.127566 639.0826059999999c-13.120832-13.221116-30.625508-20.50808-49.278333-20.50808-18.618033 0-36.157501 7.286963-49.311079 20.50808l-32.885991 33.019021 98.623181 99.027387 32.885991-33.019021c13.186324-13.221116 20.473287-30.829146 20.473287-49.548486C302.599829 669.8769589999999 295.347658 652.26893 282.127566 639.0826059999999L282.127566 639.0826059999999zM249.308089 705.0899489999999l-0.032746 0-32.884968-32.987299c4.418636-4.417613 10.252505-6.845918 16.458857-6.845918 6.206352 0 12.041244 2.428306 16.426111 6.813173 4.418636 4.452405 6.845918 10.288321 6.845918 16.493649C256.121262 694.802652 253.693979 700.671313 249.308089 705.0899489999999L249.308089 705.0899489999999zM396.703067 496.343671L249.578242 638.778684l32.278147 33.626865 147.157571-142.468782L396.703067 496.343671 396.703067 496.343671zM751.45979 133.92852400000004L618.131179 274.071332l32.884968 32.985252 133.330658-140.141784L751.45979 133.92852400000004 751.45979 133.92852400000004zM850.184279 67.95597399999997c-22.700001-22.766516-52.481282-34.168194-82.264609-34.168194-29.714765 0-59.395762 11.333116-81.994456 34.033118L538.194592 222.398462l32.884968 33.021068L718.811206 100.806149c27.117614-27.183106 71.269183-27.116591 98.488105 0.169869 27.186176 27.287483 27.117614 71.773673-0.135076 99.196233l-147.426701 154.273642 32.851199 33.021068 147.461493-154.308435C895.447159 187.557956 895.514697 113.421468 850.184279 67.95597399999997L850.184279 67.95597399999997zM801.716404 468.380806c-30.726815-30.860868-71.605851-47.861054-115.082038-47.861054-43.442418 0-84.321454 16.999163-115.082038 47.861054-30.760584 30.861892-47.692209 71.877027-47.692209 115.521037s16.931624 84.691891 47.692209 115.554806l42.497906 42.666752 32.885991-32.986275-42.497906-42.667775c-21.99085-22.090111-34.099632-51.367925-34.065863-82.566484 0-31.163767 12.108782-60.441581 34.065863-82.499969 21.956058-22.058388 51.16531-34.20094 82.196047-34.20094 31.064506 0 60.239989 12.142551 82.196047 34.20094l42.49893 42.665729 32.884968-33.019021L801.716404 468.380806 801.716404 468.380806zM844.214311 511.049604l-49.311079 49.51267-16.45988-16.493649c-17.538445-17.638729-40.879036-27.352975-65.73719-27.352975l-0.032746 0c-24.824385 0-48.198745 9.713222-65.73719 27.352975-17.539468 17.607006-27.252691 41.082674-27.252691 66.007343 0 24.925692 9.679453 48.400337 27.252691 66.040089l16.458857 16.495696-49.344848 49.51267 32.885991 33.021068 82.196047-82.533738-49.311079-49.482995c-8.769734-8.835226-13.626345-20.571525-13.626345-33.051767 0-12.446473 4.856611-24.183795 13.626345-32.987299 8.768711-8.835226 20.439518-13.69286 32.884968-13.69286 12.411681 0 24.082488 4.857635 32.852222 13.69286l49.344848 49.514717 82.196047-82.534761L844.214311 511.049604 844.214311 511.049604zM233.591129 129.139451l0 46.681182 46.512337 0 0-46.681182L233.591129 129.139451 233.591129 129.139451zM538.160823 356.538555l-92.247984 91.572602 32.717146 33.18889 92.214215-91.539856L538.160823 356.538555 538.160823 356.538555zM304.2187 101.04355599999997l173.634596 239.842507 37.641295-27.454282L338.318332 69.23715300000003c-21.923312-22.057365-51.132564-34.20094-82.19707-34.20094-31.028691 0-60.237943 12.143575-82.196047 34.168194-21.958104 22.057365-34.065863 51.335179-34.065863 82.533738 0 31.198559 12.107759 60.476373 34.065863 82.533738l2.765997 2.360767L417.243893 412.054963l27.353998-37.742603L205.596542 200.00340600000004c-12.411681-13.053294-19.224854-30.119995-19.224854-48.26526 0-18.71934 7.252171-36.291554 20.438495-49.513694C232.747925 76.15265599999998 277.775444 75.71263499999998 304.2187 101.04355599999997L304.2187 101.04355599999997z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="face-surprised" unicode="&#58980;" d="M485.656116-128C221.592397-128 6.762016 86.81718000000001 6.762016 350.87649799999997s214.830381 478.867697 478.8941 478.867697c264.041716 0 478.854495-214.812779 478.854495-478.867697S749.697832-128 485.656116-128zM485.656116 798.834741c-247.024795 0-447.975846-200.959852-447.975846-447.962644 0-247.002792 200.951051-447.962644 447.975846-447.962644 247.002792 0 447.953843 200.959852 447.953843 447.962644C933.609959 597.8748889999999 732.658908 798.834741 485.656116 798.834741zM352.033458 447.380528c0-30.469398-24.682677-55.147675-55.143274-55.147675-30.451796 0-55.143274 24.678276-55.143274 55.147675 0 30.460597 24.691478 55.138874 55.143274 55.138874C327.350781 502.519402 352.033458 477.845526 352.033458 447.380528zM674.417647 502.519402c-30.460597 0-55.156476-24.678276-55.156476-55.138874 0-30.469398 24.695879-55.147675 55.156476-55.147675 30.451796 0 55.143274 24.678276 55.143274 55.147675C729.560922 477.845526 704.869444 502.519402 674.417647 502.519402zM562.005634 165.30976499999997c0-59.733046-34.192262-108.165484-76.349518-108.165484-42.166057 0-76.36272 48.432438-76.36272 108.165484 0 59.724245 34.196663 108.152282 76.36272 108.152282C527.813371 273.45764699999995 562.005634 225.03400999999997 562.005634 165.30976499999997zM835.631745 793.712503c0 0 12.871605 56.819883 41.959231 85.925112 29.083226 29.096427 69.915916 15.124685 78.492585-8.801097 9.461179-26.385689-2.033053-50.069442-29.092027-56.164202C899.404495 808.463141 874.880237 826.192952 835.631745 793.712503zM916.698651 757.570797c0 0 35.767659 20.576965 64.877288 19.393218 29.136032-1.174946 41.431165-29.144833 33.109728-45.110024-9.192746-17.588993-27.054573-22.966463-43.217788-11.797871C954.979023 731.44034 952.453108 752.721393 916.698651 757.570797z"  horiz-adv-x="1024" />
+            <glyph glyph-name="form" unicode="&#58940;"
+                   d="M314.278111 437.019389l395.439892 0 0-30.297458-395.439892 0L314.278111 437.019389zM314.278111 315.83495200000004l395.439892 0 0-30.297458-395.439892 0L314.278111 315.83495200000004zM314.278111 194.62833l263.626661 0 0-30.297458L314.278111 164.330872 314.278111 194.62833zM609.376235 739.9931730000001c-7.849678 42.966669-48.394988 75.742447-97.378777 75.742447-48.961604 0-89.51311-32.775778-97.380776-75.742447L116.55177 739.9931730000001l0-787.725922 790.893774 0 0 787.725922L609.376235 739.9931730000001zM446.091342 670.440529l0 17.613058 0 36.791056c0 33.410348 29.57295 60.594317 65.906116 60.594317 36.352353 0 65.907115-27.183969 65.907115-60.594317l0-36.791056 0-17.621053 16.672696-8.712493c32.358061-16.929922 57.169039-42.663874 71.406386-73.213161L358.043239 588.50688c14.240345 30.555683 39.051523 56.281241 71.408385 73.213161L446.091342 670.440529zM874.489888-17.436289999999985L149.505227-17.436289999999985 149.505227 709.694715 413.138884 709.694715l0-21.641327c-51.44492-26.923746-88.727643-74.124144-98.86377-129.845165l395.44289 0c-10.102151 55.730615-47.40466 102.921419-98.859773 129.845165l0 21.641327 263.631658 0L874.489888-17.436289999999985z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="edit" unicode="&#58946;" d="M769.089 516.251l-125.896 125.89 62.974 62.947c20.866 20.838 54.652 20.838 75.517 0l50.353-50.351c20.865-20.865 20.865-54.703 0-75.567L769.089 516.251zM403.349 150.52700000000004L277.453 276.418 619.706 615.982 745.601 490.09ZM176.314 47.283000000000015L252.912 251.87699999999995 377.753 127.01199999999994Z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="speaker" unicode="&#58949;" d="M587.182306 754.7203c-6.003737 2.705622-13.043061 1.642406-17.984606-2.721994l-259.223926-229.293243-148.246369 0c-9.253758 0-16.752546-7.498788-16.752546-16.756639l0-267.886213c0-9.249665 7.498788-16.756639 16.752546-16.756639l144.050814 0c9.253758 0 16.752546 7.506974 16.752546 16.756639L322.530764 490.391099c1.774413 0.704035 3.433192 1.719154 4.892427 3.010567l236.127905 208.861912 0-653.332912-160.751171 137.64287c-2.12643 1.824555-90.300632 78.69941-93.927229 76.162634-4.427846-3.097548-15.768125-17.59882-18.419512-22.512736-0.953721-1.768273-2.196015-1.334391 15.413038-16.379039 25.674753-21.936615 73.780377-61.548798 75.144444-62.717414l10.007935-8.570189 178.388876-152.761196c3.093455-2.653433 6.978948-4.028757 10.900258-4.028757 2.369977 0 4.756327 0.503467 7.003508 1.534959 5.939269 2.738367 9.749038 8.677637 9.749038 15.217586L597.060281 739.446431C597.060281 746.034477 593.190137 752.013655 587.182306 754.7203L587.182306 754.7203zM290.453185 254.814756l-115.040083 0L175.413102 489.195877l115.03906 0 0-234.381122L290.453185 254.814756zM747.742119 375.98444300000006c0-51.55212-34.83232-96.658434-84.702124-109.693308-1.415232-0.375553-2.846838-0.551562-4.245697-0.551562-7.438413 0-14.234189 4.992711-16.200984 12.523221-2.338255 8.949836 3.021823 18.104333 11.967566 20.442588 35.136242 9.18929 59.672054 40.96397 59.672054 77.279061 0 36.307927-24.535813 68.090794-59.672054 77.271898-8.945743 2.346441-14.305821 11.492752-11.967566 20.450774 2.342348 8.953929 11.499915 14.305821 20.446681 11.967566C712.909799 472.643899 747.742119 427.530422 747.742119 375.98444300000006L747.742119 375.98444300000006zM864.950588 375.793084c0-88.87619-48.554856-170.44495-126.718053-212.883505-2.537799-1.375324-5.276167-2.02717-7.982812-2.02717-5.939269 0-11.69946 3.166109-14.733563 8.762571-4.417613 8.134261-1.39886 18.303878 6.727215 22.720468 67.350944 36.566824 109.198028 106.851587 109.198028 183.427636 0 76.844156-42.055838 147.272181-109.741403 183.78784-8.154727 4.396123-11.192923 14.557554-6.795776 22.700001 4.38896 8.142447 14.558577 11.184737 22.701025 6.795776C816.151162 546.697499 864.950588 464.976266 864.950588 375.793084L864.950588 375.793084z"  horiz-adv-x="1024" />
+            <glyph glyph-name="cart" unicode="&#58967;"
+                   d="M365.920994 84.618469c-39.030945 0-70.78516-31.754215-70.78516-70.78516s31.754215-70.784136 70.78516-70.784136c39.030945 0 70.784136 31.753191 70.784136 70.784136S404.951939 84.618469 365.920994 84.618469zM365.920994-5.784493999999995c-10.818393 0-19.61985 8.801457-19.61985 19.618826 0 10.818393 8.801457 19.61985 19.61985 19.61985s19.618826-8.801457 19.618826-19.61985C385.540843 3.015939000000003 376.739387-5.784493999999995 365.920994-5.784493999999995zM808.821219 84.618469c-39.030945 0-70.784136-31.754215-70.784136-70.78516s31.753191-70.784136 70.784136-70.784136 70.78516 31.753191 70.78516 70.784136S847.852164 84.618469 808.821219 84.618469zM808.821219-5.784493999999995c-10.81737 0-19.618826 8.801457-19.618826 19.618826 0 10.818393 8.801457 19.61985 19.618826 19.61985 10.818393 0 19.61985-8.801457 19.61985-19.61985C828.441069 3.015939000000003 819.640636-5.784493999999995 808.821219-5.784493999999995zM443.99107 305.940157c-14.057157-1.416256-24.305569-13.959943-22.890336-28.0171 1.328251-13.187347 12.446473-23.02132 25.423019-23.02132 0.856507 0 1.723248 0.042979 2.594081 0.130983l439.314561 44.245713c0.088004 0.007163 0.174985 0.01842 0.261966 0.026606l0.180102 0.01842c0.50449 0.051165 1.001817 0.119727 1.496074 0.198521 0.222057 0.035816 0.443092 0.076748 0.663102 0.11768 0.552585 0.103354 1.100054 0.217964 1.638313 0.355087 0.085958 0.022513 0.169869 0.047072 0.254803 0.069585 0.586354 0.156566 1.161453 0.334621 1.728364 0.530073 0.077771 0.026606 0.155543 0.051165 0.233314 0.078795 0.626263 0.222057 1.239224 0.469698 1.840928 0.737804 0.039909 0.017396 0.078795 0.035816 0.118704 0.054235 1.277086 0.577145 2.496867 1.252527 3.647063 2.020006 0.001023 0.001023 0.002047 0.001023 0.00307 0.002047 0.553609 0.369414 1.088798 0.76134 1.609661 1.170662 0.069585 0.054235 0.137123 0.10847 0.205685 0.163729 0.48607 0.38988 0.958838 0.795109 1.413186 1.218758 0.092098 0.084934 0.180102 0.173962 0.270153 0.25992 0.394996 0.378623 0.778736 0.76748 1.14815 1.169639 0.11154 0.121773 0.222057 0.243547 0.331551 0.367367 0.333598 0.3776 0.653893 0.766456 0.964978 1.163499 0.12382 0.158612 0.249687 0.314155 0.370437 0.475837 0.322341 0.432859 0.629333 0.876973 0.925069 1.329275 0.113587 0.173962 0.224104 0.348947 0.333598 0.525979 0.296759 0.479931 0.580215 0.968048 0.845251 1.467421 0.069585 0.130983 0.134053 0.265036 0.201591 0.397043 0.289596 0.568958 0.563842 1.147126 0.811482 1.738597 0.00307 0.007163 0.005117 0.014326 0.008186 0.021489 0.569982 1.369184 1.019213 2.796696 1.345648 4.26514 0 0.001023 0 0.002047 0.001023 0.00307l0.00307 0.013303c0.035816 0.162706 0.075725 0.323365 0.10847 0.487094l56.17951 252.734118c0.895393 4.030803 0.780783 8.04728-0.165776 11.794627 0.50449 2.003634 0.774643 4.101411 0.774643 6.261611 0 14.128789-11.452843 25.582655-25.582655 25.582655L195.47502 616.098125l-52.358485 159.553902c-3.631714 11.067057-14.093996 17.972327-25.177426 17.590634-0.207731 0.005117-0.413416 0.01535-0.62217 0.01535L54.663994 793.258011c-14.128789 0-25.582655-11.453866-25.582655-25.582655s11.453866-25.582655 25.582655-25.582655l45.614897 0 197.955514-603.235934c3.536546-10.776438 13.546527-17.613146 24.303522-17.613146 2.067079 0 4.16281 0.26299 6.245238 0.788969l567.583946 0c14.129812 0 25.582655 11.453866 25.582655 25.582655s-11.452843 25.582655-25.582655 25.582655L340.816223 173.1979 212.265428 564.933839l701.224666 0-48.137347-216.557174L443.99107 305.940157z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="down" unicode="&#58906;" d="M888.306 619.94c15.615 15.617 40.93 15.617 56.545 0v0c15.617-15.615 15.617-40.93 0-56.545l-405.733-405.734c-15.615-15.617-40.928-15.617-56.545 0v0c-15.615 15.615-15.615 40.93 0 56.545l405.733 405.734zM538.619 214.20600000000002c15.617-15.615 15.617-40.93 0-56.545v0c-15.615-15.617-40.928-15.617-56.545 0l-405.734 405.734c-15.615 15.615-15.615 40.93 0 56.545v0c15.617 15.617 40.93 15.617 56.547 0l405.732-405.734zM538.619 214.20600000000002z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="file" unicode="&#58913;" d="M887.443911 598.6304l0-44.578133 0-45.511111 0-477.866667c0-37.705956-30.560711-68.266667-68.266667-68.266667l-614.4 0c-37.705956 0-68.266667 30.560711-68.266667 68.266667l0 705.422222c0 37.6832 30.560711 68.266667 68.266667 68.266667l386.844444 0 45.511111 0 38.024533 0c7.805156 2.594133 16.566044 1.2288 22.778311-5.006222l183.136711-183.159467C885.919289 611.373511 887.876267 604.9564439999999 887.443911 598.6304zM659.888356 531.296711c-12.583822 0-22.755556 10.171733-22.755556 22.755556l0 204.8-45.511111 0-364.088889 0c-25.122133 0-45.511111-20.388978-45.511111-45.511111l0-659.911111c0-25.122133 20.388978-45.511111 45.511111-45.511111l568.888889 0c25.122133 0 45.511111 20.388978 45.511111 45.511111l0 455.111111 0 22.755556L659.888356 531.296711zM682.643911 750.273422l0-173.4656 159.288889 0 0 14.176711L682.643911 750.273422z"  horiz-adv-x="1024" />
+            <glyph glyph-name="camera-fill" unicode="&#58973;"
+                   d="M512 480C436.515555 480 375.111111 419.712 375.111111 345.6 375.111111 271.48800000000006 436.515555 211.20000000000005 512 211.20000000000005 587.484446 211.20000000000005 648.888887 271.48800000000006 648.888887 345.6 648.888887 419.712 587.484446 480 512 480M512 172.79999999999995C414.808889 172.79999999999995 336 250.15679999999998 336 345.6 336 441.0432 414.808889 518.4 512 518.4 609.210667 518.4 688 441.0432 688 345.6 688 250.15679999999998 609.210667 172.79999999999995 512 172.79999999999995M903.111113 691.2L723.767113 691.2C713.383113 691.2 703.448887 695.2512 696.115554 702.4512L640.792887 756.7488C633.459554 763.9488 623.505779 768 613.141333 768L512 768 410.878222 768C400.494222 768 390.56 763.9488 383.226667 756.7488L327.904 702.4512C320.570667 695.2512 310.616889 691.2 300.252445 691.2L120.888889 691.2C77.866667 691.2 42.666667 656.64 42.666667 614.4L42.666667 76.79999999999995C42.666667 34.559999999999945 77.866667 0 120.888889 0L903.111113 0C946.133333 0 981.333333 34.559999999999945 981.333333 76.79999999999995L981.333333 614.4C981.333333 656.64 946.133333 691.2 903.111113 691.2"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="layouts" unicode="&#58930;" d="M917.213-103.239h-810.426c-23.151 0-41.918 18.766-41.918 41.917l0 698.644c0 23.148 18.767 41.917 41.918 41.917h810.426c23.149 0 41.918-18.769 41.918-41.917v-698.643c0-23.151-18.769-41.918-41.918-41.918zM316.38-61.321h600.833v363.294h-600.833v-363.294zM106.787-61.321h167.674v363.294h-167.674v-363.294zM148.705 637.322c-23.151 0-41.918-18.769-41.918-41.92s18.767-41.92 41.918-41.92 41.92 18.768 41.92 41.92-18.769 41.92-41.92 41.92zM274.461 637.322c-23.151 0-41.918-18.769-41.918-41.92s18.767-41.92 41.918-41.92c23.151 0 41.92 18.768 41.92 41.92s-18.77 41.92-41.92 41.92zM400.216 637.322c-23.15 0-41.918-18.769-41.918-41.92s18.769-41.92 41.918-41.92c23.152 0 41.92 18.768 41.92 41.92s-18.768 41.92-41.92 41.92zM875.293 511.566h-768.506v-167.675h810.426l0 167.675h-41.921z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="rate-half" unicode="&#59081;" d="M1012.064 504l-359.552 31.008-140.512 331.04-140.512-331.552-359.552-30.496 273.024-236.544-82.016-351.552 309.056 186.528 309.056-186.528-81.504 351.552 272.544 236.544zM512 195.96799999999996l0 465.056 85.504-202.016 219.04-19.008-166.016-144.032 50.016-214.016-188.512 114.016z"  horiz-adv-x="1024" />
+            <glyph glyph-name="tabs" unicode="&#58922;"
+                   d="M310.30303 523.636364L124.121212 523.636364c-17.128727 0-31.030303-13.901576-31.030303-31.030303l0-186.181818c0-17.128727 13.901576-31.030303 31.030303-31.030303l186.181818 0c17.128727 0 31.030303 13.901576 31.030303 31.030303L341.333333 492.606061C341.333333 509.734788 327.431758 523.636364 310.30303 523.636364zM294.787879 306.42424200000005L139.636364 306.42424200000005c-17.128727 0-15.515152-1.613576-15.515152 15.515152L124.121212 477.090909c0 17.128727-1.613576 15.515152 15.515152 15.515152l155.151515 0c17.128727 0 15.515152 1.613576 15.515152-15.515152l0-155.151515C310.30303 304.81066699999997 311.916606 306.42424200000005 294.787879 306.42424200000005zM418.909091 352.969697l480.969697 0 0 31.030303L418.909091 384 418.909091 352.969697zM418.909091 228.84848499999998l480.969697 0 0 31.030303L418.909091 259.878788 418.909091 228.84848499999998zM418.909091 89.21212100000002l480.969697 0 0 31.030303L418.909091 120.24242400000003 418.909091 89.21212100000002zM418.909091 492.606061l480.969697 0 0 31.030303L418.909091 523.636364 418.909091 492.606061zM992.969697 725.333333l-15.515152 0L977.454545 849.454545c0 17.128727-13.901576 31.030303-31.030303 31.030303L775.757576 880.484848c-17.128727 0-31.030303-13.901576-31.030303-31.030303l0-124.121212-139.636364 0L605.090909 849.454545c0 17.128727-13.901576 31.030303-31.030303 31.030303L403.393939 880.484848c-17.128727 0-31.030303-13.901576-31.030303-31.030303l0-124.121212-124.121212 0L248.242424 849.454545c0 17.128727-13.901576 31.030303-31.030303 31.030303L31.030303 880.484848C13.901576 880.484848 0 866.583273 0 849.454545l0-946.424242c0-17.128727 13.901576-31.030303 31.030303-31.030303l961.939394 0c17.128727 0 31.030303 13.901576 31.030303 31.030303L1024 694.30303C1024 711.431758 1010.098424 725.333333 992.969697 725.333333zM992.969697-65.939394c0-17.128727-13.901576-31.030303-31.030303-31.030303L62.060606-96.969697c-17.128727 0-31.030303 13.901576-31.030303 31.030303L31.030303 818.424242c0 17.128727 13.901576 31.030303 31.030303 31.030303l124.121212 0c17.128727 0 31.030303-13.901576 31.030303-31.030303l0-124.121212 744.727273 0c17.128727 0 31.030303-13.901576 31.030303-31.030303L992.969697-65.939394z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="add-circle-fine" unicode="&#58888;" d="M509.989715-60.972421000000054c-246.734474 0-446.75195 200.023616-446.75195 446.75809 0 246.732427 200.017476 446.75195 446.75195 446.75195 246.733451 0 446.757067-200.019523 446.757067-446.75195C956.746782 139.051195 756.723166-60.972421000000054 509.989715-60.972421000000054L509.989715-60.972421000000054zM509.989715 812.433746c-235.633648 0-426.650123-191.014428-426.650123-426.648077 0-235.639788 191.016475-426.654216 426.650123-426.654216 235.638765 0 426.654216 191.014428 426.654216 426.654216C936.643931 621.419318 745.62848 812.433746 509.989715 812.433746L509.989715 812.433746zM527.863804 153.46957999999995l-35.741016 0L492.122789 367.909533 277.678742 367.909533 277.678742 403.653619l214.443024 0L492.121765 618.0956189999999l35.741016 0L527.862781 403.653619l214.442 0 0-35.744086L527.863804 367.909533 527.863804 153.46957999999995 527.863804 153.46957999999995zM527.863804 153.46957999999995"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="prev-circle" unicode="&#58931;" d="M508.638018 827.97307c-246.403458 0-446.845649-200.463469-446.845649-446.845649 0-246.382179 200.442191-446.845649 446.845649-446.845649 246.382179 0 446.845649 200.463469 446.845649 446.845649C955.483667 627.5096 755.041476 827.97307 508.638018 827.97307zM508.638018-23.16149900000005c-222.933422 0-404.28892 181.355498-404.28892 404.28892 0 222.933422 181.355498 404.28892 404.28892 404.28892 222.912144 0 404.28892-181.355498 404.28892-404.28892C912.926939 158.19399899999996 731.57144-23.16149900000005 508.638018-23.16149900000005zM252.87208 485.1999c8.639016 26.129831-32.470784 37.215859-41.067243 11.32009-27.810822-83.730363-22.321004-168.545923 14.086277-248.573851 11.362646-24.938243 48.025268-3.298146 36.747735 21.491148C230.976644 339.081373 228.806251 412.853462 252.87208 485.1999zM599.262572 247.73335499999996l-127.627629 133.394065 127.47868 133.223838c9.043305 9.064583 9.022026 23.789211-0.021278 32.832516-8.809243 8.830521-24.087108 8.766686-32.832516 0l-148.310199-148.310199c-4.617405-4.638683-6.979303-11.064749-6.553736-17.746156-0.404289-6.702685 1.936331-13.107472 6.575015-17.788712l148.310199-148.28892c4.383343-4.383343 10.213615-6.787798 16.405619-6.787798 6.170726 0 12.000997 2.404455 16.405619 6.787798C608.156928 224.114371 608.156928 238.83899899999994 599.262572 247.73335499999996z"  horiz-adv-x="1024" />
+            <glyph glyph-name="fonts-code" unicode="&#58958;"
+                   d="M270 626c-12 12-32 12-44 0L9 409c-12-12-12-32 0-44l217-217c6-6 14-9 22-9s16 3 22 9c12 12 12 32 0 44L75 387 270 582C282 595 282 614 270 626zM1015 409L798 626c-12 12-32 12-44 0-12-12-12-32 0-44l195-195L754 192c-12-12-12-32 0-44 6-6 14-9 22-9s16 3 22 9l217 217C1027 377 1027 397 1015 409zM624 696L624 696c-16 6-34-3-40-19L382 119c-6-16 2-34 19-40l0 0c16-6 34 3 40 19l202 558C648 672 640 690 624 696z"
+                   horiz-adv-x="1025"/>
 
-    
-    <glyph glyph-name="read" unicode="&#59141;" d="M335.282306 712.495464C399.587328 713.451107 442.778899 696.882717 470.183494 669.3706540000001 479.127332 660.39174 485.691302 650.857363 490.241971 641.442689 492.795622 636.159553 494.049041 632.438701 494.358795 631.0740940000001L493.723712 636.7409230000001 493.723706 196.90019600000005C493.723706 199.018106 495.816045 203.920655 503.591595 207.36436700000002 511.039185 210.66283299999998 515.68422 209.16527399999995 517.176538 207.906613L500.671543 188.33763 521.297207 203.50146800000005C514.140179 213.23636899999997 499.631258 225.71450900000002 476.134074 237.35914000000002 439.577969 255.475456 390.86048 266.10507900000005 328.491925 266.10508200000004 265.860796 266.10508200000004 219.424582 255.71817999999996 186.827162 237.741581 164.977332 225.69198700000004 152.538132 212.28117299999997 147.220271 201.30886999999996L170.257196 190.14374199999997 151.035786 207.05224299999998C152.884078 209.15336100000002 158.307299 211.80336599999998 167.849005 208.050434 177.092077 204.41496099999995 179.2 199.20011699999998 179.2 196.66445199999998L179.2 497.049743 179.2 636.7409230000001 175.817447 624.023021C177.078908 626.226721 180.088681 630.807811 184.828724 636.965629 192.95423 647.521524 202.792594 658.127492 214.297641 668.007961 247.526453 696.544681 287.381649 713.209056 334.514421 712.495571L335.282306 712.495464ZM335.289387 763.689705C274.661039 764.607483 223.081402 743.04085 180.940156 706.850184 156.32698 685.712527 139.975514 664.470237 131.382553 649.4588249999999L128 643.549699 128 636.7409230000001 128 497.049743 128 196.66445199999998C128 159.26104999999995 164.542545 144.88818300000003 189.478606 173.23524099999997L191.776657 175.84764199999995 193.294121 178.978613C194.07832 180.59664399999997 199.156367 186.07133399999998 211.552092 192.907243 236.030601 206.40648099999999 274.024879 214.905082 328.491925 214.905082 383.221547 214.905079 424.163878 205.97190999999998 453.399258 191.483569 469.376966 183.56540600000005 477.614626 176.48075300000005 480.045882 173.17379000000005L481.844905 170.72677999999996 484.166551 168.768644C511.279708 145.90070000000003 544.923706 160.801293 544.923706 196.90019600000005L544.923712 636.740922 544.288627 642.407751C540.427211 659.419023 529.175531 682.697124 506.45814 705.503602 468.987716 743.1209699999999 412.352271 764.846461 334.521502 763.689812L335.289387 763.689705ZM0 506.026694L0 27.856867999999963C0-8.875636999999983 34.793167-23.40043300000002 61.4635 1.2485080000000153L63.46242 3.315859000000046C65.301149 5.444836000000009 69.655573 9.862312999999972 76.498228 15.820363000000043 88.306297 26.101906999999983 102.566352 36.46294 119.251411 46.17438500000003 167.295691 74.13829099999998 224.90855 90.95018200000004 292.337329 90.95018200000004 358.378978 90.95018000000005 409.459345 71.66956600000003 448.125308 39.64774 461.506042 28.56627400000002 472.380655 16.734758000000056 480.912593 4.997000999999955 485.832384-1.7713730000000396 488.762874-6.741985999999997 489.872527-9.02252199999998 496.058545-21.73590200000001 511.379537-27.027375000000006 524.092917-20.84135500000002 536.806298-14.655337000000031 542.097771 0.6656550000000152 535.91175 13.379036000000042 527.471002 30.726293000000055 509.777717 55.06771800000001 480.782336 79.08069999999998 433.134118 118.54132300000003 370.586889 142.15017999999998 292.337329 142.15018199999997 215.474895 142.15018499999996 149.074727 122.77408400000002 93.495781 90.424668 59.761154 70.78961500000003 36.872315 50.859801999999945 24.713677 36.78188399999999L44.088049 20.048869999999965 26.712598 38.84923500000002C28.162783 40.189508000000046 32.877261 41.946117999999956 40.792576 38.64178100000004 49.035365 35.200736000000006 51.2 30.12989200000004 51.2 27.856867999999963L51.2 506.026694C51.2 520.165184 39.73849 531.626694 25.6 531.626694 11.46151 531.626694 0 520.165184 0 506.026694L0 506.026694ZM696.80221 763.689812C618.971441 764.846461 562.335996 743.1209699999999 524.86557 705.503602 502.148181 682.697124 490.896501 659.419023 487.035083 642.407751L486.4 636.740922 486.400004 196.90019600000005C486.400006 160.801293 520.044004 145.90070000000003 547.157161 168.768644L549.478807 170.72677999999996 551.27783 173.17379000000005C553.709086 176.48075300000005 561.946746 183.56540600000005 577.924452 191.483569 607.159834 205.97190999999998 648.102165 214.905079 702.831787 214.905082 757.298833 214.905082 795.293111 206.40648099999999 819.77162 192.907243 832.167345 186.07133399999998 837.245391 180.59664399999997 838.029591 178.978613L839.547055 175.84764199999995 841.845105 173.23524099999997C866.781167 144.88818300000003 903.323712 159.26104999999995 903.323712 196.66445199999998L903.323712 497.049743 903.323712 636.7409230000001 903.323712 643.549699 899.941158 649.4588249999999C891.348196 664.470237 874.996732 685.712527 850.383556 706.850184 808.24231 743.04085 756.662673 764.607483 696.034325 763.689705L696.80221 763.689812ZM696.809291 712.495571C743.942063 713.209056 783.797257 696.544681 817.026071 668.007961 828.531119 658.127492 838.369481 647.521524 846.494989 636.965629 851.235031 630.807811 854.244804 626.226721 855.506263 624.023021L852.123712 636.7409230000001 852.123712 497.049743 852.123712 196.66445199999998C852.123712 199.20011699999998 854.231635 204.41496099999995 863.474707 208.050434 873.016412 211.80336599999998 878.439633 209.15336100000002 880.287925 207.05224299999998L861.066515 190.14374199999997 884.103441 201.30886999999996C878.785579 212.28117299999997 866.346381 225.69198700000004 844.49655 237.741581 811.89913 255.71817999999996 765.462916 266.10508200000004 702.831785 266.10508200000004 640.463232 266.10507900000005 591.745741 255.475456 555.189638 237.35914000000002 531.692454 225.71450900000002 517.183533 213.23636899999997 510.026502 203.50146800000005L530.652166 188.33763 514.147172 207.906613C515.63949 209.16527399999995 520.284527 210.66283299999998 527.732117 207.36436700000002 535.507665 203.920655 537.600004 199.018106 537.600004 196.90019600000005L537.6 636.7409230000001 536.964917 631.0740940000001C537.274671 632.438701 538.52809 636.159553 541.081741 641.442689 545.63241 650.857363 552.196378 660.39174 561.140218 669.3706540000001 588.544813 696.882717 631.736384 713.451107 696.041406 712.495464L696.809291 712.495571ZM972.799998 506.026694L972.799998 27.856867999999963C972.799998 30.12989200000004 974.964631 35.200736000000006 983.207422 38.64178100000004 991.122737 41.946117999999956 995.837214 40.189508000000046 997.287401 38.84923500000002L979.911949 20.048869999999965 999.286321 36.78188399999999C987.127682 50.859801999999945 964.238844 70.78961500000003 930.504218 90.424668 874.925269 122.77408400000002 808.525103 142.15018499999996 731.662669 142.15018199999997 653.132708 142.15017999999998 590.55104 117.26282200000003 543.127755 75.73800100000005 514.370099 50.55719499999998 496.945662 25.10259599999995 488.705389 7.022771000000034 482.841769-5.842485000000011 488.517717-21.02524200000005 501.382974-26.888862000000017 514.248233-32.752481999999986 529.430987-27.07653300000004 535.294607-14.211275 536.420563-11.740835999999945 539.350332-6.450639000000024 544.25735 0.7178109999999833 552.731727 13.097653000000037 563.54464 25.561581000000047 576.856734 37.21792900000003 615.190044 70.78337499999998 665.901421 90.95018000000005 731.662669 90.95018200000004 799.091447 90.95018200000004 856.704307 74.13829099999998 904.748587 46.17438500000003 921.433645 36.46294 935.6937 26.101906999999983 947.501771 15.820363000000043 954.344425 9.862312999999972 958.698848 5.444836000000009 960.537577 3.315859000000046L962.536497 1.2485080000000153C989.206831-23.40043300000002 1023.999998-8.875636999999983 1023.999998 27.856867999999963L1023.999998 506.026694C1023.999998 520.165184 1012.538487 531.626694 998.399998 531.626694 984.261508 531.626694 972.799998 520.165184 972.799998 506.026694L972.799998 506.026694Z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="404" unicode="&#58908;" d="M300.197309 299.705317l4.427931 1.803972c1.147982-2.787956 10.167841-7.543882 26.89558-14.267777l5.411915-12.955798c10.659833-24.927611 23.123639-62.483024 37.555413-112.66624 14.431775 5.575913 34.439462 0.983985 60.351057-13.611787l1.803972-4.427931L389.575913 107.828315l18.203716-42.639334c2.459962-5.575913-12.463805-15.579757-44.7713-29.847534-11.151826 7.215887-19.84369 9.675849-26.403587 7.05189l-0.983985 2.131967c-10.823831 25.419603-16.235746 42.311339-16.399744 50.675208l-4.427931-1.803972 6.3959-14.923767-11.151826-4.263933c-41.655349-16.235746-71.830878-18.695708-90.690583-7.871877l-4.427931-1.803972-1.803972 4.263933c-7.05189 16.727739 3.607944 77.406791 32.307495 182.037156 11.479821 4.427931 19.1877 14.923767 22.959641 31.323511C281.337604 290.685458 291.83344 296.425368 300.197309 299.705317L300.197309 299.705317zM216.230621 80.276746c28.371557 19.515695 40.999359 32.799488 38.047406 39.68738-0.983985 2.131967-0.65599 5.575913 0.65599 10.167841l-0.983985 2.131967c-25.5836-21.483664-38.047406-32.963485-37.391416-34.439462C215.246637 88.804612 215.082639 83.064702 216.230621 80.276746L216.230621 80.276746zM216.722614 72.896861l0.983985-2.131967c11.643818 1.147982 21.155669 3.279949 28.699552 6.231903 0.819987 0.327995 7.379885 5.411915 19.84369 15.251762l-0.983985 2.131967c-7.543882-2.951954-12.7918-0.983985-15.743754 6.067905C226.398463 85.032671 215.574632 75.848815 216.722614 72.896861L216.722614 72.896861zM225.90647 143.743754l11.151826 4.263933c-1.147982-2.623959-6.3959-8.691864-15.579757-18.53171-2.295964-10.823831-2.787956-17.547726-1.639974-20.335682 27.715567 20.663677 40.34337 33.783472 37.883408 39.523382l0.819987 10.331839-3.443946-3.935939-9.019859-3.443946-0.983985 2.131967c11.151826 4.263933 17.875721 16.891736 20.49968 37.719411l-0.983985 2.131967C239.35426 172.443306 227.21845 160.307495 227.874439 157.027546L225.90647 143.743754 225.90647 143.743754zM231.646381 173.42729l0.983985-2.131967 2.131967 0.819987c28.371557 23.123639 40.179372 40.179372 35.423447 51.331198 1.475977 0.65599 1.967969 1.639974 1.475977 2.951954l-2.295964-0.819987c-28.863549-21.647662-40.999359-38.047406-36.407431-49.035234C231.482383 175.723254 230.990391 174.73927 231.646381 173.42729L231.646381 173.42729zM240.994234 211.966688l0.983985-2.131967c13.775785 10.331839 35.915439 29.847534 66.418962 58.21909l2.131967 0.819987-6.3959 14.923767 0.491992 5.083921-2.295964-0.819987c-36.571429-32.963485-55.431134-51.82319-56.579116-56.743113L240.994234 211.966688 240.994234 211.966688zM311.67713 107.336323l-35.751441-13.939782c-1.475977-0.491992-6.887892-4.263933-16.235746-11.315823l0.819987-1.967969 12.299808 2.131967 20.007687 7.871877c11.643818 4.591928 32.143498 19.84369 61.171044 46.08328l-6.3959 14.923767-2.131967-0.819987c-24.107623-16.891736-34.439462-29.191544-31.159513-36.899423C315.449071 110.616272 314.629084 108.484305 311.67713 107.336323L311.67713 107.336323zM267.889814 264.773863l0.819987-1.967969c17.875721 16.891736 27.387572 25.419603 28.207559 25.747598l-0.983985 2.131967-8.855862-3.443946C274.941704 282.485586 268.545804 274.941704 267.889814 264.773863L267.889814 264.773863zM275.597694 222.954516c16.071749-37.883408 20.007687-67.894939 11.971813-90.034593l-3.443946-28.863549 26.89558 10.495836c-7.543882 30.011531-18.367713 65.598975-32.471493 106.926329l-0.983985 2.131967L275.597694 222.954516 275.597694 222.954516zM279.369635 231.810378l6.3959-14.923767c13.44779 15.087764 24.435618 24.271621 32.63549 27.55157l-3.607944 8.527867-2.459962 11.643818-2.131967-0.819987C289.045484 247.06214 278.713645 236.566304 279.369635 231.810378L279.369635 231.810378zM292.817425 194.58296c23.943626 17.219731 33.619475 30.995516 29.191544 41.491352l-2.787956 6.3959-2.295964-0.819987c-21.483664-18.859705-30.667521-31.651505-27.879564-38.3754L292.817425 194.58296 292.817425 194.58296zM294.457399 190.483024l2.787956-6.3959 2.295964-11.807816 2.295964 0.819987-0.491992-5.083921 6.3959-14.923767 32.471493 27.387572-6.3959 15.087764c-9.347854-10.331839-16.235746-16.399744-20.827675-18.203716l-2.295964-0.983985c-0.65599 1.639974 6.067905 10.167841 20.335682 25.419603l-3.115951 13.611787-0.983985 2.131967L294.457399 190.483024 294.457399 190.483024zM307.413197 148.171685l2.787956-6.3959 2.295964-11.643818c23.943626 17.219731 35.259449 27.387572 33.94747 30.503523l-5.411915 12.955798C329.224856 165.719411 318.07303 157.191544 307.413197 148.171685L307.413197 148.171685zM355.792441 131.935939c-23.779628-17.711723-34.111467-30.011531-30.995516-37.227418l1.475977-9.347854c25.255605 18.039718 36.899423 29.355541 34.931454 33.783472 24.435618 21.155669 38.703395 32.471493 42.803331 33.94747l-0.819987 1.967969c-1.803972 2.787956-6.723895 4.099936-14.595772 4.427931l-30.831518-31.9795L355.792441 131.935939 355.792441 131.935939zM327.912876 81.26073l4.591928-10.659833-0.491992-5.083921 2.295964 0.819987c23.451634 14.595772 34.275464 23.615631 32.63549 27.55157l-5.411915 12.955798L327.912876 81.26073 327.912876 81.26073zM333.816784 61.253043l5.411915-12.7918c25.747598 13.283792 37.719411 22.139654 35.915439 26.403587l-4.591928 10.659833C348.412556 70.272902 336.112748 62.237028 333.816784 61.253043L333.816784 61.253043zM357.596413 139.971813l1.803972-4.099936c4.919923 1.967969 8.527867 9.839846 10.823831 23.943626l-2.295964-0.819987C364.648302 147.679693 361.204356 141.44779 357.596413 139.971813L357.596413 139.971813zM731.674568 256.081999l3.935939-0.163997c-0.163997-2.459962 4.755926-9.019859 14.759769-19.515695l-0.65599-11.315823c-1.147982-21.975657-5.411915-53.955157-12.955798-95.774504 12.627803-0.65599 25.911595-10.659833 39.68738-30.175529l-0.163997-3.935939-47.887252-10.823831-1.967969-37.719411c-0.327995-4.919923-14.923767-7.379885-43.951313-7.379885-5.575913 9.019859-11.151826 13.775785-16.891736 13.939782l0.163997 1.967969c1.147982 22.467649 3.279949 36.735426 6.231903 42.967329l-3.935939 0.163997-0.65599-13.119795-9.839846 0.491992c-36.571429 1.803972-60.023062 9.839846-70.026906 24.271621l-3.935939 0.163997 0.163997 3.771941c0.819987 14.759769 30.667521 56.087124 89.706598 124.14606 10.167841-0.491992 19.515695 4.755926 28.371557 15.579757C714.290839 255.754004 724.294683 256.573991 731.674568 256.081999L731.674568 256.081999zM587.848815 115.86419l-0.163997-1.967969c9.019859-2.951954 16.891736-4.591928 23.615631-4.919923 0.65599 0 7.379885 1.475977 20.171685 4.755926l0.163997 1.967969c-6.723895 0.327995-9.839846 3.607944-9.511851 9.675849C599.328635 121.6041 588.012812 118.324151 587.848815 115.86419L587.848815 115.86419zM590.144779 121.440102c28.043562 5.083921 42.147341 10.659833 42.475336 16.727739 0.163997 1.803972 1.475977 4.263933 4.099936 7.215887l0.163997 1.967969c-26.731582-7.379885-40.015375-11.807816-40.179372-13.119795C592.440743 128.163997 590.308776 123.900064 590.144779 121.440102L590.144779 121.440102zM620.15631 165.227418l9.839846-0.491992c-1.803972-1.475977-7.871877-4.427931-18.367713-8.527867-5.575913-7.215887-8.527867-12.13581-8.527867-14.595772 28.043562 6.067905 42.147341 11.643818 42.311339 16.727739l4.263933 7.379885-3.935939-1.803972-8.035874 0.327995 0.163997 1.967969c9.839846-0.491992 19.351698 6.559898 28.863549 21.155669l0.163997 1.967969c-26.23959-7.379885-39.68738-12.463805-40.34337-14.923767L620.15631 165.227418 620.15631 165.227418zM670.667521 109.960282l-31.487508 1.475977c-1.31198 0-6.559898-0.983985-16.071749-2.951954l-0.163997-1.803972 9.839846-2.459962 17.711723-0.819987c10.331839-0.491992 30.995516 4.099936 61.991031 13.939782l0.65599 13.119795-1.803972 0.163997c-23.943626-4.591928-36.079436-10.167841-36.407431-16.891736C674.603459 110.944266 673.29148 109.796284 670.667521 109.960282L670.667521 109.960282zM635.244074 185.399103l-0.163997-1.967969 1.803972-0.163997c29.355541 7.70788 44.279308 16.563741 44.7713 26.23959 1.31198 0 2.131967 0.491992 2.131967 1.639974l-1.967969 0.163997c-29.191544-6.3959-44.115311-14.595772-44.607303-24.271621C635.900064 187.039078 635.244074 186.547085 635.244074 185.399103L635.244074 185.399103zM685.755285 207.37476c-1.803972-33.29148-9.675849-56.907111-23.615631-70.682896l-12.955798-20.171685 23.779628-1.147982c5.247918 24.763613 10.167841 54.611147 14.595772 89.870596l0.163997 1.967969L685.755285 207.37476 685.755285 207.37476zM656.071749 210.818706l-0.163997-1.967969c13.939782 3.115951 37.391416 10.167841 70.354901 21.155669l1.803972-0.163997 0.65599 13.119795 2.295964 3.607944-1.967969 0.163997c-39.03139-12.299808-59.859065-20.007687-62.483024-23.287636L656.071749 210.818706 656.071749 210.818706zM670.339526 68.46893l-0.65599-11.315823c23.943626 1.31198 35.915439 3.935939 36.079436 7.70788l0.491992 9.347854C684.443306 70.272902 672.471493 68.304933 670.339526 68.46893L670.339526 68.46893zM673.29148 85.196669l-0.491992-9.347854-2.295964-3.607944 1.967969-0.163997c22.631646 2.951954 33.94747 6.231903 34.111467 9.511851l0.65599 11.315823L673.29148 85.196669 673.29148 85.196669zM712.158873 113.568225c-23.943626-5.247918-36.079436-10.987828-36.407431-17.219731l-2.295964-7.379885c25.255605 5.083921 37.883408 9.511851 38.211403 13.44779 25.747598 7.543882 40.34337 11.151826 43.951313 10.987828l0.163997 1.803972c-0.327995 2.623959-3.443946 5.247918-9.347854 8.035874l-34.439462-13.44779L712.158873 113.568225 712.158873 113.568225zM682.147341 141.611787l-0.327995-5.73991-2.459962-9.347854c23.943626 4.755926 36.079436 8.691864 36.079436 11.479821l0.65599 11.315823C704.778988 147.351698 693.463165 144.727739 682.147341 141.611787L682.147341 141.611787zM688.051249 177.199231l-0.327995-5.73991-2.623959-9.511851 1.967969-0.163997-2.295964-3.607944-0.65599-13.119795 33.94747 9.511851 0.65599 13.283792c-10.659833-4.591928-18.039718-6.723895-21.975657-6.559898l-1.967969 0.163997c0 1.475977 8.199872 5.411915 24.271621 12.13581l2.623959 11.151826 0.163997 1.967969L688.051249 177.199231 688.051249 177.199231zM688.215247 180.807175c23.943626 4.755926 36.243434 11.807816 36.735426 20.991672l0.327995 5.73991-1.967969 0.163997c-22.631646-6.887892-34.275464-13.283792-34.603459-19.1877L688.215247 180.807175 688.215247 180.807175zM691.82319 212.786675l-0.65599-13.119795c15.415759 6.723895 26.89558 10.003844 34.111467 9.511851l0.327995 7.543882 2.459962 9.511851-1.803972 0.163997C704.450993 220.986547 692.971172 216.558616 691.82319 212.786675L691.82319 212.786675zM695.103139 240.994234l-0.163997-1.803972c19.351698 6.559898 29.355541 9.839846 30.339526 9.839846l0.163997 1.967969-7.871877 0.327995C706.746957 251.818065 699.367072 248.374119 695.103139 240.994234L695.103139 240.994234zM716.422806 118.980141l-0.163997-3.607944c4.427931-0.163997 10.003844 4.427931 16.727739 14.10378l-1.967969 0.163997C724.45868 122.26009 719.538757 118.816143 716.422806 118.980141L716.422806 118.980141zM479.118514 382.196028c53.627162 10.167841 89.870596 1.967969 109.222293-24.599616 9.675849-18.695708 15.579757-33.455477 17.875721-44.279308 11.807816-56.743113-5.903908-103.154388-53.299167-138.741832-12.463805-5.083921-22.631646-8.363869-30.339526-10.003844-31.651505-6.067905-63.631006 5.083921-95.938501 33.455477-9.347854 16.399744-15.251762 31.159513-18.039718 44.279308-13.283792 63.795003 1.967969 108.238309 45.919283 133.165919L479.118514 382.196028 479.118514 382.196028zM410.075593 265.429853c6.231903 5.247918 11.479821 8.199872 15.579757 9.019859-9.675849-9.347854-14.431775-15.087764-13.939782-17.219731-0.327995-5.411915-0.163997-10.167841 0.819987-14.267777l2.131967 0.327995c24.271621 15.743754 35.915439 25.5836 35.095452 29.519539l-2.131967 10.003844c-4.099936-3.607944-8.035874-5.73991-11.643818-6.559898l-0.819987 4.099936c10.823831 2.131967 15.251762 11.971813 13.44779 29.519539l-1.967969-0.327995c-22.467649-16.399744-34.603459-27.715567-36.407431-33.94747C409.255605 273.30173 409.255605 269.857783 410.075593 265.429853L410.075593 265.429853zM410.23959 286.257527c33.127482 21.647662 47.887252 40.34337 44.607303 56.251121-29.683536-23.615631-44.443306-36.079436-44.279308-37.555413C409.747598 295.769379 409.5836 289.537476 410.23959 286.257527L410.23959 286.257527zM412.699552 315.777066l0.491992-2.131967c27.059577 20.663677 44.607303 37.227418 52.643177 49.527226 10.331839 1.967969 17.055734 7.379885 20.49968 16.235746l-2.131967-0.491992C447.303011 372.028187 423.523382 350.872518 412.699552 315.777066L412.699552 315.777066zM414.339526 234.926329c2.459962-4.919923 4.263933-9.347854 5.083921-13.44779 18.859705 14.759769 30.339526 22.467649 34.111467 23.123639l-3.771941 18.039718C444.18706 261.493914 432.379244 252.310058 414.339526 234.926329L414.339526 234.926329zM421.883408 220.002562c2.131967-9.839846 5.247918-14.759769 9.675849-14.759769l27.879564 21.975657c-0.327995 1.147982-2.131967 6.231903-5.411915 15.415759C437.299167 228.530429 426.639334 220.986547 421.883408 220.002562L421.883408 220.002562zM432.707239 199.174888c5.083921-5.903908 8.527867-8.691864 10.495836-8.363869l3.935939 0.819987c10.987828 10.495836 19.1877 16.235746 24.599616 17.219731-0.819987 3.935939-3.935939 8.855862-9.511851 14.759769C442.21909 209.014734 432.379244 200.814862 432.707239 199.174888L432.707239 199.174888zM448.450993 185.563101l0.491992-2.131967c2.459962 0.491992 6.3959-0.819987 11.807816-3.771941 18.859705 10.003844 28.207559 16.727739 28.207559 19.84369-6.067905 1.639974-9.511851 4.427931-10.331839 8.363869C466.818706 202.946829 456.814862 195.566944 448.450993 185.563101L448.450993 185.563101zM469.442665 179.331198l0.491992-2.131967 14.923767 0.65599 12.627803 2.459962c2.459962 0.491992 8.199872 3.771941 17.547726 9.839846l-0.491992 2.131967c-6.887892-1.31198-13.611787 0.163997-20.49968 4.263933L469.442665 179.331198 469.442665 179.331198zM476.494555 249.030109l4.591928-21.811659c2.951954-14.431775 12.463805-25.091608 28.535554-31.9795l4.099936 0.819987c24.599616 34.275464 32.143498 73.798847 22.795644 118.570147l-2.459962 11.971813-6.231903 19.515695-6.067905-1.147982c-3.935939-0.819987-14.267777 0-30.831518 2.295964C473.870596 316.597053 469.278668 283.961563 476.494555 249.030109L476.494555 249.030109zM476.494555 363.172325l0.327995-1.967969c10.823831-2.131967 17.547726-3.115951 20.007687-2.623959 13.939782 10.167841 21.647662 17.875721 23.287636 23.287636l-21.319667-1.967969C496.174247 379.408072 488.630365 373.832159 476.494555 363.172325L476.494555 363.172325zM508.966047 363.172325l3.771941 2.787956c1.147982 0.163997 6.231903-2.951954 15.087764-9.675849 10.331839 13.119795 18.203716 20.171685 23.779628 21.155669-0.65599 2.951954-8.199872 4.263933-22.467649 4.099936C515.361947 370.716208 508.638053 364.648302 508.966047 363.172325L508.966047 363.172325zM511.590006 185.235106l0.491992-2.131967 4.099936 0.819987c19.84369 3.771941 35.751441 17.219731 47.723254 40.34337C554.557335 214.754644 537.173607 201.634849 511.590006 185.235106L511.590006 185.235106zM521.921845 197.534914c38.211403 24.271621 56.087124 42.311339 53.79116 53.79116 1.967969 4.919923 2.623959 8.527867 2.295964 10.823831-35.095452-26.567585-51.495195-44.935298-49.363229-54.939142C526.349776 206.71877 524.217809 203.602819 521.921845 197.534914L521.921845 197.534914zM528.64574 352.348495l7.543882-15.251762 2.131967 0.491992c4.263933 5.73991 13.283792 14.431775 27.059577 25.911595l-0.491992 2.131967c-5.411915 5.247918-8.363869 8.855862-8.855862 10.823831l-4.099936-0.819987L528.64574 352.348495 528.64574 352.348495zM536.845612 333.324792l4.263933-9.675849-0.491992-8.363869 4.099936 0.819987c19.515695 17.711723 29.027546 27.059577 28.863549 28.371557l-0.491992 2.131967c-1.967969 9.347854-4.263933 13.611787-7.05189 13.119795C548.817425 342.508648 539.141576 333.652787 536.845612 333.324792L536.845612 333.324792zM539.797566 236.402306c27.715567 19.84369 40.999359 32.63549 39.68738 38.703395 1.31198 7.215887 1.803972 12.13581 1.147982 14.759769l-1.967969-0.327995-35.095452-29.519539C540.78155 245.586163 539.469571 237.714286 539.797566 236.402306L539.797566 236.402306zM542.257527 307.413197l2.459962-11.971813 10.003844 3.935939c-7.05189-7.871877-10.331839-12.627803-10.003844-14.267777-0.65599-10.495836-0.819987-16.727739-0.327995-18.695708 18.695708 13.611787 30.831518 24.927611 36.243434 33.94747l-2.459962 11.971813c-7.05189-7.05189-12.7918-10.987828-16.727739-11.807816 8.035874 11.315823 13.939782 17.383728 17.711723 18.039718l-4.099936 19.84369C554.557335 320.532992 543.733504 310.201153 542.257527 307.413197L542.257527 307.413197zM307.249199 569.153107c-9.675849 0-17.711723-6.887892-19.84369-16.071749-4.263933-12.463805 1.639974-28.863549 29.519539-35.751441 1.31198 35.587444 0 49.527226 0 49.527226C313.809097 568.33312 310.693145 569.153107 307.249199 569.153107L307.249199 569.153107zM709.862908 537.173607c0-1.147982 0-2.131967-0.163997-3.115951 2.131967 3.279949 3.279949 7.215887 3.279949 11.479821 0 11.643818-9.183857 21.155669-20.49968 21.155669-3.443946 0-6.723895-0.819987-9.511851-2.459962C697.891095 563.905189 709.862908 551.933376 709.862908 537.173607L709.862908 537.173607zM531.761691 520.281871c0.65599 15.743754-32.963485 49.199231-32.963485 49.199231 0-18.203716 9.347854-42.803331 12.463805-48.707239-8.035874-11.643818-13.283792-32.307495-13.283792-32.307495S531.105701 504.374119 531.761691 520.281871L531.761691 520.281871zM488.794363 507.326073c2.459962 0 4.427931 1.967969 4.427931 4.427931 0 2.459962-1.967969 4.427931-4.427931 4.427931-2.459962 0-4.427931-1.967969-4.427931-4.427931C484.366432 509.294042 486.334401 507.326073 488.794363 507.326073L488.794363 507.326073zM445.335042 629.668161c-0.819987 8.855862-2.131967 16.235746-2.131967 16.235746s-53.627162 7.05189-63.959001-30.503523C395.151826 632.94811 427.623318 631.144138 445.335042 629.668161L445.335042 629.668161zM620.648302 614.908392c-9.675849 37.719411-63.303011 31.651505-63.303011 31.651505s-1.475977-7.379885-2.459962-16.235746C572.597053 631.636131 605.232543 632.784113 620.648302 614.908392L620.648302 614.908392zM419.587444 518.313901c29.847534 0 53.955157 21.975657 53.955157 49.035234 0 27.059577-24.271621 49.035234-53.955157 49.035234-29.847534 0-53.955157-21.975657-53.955157-49.035234C365.632287 540.289558 389.903908 518.313901 419.587444 518.313901L419.587444 518.313901zM419.587444 613.76041c28.371557 0 51.331198-20.827675 51.331198-46.411275 0-25.5836-22.959641-46.411275-51.331198-46.411275-28.207559 0-51.331198 20.827675-51.331198 46.411275C368.256246 592.932735 391.379885 613.76041 419.587444 613.76041L419.587444 613.76041zM419.587444 534.38565c20.007687 0 36.243434 14.759769 36.243434 32.799488 0 18.203716-16.235746 32.799488-36.243434 32.799488s-36.243434-14.759769-36.243434-32.799488C383.34401 549.14542 399.579757 534.38565 419.587444 534.38565L419.587444 534.38565zM435.331198 552.261371c1.967969 2.131967 4.919923 2.623959 6.559898 1.147982 1.639974-1.475977 1.475977-4.263933-0.491992-6.3959-1.967969-2.131967-4.919923-2.623959-6.559898-1.147982C433.035234 547.341448 433.199231 550.129404 435.331198 552.261371L435.331198 552.261371zM395.971813 585.880846c5.411915 5.73991 13.283792 7.05189 17.875721 3.115951 4.591928-3.935939 3.935939-11.807816-1.475977-17.547726-5.411915-5.73991-13.283792-7.05189-17.875721-3.115951C389.903908 572.433056 390.559898 580.304933 395.971813 585.880846L395.971813 585.880846zM584.240871 518.313901c29.847534 0 53.955157 21.975657 53.955157 49.035234 0 27.059577-24.271621 49.035234-53.955157 49.035234-29.847534 0-53.955157-21.975657-53.955157-49.035234C530.121717 540.289558 554.393338 518.313901 584.240871 518.313901L584.240871 518.313901zM584.240871 613.76041c28.371557 0 51.331198-20.827675 51.331198-46.411275 0-25.5836-22.959641-46.411275-51.331198-46.411275-28.207559 0-51.331198 20.827675-51.331198 46.411275C532.909673 592.932735 555.869315 613.76041 584.240871 613.76041L584.240871 613.76041zM584.240871 534.38565c20.007687 0 36.243434 14.759769 36.243434 32.799488 0 18.203716-16.235746 32.799488-36.243434 32.799488-20.007687 0-36.243434-14.759769-36.243434-32.799488C547.997438 549.14542 564.233184 534.38565 584.240871 534.38565L584.240871 534.38565zM599.820628 552.261371c1.967969 2.131967 4.919923 2.623959 6.559898 1.147982 1.639974-1.475977 1.475977-4.263933-0.491992-6.3959-1.967969-2.131967-4.919923-2.623959-6.559898-1.147982C597.688661 547.341448 597.852659 550.129404 599.820628 552.261371L599.820628 552.261371zM560.62524 585.880846c5.411915 5.73991 13.283792 7.05189 17.875721 3.115951 4.591928-3.935939 3.935939-11.807816-1.475977-17.547726-5.411915-5.73991-13.283792-7.05189-17.875721-3.115951C554.557335 572.433056 555.213325 580.304933 560.62524 585.880846L560.62524 585.880846zM957.171044 381.540038C957.171044 381.540038 957.171044 381.540038 957.171044 381.540038c-0.65599 0.983985-1.31198 1.803972-1.967969 2.951954-0.327995 0.327995-0.491992 0.65599-0.819987 0.983985-0.327995 0.327995-1.967969 0.65599-2.295964 0.983985-11.315823 14.759769-29.355541 40.34337-62.975016 46.247277l0 34.931454c0 4.263933-0.819987 8.691864-5.083921 8.691864L685.919283 476.330557c-0.163997 10.331839-0.327995 18.203716-0.65599 27.879564 24.435618 1.803972 43.295324 19.351698 43.295324 41.491352 0 22.467649-19.84369 40.671365-45.263293 41.819347-1.967969 78.226778-5.903908 143.98975-7.70788 150.549648l-0.491992 0.983985c-1.967969 2.295964-9.511851 5.247918-21.155669 8.363869 0.327995 13.939782-3.279949 29.355541-11.643818 46.08328 3.443946-21.647662-22.795644-36.079436-26.567585-38.047406-0.163997 0-0.327995 0-0.491992 0 0.163997 4.427931 0 57.727098-88.230621 97.90647-1.475977-44.115311-14.10378-70.682896-31.9795-86.754644L494.534273 766.606022l-5.411915-0.327995 0-0.163997 0 0 0 0 0.327995 0 0.327995-0.163997c-0.819987-0.163997-0.983985-0.491992-1.147982-1.147982-10.331839-8.035874-28.043562-18.203716-64.450993-18.203716-13.283792 0-28.207559 1.31198-44.607303 3.935939-4.099936 0.819987-7.70788 1.147982-11.151826 1.147982-5.575913 0-10.003844-0.983985-16.071749-2.295964l-0.327995 0-0.327995-0.163997c-17.547726-4.099936-27.55157-7.70788-30.011531-10.659833l-0.491992-0.983985c-0.491992-2.131967-2.295964-8.363869-5.73991-150.549648-25.255605-0.983985-45.263293-19.351698-45.263293-41.983344 0-22.139654 18.859705-39.523382 43.459321-41.163357-0.163997-9.675849-0.327995-17.547726-0.65599-27.879564L132.099936 476.002562c-4.427931 0-10.495836-4.591928-10.495836-8.691864l0-97.414478c-11.807816-0.65599-19.679693-2.295964-26.731582-4.755926-29.027546-10.495836-35.751441-35.915439-35.587444-60.023062 0-1.475977 0.491992-2.787956 0.983985-3.771941-6.723895-11.643818-6.231903-25.5836-5.083921-35.587444 0.983985-8.035874 2.623959-12.13581 4.427931-13.939782-4.263933-8.855862-0.983985-18.859705 1.967969-26.731582 3.771941-10.167841 12.13581-11.971813 22.139654-10.003844-4.755926-9.019859-2.459962-17.219731 11.643818-28.699552 4.427931-3.607944 14.267777 7.05189 26.075593 16.071749l0-267.151826c0-4.263933 6.067905-6.067905 10.331839-6.067905l751.928251 0c4.427931 0 5.083921 1.803972 5.083921 6.067905L888.784113 248.374119c16.727739 0.983985 29.355541 7.70788 38.539398 19.84369 4.591928 6.231903 7.871877 11.807816 8.691864 16.891736C977.670724 313.153107 982.262652 344.640615 957.171044 381.540038L957.171044 381.540038zM316.433056 508.638053c-22.959641 0.491992-40.835362 16.727739-40.835362 36.735426 0 20.335682 18.859705 36.899423 41.983344 36.899423l0 2.623959 0.163997-0.65599c0-0.819987 0-1.475977 0-2.295964 0.491992 0.163997 0.983985 0.163997 1.475977 0.327995l1.803972 0 0 0.491992c5.247918 1.31198 12.7918 2.951954 19.351698 3.771941 10.003844 35.095452 34.111467 64.122998 34.111467 64.122998s-9.839846 28.863549-13.939782 67.238949c51.167201-85.11467 229.268418-81.178732 280.107623-10.823831-4.591928-32.799488-12.627803-56.415119-12.627803-56.415119s24.107623-28.863549 34.111467-64.122998c6.559898-0.819987 13.939782-1.147982 19.023703-2.295964 0 0.491992 0 2.623959 0 2.623959l0.491992 0c23.123639 0 41.983344-18.695708 41.983344-39.03139 0-9.347854-3.935939-18.695708-10.495836-25.419603-10.167841-6.723895-25.091608-10.331839-40.835362-10.331839 0-6.723895 0.983985-19.351698 1.803972-35.423447L318.401025 476.658552c0.163997 10.331839 0.491992 19.84369 0.65599 30.175529l0 2.131967L316.433056 508.638053 316.433056 508.638053zM126.524023 462.554773c0 4.099936 6.3959 9.183857 10.823831 9.183857l741.432415 0c4.263933 0 5.575913-4.919923 5.575913-9.183857l0-29.027546c0 0.491992-6.723895 1.475977-10.823831 1.147982-22.795644-2.295964-44.443306-3.607944-60.679052-9.183857L176.215247 425.491352l-1.31198-2.787956 0-60.18706c-10.823831 5.903908-25.5836 8.363869-48.215247 7.871877L126.68802 462.554773 126.524023 462.554773zM821.381166-13.693786 180.807175-13.693786 180.807175 282.649584c10.823831 4.263933 15.579757 10.987828 15.087764 21.975657-0.491992 8.363869-4.263933 13.611787-15.087764 16.727739l0 7.379885c5.903908 1.967969 3.935939 4.263933 5.247918 6.723895 5.411915 10.495836 5.575913 18.203716-5.247918 23.779628l0 55.759129 615.318386 0c-2.787956-5.575913-4.755926-7.871877-5.575913-12.299808-1.475977-8.035874-1.639974-18.367713-1.147982-28.207559L697.891095 315.449071c0 0-28.371557-15.251762-16.727739-32.799488 11.643818-17.383728 32.307495-11.479821 50.511211-0.327995 12.13581 7.379885 39.68738 23.287636 63.959001 40.179372 0.163997-0.163997 0.327995-0.163997 0.491992-0.327995-1.803972-1.31198-2.951954-2.295964-2.951954-2.295964-11.151826-7.543882-6.887892-36.899423 15.415759-41.327354 3.115951-0.65599 9.675849 0 9.675849 1.147982l0-293.391416L821.381166-13.693786 821.381166-13.693786zM177.855221 271.169763c0 3.443946-2.131967 6.231903-4.755926 8.035874 1.639974 0.491992 3.771941 0.983985 4.755926 1.475977L177.855221 271.169763 177.855221 271.169763zM177.855221 322.828956c-0.983985 0.163997-1.639974 0.327995-2.459962 0.491992 0.819987 0.491992 1.475977 0.983985 2.459962 1.475977L177.855221 322.828956 177.855221 322.828956zM878.780269-65.516976 137.347854-65.516976c-4.263933 0-10.823831 2.131967-10.823831 6.3959L126.524023 206.882767c5.903908 1.147982 4.919923 2.295964 6.723895 3.279949 19.679693 8.035874 38.047406 25.255605 25.747598 33.127482-0.163997 0-1.475977 0.163997-1.639974 0.163997 9.511851 3.771941 17.547726 9.839846 17.547726 20.663677l0-289.29148 655.169763 2.459962 0 291.915439c9.839846-9.675849 21.647662-14.595772 34.603459-10.331839 3.279949-6.559898 13.611787-9.839846 19.515695-10.331839l0-307.495195C884.192184-63.38501 883.044202-65.516976 878.780269-65.516976L878.780269-65.516976zM878.780269-65.516976"  horiz-adv-x="1024" />
+            <glyph glyph-name="fire" unicode="&#59222;"
+                   d="M890.059904 352.19948999999997C845.890699 458.956706 840.554889 548.4951550000001 857.396326 618.42714 859.144623 625.686731 860.991676 631.9776790000001 862.858846 637.425182 863.763607 640.064841 865.906573 645.659889 866.16406 646.532651L880.890349 696.448108 833.062903 675.9309969999999C832.106692 675.5208 830.618069 674.894716 827.426684 673.550492 824.667648 672.380966 822.310677 671.354022 819.868514 670.244809 813.291441 667.2575449999999 807.049466 664.090938 800.697749 660.4128450000001 784.089623 650.795565 768.486253 638.656896 753.86285 623.033596 727.630498 595.007563 706.526618 557.766355 691.78157 509.713231 675.041103 455.157161 671.516484 411.46006 673.004574 347.939834 673.477918 327.73476900000003 673.463923 322.197583 672.83965 318.324215 673.779618 324.156339 684.455526 333.67819899999995 696.104608 329.19567600000005 693.056849 330.36844199999996 685.695898 339.012828 676.314007 361.368339 660.550914 398.92921 646.834249 460.170272 636.817284 549.350468 625.445924 650.588768 630.103925 734.7280519999999 644.646978 801.338628 647.677924 815.221065 650.899934 827.082435 654.086773 836.904609 655.91465 842.538316 657.254607 846.094657 657.880284 847.554385L678.645286 896 628.243642 880.578031C617.409833 877.263087 599.94569 869.52239 578.105438 855.845223 542.547644 833.577626 507.199569 802.385036 474.400401 760.836776 447.596676 726.883228 423.611383 687.30061 403.118547 641.7016189999999 378.907516 587.829195 363.003277 542.798944 353.158029 503.238462 349.274261 487.632585 346.433259 473.323627 344.1945 458.925156 343.334411 453.39353 342.592734 448.063234 341.804612 441.911844 341.502524 439.553997 340.356619 430.329551 340.073506 428.145504 337.596047 409.033293 335.848224 404.35337 329.235273 398.312868 336.081933 404.566848 343.232634 404.098227 346.608002 402.086756 344.852318 403.133013 341.598345 406.493651 337.991853 411.887149 327.030897 428.279226 317.980358 454.883162 313.690598 489.339595 311.250185 508.941598 310.203772 539.08627 310.370048 576.545325 310.480474 601.422138 311.113088 628.122479 312.099068 654.977888 312.481453 665.393013 312.891081 675.105466 313.30045 683.8491750000001 313.545346 689.079919 313.735044 692.813105 313.84201 694.783403L317.55517 763.179488 271.360516 712.604139C270.467691 711.626645 268.852992 709.837042 266.618705 707.326295 262.927895 703.178805 258.823678 698.493751 254.407949 693.3614689999999 241.78797 678.693606 229.164348 663.340425 217.341267 648.004036 211.724185 640.717803 206.411389 633.591345 201.450577 626.6638379999999 176.017063 591.147305 156.617347 555.4025280000001 138.122768 512.155497 90.841957 401.595812 76.97672 299.64870599999995 99.261816 188.13489300000003 126.80821 50.29373899999996 188.553235-37.64422200000001 278.8297-84.690336 344.19104-118.75233700000001 408.837235-128 507.940695-128 525.713007-128 557.977207-125.567138 590.857378-120.46215900000004 641.152493-112.65333099999998 687.496192-99.78932299999997 726.063273-80.59104400000001 738.155853-74.57148800000004 743.07901-59.88870199999997 737.059454-47.79612199999997 731.039898-35.70354299999997 716.357111-30.780384000000026 704.264531-36.79993999999999 670.855859-53.43041900000003 629.092954-65.02289699999994 583.352478-72.12456999999995 552.984316-76.83953499999996 523.228215-79.08327499999996 507.940695-79.08327499999996 416.16215-79.08327499999996 357.934257-70.75375399999996 301.436271-41.310745999999995 224.830174-1.3887230000000272 171.977796 73.88423 147.230072 197.72094500000003 126.99711 298.965952 139.514783 391.004811 183.099329 492.921284 200.282663 533.1021499999999 218.020237 565.784358 241.22153 598.183718 245.831691 604.6215589999999 250.802959 611.289899 256.082244 618.137961 267.31885 632.713596 279.402035 647.409487 291.488864 661.457681 298.732051 669.8762429999999 304.338773 676.1767130000001 307.478705 679.614406L264.997214 697.435142C264.883874 695.347445 264.688038 691.493511 264.43725 686.13688 264.020474 677.234965 263.603959 667.359281 263.215279 656.7726250000001 262.21142 629.430212 261.566827 602.224414 261.453805 576.7624579999999 261.278897 537.3588179999999 262.385015 505.49418 265.148621 483.296209 276.058157 395.668083 322.627019 326.024497 362.226031 362.19561799999997 379.341732 377.829698 384.756649 392.328523 388.584361 421.857186 397.932742 493.974714 407.332926 531.746825 447.736538 621.64966 466.587287 663.594818 488.484326 699.731218 512.795234 730.526996 542.034492 767.565749 573.156162 795.028785 604.068111 814.386984 614.696751 821.043029 624.472062 826.201428 633.124687 830.036563 638.02329 832.207788 641.258688 833.404991 642.556233 833.802016L612.91959 866.825663C608.658554 856.884484 602.686705 838.478616 596.856038 811.772799 581.186705 740.003594 576.231674 650.498985 588.206246 543.890345 607.295279 373.94226100000003 638.819345 298.82556999999997 678.537329 283.542234 701.302332 274.78234499999996 717.731637 289.43566899999996 721.133156 310.5407 722.475759 318.870999 722.489387 324.26340300000004 721.907881 349.08549100000005 720.532565 407.791853 723.691247 446.952173 738.546223 495.36355 751.151827 536.44438 768.544047 567.135763 789.576147 589.605967 809.230566 610.60429 821.725461 617.839716 852.347733 630.9761169999999L842.705318 653.453557 819.246577 660.374464C822.235501 670.505564 813.450321 644.87463 809.839253 629.8801189999999 790.647573 550.1890470000001 796.611315 450.1135 844.8591 333.498332 883.105728 241.056017 874.587669 126.06492400000002 824.002925 61.39712899999995 815.680378 50.75754500000005 817.558709 35.38570000000004 828.198295 27.063153000000057 838.837879 18.740607999999952 854.209724 20.618939999999952 862.532269 31.258523999999966 924.762731 110.81426299999998 934.658528 244.404363 890.059904 352.19948999999997Z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="carousel" unicode="&#58932;" d="M1002.069333 144.38400000000001L1002.069333 611.6906670000001c0 24.213333-16.917333 49.578667-42.069333 49.578667l-64 0 1.152 6.4c0 31.338667-26.005333 57.6-58.538667 57.6L186.432 725.269333c-31.936 0-58.410667-31.957333-58.410667-64l-0.213333 0.96L67.178667 662.229333c-25.152 0-45.226667-20.288-45.226667-44.501333l0-467.328L21.354667 150.39999999999998c0-24.789333 20.629333-44.693333 45.312-44.693333L127.786667 105.70666700000004l0-5.184C127.786667 69.03466700000001 153.792 42.66666699999996 186.432 42.66666699999996l652.842667 0c31.658667 0 56.277333 10.901333 56.725333 42.602667l64 0c24.661333 0 42.666667 34.325333 42.666667 59.114667L1002.069333 144.38400000000001zM128 149.26933299999996L64 149.26933299999996l0 469.333333 64 0L128 149.26933299999996zM853.333333 106.602667c0-6.421333-14.848-21.333333-21.333333-21.333333l-640 0c-6.485333 0-21.333333 14.848-21.333333 21.333333l0 554.666667c0 6.378667 9.258667 18.56 15.744 18.56l5.589333 2.773333 640 0c6.442667 0 21.333333-14.954667 21.333333-21.333333L853.333333 106.602667zM960 127.93600000000004l-64 0 0 490.666667 60.842667 1.984c4.970667 0 3.157333 2.944 3.157333-1.984l0-469.333333C960 144.29866700000002 965.013333 127.93600000000004 960 127.93600000000004zM412.458667 399.829333c43.925333 0 79.637333 34.773333 79.637333 77.482667 0 42.752-35.712 77.482667-79.637333 77.482667-43.925333 0-79.637333-34.730667-79.637333-77.482667C332.8 434.602667 368.533333 399.829333 412.458667 399.829333zM412.458667 516.0533330000001c21.952 0 39.829333-17.365333 39.829333-38.741333 0-21.333333-17.877333-38.741333-39.829333-38.741333-21.952 0-39.829333 17.408-39.829333 38.741333C372.629333 498.709333 390.506667 516.0533330000001 412.458667 516.0533330000001zM785.92 457.386667c-95.914667-23.338667-137.728-87.765333-168.256-134.805333-24.213333-37.269333-39.082667-58.346667-65.109333-58.346667l-0.042667 0c-35.456 0-57.109333 14.272-80.042667 28.16-24.362667 14.741333-49.536 29.952-88.64 29.952-75.648 0-156.906667-93.269333-165.930667-103.893333L213.333333 167.38133300000004c0-10.709333 8.917333-18.112 19.925333-18.112l557.504 0c10.986667 0 19.904 7.402667 19.904 18.112L810.666667 438.570667c0 5.973333-2.837333 11.626667-7.658667 15.296C798.186667 457.536 791.872 458.858667 785.92 457.386667zM770.858667 188.52266699999996L253.162667 188.52266699999996c24.874667 27.733333 85.290667 95.082667 130.666667 95.082667 27.733333 0 46.229333-11.157333 67.605333-24.128 25.152-15.168 53.632-32.426667 99.712-33.941333l2.944-0.064c47.637333 0 71.722667 37.12 97.237333 76.416 26.645333 41.088 56.469333 79.104 119.530667 102.485333L770.858667 188.52266699999996z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="help" unicode="&#58887;" d="M690.2 741.8C635.2 783.6 573.2 798 494.6 798c-59.6 0-110.6-12.2-151-39.4C284 718 256 649.8 256 542l153.6 0c0 28.8-2.8 59.8 14 86.4 16.8 26.6 40.2 47 80.4 47 40.8 0 61.8-11.8 81.6-36.2 16.8-20.8 23.2-45.6 23.2-72 0-22.8-11.6-43.8-25.4-62.8-7.6-11.2-17.6-21.2-30.2-30.8 0 0-83-49.4-112.2-96.2-21.8-34.8-29.6-78.4-31.4-130.6-0.2-3.8 1.2-11.6 14.4-11.6 13 0 112 0 123.6 0 11.6 0 14 8.8 14.2 12.4 0.8 19 3.2 48.2 6.6 59.2 6.6 20.8 19.4 39 39.4 54.6l41.4 28.6c37.4 29.2 67.2 53 80.4 71.8 22.6 30.8 38.4 68.8 38.4 113.8C768 649 741 703.2 690.2 741.8zM484 155.6c-51.8 1.6-94.6-34.4-96.4-90.6-1.6-56.4 39-93.4 91-95 54-1.6 95.8 33.2 97.4 89.4C577.6 115.6 538 154 484 155.6z"  horiz-adv-x="1024" />
+            <glyph glyph-name="set" unicode="&#59158;"
+                   d="M466.496-126.62400000000002l-1.056 0.064c-25.184 2.08-47.456 22.368-51.744 47.232l-17.344 102.4c-0.672 4.064-6.624 11.04-10.56 12.416l-30.336 12.416c-5.44 2.496-15.424 0.8-17.472-0.64l-84.992-60.16c-19.584-14.016-51.456-12.736-70.08 3.168l-64.288 64c-17.952 20.48-19.488 50.592-4.736 71.296l60.416 84.672c2.176 3.072 2.784 11.52 1.024 15.04l0 0c0 0-1.664 3.104-7.264 16.608-6.176 14.848-6.816 17.44-6.816 17.44-0.992 3.04-7.456 8.672-11.36 9.376l-102.56 17.248c-25.152 4.288-45.44 26.624-47.168 52L0 428.288c2.112 27.36 22.496 49.6 47.52 53.728l102.528 17.344c4.128 0.672 11.008 6.56 12.416 10.496l12.608 30.336c2.368 4.992 1.6 14.112-0.8 17.504L113.984 642.24C99.36 662.88 100.704 692.896 117.056 712.192l64.416 64.224c20.672 18.208 51.296 18.784 71.36 4.64l84.992-60.16c1.952-1.376 13.28-2.016 15.04-1.056 0.384 0.192 2.528 1.344 16.704 7.168 14.24 5.92 16.576 6.592 16.576 6.592 3.84 1.184 9.504 7.648 10.144 11.424l17.44 102.4c4.32 25.152 26.752 45.376 52.128 47.104l90.528 0.064c27.328-2.112 49.632-22.368 53.952-47.232l17.344-102.432c0.672-4.064 6.656-11.04 10.624-12.48l30.304-12.352c6.24-2.784 15.456-0.8 17.44 0.608l85.024 60.16c19.52 14.016 51.392 12.704 70.08-3.136l64.288-64.032c17.952-20.48 19.456-50.56 4.736-71.264l-60.416-84.672c-2.208-3.136-2.848-11.616-1.056-15.04 0.16-0.352 1.376-2.56 7.232-16.672 5.856-14.112 6.592-16.512 6.592-16.512 1.248-4.032 7.712-9.6 11.648-10.304l102.56-17.248c25.152-4.224 45.44-26.592 47.168-52l0.096-90.304c-2.112-27.392-22.528-49.6-47.552-53.728l-102.528-17.376c-4.128-0.672-10.944-6.496-12.32-10.432l-12.736-30.432c-2.336-4.928-1.568-14.112 0.832-17.472l60.288-84.512c14.624-20.736 13.216-50.816-3.232-70.048l-64.192-64.096c-11.328-9.92-24.64-14.72-38.784-14.72l0 0c-11.904 0-23.52 3.552-32.704 10.016l-84.992 60.16c-1.952 1.408-13.312 2.016-15.072 1.056-0.288-0.16-2.432-1.312-16.608-7.2-14.08-5.792-16.384-6.496-16.384-6.496-4.16-1.28-9.792-7.776-10.432-11.52l-17.408-102.4c-4.352-25.152-26.72-45.344-52.032-47.104L466.496-126.62400000000002zM347.84 100.60799999999995c10.368 0 20.192-2.112 28.48-6.112l27.648-11.296c20.416-7.072 38.976-28.992 42.848-51.584l17.344-102.336c0.288-1.6 3.136-4.32 5.056-4.832l87.296 0.064c-0.032 0.064 3.04 2.944 3.328 4.672l17.408 102.368c3.872 22.656 23.328 44.832 45.28 51.584 0 0 0 0 0 0-0.096 0 2.976 1.152 12.448 5.056 9.472 3.936 12.384 5.248 13.12 5.568 18.208 9.6 49.44 8.032 67.776-4.96l84.928-60.16c0.192-0.128 1.312-0.64 3.104-0.64l0 0c2.048 0 3.52 0.672 3.872 0.96l61.536 61.408 0 0c-0.16 0 0.064 4.416-0.992 5.952l-60.224 84.448c-13.248 18.624-15.68 47.168-5.792 67.872l11.648 27.84c6.944 19.968 29.408 38.912 51.68 42.496l102.464 17.376c1.824 0.384 4.736 3.648 4.864 5.408L972.8 428.288l0 0c-0.096 0-2.88 3.072-4.576 3.424l-102.72 17.28c-23.168 4.032-44.896 22.976-51.776 45.056l0 0c-0.032 0-1.216 3.04-5.12 12.512-3.968 9.568-5.28 12.512-5.632 13.248-10.24 19.36-8.288 48.736 4.96 67.456L868.448 672c0.96 1.408 0.736 5.6-0.384 6.912l-61.408 61.184c0.704-0.8-0.768-0.192-2.848-0.192-1.728 0-2.784-0.416-3.008-0.576l-85.024-60.16c-17.824-12.8-47.776-15.36-68-5.664l-27.712 11.296c-20.512 7.2-39.04 29.088-42.88 51.584l-17.344 102.336c-0.288 1.76-3.616 4.704-5.504 4.864L467.616 843.52c0-0.064-3.104-2.944-3.392-4.672l-17.408-102.336c-3.84-22.624-23.264-44.8-45.216-51.584 0-0.032-3.008-1.184-12.416-5.088-9.568-3.936-12.512-5.248-13.248-5.568-17.984-9.568-49.344-8.032-67.744 4.992L223.264 739.36c-0.416 0.32-6.176 0.288-6.848-0.224L154.688 677.6320000000001c0 0 0 0 0 0 0.224 0 0.032-4.384 1.056-5.856L216 587.264c13.312-18.752 15.744-47.296 5.76-67.968l-11.52-27.648c-6.976-20.032-29.472-38.944-51.776-42.624L55.968 431.68c-1.824-0.384-4.704-3.648-4.832-5.408l0.096-86.56 0 0c0.096 0 2.912-3.104 4.608-3.424l102.656-17.28c23.04-4 44.704-22.912 51.712-44.928 0.256-0.736 1.44-3.84 5.088-12.64 3.68-8.832 5.024-11.84 5.472-12.736 10.592-20.288 8.672-48.96-4.672-67.904l-60.512-84.768c-0.96-1.408-0.736-5.632 0.384-6.912l61.408-61.184c-0.736 0.8 0.736 0.224 2.816 0.192 1.728 0 2.784 0.416 3.008 0.576l84.992 60.16C318.624 96.32000000000005 333.088 100.60799999999995 347.84 100.60799999999995zM512.032 133.856c-138.336 0-250.848 112.224-250.848 250.176 0 137.92 112.544 250.144 250.848 250.144s250.848-112.224 250.848-250.144C762.88 246.08000000000004 650.336 133.856 512.032 133.856zM512.032 583.136c-110.08 0-199.648-89.312-199.648-199.104s89.568-199.136 199.648-199.136 199.648 89.344 199.648 199.136S622.112 583.136 512.032 583.136z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="code-circle" unicode="&#58933;" d="M513.544163 893.525741c-282.101629 0-510.78094-228.679311-510.78094-510.76288 0-282.083569 228.679311-510.76288 510.78094-510.76288s510.76288 228.679311 510.76288 510.76288C1024.325103 664.8464309999999 795.645793 893.525741 513.544163 893.525741zM513.544163-83.46335899999997c-257.503523 0-466.22622 208.740757-466.22622 466.22622S256.0587 848.989082 513.544163 848.989082s466.22622-208.740757 466.22622-466.22622S771.047686-83.46335899999997 513.544163-83.46335899999997zM171.771357 359.77212099999997L414.357086 256.088033 414.357086 300.805295 221.978945 380.50532599999997 414.357086 459.464886 414.357086 504.182148 171.771357 401.76228ZM442.585309 193.38272800000004L478.814238 193.38272800000004 584.737801 572.1429949999999 548.743656 572.1429949999999ZM612.749301 504.182148L612.749301 459.464886 804.874598 380.50532599999997 612.749301 300.805295 612.749301 256.088033 855.33503 359.77212099999997 855.33503 401.76228Z"  horiz-adv-x="1025" />
 
-    
-    <glyph glyph-name="water" unicode="&#58934;" d="M862.315763 33.684211000000005C802.869868 33.684211000000005 754.526289 82.94399999999996 754.526289 143.50371900000005 754.526289 162.33094700000004 759.35885 180.96056099999998 768.520956 197.43438600000002 768.64671 197.79368399999998 768.808394 198.15298199999995 769.006008 198.49431600000003L849.075622 334.542596 849.057657 334.542596 862.315763 357.052632 875.573868 334.542596 875.573868 334.542596 955.140464 199.356632C955.715341 198.67396499999995 956.164464 197.865544 956.380043 196.96729800000003 965.380464 180.60126300000002 970.123201 162.151298 970.105236 143.50371900000005 970.105236 82.94399999999996 921.761657 33.684211000000005 862.315763 33.684211000000005L862.315763 33.684211000000005ZM924.33064 188.57768399999998C924.204885 188.79326300000002 924.115061 189.02680699999996 924.025236 189.27831600000002L862.315763 302.996211 800.606289 189.260351C800.516464 189.02680699999996 800.42664 188.79326300000002 800.300885 188.57768399999998 793.977236 176.505263 790.635763 162.81600000000003 790.635763 148.965053 790.635763 105.29235100000005 822.792956 69.75775399999998 862.333727 69.75775399999998 901.856534 69.75775399999998 933.995763 105.29235100000005 933.995763 148.98301800000002 933.995763 162.81600000000003 930.654289 176.52322800000002 924.33064 188.57768399999998L924.33064 188.57768399999998ZM682.684605 392.982456C593.50678 392.982456 520.982429 469.602807 520.982429 563.8108070000001 520.982429 593.093614 528.240254 622.071018 541.965447 647.706947 542.163061 648.281825 542.396605 648.820772 542.684043 649.341754L662.815412 860.968421 662.797447 860.968421 682.684605 896 702.571763 860.968421 702.535833 860.968421 821.89471 650.689123C822.774991 649.647158 823.439692 648.3716489999999 823.781026 646.970386 837.25471 621.514105 844.368815 592.8241399999999 844.35085 563.8108070000001 844.35085 469.602807 771.844464 392.982456 682.684605 392.982456L682.684605 392.982456ZM791.408254 630.1192980000001C791.21064 630.4965609999999 791.030991 630.891789 790.887271 631.322947L682.684605 823.924772 574.446008 631.287018C574.320254 630.891789 574.140605 630.4965609999999 573.942991 630.1013330000001 562.840675 609.6931930000001 556.912254 596.075789 556.912254 572.631579 556.912254 498.634105 613.375973 428.876351 682.684605 428.876351 751.993236 428.876351 808.367131 489.058807 808.367131 563.056281 808.367131 586.500491 802.492605 609.6931930000001 791.408254 630.1192980000001L791.408254 630.1192980000001ZM538.695833 276.983018C540.115061 275.330246 541.174991 273.33614 541.713938 271.12645599999996 563.433517 231.11859600000003 574.895131 186.02666699999997 574.895131 140.43171900000004 574.895131-7.581192999999985 458.051341-128 314.403903-128 170.738499-128 53.89471-7.581192999999985 53.89471 140.43171900000004 53.89471 186.47578899999996 65.589868 231.998877 87.704675 272.294175 88.010078 273.17445599999996 88.387341 274.01880700000004 88.872394 274.863158L282.408394 607.411649 282.372464 607.411649 314.403903 662.45614 346.453306 607.411649 346.399412 607.411649 538.695833 276.983018 538.695833 276.983018ZM314.403903 590.614456L119.807973 257.79649099999995C119.556464 257.113825 119.251061 256.449123 118.873798 255.78442099999995 98.932745 220.48336800000004 88.387341 180.42161399999998 88.387341 139.91073700000004 88.387341 12.072420999999963 189.799271-91.89052600000002 314.421868-91.89052600000002 439.026499-91.89052600000002 540.420464 12.072420999999963 540.402499 139.91073700000004 540.402499 180.42161399999998 529.857096 220.50133300000005 509.916043 255.78442099999995 509.53878 256.449123 509.233377 257.131789 508.963903 257.86835099999996L314.403903 590.614456 314.403903 590.614456Z"  horiz-adv-x="1024" />
+            <glyph glyph-name="fonts-u" unicode="&#58950;"
+                   d="M0-49.23076900000001L945.230769-49.23076900000001 945.230769-128 0-128 0-49.23076900000001ZM0 896L407.076943 896 407.076943 834.065644 319.153861 827.872177 299.076923 809.911217 299.076923 365.841959C299.076923 281.19796199999996 317.076716 220.709337 353.076933 184.37435100000005 389.077071 148.03936499999998 448.153442 129.87210800000003 530.307702 129.87210800000003 606.000364 129.87210800000003 660.807522 149.17482299999995 694.730752 187.78072599999996 728.653982 226.38662899999997 745.61536 289.66226700000004 745.61536 377.60953099999995L745.61536 804.956475 724.153817 826.633531 633.461524 834.065644 633.461524 896 955.384596 896 955.384596 834.065644 868.846119 826.633531 849.461563 804.956475 849.461563 364.60331299999996C849.461563 246.92743900000005 819.923338 161.66533900000002 760.846178 108.81441500000005 701.76894 55.96348999999998 606.462188 29.53846199999998 474.923087 29.53846199999998 406.153531 29.53846199999998 345.807951 38.51886300000001 293.884613 56.47990200000004 241.961275 74.44093999999996 201.230887 100.143419 171.692347 133.58820400000002 149.076834 160.01362700000004 133.038474 190.25793999999996 123.57695 224.32200899999998 114.115348 258.386078 109.384625 307.21047599999997 109.384625 370.796702L109.384625 809.911217 89.307687 827.872177 0 834.065644 0 896Z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="username" unicode="&#58991;" d="M514.594 824.888c-144.11 0-260.979-118.46-260.979-264.558 0-88.783 43.497-166.928 109.711-214.898-135.361-59.354-230.159-195.858-230.159-354.931h0.894c1.541-21.375 18.641-38.377 40.117-38.377s38.575 17.051 40.117 38.377h0.645c0 0.944-0.099 1.79-0.099 2.734 0 0.05 0 0.099 0 0.149 0 0.099-0.05 0.149-0.05 0.199 0.05 159.967 120 291.054 273.009 304.924 8.948-0.944 17.598-2.734 26.844-2.734 144.11 0 260.979 118.46 260.979 264.558s-116.919 264.558-261.029 264.558zM514.594 377.54499999999996c-99.769 0-180.698 81.972-180.698 183.183s80.879 183.183 180.698 183.183c99.719 0 180.647-81.972 180.647-183.183s-80.879-183.183-180.647-183.183zM896.021-6.615000000000009c0 0.348-0.199 0.645-0.199 0.994-1.043 105.038-43.397 200.034-111.35 269.131v0c-7.157 7.357-17.001 11.98-27.986 11.98-21.574 0-39.122-17.747-39.122-39.668 0-11.135 4.573-21.127 11.83-28.334l-0.099-0.05c52.742-55.229 85.302-130.589 85.302-213.853 0-1.043-0.149-1.987-0.149-3.034h0.994c1.491-21.375 18.691-38.377 40.117-38.377 21.475 0 38.575 17.051 40.117 38.377h0.597c0 0.796-0.099 1.491-0.099 2.287-0.05 0.149 0.05 0.348 0.05 0.547z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="find-fill" unicode="&#58992;" d="M512 896C229.236364 896 0 666.763636 0 384c0-282.786909 229.236364-512 512-512s512 229.213091 512 512C1024 666.763636 794.763636 896 512 896zM657.291636 383.976727c0-77.195636-60.392727-139.729455-136.424727-144.407273l-175.732364-151.714909-22.877091 13.242182 58.228364 222.021818c-8.634182 18.548364-13.800727 39.074909-13.800727 60.858182 0 77.195636 60.369455 139.729455 136.378182 144.430545l175.802182 151.714909 22.877091-13.172364-58.251636-222.068364C652.125091 426.309818 657.291636 405.806545 657.291636 383.976727zM512 384m-66.048 0a2.838 2.838 0 1 1 132.096 0 2.838 2.838 0 1 1-132.096 0Z"  horiz-adv-x="1024" />
+            <glyph glyph-name="triangle-d" unicode="&#58917;"
+                   d="M773.128299 88.65234199999998M889.696178 575.195553L158.862147 575.195553 524.357446 209.64704300000005 889.696178 575.195553Z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="about" unicode="&#58891;" d="M514.27174 834.607768c-249.516844 0-451.789687-202.272843-451.789687-451.789687s202.272843-451.789687 451.789687-451.789687 451.789687 202.272843 451.789687 451.789687S763.788583 834.607768 514.27174 834.607768zM514.27174-20.12919999999997c-222.541469 0-402.947282 180.405813-402.947282 402.947282s180.405813 402.947282 402.947282 402.947282 402.947282-180.405813 402.947282-402.947282S736.814232-20.12919999999997 514.27174-20.12919999999997zM514.295276 593.979362c-9.44614-10.360975-14.307867-22.951735-14.307867-37.483706 0-11.960403 3.886517-22.396079 11.534707-30.457686 7.783267-8.211009 17.853623-12.450567 29.313629-12.450567 9.312086 0 23.139 2.849908 35.782971 16.900925 9.865695 10.641361 14.866592 23.437805 14.866592 37.693484 0 11.68104-4.031826 21.900799-11.744485 29.832446C562.925856 615.325529 532.358677 613.449809 514.295276 593.979362zM549.461193 293.282882c-12.110829-11.541871-20.589944-18.759249-26.236548-23.316032 2.77009 14.953573 9.976212 44.614104 27.330462 103.023398 17.297968 57.890478 18.799158 67.991534 18.799158 72.955592 0 8.65717-3.63683 16.335037-9.921977 21.642926-14.124695 11.661597-39.035038 9.349949-69.131497-7.677866-16.779152-9.408277-34.595936-24.759917-54.493102-46.576805l-10.377348-11.541871 34.425044-26.548656 8.818853 8.715499c9.573029 9.292644 16.086373 15.35164 20.411889 19.393699-26.294876-86.460164-39.093367-140.190903-39.093367-164.262134 0-10.907421 3.172249-19.970844 9.573029-26.839275 6.460132-7.039323 15.510252-10.736529 25.891693-10.736529 10.146081 0 21.792329 3.926426 35.922141 11.949146 12.741185 7.212262 31.883151 23.029506 58.641585 48.190559l10.837836 10.391674-31.30703 30.475082L549.461193 293.282882z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="location" unicode="&#59157;" d="M451.673935-98.39569900000004C478.883834-129.01914699999998 524.254807-128.8089789999999 551.400292-97.92885100000001 553.755808-95.38790800000004 558.821323-89.79676199999994 565.872444-81.84834999999998 577.572838-68.65901699999995 590.597131-53.62432000000001 604.615947-36.99831500000005 644.662065 10.495494000000008 684.708678 61.282182000000034 722.129538 113.35355300000003 759.658524 165.575381 792.492213 216.29072599999995 819.314991 264.54153799999995 868.685946 353.35368300000005 896 430.456574 896 493.714285 896 715.890551 719.301715 896 501.333333 896 283.364952 896 106.666667 715.890551 106.666667 493.714285 106.666667 430.401284 134.05152 353.19426999999996 183.54613 264.23737800000004 210.371803 216.02347099999997 243.193308 165.34812399999998 280.699364 113.16684599999996 318.155192 61.05544999999995 358.239268 10.22578999999996 398.322835-37.31103099999996 412.354743-53.95207300000004 425.391185-69.00072999999998 437.102468-82.20257900000001 444.160087-90.15846599999998 449.230214-95.75492099999997 451.982775-98.73670600000003L451.673935-98.39569900000004ZM486.822684-65.32134799999994C484.281231-62.568254000000024 479.425084-57.207989 472.585916-49.49835900000005 461.135889-36.591016999999965 448.364015-21.84776099999999 434.602351-5.527214999999956 395.275714 41.11192700000004 355.949587 90.98045200000001 319.289224 141.985137 282.808749 192.739548 250.983685 241.87642200000005 225.158316 288.29247799999996 179.388826 370.55419500000005 154.50505 440.709839 154.50505 493.714285 154.50505 688.960095 309.785362 847.238095 501.333333 847.238095 692.881306 847.238095 848.161617 688.960095 848.161617 493.714285 848.161617 440.753978 823.345286 370.701737 777.693969 288.58074899999997 751.873483 242.13293399999998 720.038415 192.96007499999996 683.537446 142.16873799999996 646.912604 91.20503299999996 607.624538 41.38032599999997 568.335977-5.21503800000005 554.587654-21.52024300000005 541.828177-36.24924999999996 530.389289-49.14379699999995 523.556841-56.84571100000005 518.705521-62.20043499999997 516.166694-64.95052599999997 507.543772-74.74891100000002 495.255793-74.80583000000001 487.131524-65.66235300000005L486.822684-65.32134799999994ZM714.955981 428.971194C723.919106 453.372045 728.565658 479.331002 728.565658 505.904762 728.565658 627.091817 632.184774 725.333333 513.29293 725.333333 394.401086 725.333333 298.020202 627.091817 298.020202 505.904762 298.020202 384.717709 394.401086 286.47619 513.29293 286.47619 549.003859 286.47619 583.510052 295.36805300000003 614.373097 312.125591 626.032316 318.456132 630.449257 333.22218 624.238611 345.10648100000003 618.027966 356.99078199999997 603.541579 361.49299399999995 591.882359 355.16245100000003 567.900883 342.14136099999996 541.111735 335.23809500000004 513.29293 335.23809500000004 420.821495 335.23809500000004 345.858586 411.648164 345.858586 505.904762 345.858586 600.161359 420.821495 676.571428 513.29293 676.571428 605.764365 676.571428 680.727273 600.161359 680.727273 505.904762 680.727273 485.192019 677.117041 465.022684 670.154965 446.069408 665.522846 433.459117 671.796821 419.408892 684.168282 414.687349 696.53974 409.965809 710.323861 416.360905 714.955981 428.971194L714.955981 428.971194Z"  horiz-adv-x="1024" />
+            <glyph glyph-name="tips" unicode="&#59138;"
+                   d="M967.280184 578.537671c-24.915459 58.887178-60.544935 111.76755-105.96745 157.161413-45.393863 45.393863-98.273211 81.051991-157.160389 105.96745-60.988026 25.803689-125.735679 38.853913-192.494129 38.853913-66.729797 0-131.504056-13.0799-192.494129-38.853913-58.887178-24.916483-111.766526-60.544935-157.160389-105.96745-45.393863-45.393863-81.051991-98.274234-105.96745-157.161413-25.803689-60.988026-38.884612-125.734656-38.884612-192.464453s13.0799-131.50508 38.884612-192.464453c24.915459-58.887178 60.544935-111.737874 105.96745-157.161413 45.393863-45.393863 98.273211-81.051991 157.160389-105.96745 60.988026-25.803689 125.735679-38.853913 192.494129-38.853913 66.729797 0 131.504056 13.0799 192.494129 38.853913 58.887178 24.916483 111.766526 60.544935 157.160389 105.96745 45.393863 45.393863 81.051991 98.274234 105.96745 157.161413 25.803689 60.988026 38.853913 125.734656 38.853913 192.464453S993.084896 517.549645 967.280184 578.537671zM511.687892-55.138552000000004c-243.302305 0-441.241446 197.909465-441.241446 441.21177S268.385587 827.284989 511.687892 827.284989c243.273652-0.029676 441.210747-197.938118 441.210747-441.21177S754.990197-55.138552000000004 511.687892-55.138552000000004zM511.657192 573.565427m-45.511543 0a44.475 44.475 0 1 1 91.023086 0 44.475 44.475 0 1 1-91.023086 0ZM542.729885 184.14011300000004c0-17.162892-13.906731-31.071669-31.070646-31.071669l0 0c-17.163915 0-31.070646 13.907755-31.070646 31.071669L480.588593 426.998303c0 17.162892 13.906731 31.071669 31.070646 31.071669l0 0c17.163915 0 31.070646-13.907755 31.070646-31.071669L542.729885 184.14011300000004z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="up" unicode="&#58905;" d="M513.6 539.2l384-384c12.8-12.8 32-12.8 44.8 0 12.801 12.8 12.801 32 0 44.8l-403.2 403.2C532.8 609.6 520 616 513.6 616c-6.4 0-19.2 0-25.599-6.4L78.399 200c-12.8-12.8-12.8-32 0-44.8s32-12.8 44.8 0L513.6 539.2z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="pause" unicode="&#58961;" d="M512-128c-282.714 0-511.893 229.232-511.893 512 0 282.768 229.179 512 511.893 512 282.714 0 511.893-229.232 511.893-512 0-282.768-229.179-512-511.893-512zM512 863.996c-265.043 0-479.9-214.91-479.9-479.996 0-265.097 214.857-479.996 479.9-479.996 265.043 0 479.9 214.899 479.9 479.996 0 265.086-214.857 479.996-479.9 479.996zM639.973 181.32299999999998h-21.329c-23.558 0-42.658 19.1-42.658 42.658v319.933c0 23.558 19.1 42.658 42.658 42.658h21.329c23.558 0 42.658-19.1 42.658-42.658v-319.933c0-23.558-19.1-42.658-42.658-42.658zM405.356 181.32299999999998h-21.329c-23.558 0-42.658 19.1-42.658 42.658v319.933c0 23.558 19.1 42.658 42.658 42.658h21.329c23.558 0 42.658-19.1 42.658-42.658v-319.933c0-23.558-19.1-42.658-42.658-42.658z"  horiz-adv-x="1024" />
+            <glyph glyph-name="picture" unicode="&#58954;"
+                   d="M765.376 615.424c0 0 103.04 1.024 103.04-100.992 0 0 9.536-98.752-103.04-100.928 0 0-100.864-2.176-99.84 100.928C665.536 514.496 664.448 605.8879999999999 765.376 615.424ZM968.32 770.56c0 0 54.208-4.224 54.208-52.032l0-712.832c0 0-3.2-51.008-54.208-52.096L968.32 770.56ZM1.472 5.631999999999948c0 0 2.176-52.096 52.096-52.096L968.32-46.464000000000055l0 150.848-99.712 0-203.072 206.144-153.024-153.984L304.32 413.568l-205.056-307.072-45.632-1.024L52.48 718.4639999999999 1.472 718.4639999999999 1.472 5.631999999999948ZM968.32 770.56L53.568 770.56c0 0-52.096 1.088-52.096-52.032L968.32 718.528 968.32 770.56Z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="date" unicode="&#58935;" d="M933.185668 758.3591759999999l-167.054737 0 0 56.506968L732.333174 814.866145l0-56.506968L539.505447 758.3591759999999l0 56.506968-33.796734 0 0-56.506968-216.255299 0 0 56.506968-33.796734 0 0-56.506968L88.005356 758.3591759999999c-12.255115 0-22.224164-9.970072-22.224164-22.224164l0-706.60521c0-12.255115 9.970072-22.225187 22.224164-22.225187l845.179288 0c12.255115 0 22.225187 9.970072 22.225187 22.225187L955.409832 736.135012C955.409832 748.389104 945.43976 758.3591759999999 933.185668 758.3591759999999zM939.036933 29.528778999999986c0-3.226484-2.62478-5.852288-5.852288-5.852288l-845.179288 0c-3.226484 0-5.851265 2.62478-5.851265 5.852288L82.154092 736.135012c0 3.226484 2.62478 5.851265 5.851265 5.851265l167.650301 0 0-55.657624 33.796734 0 0 55.657624 216.255299 0 0-55.657624 33.796734 0 0 55.657624L732.333174 741.986277l0-55.657624 33.796734 0 0 55.657624 167.054737 0c3.226484 0 5.852288-2.62478 5.852288-5.851265L939.036933 29.528778999999986zM206.835765 608.260623l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM458.879152 608.260623l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM684.827207 608.260623l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM206.835765 433.345871l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM458.879152 433.345871l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM684.827207 433.345871l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM206.835765 257.877511l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM458.879152 257.877511l129.098263 0 0-94.008071-129.098263 0 0 94.008071ZM684.827207 257.877511l129.098263 0 0-94.008071-129.098263 0 0 94.008071Z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="layim-uploadfile" unicode="&#58909;" d="M914.7359263333336 663.0359498888887c-20.806884999999987 20.806885000000012-48.471967999999976 32.265868000000026-77.89816099999994 32.265868000000054l-352.221993 2.2737367544323206e-13-120.26099099999992 95.03035300000005-11.157106999999995 8.816806000000007-14.220886 9.769962616701378e-15L197.09333633333344 799.148976888889c-51.69538300000001 2.1316282072803006e-14-93.75224400000005-42.88778599999995-93.75224400000006-95.60442799999993l-1.5631940186722204e-13-255.13888799999998c-1.7763568394002505e-15-2.302439 0.08391099999999785-4.716417999999999 0.24968699999999489-7.196911999999999l-1.9895196601282805e-13-340.692403c-1.9539925233402755e-14-29.426192999999998 11.458982999999954-57.09127599999999 32.26586799999994-77.89816100000002 20.806884999999987-20.806885000000012 48.471967999999976-32.265868000000026 77.89816099999994-32.265868000000054l623.083981-3.410605131648481e-13c29.426192999999998-1.9539925233402755e-14 57.09127599999999 11.458982999999954 77.89816100000002 32.26586799999994 20.806885000000012 20.806884999999987 32.265868000000026 48.471967999999976 32.265868000000054 77.89816099999994L947.0028173333335 585.1377888888885C947.0017943333336 614.5639818888885 935.5428113333334 642.2280418888886 914.7359263333336 663.0359498888887zM197.09333633333372 758.2167298888891l141.88345099999998-8.526512829121202e-14L470.3948853333333 654.369569888889l366.44287999999995-2.2737367544323206e-13c38.236859-2.1316282072803006e-14 69.23178099999997-30.99492100000004 69.23178099999994-69.23178100000004L906.0695463333333 465.9195468888886 144.27334033333327 465.91954688888893 144.2733403333336 703.5445488888892C144.2733403333336 733.7361748888891 167.92296933333355 758.2167298888891 197.09333633333372 758.2167298888891zM836.8377653333331 31.28558888888881L213.75480733333322 31.28558888888915c-38.236859 2.1316282072803006e-14-69.23178099999997 30.99492100000004-69.23178099999994 69.23178100000004L144.52302633333338 424.4776928888892l761.546519-6.252776074688882e-13-2.2737367544323206e-13-323.96134599999993C906.0695463333333 62.28050988888867 875.0746243333334 31.285588888888583 836.8377653333331 31.28558888888881z"  horiz-adv-x="1024" />
+            <glyph glyph-name="more-vertical" unicode="&#58993;"
+                   d="M511.998465 623.681848c40.525995 0 73.386404 35.771715 73.386404 79.892585s-32.860409 79.892585-73.386404 79.892585c-40.524972 0-73.384357-35.771715-73.384357-79.892585S471.47247 623.681848 511.998465 623.681848L511.998465 623.681848zM511.998465 463.893608c-40.524972 0-73.384357-35.772738-73.384357-79.893608 0-44.12087 32.859385-79.892585 73.384357-79.892585 40.525995 0 73.386404 35.772738 73.386404 79.892585C585.384869 428.12087 552.52446 463.893608 511.998465 463.893608L511.998465 463.893608zM511.998465 144.320199c-40.524972 0-73.384357-35.733852-73.384357-79.894631 0-44.119847 32.859385-79.893608 73.384357-79.893608 40.525995 0 73.386404 35.772738 73.386404 79.893608C585.383846 108.58634600000005 552.52446 144.320199 511.998465 144.320199L511.998465 144.320199z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="delete" unicode="&#58944;" d="M738.923 24.288h-451.956c-27.2 0-49.327 21.603-49.327 48.157v418.017c0 26.548 22.129 48.147 49.327 48.147h451.956c27.2 0 49.327-21.598 49.327-48.147v-418.017c0-26.555-22.129-48.157-49.327-48.157zM286.966 494.547c-4.447 0-7.168-2.644-7.168-4.084v-418.017c0-1.443 2.722-4.093 7.168-4.093h451.956c4.448 0 7.168 2.651 7.168 4.093v418.017c0 1.44-2.722 4.084-7.168 4.084h-451.956zM832.199 496.302h-640.401c-27.201 0-49.327 20.131-49.327 44.876v61.045c0 24.74 22.128 44.867 49.327 44.867h640.401c27.2 0 49.327-20.127 49.327-44.867v-61.045c0-24.744-22.129-44.876-49.327-44.876zM184.631 541.327c0.387-0.733 2.722-2.866 7.168-2.866h640.401c4.445 0 6.782 2.132 7.168 2.867v60.741c-0.393 0.736-2.733 2.863-7.168 2.863h-640.401c-4.437 0-6.776-2.128-7.168-2.863v-60.742zM600.748 605.354h-174.546c-27.201 0-49.327 20.13-49.327 44.876v10.736c0 24.74 22.128 44.867 49.327 44.867h174.546c27.2 0 49.327-20.126 49.327-44.867v-10.736c0-24.745-22.128-44.876-49.327-44.876zM419.034 650.378c0.387-0.733 2.722-2.865 7.168-2.865h174.546c4.446 0 6.782 2.131 7.168 2.865v10.432c-0.393 0.736-2.734 2.862-7.168 2.862h-174.546c-4.437 0-6.776-2.126-7.168-2.862v-10.432zM404.099 430.833h-30.097c-7.297 0-13.213-5.916-13.213-13.213v-272.34c0-7.297 5.916-13.212 13.213-13.212h30.098c7.297 0 13.212 5.916 13.212 13.212v272.341c0 7.297-5.916 13.213-13.212 13.213zM659.583 430.833h-30.097c-7.298 0-13.213-5.916-13.213-13.213v-272.34c0-7.297 5.917-13.212 13.213-13.212h30.097c7.297 0 13.212 5.916 13.212 13.212v272.341c0 7.297-5.916 13.213-13.212 13.213zM531.841 430.833h-30.098c-7.297 0-13.213-5.916-13.213-13.213v-272.34c0-7.297 5.917-13.212 13.213-13.212h30.098c7.297 0 13.212 5.916 13.212 13.212v272.341c0 7.297-5.916 13.213-13.212 13.213z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="play" unicode="&#58962;" d="M512 896C229.376 896 0 666.624 0 384 0 101.37599999999998 229.376-128 512-128 794.624-128 1024 101.37599999999998 1024 384 1024 666.624 794.624 896 512 896L512 896 512 896zM512-95.23199999999997C245.76-95.23199999999997 32.768 117.75999999999999 32.768 384 32.768 650.24 245.76 863.232 512 863.232S991.232 650.24 991.232 384C991.232 117.75999999999999 778.24-95.23199999999997 512-95.23199999999997L512-95.23199999999997 512-95.23199999999997zM733.184 392.192L393.216 588.8c-4.096 4.096-8.192 4.096-12.288 0C376.832 588.8 372.736 584.704 372.736 580.608l0-393.216c0-4.096 4.096-8.192 4.096-8.192 4.096-4.096 8.192-4.096 12.288 0l344.064 196.608c4.096 4.096 4.096 4.096 4.096 8.192C741.376 388.096 737.28 392.192 733.184 392.192L733.184 392.192 733.184 392.192zM733.184 392.192"  horiz-adv-x="1024" />
+            <glyph glyph-name="flag" unicode="&#58988;"
+                   d="M878.368178 798.272211c-11.363815 4.799306-24.470321 2.360767-33.31578-6.245238-0.36532-0.350994-37.162388-35.304064-95.163383-56.05262-75.462692-26.993794-150.763702-18.409279-223.812415 25.517163-38.347376 23.060205-81.875752 40.665165-129.376603 52.327786-37.582967 9.228175-77.742619 14.777565-119.363552 16.496719-70.805626 2.925632-121.493052-6.224772-123.615389-6.615675-14.56574-2.682086-25.140587-15.380292-25.140587-30.191626L128.58047-31.312913999999978c0-16.954137 13.745049-30.699186 30.699186-30.699186s30.699186 13.745049 30.699186 30.699186L189.978842 266.68306099999995c15.562441 5.250584 47.994084 14.447037 91.40171 17.48728 35.985586 2.51938 72.440869 0.378623 108.35073-6.363941 44.847417-8.420787 89.059362-24.102954 131.409912-46.611597 46.26879-24.591071 93.776803-41.069371 141.203976-48.977481 38.270629-6.380314 76.541257-7.219425 113.740484-2.491751 64.277956 8.16803 103.877859 30.461779 105.532545 31.406291 9.56689 5.464455 15.471366 15.637142 15.471366 26.656103L897.089565 769.958352C897.091612 782.298402 889.73711 793.470859 878.368178 798.272211zM835.69324 257.496841c-14.58416-5.755074-38.82526-13.530155-70.319555-17.225313-30.990828-3.635807-62.940494-2.676969-94.952582 2.851954-40.201607 6.943133-80.731696 21.171182-120.464629 42.289152-48.455595 25.753547-99.208513 43.61945-150.848637 53.101405-29.29214 5.378497-58.896388 8.079002-88.407516 8.079002-12.228509 0-24.443715-0.464581-36.609803-1.39272-34.879392-2.663666-63.618946-8.741082-84.111676-14.355963L189.978842 766.569162c19.971867 2.003634 50.446949 3.910053 86.392626 2.334161 58.186214-2.554172 143.250588-15.041578 218.064504-60.029188 61.32674-36.877909 119.196753-49.491181 169.691797-49.488111 42.293245 0.002047 79.416747 8.854669 109.019972 19.711947 24.269753 8.901741 45.327348 19.747763 62.544475 30.179346L835.692217 257.496841z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="top" unicode="&#58884;" d="M812 153.4l-300 172.8-300-172.8 300 604L812 153.4zM264.5 209.2l247.5 142.5 247.5-142.5L512 707.5 264.5 209.2zM371.7 138.3l0-126.2-15.9 0 0 126.2-45.9 0L309.9 153l107.4 0 0-14.8L371.7 138.2zM506.6 154.5c26.6 0 43.3-3.9 50-11.7 6.7-7.8 10-27.2 10-58.3 0-33.5-3.2-54.2-9.6-62-6.4-7.8-23.2-11.8-50.4-11.8-27 0-43.8 3.9-50.3 11.7-6.5 7.8-9.8 27.9-9.8 60.3l0 9.9 0.2 13.3c0 18.7 4.2 31.5 12.6 38.4C467.8 151 483.5 154.5 506.6 154.5zM506.5 141c-22.3 0-35.3-2.5-39.1-7.4-3.8-5-5.7-22-5.7-51 0-29.1 1.9-46.1 5.7-51.1 3.8-5 16.8-7.4 39.1-7.4 22.4 0 35.4 2.5 39.2 7.4 3.8 5 5.7 22 5.7 51.1l0 9.2-0.1 13.3c0 15.6-2.6 25.4-7.8 29.6S525.9 141 506.5 141zM608.4 12.1 608.4 153l59.2 0 5.4 0c15.9 0 26.7-3.1 32.5-9.2 5.8-6.1 8.7-17.6 8.7-34.4 0-16.1-3-27.1-9-32.9-6-5.9-17.3-8.8-33.9-8.8l-6.2-0.1-40.7 0 0-55.5L608.4 12.1zM624.3 81.1l37.7 0c15.8 0 25.9 1.6 30.3 4.9 4.4 3.2 6.7 10.7 6.7 22.3 0 13.6-1.5 22.2-4.5 25.9-3 3.6-10.1 5.4-21.3 5.4l-6.1 0.1-42.7 0L624.4 81.1z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="friends" unicode="&#58898;" d="M672.02974 765.933689c7.66047-32.266891 8.420787-62.237483 7.713682-95.365998-0.283456-12.778024-7.291057-71.832002-5.3918-89.926102 1.561565-14.936177 5.132904-16.128329 10.759041-28.436656 9.803273-21.422915 6.51846-50.970882 2.76088-72.566736-2.056845-11.816117-6.404873-28.64541-13.017478-38.287001-7.291057-10.645454-21.864984-10.711969-28.319999-23.12365-9.29469-17.848507-4.045129-42.930765-9.903557-62.21497-6.65763-21.883403-23.599488-23.420409-24.877597-52.040237 8.316409-1.243317 16.59598-2.479471 24.877597-3.722788 8.316409-18.498306 23.533996-55.70265 39.08518-66.900689 13.024641-3.728928 26.048259-7.448646 39.07904-11.156084 45.641503-19.593244 96.365768-43.032072 142.108578-63.215764 41.656749-18.381649 91.51325-24.937972 106.575294-70.629617 0-31.026644 2.795673-104.309694 2.025123-144.978952L58.155515-56.631556000000046c-0.757247 40.669258 2.029216 113.952308 2.029216 144.978952 15.065114 45.691645 64.928778 52.247968 106.578364 70.629617 45.74281 20.182668 96.467075 43.62252 142.098345 63.215764 13.027711 3.707438 26.054399 7.427156 39.08211 11.156084 15.554254 11.197016 30.78105 48.402383 39.09439 66.900689l18.492166 4.710278c-4.196579 24.429389-18.658965 26.322505-24.682146 43.62559-2.356674 26.013467-4.729721 52.052516-7.095605 78.079286 0.107447-1.234107-17.006326 3.246951-19.252483 4.716418-24.130583 15.838733-24.618701 80.075757-26.941606 106.793258-1.063215 12.222369 15.163351 22.240537 10.654664 44.62536-26.433022 131.125433 11.437493 219.776496 71.330582 240.123916 41.564651 17.633612 119.167077 50.323129 191.563944 3.716648l17.971303-17.428951 29.061896-5.237281C662.71663 795.172617 672.02974 765.933689 672.02974 765.933689z"  horiz-adv-x="1024" />
+            <glyph glyph-name="loading" unicode="&#58941;"
+                   d="M511.999488 756.654348m-70.608128 0a69 69 0 1 1 141.216255 0 69 69 0 1 1-141.216255 0ZM236.047576 639.997442m-68.561515 0a67 67 0 1 1 137.123031 0 67 67 0 1 1-137.123031 0ZM125.530506 382.12428m-62.421678 0a61 61 0 1 1 124.843356 0 61 61 0 1 1-124.843356 0ZM227.861126 100.71507499999996m-54.235229 0a53 53 0 1 1 108.470457 0 53 53 0 1 1-108.470457 0ZM514.166851-16.84438799999998m-47.192835 0a46.118 46.118 0 1 1 94.385671 0 46.118 46.118 0 1 1-94.385671 0ZM804.730553 91.450061m-33.834596 0a33.064 33.064 0 1 1 67.669192 0 33.064 33.064 0 1 1-67.669192 0ZM935.55411 383.395226m-23.969924 0a23.424 23.424 0 1 1 47.939849 0 23.424 23.424 0 1 1-47.939849 0ZM856.723717 634.80007m-17.135262 0a16.745 16.745 0 1 1 34.270525 0 16.745 16.745 0 1 1-34.270525 0Z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="refresh-3" unicode="&#59818;" d="M820.376904 697.14807C740.637816 774.519228 631.884926 822.157201 511.999488 822.157201c-244.621347 0-442.925808-198.305485-442.925808-442.926832 0-244.6193 198.304462-442.925808 442.925808-442.925808 206.075449 0 379.271046 140.739395 428.740738 331.337337L822.859445 267.64189899999997c-45.759183-127.45381-167.656441-218.623229-310.859957-218.623229-182.371584 0-330.210677 147.842163-330.210677 330.210677 0 182.371584 147.840116 330.2117 330.210677 330.2117 88.762603 0 169.32443-35.035958 228.655723-92.015693L557.051567 433.822732l280.641725 0 113.880677 0 3.351328 0L954.925297 831.695438 820.376904 697.14807z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="ok" unicode="&#58885;" d="M960 640L915.2 684.8 371.2 172.79999999999995 108.8 454.4 64 409.6 358.4 83.20000000000005 364.8 89.60000000000002 371.2 83.20000000000005Z"  horiz-adv-x="1024" />
+            <glyph glyph-name="fonts-i" unicode="&#58948;"
+                   d="M897.948 834.255l0-64.322-128.65 0L447.674-1.9329999999999927l128.65 0 0-64.32L126.052-66.25300000000004l0 64.32 128.65 0 321.622 771.866-128.65 0L447.674 834.255 897.948 834.255z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="layer" unicode="&#58936;" d="M96.089 724.318l0-684.236 831.822 0L927.911 724.318 96.089 724.318zM884.178 84.457L140.464 84.457 140.464 489.559l743.714 0L884.178 84.457z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="face-smile-fine" unicode="&#58892;" d="M511.558443 852.9315573333333c-246.787686 0-447.597201-200.783932-447.597201-447.598224 0-246.815315 200.783932-447.598224 447.597201-447.598224 246.841921 0 447.64939 200.782909 447.64939 447.598224C959.207833 652.1476253333334 758.400365 852.9315573333333 511.558443 852.9315573333333zM511.558443-4.962310666666667c-226.247884 0-410.295644 184.046736-410.295644 410.295644 0 226.249931 184.072319 410.296667 410.295644 410.296667 226.27449 0 410.346809-184.046736 410.346809-410.296667C921.905252 179.08442633333334 737.832933-4.962310666666667 511.558443-4.962310666666667zM724.38055 303.5726953333334c-9.698896 3.457752-20.366863-1.566682-23.848151-11.264555-28.500101-79.45461-104.372116-132.844587-188.82353-132.844587-84.798315 0-160.770614 53.689806-189.070146 133.590578-3.432169 9.723455-14.075577 14.772448-23.823592 11.364839-9.699919-3.432169-14.797008-14.100136-11.364839-23.823592 33.547047-94.77248 123.668601-158.434405 224.234017-158.434405 100.142791 0 190.140525 63.314001 223.935212 157.564595C739.125369 289.3978573333334 734.102982 300.0903843333334 724.38055 303.5726953333334zM302.49494 515.3479593333334c0-24.653493 19.98517-44.638663 44.638663-44.638663 24.653493 0 44.638663 19.98517 44.638663 44.638663s-19.98517 44.63764-44.638663 44.63764C322.48011 559.9855993333333 302.49494 540.0014523333333 302.49494 515.3479593333334L302.49494 515.3479593333334zM631.398856 515.3479593333334c0-24.653493 19.98517-44.638663 44.63764-44.638663 24.653493 0 44.63764 19.98517 44.63764 44.638663s-19.984147 44.63764-44.63764 44.63764C651.384026 559.9855993333333 631.398856 540.0014523333333 631.398856 515.3479593333334L631.398856 515.3479593333334z"  horiz-adv-x="1024" />
+            <glyph glyph-name="refresh-1" unicode="&#58982;"
+                   d="M688.146 736l-192 128v-256l192 128.001zM496.146 767.7090000000001c-231.174-8.416-416-198.479-416-431.709 0-238.587 193.413-432 432-432 233.23 0 423.293 184.826 431.709 416h-64.05c-8.377-195.817-169.778-352-367.658-352-203.241 0-368 164.759-368 368 0 197.88 156.183 359.282 352 367.658v64.051z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="dollar" unicode="&#58969;" d="M517.565-65.45399999999995c-244.263 0-442.299 198.014-442.299 442.299s198.014 442.299 442.299 442.299c244.263 0 442.299-198.014 442.299-442.299 0-244.263-198.014-442.299-442.299-442.299zM517.565 863.383c-268.751 0-486.564-217.834-486.564-486.564s217.834-486.564 486.564-486.564c268.751 0 486.564 217.834 486.564 486.564 0 268.751-217.834 486.564-486.564 486.564zM497.036 425.349c-18.443 6.957-33.605 16.314-45.238 27.617-11.581 11.306-20.059 23.465-25.468 36.742-5.423 13.177-8.178 26.235-8.178 39.172-0.004 18.194 2.564 34.357 7.846 48.514 5.327 14.231 13.748 25.85 25.468 35.02 11.581 9.167 26.798 15.204 45.482 18.295v-205.52zM534.455 356.13199999999995c16.937-6.756 32.277-14.997 46.035-24.855 13.748-9.678 24.613-21.601 32.929-35.57 8.204-13.909 12.436-30.734 12.622-50.307 0-14.231-1.859-27.907-5.785-40.833-3.858-12.866-9.542-24.531-17.271-34.804-7.691-10.211-17.271-18.443-28.678-24.613-11.328-6.318-24.613-9.678-39.76-10.341v221.377zM534.455 94.18299999999999c29.037 3.318 53.978 11.306 74.785 24.134 20.985 12.866 37.018 30.15 48.281 51.734 11.125 21.535 16.876 46.832 16.937 76.196 0 16.08-1.67 30.377-5.033 42.985-3.318 12.622-8.204 24.15-14.836 34.357-6.739 10.341-14.836 20.189-24.613 29.326-8.853 8.204-19.107 15.957-30.659 23.041-11.328 7.197-22.836 13.706-34.281 19.261-11.581 5.694-21.601 10.516-30.659 14.231v221.377c14.527-3.318 26.662-8.594 36.62-16.192 9.859-7.395 17.766-16.192 23.776-26.384 5.941-10.211 10.341-20.985 12.972-32.345 2.666-11.328 4.026-22.836 3.858-34.097h46.155c0.004 16.314-1.566 32.345-5.327 48.281-3.543 15.957-9.938 30.909-19.107 44.969-8.996 13.909-21.601 26.235-37.684 36.742-16.192 10.521-36.62 18.295-61.318 23.562v49.426h-37.441v-53.316c-23.465-2.624-42.985-8.178-58.595-16.314-15.633-8.204-28.279-18.194-37.684-29.562-9.441-11.328-16.523-23.302-21.226-35.317-4.59-12.062-7.846-23.302-9.316-33.326-1.566-10.211-2.256-18.194-2.115-24.029 0.004-21.601 3.452-40.612 9.863-57.238 6.479-16.523 15.58-30.909 27.178-43.441 11.659-12.436 25.361-23.562 40.833-33.204 15.633-9.678 32.649-18.443 51.098-26.235v-237.329c-18.194 1.984-33.326 7.197-45.094 15.633-11.97 8.369-21.074 19.107-27.714 31.902-6.739 12.972-11.011 27.178-13.363 42.701-2.256 15.58-3.034 31.313-2.115 47.367h-47.803c-1.183-23.776 0.397-46.035 5.033-66.676s12.357-39.03 23.376-55.019c10.892-16.08 25.361-29.037 43.142-39.03 17.847-9.863 39.472-16.08 64.586-18.295v-65.283h37.441v65.283z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="group" unicode="&#58899;" d="M1383.17753-39.75895700000001L1380.048488-13.938771999999972 1373.005994 17.35852699999998 1362.834458 47.090445000000045 1348.751189 77.605053 1334.667921 101.07716700000003 1315.107539 123.76659099999995 1293.199086 141.76331100000004 1262.684478 158.97562200000004 1240.777745 169.147158 1211.828518 176.18965200000002 1182.87757 183.23042599999997 1157.840075 192.61927200000002 1126.544497 207.48523 1101.507002 219.22214799999995 1070.992393 233.30541600000004 1047.52028 246.607714 1047.52028 329.54366300000004 1057.690095 341.280581 1067.080661 356.92751 1074.121435 372.57615899999996 1079.598549 392.136541 1085.858352 415.610375 1088.204704 433.605376 1091.595216 432.822685 1098.37624 433.866846 1103.593603 438.040048 1109.330466 447.428894 1112.982449 458.3814 1115.06905 471.943448 1117.676871 496.459723 1118.719312 517.324016 1117.676871 535.059266 1114.024889 546.0134929999999 1106.722645 550.186695 1102.549442 549.142535 1106.201425 572.614649 1109.330466 600.782906 1110.374627 626.341621 1109.851687 646.684693 1106.722645 665.4623839999999 1100.984061 683.718855 1093.160597 700.409945 1082.20637 719.189356 1069.688483 734.838006 1055.082274 746.8346730000001 1036.304583 758.83134 1012.832469 769.785566 993.010617 775.00121 969.017283 779.174412 945.543448 779.695632 921.550114 775.52243 898.599221 767.698965 878.256148 759.35256 860.520898 747.877113 844.089558 733.2726250000001 828.440908 716.058594 814.35764 695.715522 804.186104 673.8087889999999 797.92802 648.771294 797.14533 616.691305 800.274372 586.959387 804.186104 548.621314 795.579949 548.621314 790.102836 541.57882 788.539175 529.060933 790.102836 499.329015 794.014568 464.902674 797.14533 447.688644 802.622443 438.299798 812.793979 432.822685 819.052063 433.605376 822.965515 406.221529 826.877248 389.790189 833.137051 371.79346899999996 841.743207 353.79846799999996 851.914743 339.7152 859.738207 329.54366300000004 858.955517 245.04233299999999 867.267518 242.13003600000002 878.734364 238.975192 891.063029 234.389141 902.817148 229.80137100000002 913.712888 225.78814699999998 923.459535 220.91310299999998 935.215374 216.03977999999995 948.116866 208.58615799999995 961.018358 201.13081599999998 971.625104 193.38992099999996 985.386695 183.06872699999997 997.142535 172.174708 1008.323827 158.41311700000006 1020.077947 143.21860000000004 1032.549389 125.72933699999999 1043.300632 105.086951 1052.476173 82.72436500000003 1060.502621 62.08197800000005 1066.093267 42.72974099999999 1069.963715 22.517404000000056 1073.834162-0.27523199999995995 1076.41446-26.93831499999999 1076.84451-45.000403000000006 1075.984411-61.12726799999996 1072.328988-73.59870999999998 1065.377664-87.28805299999999 1057.277248-96.391345 1042.440532-103.91721500000006 1351.099261-103.91721500000006 1365.182529-96.87472100000002 1376.136756-85.92221500000005 1383.17753-74.18529799999999 1384.742911-59.319339000000014ZM438.650719 816.389195L421.44873 797.467007 405.96694 775.104421 394.785647 751.021637 387.904851 723.498455 387.044752 688.234377 390.48515 655.550598 394.785647 613.4057250000001 385.324553 613.4057250000001 379.303857 605.6648299999999 377.583658 591.903239 379.303857 559.21946 383.604354 521.375084 387.044752 502.452896 393.065448 492.131703 404.246741 486.111007 411.127537 486.971106 415.428034 456.867625 419.728531 438.805537 426.609327 419.02325 436.070421 399.240962 447.251713 383.75917200000004 455.852708 372.57787900000005 454.992609 279.687139 440.370918 270.226045 405.96694 253.88415499999996 370.702863 238.40236500000003 342.319581 224.64077399999996 319.956995 215.17967999999996 295.014111 207.43878500000005 269.211128 202.278188 244.268244 196.25749199999996 218.46526 185.07619899999997 194.382475 173.034807 172.879989 157.55301699999995 148.797205 133.470232 131.595216 108.52734799999996 118.693724 84.44456400000001 108.372531 58.641579999999976 98.051337 29.398198999999977 92.89074 6.175514000000021 88.590243-13.606772999999976 86.009945-36.829458000000045 86.009945-57.47184500000003 89.450343-78.11423200000002 99.771536-91.87582299999997 115.253326-102.19701699999996 135.035613-103.91721500000006 995.995162-103.91721500000006 1011.476952-96.17632000000003 1023.518344-84.13492799999995 1031.259239-71.23343599999998 1032.979438-54.891546999999946 1031.259239-33.38906099999997 1027.818842-5.005778999999961 1020.077947 29.398198999999977 1008.896654 62.08197800000005 993.414864 95.625857 977.933074 121.42884000000004 956.430587 146.37172399999997 932.347803 166.15401199999997 898.803924 185.07619899999997 874.72114 196.25749199999996 842.89746 203.99838699999998 811.07378 211.739282 783.550598 222.060476 749.14662 238.40236500000003 721.623438 251.303857 688.079559 266.78564700000004 662.276576 281.407338 662.276576 372.57787900000005 673.457869 385.479371 683.779062 402.68136 691.519957 419.883349 697.540653 441.385835 704.421449 467.188819 707.001747 486.971106 710.729418 486.111007 718.18304 487.258379 723.916463 491.84443 730.224432 502.165623 734.237656 514.207015 736.532402 529.1159789999999 739.398253 556.066335 740.545626 579.001747 739.398253 598.496761 735.385029 610.538153 727.356861 615.1259239999999 722.77081 613.9785509999999 726.784034 639.7815350000001 730.224432 670.7451149999999 731.371805 698.842844 730.797258 721.205429 727.356861 741.847816 721.050611 761.915656 712.449617 780.265018 700.408225 800.907405 686.646634 818.109394 670.590297 831.2981589999999 649.94791 844.485204 624.144927 856.526596 602.356888 862.261739 575.979358 866.847789 550.176374 867.422336 523.800564 862.834565 498.570407 854.233571 476.207822 845.05975 456.712807 832.443811Z"  horiz-adv-x="1449" />
+            <glyph glyph-name="rmb" unicode="&#58974;"
+                   d="M511.998465 896C229.23338 896 0.004605 666.769178 0.004605 384.001023c0-282.773272 229.227752-512.001023 511.99386-512.001023 282.769178 0 511.994883 229.227752 511.994883 512.001023C1023.994372 666.769178 794.767644 896 511.998465 896zM511.998465-91.59690499999999c-262.660188 0-475.589742 212.930577-475.589742 475.597929 0 262.663258 212.929554 475.594859 475.589742 475.594859 262.663258 0 475.590765-212.9316 475.590765-475.594859C987.590254 121.33469500000001 774.662747-91.59690499999999 511.998465-91.59690499999999zM738.742652 301.137781L544.432155 301.137781l0 69.780273 194.310497 0c17.835204 0 32.249495 14.43885 32.249495 32.220842 0 17.784038-14.414291 32.19526-32.249495 32.19526L589.7462 435.334155l149.620669 209.579249c8.916067 15.397688 3.63069 35.099403-11.82021 43.988864-15.398712 8.891508-35.097356 3.629667-44.017516-11.793604L512.187777 437.098335 340.84334 677.108664c-8.864902 15.423271-28.617781 20.685111-44.016493 11.793604-15.395642-8.889461-20.685111-28.590152-11.82021-43.988864l149.622716-209.579249L285.628808 435.334155c-17.781992 0-32.245402-14.411221-32.245402-32.19526 0-17.781992 14.46341-32.220842 32.245402-32.220842l194.310497 0 0-69.780273L285.628808 301.137781c-17.781992 0-32.245402-14.413268-32.245402-32.19526s14.46341-32.220842 32.245402-32.220842l194.310497 0 0-132.435265c0-17.780969 14.46341-32.19526 32.248472-32.19526 17.835204 0 32.245402 14.414291 32.245402 32.19526L544.433178 236.72065499999997l194.310497 0c17.835204 0 32.249495 14.43885 32.249495 32.220842S756.577856 301.137781 738.742652 301.137781"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="layim-download" unicode="&#58910;" d="M186.888458 77.07363199999998l0 581.729108c14.85022-14.450107 35.050284-23.436782 57.359382-23.436782l560.03604 0 0-151.561881 25.029046 0 0 176.591951-585.065086 0c-31.191396 0-57.359382 26.166963-57.359382 57.359382 0 31.191396 26.165939 57.359382 57.359382 57.359382l572.551074 0L816.798914 800.143838 244.24784 800.143838c-45.431725 0-82.388429-36.957727-82.388429-82.388429l0-640.681778c0-41.796942 34.000372-75.789127 75.789127-75.789127l225.950102 0 0 25.029046L237.648538 26.31355099999996C209.661114 26.31355099999996 186.888458 49.078021000000035 186.888458 77.07363199999998zM236.947574 730.269421l560.38601 0 0-25.029046-560.38601 0 0 25.029046ZM686.086897 428.171012c-85.917812 0-164.908864-55.248302-194.553021-135.882783-30.013571-81.641415-4.269233-175.567621 62.624293-230.942813 67.00302-55.465243 164.474982-62.808488 238.931764-17.720593 74.094532 44.868907 113.272833 133.533272 96.080266 218.517829C869.882923 357.47283300000004 783.297916 428.171012 686.086897 428.171012zM686.086897 38.82858599999997c-75.595722 0-145.060817 48.634674-171.092703 119.595842-26.354228 71.839165-3.63069 154.438395 55.287187 203.074092 59.017138 48.718585 144.762011 55.029314 210.191186 15.237029 65.11195-39.59888 99.396801-117.681236 84.064604-192.408171C847.384513 100.72940100000005 771.387655 38.82858599999997 686.086897 38.82858599999997zM698.600909 152.23547199999996L698.600909 311.02496499999995 673.571862 311.02496499999995 673.571862 152.28459099999998 604.675726 221.17254100000002 586.978668 203.47548400000005 686.111456 104.35190499999999 785.185916 203.42738799999995 767.489882 221.123422Z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="picture-fine" unicode="&#58893;" d="M958.648085 84.30682933333333L65.772494 84.30682933333333 65.772494 721.9115253333333l892.87559 0L958.648085 84.30682933333333zM97.660762 116.20328333333339l829.099055 0L926.759817 690.0570263333334 97.660762 690.0570263333334 97.660762 116.20328333333339zM648.731616 419.05893933333334l-1.991354 0c-47.801702 0-86.696548 38.900985-86.696548 86.695524l0 1.978051c0 47.809889 38.894845 86.671988 86.696548 86.671988l1.991354 0c47.801702 0 86.698594-38.862099 86.698594-86.671988l0-1.978051C735.43021 457.95992433333333 696.533318 419.05893933333334 648.731616 419.05893933333334zM646.740262 562.5193053333333c-30.224372 0-54.810327-24.582885-54.810327-54.787814l0-1.978051c0-30.230512 24.584931-54.803163 54.810327-54.803163l1.991354 0c30.222325 0 54.810327 24.572652 54.810327 54.803163l0 1.978051c0 30.203906-24.586978 54.787814-54.810327 54.787814L646.740262 562.5193053333333zM91.097276 181.7900473333334l-22.748097 22.338774 274.373974 279.332916 22.750143-22.351054L91.097276 181.7900473333334zM604.886015 215.92242633333342L339.999113 480.74793033333333l22.548552 22.525016L627.433544 238.4638153333334 604.886015 215.92242633333342zM619.007641 202.70744933333333l-22.763446 22.337751 167.989015 171.035398 22.765493-22.350031L619.007641 202.70744933333333zM925.622924 222.7939273333334L758.534418 389.8343373333333l22.548552 22.529109 167.086459-167.044504L925.622924 222.7939273333334z"  horiz-adv-x="1024" />
+            <glyph glyph-name="addition" unicode="&#58916;"
+                   d="M544 768L480 768 480 416 128 416 128 352 480 352 480 0 544 0 544 352 895.936 352 895.936 416 544 416Z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="link" unicode="&#58956;" d="M262.4-121.60000000000002c-64 0-128 25.6-179.2 76.8-102.4 102.4-102.4 262.4 0 364.8l134.4 134.4 89.6-89.6-134.4-134.4c-51.2-51.2-51.2-128 0-179.2 51.2-51.2 128-51.2 179.2 0l179.2 179.2c25.6 25.6 38.4 57.6 38.4 89.6S556.8 384 537.6 409.6L467.2 473.6l89.6 89.6 70.4-70.4C672 448 697.6 384 697.6 313.6c0-70.4-25.6-134.4-76.8-179.2l-179.2-179.2C396.8-96 326.4-121.60000000000002 262.4-121.60000000000002zM467.2 204.79999999999995L396.8 268.79999999999995c-102.4 102.4-102.4 262.4 0 364.8l179.2 179.2c102.4 102.4 262.4 102.4 364.8 0 102.4-102.4 102.4-262.4 0-364.8l-134.4-134.4-89.6 89.6 134.4 134.4c51.2 51.2 51.2 128 0 179.2-51.2 51.2-134.4 51.2-179.2 0L486.4 544c-51.2-51.2-51.2-128 0-179.2l70.4-70.4L467.2 204.79999999999995z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="diamond" unicode="&#59189;" d="M998.4 526.933333L797.866667 802.133333c-4.266667 6.4-12.8 10.666667-19.2 10.666667L243.2 812.8c0 0-14.933333-2.133333-23.466667-17.066667C194.133333 753.066667 32 512 32 512L21.333333 494.933333l12.8-14.933333L469.333333-27.733333000000016c4.266667-4.266667 6.4-6.4 10.666667-8.533333 6.4-4.266667 32-10.666667 46.933333 0 4.266667 2.133333 6.4 6.4 10.666667 8.533333l409.6 420.266667c10.666667 8.533333 10.666667 25.6 0 34.133333-8.533333 10.666667-23.466667 10.666667-32 0L561.066667 61.86666700000001l153.6 422.4 0 0 251.733333 0c2.133333 0 19.2 0 23.466667 4.266667l2.133333 2.133333C1004.8 497.066667 1006.933333 512 998.4 526.933333zM782.933333 763.733333l-96-226.133333L341.333333 537.6l-85.333333 226.133333L782.933333 763.733333zM221.866667 714.666667l72.533333-179.2-192 0L221.866667 714.666667zM91.733333 488.533333l215.466667 0 138.666667-416L91.733333 488.533333zM503.466667 44.799999999999955l-147.2 443.733333 307.2 0L503.466667 44.799999999999955zM736 535.4666669999999L810.666667 701.866667l119.466667-168.533333L736 533.333333z"  horiz-adv-x="1024" />
+            <glyph glyph-name="home" unicode="&#59022;"
+                   d="M824.084343-40.42033900000001H232.898863c-74.604138 0-85.85232 28.334325-85.852321 49.997718l-0.584307 5.314029V447.645552h48.806589v-402.916582c0-25.547863 13.548574-36.343743 37.629015-36.343743h568.020898c25.928532 0 27.978215 6.220678 27.978215 37.84391V447.585177l48.806589 0.118704c0.022513-14.346753 0-382.76666 0-433.098999 0-38.130436-12.726859-54.765301-51.858088-54.765301l-1.76111-0.25992zM1012.470921 493.103884C849.773422 615.120868 687.101505 737.137853 524.404006 859.153814c-6.207375 4.659113-18.433838 4.659113-24.641213 0C337.077573 737.137853 174.393377 615.120868 11.696902 493.103884c-24.856108-18.635429-0.572028-61.044308 24.642236-42.13361A15995638.709915 15995638.709915 0 0 1 512.025071 807.737794c0.988514-0.715291 1.644453-1.144056 2.823302-2.037403 18.040888-13.524015 36.057217-27.036773 54.073546-40.560788 58.291614-43.718711 116.583229-87.437421 174.874843-131.143852 81.33647-61.008492 162.696476-122.015961 244.033969-183.024454 25.212218-18.911722 49.496298 23.497157 24.64019 42.132587z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="log" unicode="&#58894;" d="M828.01742 700.357158C743.476979 784.899646 631.076002 831.458031 511.516999 831.458031c-119.55798 0-231.959979-46.558385-316.500421-131.09985C110.47716 615.81774 63.918775 503.41574 63.918775 383.85776c0-87.103824 25.045419-171.548074 72.429613-244.204861 9.393951-14.402011 28.685319-18.46249 43.087331-9.071609 14.404058 9.393951 18.46556 28.685319 9.072633 43.089377-40.768519 62.511729-62.317301 135.194098-62.317301 210.187093 0 212.469066 172.85586 385.326972 385.325949 385.326972s385.325949-172.857906 385.325949-385.326972-172.85586-385.326972-385.325949-385.326972c-70.357418 0-139.188062 19.131733-199.052498 55.323003-14.71412 8.900717-33.856086 4.180206-42.753733-10.534937-8.896624-14.71719-4.180206-33.856086 10.534937-42.753733 69.584821-42.070164 149.556201-64.307631 231.271294-64.307631 119.559003 0 231.959979 46.558385 316.500421 131.09985 84.539418 84.539418 131.097804 196.941418 131.097804 316.499397S912.556838 615.81774 828.01742 700.357158zM494.28964 690.216193c-21.782096 0-39.397289-17.658172-39.397289-39.439244l0-283.524378c0-1.360997 0.358157-2.706645 0.493234-4.03285 2.020006-19.886933 18.959817-34.573423 39.379892-34.573423l0 0 0.146333 0.832971 223.590358 0c21.782096 0 39.438221 17.616216 39.438221 39.397289s-17.658172 39.397289-39.439244 39.397289L533.686928 408.273846l0 242.503103C533.686928 672.5580219999999 516.071735 690.216193 494.28964 690.216193z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="rate-solid" unicode="&#59002;" d="M957.111079 492.519576c-3.927449 11.669784-14.447037 19.86442-26.723641 20.816095L647.68068 535.250796 540.183388 811.873997c-4.586458 11.803837-15.951297 19.579941-28.614711 19.579941s-24.02723-7.776104-28.614711-19.579941L375.458719 535.250796l-282.708803-21.915126c-12.276604-0.951675-22.796192-9.146311-26.723641-20.816095-3.927449-11.669784-0.50142-24.557302 8.701173-32.737612l217.547735-193.358823-67.980277-291.298436c-2.848884-12.20702 2.009773-24.919553 12.273535-32.114418 10.264784-7.195889 23.87271-7.42818 34.375925-0.586354l240.624313 156.709111 240.625336-156.709111c5.099135-3.320629 10.92891-4.974291 16.752546-4.974291 6.173606 0 12.342096 1.858324 17.623379 5.561669 10.263761 7.194866 15.122419 19.907399 12.273535 32.114418l-67.980277 291.299459L948.409906 459.781964C957.613522 467.962274 961.037505 480.849792 957.111079 492.519576z"  horiz-adv-x="1024" />
+            <glyph glyph-name="user" unicode="&#59248;"
+                   d="M611.2 342.4c70.4 54.4 115.2 140.8 115.2 230.4 0 156.8-128 288-284.8 288s-284.8-128-284.8-284.8c0-92.8 44.8-182.4 115.2-236.8C108.8 272 0 105.60000000000002 0-80c0-9.6 9.6-19.2 19.2-19.2h848c9.6 0 19.2 9.6 19.2 19.2 0 188.8-112 355.2-275.2 422.4z m-576-396.8C44.8 115.20000000000005 156.8 268.79999999999995 320 320c6.4 3.2 12.8 9.6 12.8 16s-3.2 16-9.6 19.2c-76.8 41.6-128 131.2-128 224 0 134.4 112 246.4 246.4 246.4s246.4-112 246.4-249.6c0-89.6-51.2-176-128-220.8-6.4-3.2-9.6-9.6-9.6-19.2 0-6.4 6.4-12.8 12.8-16 160-51.2 275.2-204.8 281.6-377.6H35.2zM812.8 361.6c54.4 41.6 86.4 108.8 86.4 176 0 89.6-54.4 172.8-134.4 208-9.6 3.2-22.4 0-25.6-9.6-3.2-9.6 0-22.4 9.6-25.6 67.2-28.8 112-99.2 112-172.8 0-67.2-38.4-131.2-96-163.2-6.4-3.2-9.6-9.6-9.6-19.2 0-6.4 6.4-12.8 12.8-16 131.2-41.6 217.6-160 217.6-297.6 0-9.6 9.6-19.2 19.2-19.2s19.2 9.6 19.2 19.2c-3.2 140.8-86.4 262.4-211.2 320z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="fonts-del" unicode="&#58959;" d="M928 448l-143.616 0c-3.456 55.616-14.272 106.56-29.504 144.96C725.504 666.816 617.344 768 464.32 768L256 768l0-320L96 448C78.336 448 64 433.664 64 416S78.336 384 96 384L256 384l0-320 229.632 0c156.288 0 240.768 97.856 267.904 167.488C772.736 280.96000000000004 782.272 333.312 784.96 384L928 384C945.664 384 960 398.336 960 416S945.664 448 928 448zM349.376 711.488l63.936 0c35.712 0 251.84 27.968 266.944-263.488l-330.88 0L349.376 711.488zM439.296 120.51199999999994L349.376 120.51199999999994 349.376 382.528 349.376 384l330.88 0C665.344 113.98400000000004 467.968 120.51199999999994 439.296 120.51199999999994z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="unlink" unicode="&#58957;" d="M150.336 767.6800000000001C133.44 762.304 124.16 744.3199999999999 129.472 727.488 131.2 722.1759999999999 134.208 717.44 138.304 713.664l122.624-122.432C270.208 576.192 289.92 571.52 304.96 580.736 320 590.0799999999999 324.672 609.7280000000001 315.456 624.832 312.832 629.056 309.184 632.64 304.96 635.264L182.336 757.696C175.168 765.44 164.672 769.216 154.304 767.6800000000001 152.96 767.808 151.552 767.808 150.336 767.6800000000001L150.336 767.6800000000001zM406.08 831.424c-13.696-4.48-22.72-17.6-22.016-32L384.064 672c0-17.664 14.336-32 32-32s31.872 14.336 31.872 32L447.936 799.424C448.256 817.088 434.304 831.6800000000001 416.64 832 414.464 832.064 412.16 831.808 410.048 831.424 408.704 831.552 407.296 831.552 406.08 831.424L406.08 831.424zM91.392 511.872C73.728 509.12 61.632 492.544 64.384 474.88 67.136 457.28 83.712 445.248 101.376 448L224 448C241.664 448 256 462.208 256 479.872s-14.336 32-32 32L101.376 511.872c-1.984 0.192-3.968 0.192-6.016 0C94.016 512 92.608 512 91.392 511.872L91.392 511.872zM795.456 320c-17.728-2.752-29.824-14.08-27.072-31.744 2.752-17.6 19.328-35.008 36.992-32.256L928 256c17.664 0 32 19.584 32 37.248S945.664 320 928 320l-122.624 0c-1.984 0.192-3.968 0.192-6.016 0-1.344 0.128-2.688 0.128-4.032 0L795.456 320zM598.272 127.42399999999998c-13.76-4.48-22.72-17.6-22.08-32L576.192-32c0-17.664 14.336-32 32-32S640-49.66399999999999 640-32l0 127.424c0.32 17.6-13.568 32.256-31.232 32.576-2.176 0.064-4.352-0.192-6.592-0.576-1.344 0.128-2.688 0.128-4.032 0L598.272 127.42399999999998zM726.272 191.67999999999995c-16.896-5.376-26.24-23.36-20.864-40.192 1.664-5.312 4.736-10.048 8.832-13.824l122.56-122.432c9.28-15.04 28.928-19.776 44.032-10.496 14.976 9.344 19.712 28.992 10.368 44.032-2.624 4.224-6.144 7.808-10.368 10.432l-122.56 122.432c-7.168 7.744-17.6 11.52-28.032 9.984-1.344 0.128-2.688 0.128-4.032 0L726.272 191.61599999999999zM339.968 28.03200000000004c-49.152 0-98.304 18.688-135.744 56.128-74.816 74.88-74.816 196.608 0 271.488l87.744 87.744c12.48 12.48 32.768 12.48 45.248 0s12.48-32.768 0-45.248L249.408 310.46400000000006c-49.92-49.856-49.92-131.136 0-180.992 49.856-49.856 131.136-49.856 180.992 0l87.744 87.744c12.48 12.48 32.768 12.48 45.248 0s12.48-32.768 0-45.248l-87.744-87.744C438.272 46.72000000000003 389.12 28.03200000000004 339.968 28.03200000000004zM702.144 323.712c-8.192 0-16.384 3.136-22.656 9.344-12.48 12.48-12.48 32.768 0 45.248l87.744 87.744c49.856 49.92 49.856 131.072 0 180.992-49.856 49.856-131.136 49.856-180.992 0L498.496 559.296c-12.48-12.48-32.768-12.48-45.248 0s-12.48 32.768 0 45.248l87.744 87.744c74.88 74.88 196.608 74.88 271.488 0 74.88-74.816 74.88-196.672 0-271.488l-87.744-87.744C718.528 326.784 710.336 323.712 702.144 323.712z"  horiz-adv-x="1024" />
+            <glyph glyph-name="notice" unicode="&#58983;"
+                   d="M544 798.976V864h-64v-65.024C289.536 786.304 160 658.624 160 416v-288h64V416c0 192 115.456 320 288 320 180.544 0 288-128 288-320v-288h64V416c0 242.88-122.496 370.56-320 382.976zM672 64a160 160 0 1 0-320 0h64a96 96 0 0 1 192 0h64zM64 128h896v-64H64v64z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="fonts-clear" unicode="&#58937;" d="M944.787709 197.20939699999997L857.081297 197.20939699999997 741.092979-127.73993700000005 815.146059-127.73993700000005 832.440281-65.58476199999996 966.82809-65.58476199999996 984.512408-127.73993700000005 1062.011328-127.73993700000005 944.787709 197.20939699999997 944.787709 197.20939699999997ZM848.04409 1.1865400000000363L898.951519 153.25866699999995 949.923963 1.1865400000000363 848.04409 1.1865400000000363 848.04409 1.1865400000000363ZM210.238376 489.910857L183.386821 513.121524 12.46009 313.522794C-5.874386 292.652698-3.728862 260.989968 17.271265 242.720508 38.401424 224.45104800000001 70.454249 226.66158700000005 88.853741 247.53168300000004L100.361551 260.599873C106.603075 267.55657099999996 117.200662 268.20673 124.287392 262.22527 131.309106 256.048762 132.024281 245.51619000000005 125.912789 238.55949199999998 107.448281 217.62438099999997 98.085995 173.08850800000005 119.216154 154.81904799999995 140.281297 136.614603 183.841932 151.76330199999995 202.371455 172.69841299999996 208.417932 179.525079 219.145551 180.30526999999995 226.167265 174.19377799999995 233.188979 168.14730199999997 233.904154 157.61473 227.792662 150.65803200000005 209.328154 129.85295199999996 199.965868 85.05701599999998 221.096027 66.91758700000003 242.16117 48.648127000000045 285.656789 63.86184100000003 304.186313 84.666921 310.362821 91.62361899999996 321.025424 92.40381000000002 327.982122 86.29231700000003 335.068852 80.18082500000003 335.784027 69.71326999999997 329.672535 62.75657100000001 311.143011 41.82146 301.845741-2.9094599999999673 322.910884-20.983873000000017 344.041043-39.253333 387.601678-24.039619000000016 406.00117-3.234540000000038 412.177678 3.7221590000000333 422.840281 4.437332999999967 429.927011-1.6091430000000173 436.948725-7.720635000000016 437.598884-18.31822199999999 431.487392-25.144889000000035 413.022884-46.08000000000004 403.725614-90.81092100000001 424.790757-109.01536499999997 445.920916-127.15479400000004 477.973741-125.00927000000001 496.373233-104.20419000000004L667.299963 95.52457100000004 658.652852 132.90869799999996 210.238376 489.910857 210.238376 489.910857ZM844.013106 329.516698L680.10809 471.12127 929.639011 715.190857C933.2799 718.376635 936.725741 721.562413 939.976535 725.203302 977.815773 768.048762 973.524725 833.129651 930.28917 870.513778 887.183646 907.702857 821.58263 903.281778 783.808408 860.631365L783.483328 860.761397 564.249805 571.3107299999999 399.824662 713.56546C385.391138 726.113524 363.480789 724.553143 350.867709 710.249651L248.14263 593.871238 225.322059 567.994921 251.393424 545.434413 695.7119 161.25561900000002 726.26936 136.679619 847.328916 281.014857C859.941995 295.318349 858.44663 316.96863499999995 844.013106 329.516698L844.013106 329.516698ZM817.941741 830.724063C839.136916 854.779937 876.000916 857.315556 900.186821 836.250413 924.372725 815.380317 926.908344 778.906413 905.648154 754.85054 884.452979 730.924698 847.588979 728.389079 823.403075 749.3892060000001 799.21717 770.324317 796.811582 806.798222 817.941741 830.724063L817.941741 830.724063ZM765.473932 758.491429C768.919773 741.522286 777.6319 725.593397 791.80536 713.305397 806.043836 701.017397 823.533106 694.580825 841.087392 693.540571L643.634186 494.526984 593.116852 538.2176509999999 765.473932 758.491429 765.473932 758.491429ZM776.006503 299.739429L709.755328 219.314794 307.502122 566.369524 376.809043 645.03873C382.920535 651.865397 393.38809 652.5155560000001 400.409805 646.534095L774.381106 323.01511100000005C781.337805 317.098667 782.117995 306.69612700000005 776.006503 299.739429L776.006503 299.739429Z"  horiz-adv-x="1063" />
 
-    
-    <glyph glyph-name="triangle-r" unicode="&#58915;" d="M293.291 728.256l426.88-355.456-426.88-355.52z"  horiz-adv-x="1024" />
+            <glyph glyph-name="login-weibo" unicode="&#58997;"
+                   d="M411.270737 288.350316c-17.973895 7.504842-41.189053-0.229053-52.264421-17.542737-11.223579-17.394526-5.955368-38.103579 11.870316-46.201263 18.108632-8.232421 42.132211-0.417684 53.342316 17.421474C435.253895 260.05557899999997 429.446737 280.62989500000003 411.270737 288.350316zM455.545263 306.64757899999995c-6.885053 2.721684-15.508211-0.579368-19.550316-7.329684-3.920842-6.790737-1.751579-14.524632 5.146947-17.367579 7.019789-2.883368 16.006737 0.458105 20.048842 7.370105C465.071158 296.259368 462.551579 304.087579 455.545263 306.64757899999995zM427.52 426.684632c-115.968-11.439158-203.924211-82.216421-196.378947-158.073263 7.531789-75.910737 107.654737-128.161684 223.649684-116.749474 115.994947 11.439158 203.924211 82.216421 196.392421 158.140632C643.664842 385.859368 543.541895 438.110316 427.52 426.684632zM529.300211 247.70021099999997c-23.673263-53.355789-91.769263-81.798737-149.530947-63.232-55.754105 17.933474-79.373474 72.811789-54.945684 122.246737 23.956211 48.464842 86.352842 75.870316 141.541053 61.561263C523.506526 353.562947 552.663579 299.85684200000003 529.300211 247.70021099999997zM512 896C229.241263 896 0 666.772211 0 384c0-282.758737 229.241263-512 512-512 282.772211 0 512 229.241263 512 512C1024 666.772211 794.772211 896 512 896zM455.531789 101.02568399999996c-145.354105 0-293.941895 70.197895-293.941895 185.667368 0 60.362105 38.386526 130.182737 104.474947 196.069053 88.252632 87.929263 191.164632 127.986526 229.874526 89.397895 17.084632-17.003789 18.741895-46.457263 7.760842-81.623579-5.726316-17.690947 16.666947-7.895579 16.666947-7.936 71.343158 29.763368 133.564632 31.514947 156.321684-0.862316 12.139789-17.246316 10.954105-41.472-0.215579-69.510737-5.173895-12.921263 1.589895-14.928842 11.466105-17.879579 40.178526-12.422737 84.924632-42.455579 84.924632-95.380211C772.837053 211.36168399999997 646.090105 101.02568399999996 455.531789 101.02568399999996zM718.672842 468.197053c4.715789 14.457263 1.765053 30.962526-9.202526 43.061895-10.954105 12.072421-27.136 16.666947-42.037895 13.527579l0 0.026947c-12.463158-2.694737-24.724211 5.268211-27.392 17.664-2.667789 12.463158 5.281684 24.697263 17.744842 27.338105 30.531368 6.467368 63.595789-2.937263 85.989053-27.715368 22.447158-24.764632 28.456421-58.489263 18.849684-88.064-3.907368-12.099368-16.936421-18.728421-29.062737-14.848-12.139789 3.920842-18.782316 16.922947-14.874947 28.995368L718.672842 468.183579zM853.261474 424.865684c-0.013474-0.013474-0.013474-0.080842-0.013474-0.107789-4.567579-14.026105-19.712-21.706105-33.778526-17.165474-14.133895 4.554105-21.854316 19.590737-17.300211 33.670737l0 0.013474c13.999158 43.169684 5.12 92.429474-27.567158 128.565895-32.714105 36.122947-80.949895 49.92-125.507368 40.488421-14.484211-3.085474-28.752842 6.130526-31.838316 20.574316-3.098947 14.403368 6.144 28.631579 20.641684 31.717053l0.026947 0c62.625684 13.271579 130.519579-6.117053 176.545684-56.966737C860.483368 554.886737 872.892632 485.618526 853.261474 424.865684z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="circle" unicode="&#58943;" d="M511.998 847.999C255.739 847.999 48 640.26 48 383.999c0-256.258 207.739-463.998 463.998-463.998C768.261-79.99900000000002 976 127.74199999999996 976 383.999 976 640.26 768.261 847.999 511.998 847.999zM512.002-16.000999999999976c-220.915 0-400.002 179.088-400.002 400 0 220.917 179.086 400 400.002 400 220.912 0 399.998-179.083 399.998-400C912 163.087 732.914-16.000999999999976 512.002-16.000999999999976z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="radio" unicode="&#58947;" d="M512.5 383.5m-192 0a192 192 0 1 1 384 0 192 192 0 1 1-384 0ZM511.998 847.999C255.739 847.999 48 640.26 48 383.999c0-256.258 207.739-463.998 463.998-463.998C768.261-79.99900000000002 976 127.74199999999996 976 383.999 976 640.26 768.261 847.999 511.998 847.999zM512.002-16.000999999999976c-220.915 0-400.002 179.088-400.002 400 0 220.917 179.086 400 400.002 400 220.912 0 399.998-179.083 399.998-400C912 163.087 732.914-16.000999999999976 512.002-16.000999999999976z"  horiz-adv-x="1024" />
+            <glyph glyph-name="voice" unicode="&#59016;"
+                   d="M463.380164 644.0568969999999v-0.003069c-4.550643 4.549619-10.484795 7.02295-16.913205 7.02295s-12.365632-2.473331-16.915251-7.02295c-4.549619-4.551666-7.020904-10.485819-7.020904-16.914229s2.471284-12.365632 7.020904-16.915251c60.437487-60.438511 93.675496-140.756791 93.675496-226.222301 0-85.464487-33.238009-165.783791-93.675496-226.220255-4.549619-4.551666-7.020904-10.487865-7.020904-16.915252 0-6.429433 2.471284-12.365632 7.020904-16.914228 4.550643-4.549619 10.486842-7.02295 16.915251-7.02295s12.364609 2.473331 16.913205 7.02295c35.114752 35.116799 62.317301 76.06849 80.814584 121.668037 17.904789 44.018539 26.90579 90.608647 26.90579 138.384768s-9.101285 94.26799-26.90579 138.384767c-18.59552 45.697785-45.698808 86.550215-80.814584 121.667013zM781.892405 618.929614v-0.002047c-31.358195 77.452-77.550237 146.990772-137.098471 206.539007-4.550643 4.549619-10.485819 7.02295-16.915252 7.02295-6.42841 0-12.363585-2.473331-16.914228-7.02295-9.29776-9.299807-9.29776-24.531719 0-33.82948 54.997592-54.998615 97.631598-119.195729 126.613676-190.71153 27.993564-69.044516 42.237987-142.045133 42.237987-216.924541s-14.244422-147.882072-42.237987-216.923518c-28.982078-71.517847-71.616084-135.616724-126.613676-190.711529-9.29776-9.298783-9.29776-24.531719 0-33.82948 4.551666-4.551666 10.485819-7.02295 16.914228-7.02295 6.429433 0 12.366655 2.471284 16.915252 7.02295 59.547211 59.547211 105.740276 129.085984 137.098471 206.53696 30.369681 74.78117 45.699832 153.817248 45.699831 234.928591 0 81.111343-15.331173 160.146397-45.699831 234.927567zM299.474141 427.621497c-11.670807 11.573593-27.103288 18.004049-43.522236 18.004049-16.419971 0-31.852452-6.429433-43.52326-18.004049-11.57257-11.57257-18.003026-27.104311-18.003026-43.522236 0-16.420995 6.42841-31.851429 18.003026-43.52326 11.574616-11.57257 27.103288-18.003026 43.52326-18.003025s31.852452 6.429433 43.522236 18.003025c11.573593 11.573593 18.003026 27.104311 18.003025 43.52326 0 16.419971-6.427386 31.852452-18.003025 43.522236z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="align-center" unicode="&#58951;" d="M992 448L32 448C14.32 448 0 462.336 0 480 0 497.664 14.32 512 32 512L992 512C1009.68 512 1024 497.664 1024 480 1024 462.336 1009.68 448 992 448ZM800 704C817.664 704 832 689.664 832 672 832 654.336 817.664 640 800 640L224 640C206.32 640 192 654.336 192 672 192 689.664 206.32 704 224 704L800 704ZM992 832L32 832C14.32 832 0 846.336 0 864 0 881.664 14.32 896 32 896L992 896C1009.68 896 1024 881.664 1024 864 1024 846.336 1009.68 832 992 832ZM224 256C206.32 256 192 270.336 192 288 192 305.664 206.32 320 224 320L800 320C817.664 320 832 305.664 832 288 832 270.336 817.664 256 800 256L224 256ZM32 128L992 128C1009.68 128 1024 113.66399999999999 1024 96 1024 78.33600000000001 1009.68 64 992 64L32 64C14.32 64 0 78.33600000000001 0 96 0 113.66399999999999 14.32 128 32 128ZM224-64L800-64C817.664-64 832-78.33600000000001 832-96 832-113.66399999999999 817.664-128 800-128L224-128C206.32-128 192-113.66399999999999 192-96 192-78.33600000000001 206.32-64 224-64Z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="align-right" unicode="&#58952;" d="M992 64L32 64C14.32 64 0 78.33600000000001 0 96 0 113.66399999999999 14.32 128 32 128L992 128C1009.68 128 1024 113.66399999999999 1024 96 1024 78.33600000000001 1009.68 64 992 64ZM992 256L288 256C270.32 256 256 270.336 256 288 256 305.664 270.32 320 288 320L992 320C1009.68 320 1024 305.664 1024 288 1024 270.336 1009.68 256 992 256ZM992 448L32 448C14.32 448 0 462.336 0 480 0 497.664 14.32 512 32 512L992 512C1009.68 512 1024 497.664 1024 480 1024 462.336 1009.68 448 992 448ZM992 640L288 640C270.32 640 256 654.336 256 672 256 689.664 270.32 704 288 704L992 704C1009.68 704 1024 689.664 1024 672 1024 654.336 1009.68 640 992 640ZM992 832L32 832C14.32 832 0 846.336 0 864 0 881.664 14.32 896 32 896L992 896C1009.68 896 1024 881.664 1024 864 1024 846.336 1009.68 832 992 832ZM288-64L992-64C1009.68-64 1024-78.33600000000001 1024-96 1024-113.66399999999999 1009.68-128 992-128L288-128C270.32-128 256-113.66399999999999 256-96 256-78.33600000000001 270.32-64 288-64Z"  horiz-adv-x="1024" />
+            <glyph glyph-name="upload-drag" unicode="&#59009;"
+                   d="M666.931 445.918l-124.245 99.362c-7.221 5.639-16.428 9.042-26.429 9.042-9.963 0-19.136-3.376-26.438-9.047l-124.215-99.391c-9.615-7.772-15.713-19.565-15.713-32.782 0-9.946 3.453-19.084 9.223-26.284 13.828-17.359 41.51-20.465 58.918-6.505l56.252 45.022v-261.12c0-23.177 18.842-41.984 41.95-41.984s41.95 18.842 41.95 41.984v261.12l56.286-45.056c17.545-13.892 45.09-10.718 58.914 6.554 5.754 7.137 9.236 16.316 9.236 26.308 0 13.211-6.086 24.999-15.609 32.716zM235.827 142.95000000000005c-85.026 0-152.542 31.71-188.655 89.839-36.113 58.095-34.406 134.724 4.335 195.174 37.342 58.334 102.366 92.023 178.995 94.549-19.866 130.492 42.667 202.377 84.753 235.008 90.112 69.871 234.257 79.053 335.565 21.367 58.982-33.587 94.037-85.675 100.454-146.978 113.937 18.978 177.562-33.826 206.814-69.905 63.317-78.131 71.27-204.39 18.91-300.203-46.524-85.06-130.389-127.317-229.82-116.497-18.739 2.116-32.222 18.978-30.174 37.683s19.285 32.017 37.683 30.174c96.7-10.718 143.258 46.353 162.406 81.408 39.014 71.373 33.826 167.868-12.049 224.495-38.673 47.684-100.352 60.518-178.483 37.069-2.94-0.916-6.319-1.443-9.822-1.443-18.851 0-34.133 15.282-34.133 34.133 0 1.495 0.096 2.969 0.283 4.414 8.549 68.506-31.114 106.53-65.93 126.362-77.346 44.066-191.522 37.035-259.925-15.974-58.266-45.193-75.947-117.18-51.132-208.179 0.761-2.688 1.198-5.775 1.198-8.963 0-18.851-15.282-34.133-34.133-34.133-1.481 0-2.94 0.094-4.371 0.277-70.759 8.822-128.991-13.535-159.677-61.424-24.61-38.434-26.146-86.46-3.823-122.368 27.716-44.578 86.05-64.375 164.147-55.637 1.132 0.133 2.443 0.209 3.772 0.209 18.853 0 34.138-15.284 34.138-34.138 0-17.525-13.205-31.965-30.208-33.914-14.153-1.653-27.874-2.404-41.118-2.404z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="align-left" unicode="&#58953;" d="M992 448L32 448C14.336 448 0 462.336 0 480 0 497.664 14.336 512 32 512L992 512C1009.664 512 1024 497.664 1024 480 1024 462.336 1009.664 448 992 448ZM32 704L736 704C753.68 704 768 689.664 768 672 768 654.336 753.68 640 736 640L32 640C14.336 640 0 654.336 0 672 0 689.664 14.336 704 32 704ZM992 832L32 832C14.336 832 0 846.336 0 864 0 881.664 14.336 896 32 896L992 896C1009.664 896 1024 881.664 1024 864 1024 846.336 1009.664 832 992 832ZM32 320L736 320C753.68 320 768 305.664 768 288 768 270.336 753.68 256 736 256L32 256C14.336 256 0 270.336 0 288 0 305.664 14.336 320 32 320ZM32 128L992 128C1009.664 128 1024 113.66399999999999 1024 96 1024 78.33600000000001 1009.664 64 992 64L32 64C14.336 64 0 78.33600000000001 0 96 0 113.66399999999999 14.336 128 32 128ZM32-64L736-64C753.68-64 768-78.33600000000001 768-96 768-113.66399999999999 753.68-128 736-128L32-128C14.336-128 0-113.66399999999999 0-96 0-78.33600000000001 14.336-64 32-64Z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="loading-1" unicode="&#58942;" d="M537.574469 831.696462c-14.123672 0-25.574469-11.447726-25.574469-25.574469 0-14.123672 11.450796-25.574469 25.574469-25.574469 204.495464 0 370.82877-166.358889 370.82877-370.82877 0-14.123672 11.450796-25.574469 25.574469-25.574469 14.123672 0 25.574469 11.450796 25.574469 25.574469C959.551152 642.385838 770.241552 831.696462 537.574469 831.696462z"  horiz-adv-x="1024" />
+            <glyph glyph-name="login-qq" unicode="&#58998;"
+                   d="M512 896C229.227789 896 0 666.772211 0 384c0-282.745263 229.227789-512 512-512s512 229.254737 512 512C1024 666.772211 794.772211 896 512 896L512 896zM738.856421 258.93726300000003c0 0-16.208842-44.220632-45.945263-83.941053 0 0 53.126737-18.054737 48.64-64.983579 0 0 1.778526-52.345263-113.461895-48.734316 0 0-81.071158 6.319158-105.377684 40.609684l-21.423158 0c-24.306526-34.304-105.350737-40.609684-105.350737-40.609684-115.280842-3.610947-113.475368 48.734316-113.475368 48.734316-4.500211 46.928842 48.626526 64.983579 48.626526 64.983579-29.709474 39.720421-45.918316 83.941053-45.918316 83.941053-72.057263-116.439579-64.848842 16.249263-64.848842 16.249263 13.527579 78.524632 70.238316 129.967158 70.238316 129.967158-8.111158 71.316211 21.611789 83.941053 21.611789 83.941053C318.410105 709.712842 508.025263 705.859368 512 705.751579c3.988211 0.107789 193.576421 3.961263 199.828211-216.643368 0 0 29.709474-12.638316 21.611789-83.941053 0 0 56.737684-51.442526 70.238316-129.967158l0 0C803.678316 275.18652599999996 810.873263 142.49768400000005 738.856421 258.93726300000003L738.856421 258.93726300000003zM738.856421 258.93726300000003"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="return" unicode="&#58972;" d="M927.858848 417.938973L168.863431 417.938973l308.721247 308.86758c11.685133 11.69025 11.435447 30.881334-0.557702 42.868343-11.992125 11.985986-31.18321 12.226462-42.868343 0.536212L75.199191 411.071565c-1.994424-1.662873-3.773953-3.583618-5.294586-5.713119-4.047176-5.373381-6.013971-11.839653-5.9055-18.328437-0.12996-7.794523 2.725064-15.561417 8.595772-21.432125l361.565802-361.744881c11.685133-11.691273 30.876218-11.449773 42.868343 0.535189 11.993149 11.985986 12.242835 31.17707 0.557702 42.868343L168.441828 356.54571799999997l759.417019 0c16.527418 0 29.925566 13.738909 29.925566 30.694069S944.386266 417.938973 927.858848 417.938973z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="fonts-strong" unicode="&#58923;" d="M199.092919 848.487893l355.326704 0c70.335928 0 122.780371-2.942005 157.349701-8.809643 34.568307-5.884011 65.491597-18.131963 92.78522-36.759205 27.27725-18.627243 50.01409-43.427068 68.209498-74.397431 18.195408-30.986735 27.293623-65.699328 27.293623-104.169501 0-41.7161-11.17655-79.977519-33.496905-114.802676s-52.604078-60.951187-90.818425-78.362742c54.075593-15.765055 95.647407-42.626843 124.715443-80.585363s43.602054-82.58388 43.602054-133.877103c0-40.388872-9.417487-79.673597-28.220738-117.839849-18.803251-38.182624-44.482097-68.673056-77.035514-91.489714-32.55444-22.833031-72.702835-36.855396-120.414487-42.09984-29.931706-3.229554-102.122889-5.260817-216.572524-6.060019L199.092919-40.765192999999954 199.092919 848.487893zM378.171504 700.1084940000001l0-205.684546 117.64849 0c69.935816 0 113.410979 1.006933 130.390699 3.038196 30.730908 3.629667 54.891168 14.246469 72.478731 31.850405 17.588587 17.588587 26.381857 40.756239 26.381857 69.473281 0 27.501354-7.594979 49.838082-22.75219 67.042929-15.158235 17.188474-37.702694 27.597545-67.618027 31.242562-17.796318 2.01489-68.945255 3.038196-153.431461 3.038196L378.171504 700.109518zM378.171504 346.04454999999996l0-236.383732 166.622902 0c64.85203 0 106.008382 1.807159 123.43631 5.420453 26.750247 4.828982 48.543599 16.58063 65.363683 35.272341s25.247011 43.714617 25.247011 75.085092c0 26.526143-6.491855 49.03888-19.459191 67.538209-12.983709 18.48398-31.722492 31.961946-56.250118 40.404222s-77.739549 12.663414-159.619394 12.663414L378.171504 346.04454999999996z"  horiz-adv-x="1024" />
+            <glyph glyph-name="snowflake" unicode="&#59057;"
+                   d="M480.695-64h63.725V59.291000000000054l68.854-68.242 44.945 44.546-113.798 112.79v180.02l177.271-102.44 41.67-155.652 60.725 16.284-25.398 94.872 85.259-49.266 31.87 55.246-84.726 48.961 94.497 25.343-16.495 61.622-156.068-41.855-176.934 102.245 177.667 102.667 155.513-41.709 16.274 60.793-94.78 25.418 85.255 49.264-31.869 55.247-84.733-48.965 25.326 94.594-61.557 16.51-41.817-156.206-176.948-102.251V644.461l113.849 113.951-44.459 44.496-69.392-69.454V832h-63.725v-97.935l-69.188 69.249-45.068-45.107 114.256-114.355V438.89l-156.557 90.469L283.45 684.39l-60.188-16.458 24.84-94.632-107.544 62.145-31.868-55.247 106.667-61.639-93.463-25.557 16.074-61.237 154.482 42.243 156.169-90.243-156.138-90.226-154.485 42.243-15.855-60.409 94.289-25.784-107.534-62.14 31.868-55.247 106.672 61.642-24.621-93.801 61.012-16.685 40.69 155.028 156.179 90.25v-180.455l-113.801-112.79 44.338-43.944 69.463 68.845V-64z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="upload" unicode="&#59004;" d="M831.488 478.208C831.488 478.208 831.488 478.208 831.488 478.208c0 143.36-114.688 258.048-253.952 258.048-98.304 0-184.32-57.344-225.28-139.264C327.68 605.184 307.2 609.28 286.72 609.28c-90.112 0-159.744-73.728-159.744-159.744 0-16.384 4.096-28.672 8.192-40.96C57.344 379.904 0 310.27200000000005 0 224.25599999999997c0-106.496 86.016-192.512 192.512-192.512l192.512 0 0 192.512L258.048 224.25599999999997l258.048 258.048 258.048-258.048-126.976 0 0-192.512 192.512 0L839.68 35.84000000000003c106.496 16.384 192.512 110.592 192.512 221.184C1024 371.712 937.984 465.92 831.488 478.208z"  horiz-adv-x="1033" />
 
-    
-    <glyph glyph-name="dialogue" unicode="&#58938;" d="M998.4 500.992C998.4 682.24 811.392 829.696 581.632 829.696c-121.216 0-235.904-41.472-315.264-114.048 37.504 8.192 76.416 13.056 115.456 14.464 59.264 30.592 128.256 46.72 199.808 46.72 198.144 0 359.296-123.776 359.296-275.968 0-31.872-7.04-63.232-20.992-93.056 7.552-28.16 11.264-57.344 11.008-86.528C975.104 374.784 998.4 436.736 998.4 500.992L998.4 500.992zM442.368 398.72c-30.72 0-55.808-23.04-55.808-51.328s25.088-51.328 55.808-51.328 55.808 23.04 55.808 51.328S473.088 398.72 442.368 398.72zM243.328 398.72c-30.72 0-55.808-23.04-55.808-51.328s25.088-51.328 55.808-51.328 55.808 23.04 55.808 51.328C299.264 375.67999999999995 274.176 398.72 243.328 398.72zM641.28 398.72c-30.72 0-55.808-23.04-55.808-51.328s25.088-51.328 55.808-51.328 55.808 23.04 55.808 51.328S672.128 398.72 641.28 398.72zM442.368 677.888C212.608 677.888 25.6 530.432 25.6 349.312c0-179.968 173.696-296.192 332.544-321.664l60.8-78.336c5.632-7.424 14.464-11.008 23.296-11.008 8.832 0 17.792 3.712 23.424 11.008l60.8 78.464C685.312 53.24800000000005 859.008 169.47199999999998 859.008 349.44000000000005 859.136 530.432 672.128 677.888 442.368 677.888zM714.88 173.82399999999996c-52.224-45.184-124.288-77.952-197.376-89.6C503.168 81.91999999999996 490.112 74.24000000000001 481.28 62.72000000000003l-38.784-49.92-38.912 49.92c-8.96 11.52-21.888 19.2-36.224 21.504-73.216 11.776-145.152 44.416-197.376 89.728-39.68 34.304-86.912 92.544-86.912 175.36 0 69.76 35.584 136.192 100.352 187.264 68.736 54.144 160.768 84.096 258.944 84.096 98.304 0 190.336-29.824 259.072-84.096 64.768-51.072 100.352-117.504 100.352-187.264C801.664 266.36800000000005 754.56 208.12800000000004 714.88 173.82399999999996z"  horiz-adv-x="1024" />
+            <glyph glyph-name="file-b" unicode="&#58965;"
+                   d="M790.08 177.91999999999996l-138.112-119.232V177.91999999999996h138.112zM198.848 763.008h627.328v-516.16H617.088a34.56 34.56 0 0 1-34.816-34.432v-206.528H198.848V763.008z m662.208 68.8H164.032a34.56 34.56 0 0 1-34.816-34.432v-825.92a34.56 34.56 0 0 1 34.816-34.432h453.056l278.784 240.896V797.376a34.56 34.56 0 0 1-34.816 34.432z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="video" unicode="&#59117;" d="M952.523633 599.2477269999999L952.523633 599.2477269999999 952.523633 599.2477269999999zM100.53762400000005 661.054062C100.53762400000005 661.054062 100.53762400000005 661.054062 100.53762400000005 661.054062 100.53762400000005 661.054062 100.53762400000005 661.054062 100.53762400000005 661.054062zM100.74228 720.404517L100.74228 720.404517 100.74228 720.404517zM660.990107 739.9449716666666c8.697911 0 17.498151-0.511642 25.684421-2.353553 12.279404-2.865194 23.22854-8.18627 34.382332-16.679524 15.144599-11.460777 26.196063-29.572899 32.02878-52.187469 3.479165-13.405016 2.967523-28.651944 2.558209-42.05696-0.102328-4.195463-0.204657-8.083941-0.204657-11.665434l0-37.759169 101.407415 70.401919 25.479764 17.60048c0.511642 0.306985 1.330269 1.023284 2.148896 1.637254 4.40012 3.376836 11.051464 8.595583 20.977316 11.051464 3.274508 0.818627 6.549016 1.22794 10.02818 1.22794 9.618867 0 19.44239-3.274508 27.730987999999996-9.311882 18.82842-13.916657999999998 18.726092-35.405616 18.726092-51.061857 0-1.023284 0-2.148896 0-3.172179l0-409.620466c0-15.963226 0.102328-37.963825-19.647047-51.982812-6.753672-4.809433-16.679524-8.390926-27.219346-8.390926-5.01409 0-10.130509 0.818627-15.144599 2.762866-7.162986 2.762866-12.279404 6.856000999999999-16.065554 9.823524-0.920955 0.716299-1.841911 1.432597-2.353553 1.841911l-24.968122 17.395823-101.10043 70.094934 0-37.963825c0-3.581493 0.102328-7.367643 0.204657-11.460777 0.409313-14.735285 0.818627-29.982212-2.865194-43.796542-5.62806-21.488957999999997-16.679524-39.396423-31.107825-50.447886-7.879285-6.037374-18.930748-13.405016-34.075347-16.986509-7.776956-1.841911-16.167882-2.353553-24.45648-2.353553-4.297792 0-8.595583 0.102328-12.688718 0.204657-3.683821 0.102328-7.162986 0.204657-10.232837 0.204657L167.15339300000005 84.94107466666674c-1.944239 0-3.888478 0-5.832717 0-1.944239 0-3.990806 0-5.935045 0-16.577196 0-33.461377 0.61397-47.787349 6.549016-27.935644999999997 11.563106-46.764065 37.759169-53.006096 73.574098l-0.409313 2.251224 0 2.353553c-0.102328 18.930748-0.204657 37.861497-0.306985 56.792245l0 0.511642L53.87588699999998 598.0155226666666c0 4.40012-0.102328 8.902568-0.102328 13.712001999999998-0.306985 27.01469-0.716299 54.950335 9.311882 76.643949 9.823524 21.284300999999996 27.526331999999996 38.066154 48.708304 45.945438 5.730389 2.148896 11.051464 2.762866 15.04227 3.172179 1.023284 0.102328 2.353553 0.306985 3.069851 0.409313l4.093135 1.534926 500.9997 0c3.581493 0 7.572299 0.102328 11.767763 0.306985C651.166583 739.7403146666667 656.078345 739.9449716666666 660.990107 739.9449716666666M304.273409 266.7785886666668L559.889677 394.2797376666667l0 33.973019L304.273409 555.9585626666667 304.273409 266.7785886666668M660.990107 780.8763196666666c-5.62806 0-10.949136-0.204657-15.758569-0.306985-3.888478-0.102328-7.469971-0.204657-10.437494-0.204657L133.79434400000002 780.3646776666667l-7.265314 0-6.446687-2.353553c-5.3210749999999996-0.61397-13.609673-1.841911-22.716898-5.218747-31.210153-11.665434-57.303887-36.121915-71.629859-67.229739-13.814329999999998-30.084541-13.405016-64.159888-12.995703-94.244429 0.102328-4.604777 0.102328-9.004897 0.102328-13.20036l0-371.349655 0-0.102328 0-0.102328 0-0.511642c0.102328-18.930748 0.204657-37.861497 0.306985-56.792245l0-2.251224 0-3.479165 0.61397-3.376836 0.409313-2.251224c4.195463-23.944839 12.791046-45.126811 25.479764-62.727291 13.609673-18.82842 31.107825-32.847407 52.08514-41.545318 21.488957999999997-8.902568 44.001199-9.618867 63.443589-9.618867 2.046567 0 4.093135 0 6.139702 0 1.841911 0 3.78615 0 5.62806 0l473.166384 0c2.558209 0 5.62806-0.102328 9.004897-0.204657 4.195463-0.102328 8.902568-0.306985 13.916657999999998-0.306985 13.302688 0 24.149495 1.125612 33.973019 3.479165 22.819227 5.423404 39.089437 16.474868 49.322274 24.251824 21.693613999999997 16.577196 37.963825 42.363944999999994 45.84311 72.653143 2.251224 8.595583 3.376836 17.088838 3.990806 25.377436l36.838213-25.582093 24.558809-17.088838c0.306985-0.204657 0.61397-0.511642 0.920955-0.716299 4.809433-3.683821 13.609673-10.642149999999999 26.400719-15.656241 9.516538-3.683821 19.647047-5.62806 30.084541-5.62806 18.009793 0 36.53122799999999 5.832717 50.8572 15.963226 16.577196 11.767763 27.730987999999996 27.935644999999997 33.052064 48.094334 3.78615 14.4283 3.78615 27.628659999999996 3.78615 37.34985499999999l0 409.518137c0 0.920955 0 1.739582 0 2.660538l0 0.409313c0 9.41421 0.102328 22.409913-3.479165 36.53122799999999-5.116419 19.749375-15.758569 35.81493-31.721795 47.68502-15.144599 11.153792-33.666034 17.293495-52.08514 17.293495-6.753672 0-13.507345-0.818627-19.954032-2.455881-18.21445-4.604777-30.289198-13.916657999999998-36.019586-18.419107l0 0c-0.204657-0.204657-0.511642-0.409313-0.716299-0.511642l-25.172779-17.293495-0.102328 0-0.102328 0-37.14519799999999-25.786749c-0.511642 7.674628-1.637254 15.553912-3.683821 23.433197-8.18627 31.721795-24.354152 57.508544-46.866394 74.597382-15.758569 11.972419-32.02878 19.851704-49.833916 23.944839C685.8559009999999 779.7507076666667 674.702109 780.8763196666666 660.990107 780.8763196666666L660.990107 780.8763196666666zM345.204757 332.9850436666668L345.204757 489.75210666666663l157.074048-78.48586L345.204757 332.9850436666668 345.204757 332.9850436666668zM347.455981 429.177975L347.455981 308.02118499999995 347.455981 429.177975Z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="headset" unicode="&#59132;" d="M356.285031 2.1522690000000466L356.396571 2.1522690000000466 356.396571 285.236626 253.462201 285.236626 253.462201 2.1522690000000466ZM665.076886 285.236626l103.042841 0 0-283.08538-103.042841 0 0 283.08538ZM63.809793 301.950286c0-38.758746-3.195785-112.220874 5.457292-148.208507l65.735144 0c-10.112312 35.644825-7.747451 109.176538-7.747451 148.208507 0 219.937155 172.264389 398.231887 384.763131 398.231887 212.498742 0 384.763131-178.294732 384.763131-398.231887 0-39.031968 2.266623-112.563682-7.845689-148.208507l65.735144 0c8.653077 35.987632 5.555529 109.449761 5.555529 148.208507 0 256.20415-200.670346 463.898469-448.208115 463.898469C264.479115 765.848755 63.809793 558.1544349999999 63.809793 301.950286z"  horiz-adv-x="1024" />
+            <glyph glyph-name="template" unicode="&#58979;"
+                   d="M734 172.89999999999998v82.8h-59.9v-37l-35.7-9.7 15.7-57.8zM674.1 419.3H734v-81.8h-59.9zM734 600.2l-95.6-26 15.7-57.8 20 5.4v-20.7H734zM866.1 131.29999999999995v-37l-35.7-9.7 7.9-28.9 7.8-28.9 79.9 21.7v82.8h-29.9zM740.9 60.299999999999955L651.4 36l7.9-28.9 7.8-29 89.5 24.4-7.8 28.9zM740.9 781.7l-89.5-24.3 7.9-28.9 7.8-28.9 89.5 24.3-7.8 28.9zM830.4 806l7.9-28.9 7.8-28.9 20 5.5v-20.8H926V832zM866.1 612.6v-120.3H926V612.6h-29.9zM866.1 371.9v-120.3H926V371.9h-29.9zM541.9 665.6l35.7 9.7-7.8 28.9-7.8 28.9-50-13.6L98 832v-783.5l384.1-104.3L512-64l29.9 8.1 35.7 9.7-7.8 28.9-7.8 28.9-20-5.4V120.79999999999995l35.7 9.7-15.7 57.8-20-5.4V486l35.7 9.7-15.7 57.8-20-5.4V665.6z m-59.8-659.4l-324.2 88.1V753.7l324.2-88.1V548l-192 52.2v-427.3l192-52.2v-114.5z m0 360.9V182.79999999999995l-132.2 35.9V521.8l132.2-35.9v-118.8z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="cellphone-fine" unicode="&#58939;" d="M731.514252 896L292.485748 896C195.323702 896 116.154627 816.830925 116.154627 719.6688790000001l0-671.337759c0-97.162046 79.169075-176.331121 176.331121-176.331121l438.628661 0c97.162046 0 176.331121 79.169075 176.331121 176.331121L907.445529 719.6688790000001C907.845373 816.830925 828.676298 896 731.514252 896zM292.485748 853.216712l438.628661 0c70.772355 0 128.349863-55.178446 133.147989-124.751269L159.737602 728.465443C164.135884 798.038266 222.113237 853.216712 292.485748 853.216712zM865.062085 48.73096399999997c0-73.571261-59.976572-133.547833-133.547833-133.547833L292.485748-84.816868c-73.571261 0-133.547833 59.976572-133.547833 133.547833l0 45.582194 705.724326 0L864.662241 48.73096399999997zM865.062085 137.096447L158.937915 137.096447 158.937915 685.682155l705.724326 0L864.662241 137.096447zM512-54.82858299999998c13.59469 0 26.789535 5.597813 36.385787 15.194065 9.596251 9.596251 15.194065 22.791097 15.194065 36.385787 0 13.59469-5.597813 26.789535-15.194065 36.385787-9.596251 9.596251-22.791097 15.194065-36.385787 15.194065-13.59469 0-26.789535-5.597813-36.385787-15.194065-9.596251-9.596251-15.194065-22.791097-15.194065-36.385787 0-13.59469 5.597813-26.789535 15.194065-36.385787C485.210465-49.23076900000001 498.40531-54.82858299999998 512-54.82858299999998z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="add-1" unicode="&#58964;" d="M566.935 57.63900000000001c0-30.366-24.612-54.972-54.935-54.972v0c-30.384 0-54.996 24.612-54.996 54.972v610.057c0 30.361 24.612 54.972 54.996 54.972v0c30.33 0 54.935-24.612 54.935-54.972v-610.057zM817.004 417.633c30.384 0 54.996-24.606 54.996-54.966v0c0-30.354-24.612-54.966-54.996-54.966h-610.062c-30.33 0-54.942 24.612-54.942 54.966v0c0 30.359 24.612 54.966 54.942 54.966h610.062zM817.004 417.633z"  horiz-adv-x="1024" />
+            <glyph glyph-name="transfer" unicode="&#59025;"
+                   d="M320 768H128c-35.2 0-64-28.8-64-64v-640c0-35.2 28.8-64 64-64h192c35.2 0 64 28.8 64 64V704c0 35.2-28.8 64-64 64z m0-672c0-16-16-32-32-32H160c-16 0-32 16-32 32V672c0 16 16 32 32 32h128c16 0 32-16 32-32v-576z m256 544h-64c-19.2 0-32-12.8-32-32s16-32 32-32h64c19.2 0 32 12.8 32 32s-16 32-32 32z m-64-448h-64c-19.2 0-32-12.8-32-32s16-32 32-32h64c19.2 0 32 12.8 32 32s-16 32-32 32z m384 576H704c-35.2 0-64-28.8-64-64v-640c0-35.2 28.8-64 64-64h192c35.2 0 64 28.8 64 64V704c0 35.2-28.8 64-64 64z m0-672c0-16-16-32-32-32H736c-16 0-32 16-32 32V672c0 16 16 32 32 32h128c16 0 32-16 32-32v-576z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="face-smile-b" unicode="&#58960;" d="M511.931733-128c-136.738133 0-265.284267 53.213867-361.984 149.879467C53.282133 118.51093300000002 0 247.09119999999996 0 384c0 136.738133 53.282133 265.3184 150.050133 362.0864C246.749867 842.683733 375.296 896 512.136533 896s265.4208-53.316267 362.1888-149.9136c199.645867-199.714133 199.543467-524.5952 0-724.206933C777.454933-74.71786699999996 648.772267-128 511.931733-128L511.931733-128 511.931733-128 511.931733-128 511.931733-128 511.931733-128zM512.034133 829.303467c-118.920533 0-230.741333-46.2848-314.914133-130.389333C113.083733 614.8778669999999 66.7648 502.8864 66.7648 384c0-118.9888 46.2848-230.912 130.3552-315.016533 84.0704-84.0704 195.857067-130.321067 314.811733-130.321067 119.022933 0 230.946133 46.318933 315.016533 130.423467 173.704533 173.636267 173.704533 456.157867 0 629.794133C742.877867 782.984533 631.057067 829.303467 512.034133 829.303467L512.034133 829.303467 512.034133 829.303467 512.034133 829.303467 512.034133 829.303467 512.034133 829.303467zM330.103467 244.25813300000004c0 0 59.904-95.9488 181.828267-95.9488s201.8304 95.9488 201.8304 95.9488 45.294933 0.136533 45.192533-47.957333c0 0-78.506667-111.8208-247.022933-111.8208s-223.368533 111.8208-223.368533 111.8208S286.856533 244.25813300000004 330.103467 244.25813300000004L330.103467 244.25813300000004 330.103467 244.25813300000004 330.103467 244.25813300000004 330.103467 244.25813300000004zM363.2128 548.590933c-34.5088 0-62.702933-28.091733-62.702933-62.737067 0-34.679467 28.194133-62.6688 62.702933-62.6688 34.679467 0 62.702933 28.091733 62.702933 62.6688C425.915733 520.4992 397.858133 548.590933 363.2128 548.590933L363.2128 548.590933 363.2128 548.590933 363.2128 548.590933 363.2128 548.590933 363.2128 548.590933zM684.544 548.590933c-34.679467 0-62.702933-28.091733-62.702933-62.737067 0-34.679467 28.023467-62.6688 62.702933-62.6688 34.6112 0 62.600533 28.091733 62.600533 62.6688C747.144533 520.4992 719.121067 548.590933 684.544 548.590933L684.544 548.590933 684.544 548.590933 684.544 548.590933 684.544 548.590933 684.544 548.590933zM684.544 548.590933"  horiz-adv-x="1025" />
 
-    
-    <glyph glyph-name="fonts-html" unicode="&#58955;" d="M194.33 416.235h-101.295v101.28h-46.035v-267.03h46.035v119.7h101.28v-119.7h46.035v267.03h-46.035v-101.28zM277.205 480.69h73.665v-230.205h46.035v230.205h73.665v36.825h-193.365v-36.825zM627.815 335.58000000000004l-46.755 181.935h-73.665v-267.03h46.035v211.785l46.035-211.785h55.245l46.83 213.93-0.795-213.93h46.035v267.03h-73.665l-45.3-181.935zM848.09 287.30999999999995v230.205h-46.035v-267.03h174.945v36.825h-128.91z"  horiz-adv-x="1024" />
+            <glyph glyph-name="auz" unicode="&#58994;"
+                   d="M324.266667 435.2c-17.066667 17.066667-39.822222 17.066667-51.2 0-17.066667-17.066667-17.066667-39.822222 0-51.2l153.6-159.288889c5.688889-5.688889 17.066667-11.377778 28.444444-11.377778s17.066667 5.688889 28.444445 11.377778l295.822222 290.133333c17.066667 17.066667 17.066667 39.822222 0 51.2-17.066667 17.066667-39.822222 17.066667-51.2 0L455.111111 304.355556 324.266667 435.2zM927.288889 753.777778L523.377778 896h-22.755556L96.711111 753.777778c-17.066667-5.688889-28.444444-17.066667-28.444444-34.133334v-432.355555c11.377778-250.311111 409.6-409.6 426.666666-415.288889h22.755556c17.066667 5.688889 415.288889 159.288889 426.666667 415.288889V719.644444c11.377778 17.066667 0 28.444444-17.066667 34.133334z m-45.511111-460.8c-5.688889-182.044444-301.511111-312.888889-369.777778-341.333334-113.777778 45.511111-358.4 182.044444-369.777778 341.333334v398.222222L512 822.044444l369.777778-125.155555v-403.911111z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="screen-full" unicode="&#58914;" d="M641.750109 511.899972l205.227128 204.519-0.704035-115.89966c-0.282433-9.611915 7.489578-18.09103 17.101493-17.808598l12.297071 0c9.611915 0.283456 17.667382 5.936199 17.808598 15.689331l0.565888 172.57752c0 0.14224 0.282433 9.187243 0.282433 9.187243 0.14224 4.804423-0.99056 9.187243-4.100388 12.297071-3.109828 3.109828-7.347339 5.086855-12.297071 4.946662l-8.763594-0.14224c-0.141216 0-0.278339 0-0.420579-0.14224L697.581696 797.833213c-9.611915-0.283456-17.667382-8.200776-17.808598-17.950837l0-12.297071c1.416256-11.44875 10.458189-18.092054 20.070104-17.808598l112.789832-0.283456-204.66124-203.814965c-9.329483-9.329483-9.329483-24.449855 0-33.778314 9.329483-9.470699 24.452925-9.470699 33.782408 0L641.750109 511.899972zM383.095141 319.11010699999997L177.726797 115.29411900000002l0.707105 115.338888c0.283456 9.607822-7.492648 18.086937-17.104563 17.808598l-13.001105 0c-9.611915-0.283456-17.667382-5.937223-17.808598-15.690354l-0.565888-172.718737c0-0.14224-0.282433-9.187243-0.282433-9.187243-0.14224-4.808516 0.99056-9.187243 4.096295-12.297071 3.109828-3.109828 7.351432-5.086855 12.297071-4.946662l8.762571 0.14224c0.14224 0 0.283456 0 0.425695 0.14224l171.873486-0.708128c9.607822 0.283456 17.667382 8.196683 17.808598 17.950837L344.93503 63.42477399999996c-1.415232 11.44875-10.461259 18.092054-20.074198 17.808598L212.069977 81.51682800000003 416.59 285.32872299999997c9.329483 9.329483 9.329483 24.453948 0 33.782408C407.40685 328.58182999999997 392.424624 328.58182999999997 383.095141 319.11010699999997L383.095141 319.11010699999997zM894.047276 60.03251399999999l-0.424672 172.718737c-0.283456 9.612938-8.200776 15.406898-17.809621 15.690354l-12.296047 0c-9.612938 0.278339-17.243733-8.200776-17.105586-17.808598l0.708128-115.903753L641.750109 319.11010699999997c-9.329483 9.329483-24.452925 9.329483-33.782408 0-9.325389-9.328459-9.325389-24.452925 0-33.782408L812.490795 81.51682800000003l-112.789832-0.283456c-9.611915 0.283456-18.515702-6.502088-20.073174-17.808598l0-12.297071c0.282433-9.611915 8.200776-17.667382 17.808598-17.950837l171.166381 0.708128c0.141216 0 0.282433-0.14224 0.424672-0.14224l8.763594-0.14224c4.803399-0.141216 9.187243 1.694595 12.296047 4.946662 3.109828 3.109828 4.238534 7.488555 4.097318 12.297071 0 0-0.14224 9.046027-0.14224 9.187243L894.047276 60.03149099999996zM212.216309 749.493252l112.789832 0.283456c9.607822-0.283456 18.512632 6.502088 20.070104 17.808598L345.076246 779.883399c-0.283456 9.611915-8.196683 17.667382-17.808598 17.950837l-172.011632-0.708128c-0.14224 0-0.283456 0.14224-0.425695 0.14224l-8.761548 0.14224c-4.808516 0.141216-9.187243-1.694595-12.297071-4.946662-3.109828-3.109828-4.242627-7.488555-4.096295-12.297071 0 0 0.282433-9.046027 0.282433-9.187243l0.420579-172.718737c0.14224-9.608845 8.200776-15.406898 17.808598-15.686261l13.005198 0c9.611915-0.282433 17.242709 8.196683 17.10047 17.808598l-0.564865 115.334795 205.231221-203.958228c9.324366-9.329483 24.448832-9.329483 33.777291 0 9.329483 9.329483 9.329483 24.452925 0 33.782408L212.216309 749.493252 212.216309 749.493252zM212.216309 749.493252"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="form" unicode="&#58940;" d="M314.278111 437.019389l395.439892 0 0-30.297458-395.439892 0L314.278111 437.019389zM314.278111 315.83495200000004l395.439892 0 0-30.297458-395.439892 0L314.278111 315.83495200000004zM314.278111 194.62833l263.626661 0 0-30.297458L314.278111 164.330872 314.278111 194.62833zM609.376235 739.9931730000001c-7.849678 42.966669-48.394988 75.742447-97.378777 75.742447-48.961604 0-89.51311-32.775778-97.380776-75.742447L116.55177 739.9931730000001l0-787.725922 790.893774 0 0 787.725922L609.376235 739.9931730000001zM446.091342 670.440529l0 17.613058 0 36.791056c0 33.410348 29.57295 60.594317 65.906116 60.594317 36.352353 0 65.907115-27.183969 65.907115-60.594317l0-36.791056 0-17.621053 16.672696-8.712493c32.358061-16.929922 57.169039-42.663874 71.406386-73.213161L358.043239 588.50688c14.240345 30.555683 39.051523 56.281241 71.408385 73.213161L446.091342 670.440529zM874.489888-17.436289999999985L149.505227-17.436289999999985 149.505227 709.694715 413.138884 709.694715l0-21.641327c-51.44492-26.923746-88.727643-74.124144-98.86377-129.845165l395.44289 0c-10.102151 55.730615-47.40466 102.921419-98.859773 129.845165l0 21.641327 263.631658 0L874.489888-17.436289999999985z"  horiz-adv-x="1024" />
+            <glyph glyph-name="console" unicode="&#58981;"
+                   d="M30.552 104.72699999999998c4.654-16.29 23.272-23.272 37.236-18.618 16.291 4.655 23.273 23.273 18.618 37.236C16.588 314.182 84.08 521.31 237.68 640c11.636 9.31 23.273 16.29 37.236 25.6 25.6 16.29 53.528 30.255 83.782 39.564 58.182 20.945 118.691 30.254 176.873 27.927h25.6c6.982 0 11.636 0 18.618-2.327 30.255-4.655 58.182-11.637 88.436-23.273 235.055-86.11 356.073-346.764 269.964-581.818-4.654-16.291 2.327-32.582 18.618-37.237 16.291-4.654 32.582 2.328 37.237 18.619 41.89 116.363 39.563 239.709 0 349.09h2.327C921.897 656.2909999999999 738.043 784.2909999999999 537.897 793.6h-48.873c-200.145-9.31-384-137.31-458.472-337.455-39.564-109.381-41.891-232.727 0-351.418z m707.49 386.328a29.498 29.498 0 0 1-41.89 0L521.606 316.509c-4.654 2.327-9.309 2.327-13.963 2.327-32.582 0-58.182-25.6-58.182-58.181s25.6-58.182 58.182-58.182 58.181 25.6 58.181 58.182c0 4.654 0 9.309-2.327 16.29l174.546 174.546c11.636 11.636 11.636 30.254 0 39.564z m228.073-458.473H58.48c-16.29 0-30.255-13.964-30.255-30.255 0-16.29 13.964-30.254 30.255-30.254h907.636c16.291 0 30.255 13.963 30.255 30.254 0 16.291-13.964 30.255-30.255 30.255z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="cart" unicode="&#58967;" d="M365.920994 84.618469c-39.030945 0-70.78516-31.754215-70.78516-70.78516s31.754215-70.784136 70.78516-70.784136c39.030945 0 70.784136 31.753191 70.784136 70.784136S404.951939 84.618469 365.920994 84.618469zM365.920994-5.784493999999995c-10.818393 0-19.61985 8.801457-19.61985 19.618826 0 10.818393 8.801457 19.61985 19.61985 19.61985s19.618826-8.801457 19.618826-19.61985C385.540843 3.015939000000003 376.739387-5.784493999999995 365.920994-5.784493999999995zM808.821219 84.618469c-39.030945 0-70.784136-31.754215-70.784136-70.78516s31.753191-70.784136 70.784136-70.784136 70.78516 31.753191 70.78516 70.784136S847.852164 84.618469 808.821219 84.618469zM808.821219-5.784493999999995c-10.81737 0-19.618826 8.801457-19.618826 19.618826 0 10.818393 8.801457 19.61985 19.618826 19.61985 10.818393 0 19.61985-8.801457 19.61985-19.61985C828.441069 3.015939000000003 819.640636-5.784493999999995 808.821219-5.784493999999995zM443.99107 305.940157c-14.057157-1.416256-24.305569-13.959943-22.890336-28.0171 1.328251-13.187347 12.446473-23.02132 25.423019-23.02132 0.856507 0 1.723248 0.042979 2.594081 0.130983l439.314561 44.245713c0.088004 0.007163 0.174985 0.01842 0.261966 0.026606l0.180102 0.01842c0.50449 0.051165 1.001817 0.119727 1.496074 0.198521 0.222057 0.035816 0.443092 0.076748 0.663102 0.11768 0.552585 0.103354 1.100054 0.217964 1.638313 0.355087 0.085958 0.022513 0.169869 0.047072 0.254803 0.069585 0.586354 0.156566 1.161453 0.334621 1.728364 0.530073 0.077771 0.026606 0.155543 0.051165 0.233314 0.078795 0.626263 0.222057 1.239224 0.469698 1.840928 0.737804 0.039909 0.017396 0.078795 0.035816 0.118704 0.054235 1.277086 0.577145 2.496867 1.252527 3.647063 2.020006 0.001023 0.001023 0.002047 0.001023 0.00307 0.002047 0.553609 0.369414 1.088798 0.76134 1.609661 1.170662 0.069585 0.054235 0.137123 0.10847 0.205685 0.163729 0.48607 0.38988 0.958838 0.795109 1.413186 1.218758 0.092098 0.084934 0.180102 0.173962 0.270153 0.25992 0.394996 0.378623 0.778736 0.76748 1.14815 1.169639 0.11154 0.121773 0.222057 0.243547 0.331551 0.367367 0.333598 0.3776 0.653893 0.766456 0.964978 1.163499 0.12382 0.158612 0.249687 0.314155 0.370437 0.475837 0.322341 0.432859 0.629333 0.876973 0.925069 1.329275 0.113587 0.173962 0.224104 0.348947 0.333598 0.525979 0.296759 0.479931 0.580215 0.968048 0.845251 1.467421 0.069585 0.130983 0.134053 0.265036 0.201591 0.397043 0.289596 0.568958 0.563842 1.147126 0.811482 1.738597 0.00307 0.007163 0.005117 0.014326 0.008186 0.021489 0.569982 1.369184 1.019213 2.796696 1.345648 4.26514 0 0.001023 0 0.002047 0.001023 0.00307l0.00307 0.013303c0.035816 0.162706 0.075725 0.323365 0.10847 0.487094l56.17951 252.734118c0.895393 4.030803 0.780783 8.04728-0.165776 11.794627 0.50449 2.003634 0.774643 4.101411 0.774643 6.261611 0 14.128789-11.452843 25.582655-25.582655 25.582655L195.47502 616.098125l-52.358485 159.553902c-3.631714 11.067057-14.093996 17.972327-25.177426 17.590634-0.207731 0.005117-0.413416 0.01535-0.62217 0.01535L54.663994 793.258011c-14.128789 0-25.582655-11.453866-25.582655-25.582655s11.453866-25.582655 25.582655-25.582655l45.614897 0 197.955514-603.235934c3.536546-10.776438 13.546527-17.613146 24.303522-17.613146 2.067079 0 4.16281 0.26299 6.245238 0.788969l567.583946 0c14.129812 0 25.582655 11.453866 25.582655 25.582655s-11.452843 25.582655-25.582655 25.582655L340.816223 173.1979 212.265428 564.933839l701.224666 0-48.137347-216.557174L443.99107 305.940157z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="camera-fill" unicode="&#58973;" d="M512 480C436.515555 480 375.111111 419.712 375.111111 345.6 375.111111 271.48800000000006 436.515555 211.20000000000005 512 211.20000000000005 587.484446 211.20000000000005 648.888887 271.48800000000006 648.888887 345.6 648.888887 419.712 587.484446 480 512 480M512 172.79999999999995C414.808889 172.79999999999995 336 250.15679999999998 336 345.6 336 441.0432 414.808889 518.4 512 518.4 609.210667 518.4 688 441.0432 688 345.6 688 250.15679999999998 609.210667 172.79999999999995 512 172.79999999999995M903.111113 691.2L723.767113 691.2C713.383113 691.2 703.448887 695.2512 696.115554 702.4512L640.792887 756.7488C633.459554 763.9488 623.505779 768 613.141333 768L512 768 410.878222 768C400.494222 768 390.56 763.9488 383.226667 756.7488L327.904 702.4512C320.570667 695.2512 310.616889 691.2 300.252445 691.2L120.888889 691.2C77.866667 691.2 42.666667 656.64 42.666667 614.4L42.666667 76.79999999999995C42.666667 34.559999999999945 77.866667 0 120.888889 0L903.111113 0C946.133333 0 981.333333 34.559999999999945 981.333333 76.79999999999995L981.333333 614.4C981.333333 656.64 946.133333 691.2 903.111113 691.2"  horiz-adv-x="1024" />
+            <glyph glyph-name="app" unicode="&#58963;"
+                   d="M432.022 818.946h-376.324c-6.627 0-12.078-5.45-12.078-12.078v-376.324c0-6.627 5.45-12.078 12.078-12.078h376.324c6.627 0 12.078 5.45 12.078 12.078v376.473c0 6.627-5.45 11.93-12.078 11.93zM391.517 471.196h-295.169v295.169h295.021v-295.169zM976.847 635.717l-211.95 211.95c-8.837 8.837-23.124 8.837-31.963 0l-211.95-211.95c-8.837-8.837-8.837-23.124 0-31.963l211.95-212.098c8.837-8.837 23.124-8.837 31.963 0l211.95 211.95c8.837 8.987 8.837 23.271 0 32.109zM432.022 313.45000000000005h-376.324c-6.627 0-12.078-5.45-12.078-12.078v-376.324c0-6.627 5.45-12.078 12.078-12.078h376.324c6.627 0 12.078 5.45 12.078 12.078v376.473c0 6.627-5.45 11.93-12.078 11.93zM391.517-34.15499999999997h-295.169v295.021h295.021v-295.021zM932.511 313.45000000000005h-376.324c-6.627 0-12.078-5.45-12.078-12.078v-376.324c0-6.627 5.45-12.078 12.078-12.078h376.324c6.627 0 12.078 5.45 12.078 12.078v376.473c0 6.627-5.45 11.93-12.078 11.93zM891.859-34.15499999999997h-295.021v295.021h295.021v-295.021z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="tabs" unicode="&#58922;" d="M310.30303 523.636364L124.121212 523.636364c-17.128727 0-31.030303-13.901576-31.030303-31.030303l0-186.181818c0-17.128727 13.901576-31.030303 31.030303-31.030303l186.181818 0c17.128727 0 31.030303 13.901576 31.030303 31.030303L341.333333 492.606061C341.333333 509.734788 327.431758 523.636364 310.30303 523.636364zM294.787879 306.42424200000005L139.636364 306.42424200000005c-17.128727 0-15.515152-1.613576-15.515152 15.515152L124.121212 477.090909c0 17.128727-1.613576 15.515152 15.515152 15.515152l155.151515 0c17.128727 0 15.515152 1.613576 15.515152-15.515152l0-155.151515C310.30303 304.81066699999997 311.916606 306.42424200000005 294.787879 306.42424200000005zM418.909091 352.969697l480.969697 0 0 31.030303L418.909091 384 418.909091 352.969697zM418.909091 228.84848499999998l480.969697 0 0 31.030303L418.909091 259.878788 418.909091 228.84848499999998zM418.909091 89.21212100000002l480.969697 0 0 31.030303L418.909091 120.24242400000003 418.909091 89.21212100000002zM418.909091 492.606061l480.969697 0 0 31.030303L418.909091 523.636364 418.909091 492.606061zM992.969697 725.333333l-15.515152 0L977.454545 849.454545c0 17.128727-13.901576 31.030303-31.030303 31.030303L775.757576 880.484848c-17.128727 0-31.030303-13.901576-31.030303-31.030303l0-124.121212-139.636364 0L605.090909 849.454545c0 17.128727-13.901576 31.030303-31.030303 31.030303L403.393939 880.484848c-17.128727 0-31.030303-13.901576-31.030303-31.030303l0-124.121212-124.121212 0L248.242424 849.454545c0 17.128727-13.901576 31.030303-31.030303 31.030303L31.030303 880.484848C13.901576 880.484848 0 866.583273 0 849.454545l0-946.424242c0-17.128727 13.901576-31.030303 31.030303-31.030303l961.939394 0c17.128727 0 31.030303 13.901576 31.030303 31.030303L1024 694.30303C1024 711.431758 1010.098424 725.333333 992.969697 725.333333zM992.969697-65.939394c0-17.128727-13.901576-31.030303-31.030303-31.030303L62.060606-96.969697c-17.128727 0-31.030303 13.901576-31.030303 31.030303L31.030303 818.424242c0 17.128727 13.901576 31.030303 31.030303 31.030303l124.121212 0c17.128727 0 31.030303-13.901576 31.030303-31.030303l0-124.121212 744.727273 0c17.128727 0 31.030303-13.901576 31.030303-31.030303L992.969697-65.939394z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="fonts-code" unicode="&#58958;" d="M270 626c-12 12-32 12-44 0L9 409c-12-12-12-32 0-44l217-217c6-6 14-9 22-9s16 3 22 9c12 12 12 32 0 44L75 387 270 582C282 595 282 614 270 626zM1015 409L798 626c-12 12-32 12-44 0-12-12-12-32 0-44l195-195L754 192c-12-12-12-32 0-44 6-6 14-9 22-9s16 3 22 9l217 217C1027 377 1027 397 1015 409zM624 696L624 696c-16 6-34-3-40-19L382 119c-6-16 2-34 19-40l0 0c16-6 34 3 40 19l202 558C648 672 640 690 624 696z"  horiz-adv-x="1025" />
+            <glyph glyph-name="prev" unicode="&#58970;"
+                   d="M62.573 384.103l423.401 423.662c18.985 18.985 49.757 18.985 68.727 0 18.982-18.972 18.985-49.746 0-68.729l-355.058-355.067 356.796-356.796c18.977-18.971 18.976-49.746 0-68.727-18.982-18.976-49.751-18.976-68.727 0l-39.753 39.753 0.269 0.246-385.655 385.661zM451.365 384.103l423.407 423.662c18.985 18.985 49.757 18.985 68.727 0 18.982-18.972 18.985-49.746 0-68.729l-355.058-355.067 356.796-356.796c18.977-18.971 18.976-49.746 0-68.727-18.982-18.976-49.757-18.977-68.727 0l-39.762 39.754 0.273 0.249-385.662 385.661zM451.365 384.103z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="fire" unicode="&#59222;" d="M890.059904 352.19948999999997C845.890699 458.956706 840.554889 548.4951550000001 857.396326 618.42714 859.144623 625.686731 860.991676 631.9776790000001 862.858846 637.425182 863.763607 640.064841 865.906573 645.659889 866.16406 646.532651L880.890349 696.448108 833.062903 675.9309969999999C832.106692 675.5208 830.618069 674.894716 827.426684 673.550492 824.667648 672.380966 822.310677 671.354022 819.868514 670.244809 813.291441 667.2575449999999 807.049466 664.090938 800.697749 660.4128450000001 784.089623 650.795565 768.486253 638.656896 753.86285 623.033596 727.630498 595.007563 706.526618 557.766355 691.78157 509.713231 675.041103 455.157161 671.516484 411.46006 673.004574 347.939834 673.477918 327.73476900000003 673.463923 322.197583 672.83965 318.324215 673.779618 324.156339 684.455526 333.67819899999995 696.104608 329.19567600000005 693.056849 330.36844199999996 685.695898 339.012828 676.314007 361.368339 660.550914 398.92921 646.834249 460.170272 636.817284 549.350468 625.445924 650.588768 630.103925 734.7280519999999 644.646978 801.338628 647.677924 815.221065 650.899934 827.082435 654.086773 836.904609 655.91465 842.538316 657.254607 846.094657 657.880284 847.554385L678.645286 896 628.243642 880.578031C617.409833 877.263087 599.94569 869.52239 578.105438 855.845223 542.547644 833.577626 507.199569 802.385036 474.400401 760.836776 447.596676 726.883228 423.611383 687.30061 403.118547 641.7016189999999 378.907516 587.829195 363.003277 542.798944 353.158029 503.238462 349.274261 487.632585 346.433259 473.323627 344.1945 458.925156 343.334411 453.39353 342.592734 448.063234 341.804612 441.911844 341.502524 439.553997 340.356619 430.329551 340.073506 428.145504 337.596047 409.033293 335.848224 404.35337 329.235273 398.312868 336.081933 404.566848 343.232634 404.098227 346.608002 402.086756 344.852318 403.133013 341.598345 406.493651 337.991853 411.887149 327.030897 428.279226 317.980358 454.883162 313.690598 489.339595 311.250185 508.941598 310.203772 539.08627 310.370048 576.545325 310.480474 601.422138 311.113088 628.122479 312.099068 654.977888 312.481453 665.393013 312.891081 675.105466 313.30045 683.8491750000001 313.545346 689.079919 313.735044 692.813105 313.84201 694.783403L317.55517 763.179488 271.360516 712.604139C270.467691 711.626645 268.852992 709.837042 266.618705 707.326295 262.927895 703.178805 258.823678 698.493751 254.407949 693.3614689999999 241.78797 678.693606 229.164348 663.340425 217.341267 648.004036 211.724185 640.717803 206.411389 633.591345 201.450577 626.6638379999999 176.017063 591.147305 156.617347 555.4025280000001 138.122768 512.155497 90.841957 401.595812 76.97672 299.64870599999995 99.261816 188.13489300000003 126.80821 50.29373899999996 188.553235-37.64422200000001 278.8297-84.690336 344.19104-118.75233700000001 408.837235-128 507.940695-128 525.713007-128 557.977207-125.567138 590.857378-120.46215900000004 641.152493-112.65333099999998 687.496192-99.78932299999997 726.063273-80.59104400000001 738.155853-74.57148800000004 743.07901-59.88870199999997 737.059454-47.79612199999997 731.039898-35.70354299999997 716.357111-30.780384000000026 704.264531-36.79993999999999 670.855859-53.43041900000003 629.092954-65.02289699999994 583.352478-72.12456999999995 552.984316-76.83953499999996 523.228215-79.08327499999996 507.940695-79.08327499999996 416.16215-79.08327499999996 357.934257-70.75375399999996 301.436271-41.310745999999995 224.830174-1.3887230000000272 171.977796 73.88423 147.230072 197.72094500000003 126.99711 298.965952 139.514783 391.004811 183.099329 492.921284 200.282663 533.1021499999999 218.020237 565.784358 241.22153 598.183718 245.831691 604.6215589999999 250.802959 611.289899 256.082244 618.137961 267.31885 632.713596 279.402035 647.409487 291.488864 661.457681 298.732051 669.8762429999999 304.338773 676.1767130000001 307.478705 679.614406L264.997214 697.435142C264.883874 695.347445 264.688038 691.493511 264.43725 686.13688 264.020474 677.234965 263.603959 667.359281 263.215279 656.7726250000001 262.21142 629.430212 261.566827 602.224414 261.453805 576.7624579999999 261.278897 537.3588179999999 262.385015 505.49418 265.148621 483.296209 276.058157 395.668083 322.627019 326.024497 362.226031 362.19561799999997 379.341732 377.829698 384.756649 392.328523 388.584361 421.857186 397.932742 493.974714 407.332926 531.746825 447.736538 621.64966 466.587287 663.594818 488.484326 699.731218 512.795234 730.526996 542.034492 767.565749 573.156162 795.028785 604.068111 814.386984 614.696751 821.043029 624.472062 826.201428 633.124687 830.036563 638.02329 832.207788 641.258688 833.404991 642.556233 833.802016L612.91959 866.825663C608.658554 856.884484 602.686705 838.478616 596.856038 811.772799 581.186705 740.003594 576.231674 650.498985 588.206246 543.890345 607.295279 373.94226100000003 638.819345 298.82556999999997 678.537329 283.542234 701.302332 274.78234499999996 717.731637 289.43566899999996 721.133156 310.5407 722.475759 318.870999 722.489387 324.26340300000004 721.907881 349.08549100000005 720.532565 407.791853 723.691247 446.952173 738.546223 495.36355 751.151827 536.44438 768.544047 567.135763 789.576147 589.605967 809.230566 610.60429 821.725461 617.839716 852.347733 630.9761169999999L842.705318 653.453557 819.246577 660.374464C822.235501 670.505564 813.450321 644.87463 809.839253 629.8801189999999 790.647573 550.1890470000001 796.611315 450.1135 844.8591 333.498332 883.105728 241.056017 874.587669 126.06492400000002 824.002925 61.39712899999995 815.680378 50.75754500000005 817.558709 35.38570000000004 828.198295 27.063153000000057 838.837879 18.740607999999952 854.209724 20.618939999999952 862.532269 31.258523999999966 924.762731 110.81426299999998 934.658528 244.404363 890.059904 352.19948999999997Z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="set" unicode="&#59158;" d="M466.496-126.62400000000002l-1.056 0.064c-25.184 2.08-47.456 22.368-51.744 47.232l-17.344 102.4c-0.672 4.064-6.624 11.04-10.56 12.416l-30.336 12.416c-5.44 2.496-15.424 0.8-17.472-0.64l-84.992-60.16c-19.584-14.016-51.456-12.736-70.08 3.168l-64.288 64c-17.952 20.48-19.488 50.592-4.736 71.296l60.416 84.672c2.176 3.072 2.784 11.52 1.024 15.04l0 0c0 0-1.664 3.104-7.264 16.608-6.176 14.848-6.816 17.44-6.816 17.44-0.992 3.04-7.456 8.672-11.36 9.376l-102.56 17.248c-25.152 4.288-45.44 26.624-47.168 52L0 428.288c2.112 27.36 22.496 49.6 47.52 53.728l102.528 17.344c4.128 0.672 11.008 6.56 12.416 10.496l12.608 30.336c2.368 4.992 1.6 14.112-0.8 17.504L113.984 642.24C99.36 662.88 100.704 692.896 117.056 712.192l64.416 64.224c20.672 18.208 51.296 18.784 71.36 4.64l84.992-60.16c1.952-1.376 13.28-2.016 15.04-1.056 0.384 0.192 2.528 1.344 16.704 7.168 14.24 5.92 16.576 6.592 16.576 6.592 3.84 1.184 9.504 7.648 10.144 11.424l17.44 102.4c4.32 25.152 26.752 45.376 52.128 47.104l90.528 0.064c27.328-2.112 49.632-22.368 53.952-47.232l17.344-102.432c0.672-4.064 6.656-11.04 10.624-12.48l30.304-12.352c6.24-2.784 15.456-0.8 17.44 0.608l85.024 60.16c19.52 14.016 51.392 12.704 70.08-3.136l64.288-64.032c17.952-20.48 19.456-50.56 4.736-71.264l-60.416-84.672c-2.208-3.136-2.848-11.616-1.056-15.04 0.16-0.352 1.376-2.56 7.232-16.672 5.856-14.112 6.592-16.512 6.592-16.512 1.248-4.032 7.712-9.6 11.648-10.304l102.56-17.248c25.152-4.224 45.44-26.592 47.168-52l0.096-90.304c-2.112-27.392-22.528-49.6-47.552-53.728l-102.528-17.376c-4.128-0.672-10.944-6.496-12.32-10.432l-12.736-30.432c-2.336-4.928-1.568-14.112 0.832-17.472l60.288-84.512c14.624-20.736 13.216-50.816-3.232-70.048l-64.192-64.096c-11.328-9.92-24.64-14.72-38.784-14.72l0 0c-11.904 0-23.52 3.552-32.704 10.016l-84.992 60.16c-1.952 1.408-13.312 2.016-15.072 1.056-0.288-0.16-2.432-1.312-16.608-7.2-14.08-5.792-16.384-6.496-16.384-6.496-4.16-1.28-9.792-7.776-10.432-11.52l-17.408-102.4c-4.352-25.152-26.72-45.344-52.032-47.104L466.496-126.62400000000002zM347.84 100.60799999999995c10.368 0 20.192-2.112 28.48-6.112l27.648-11.296c20.416-7.072 38.976-28.992 42.848-51.584l17.344-102.336c0.288-1.6 3.136-4.32 5.056-4.832l87.296 0.064c-0.032 0.064 3.04 2.944 3.328 4.672l17.408 102.368c3.872 22.656 23.328 44.832 45.28 51.584 0 0 0 0 0 0-0.096 0 2.976 1.152 12.448 5.056 9.472 3.936 12.384 5.248 13.12 5.568 18.208 9.6 49.44 8.032 67.776-4.96l84.928-60.16c0.192-0.128 1.312-0.64 3.104-0.64l0 0c2.048 0 3.52 0.672 3.872 0.96l61.536 61.408 0 0c-0.16 0 0.064 4.416-0.992 5.952l-60.224 84.448c-13.248 18.624-15.68 47.168-5.792 67.872l11.648 27.84c6.944 19.968 29.408 38.912 51.68 42.496l102.464 17.376c1.824 0.384 4.736 3.648 4.864 5.408L972.8 428.288l0 0c-0.096 0-2.88 3.072-4.576 3.424l-102.72 17.28c-23.168 4.032-44.896 22.976-51.776 45.056l0 0c-0.032 0-1.216 3.04-5.12 12.512-3.968 9.568-5.28 12.512-5.632 13.248-10.24 19.36-8.288 48.736 4.96 67.456L868.448 672c0.96 1.408 0.736 5.6-0.384 6.912l-61.408 61.184c0.704-0.8-0.768-0.192-2.848-0.192-1.728 0-2.784-0.416-3.008-0.576l-85.024-60.16c-17.824-12.8-47.776-15.36-68-5.664l-27.712 11.296c-20.512 7.2-39.04 29.088-42.88 51.584l-17.344 102.336c-0.288 1.76-3.616 4.704-5.504 4.864L467.616 843.52c0-0.064-3.104-2.944-3.392-4.672l-17.408-102.336c-3.84-22.624-23.264-44.8-45.216-51.584 0-0.032-3.008-1.184-12.416-5.088-9.568-3.936-12.512-5.248-13.248-5.568-17.984-9.568-49.344-8.032-67.744 4.992L223.264 739.36c-0.416 0.32-6.176 0.288-6.848-0.224L154.688 677.6320000000001c0 0 0 0 0 0 0.224 0 0.032-4.384 1.056-5.856L216 587.264c13.312-18.752 15.744-47.296 5.76-67.968l-11.52-27.648c-6.976-20.032-29.472-38.944-51.776-42.624L55.968 431.68c-1.824-0.384-4.704-3.648-4.832-5.408l0.096-86.56 0 0c0.096 0 2.912-3.104 4.608-3.424l102.656-17.28c23.04-4 44.704-22.912 51.712-44.928 0.256-0.736 1.44-3.84 5.088-12.64 3.68-8.832 5.024-11.84 5.472-12.736 10.592-20.288 8.672-48.96-4.672-67.904l-60.512-84.768c-0.96-1.408-0.736-5.632 0.384-6.912l61.408-61.184c-0.736 0.8 0.736 0.224 2.816 0.192 1.728 0 2.784 0.416 3.008 0.576l84.992 60.16C318.624 96.32000000000005 333.088 100.60799999999995 347.84 100.60799999999995zM512.032 133.856c-138.336 0-250.848 112.224-250.848 250.176 0 137.92 112.544 250.144 250.848 250.144s250.848-112.224 250.848-250.144C762.88 246.08000000000004 650.336 133.856 512.032 133.856zM512.032 583.136c-110.08 0-199.648-89.312-199.648-199.104s89.568-199.136 199.648-199.136 199.648 89.344 199.648 199.136S622.112 583.136 512.032 583.136z"  horiz-adv-x="1024" />
+            <glyph glyph-name="website" unicode="&#59310;"
+                   d="M777.073418 147.443038c-30.460759 21.387342-40.83038 40.182278-76.47595 53.792405 25.275949 60.273418 40.182278 83.605063 42.126583 154.896203H887.898734c-3.888608-99.159494-45.367089-143.878481-110.825316-208.688608zM136.101266 356.13164600000005h167.210126c1.944304-71.291139 16.850633-94.622785 42.126583-154.896203-34.997468-13.610127-68.050633-31.756962-98.511393-53.792405C181.468354 212.25316499999997 139.989873 256.97215200000005 136.101266 356.13164600000005z m103.048101 259.888607c29.164557-23.979747 61.56962-42.774684 96.567089-57.681012-19.443038-53.792405-30.460759-90.734177-31.756962-152.951899H136.101266c3.240506 90.734177 46.663291 147.767089 103.048101 210.632911z m309.144304-209.98481V523.989873c47.311392 1.296203 71.291139 10.36962 114.065823 25.27595 18.146835-51.2 28.516456-84.901266 30.460759-143.23038H548.293671z m104.344304-195.078481c-40.182278 12.962025-60.273418 20.091139-104.344304 21.387342V356.13164600000005h144.526582c-1.944304-68.050633-16.202532-88.141772-40.182278-145.174684z m36.941772-57.681013c31.756962-12.313924 39.534177-28.516456 66.75443-47.311392-51.848101-44.718987-114.713924-73.883544-182.116455-84.901266 36.941772 37.589873 90.734177 82.308861 115.362025 132.212658z m-163.321519-137.397468l22.035443 165.913924c40.182278-1.296203 56.38481-7.777215 92.678481-18.794937-27.220253-56.38481-66.106329-106.288608-113.417722-147.118987h-1.296202z m-75.827848 5.18481c-67.402532 11.017722-130.268354 40.83038-182.764557 84.901266 27.868354 19.443038 57.681013 34.997468 88.789873 47.311392 23.331646-48.607595 55.088608-93.326582 93.974684-132.212658z m47.311392 335.068355v-123.787342c-44.070886-1.296203-64.162025-8.425316-104.344304-21.387342-23.979747 57.681013-38.237975 77.124051-40.182278 145.174684h144.526582zM383.675949 549.265823c42.774684-14.906329 66.75443-23.331646 114.065823-25.27595v-117.95443H353.21519c1.944304 58.329114 12.313924 92.03038 30.460759 143.23038z m-37.589873 57.032911c-31.756962 12.962025-60.921519 30.460759-88.141772 51.848101 53.792405 51.848101 115.362025 91.382278 192.486076 104.344304-44.718987-44.718987-80.364557-97.863291-104.344304-156.192405z m151.655696 161.377215v-193.782278c-44.070886 1.296203-64.162025 9.073418-103.696202 22.683544 29.164557 68.698734 49.903797 127.027848 102.4 171.098734h1.296202z m75.827848-4.536708c77.772152-13.610127 149.711392-49.903797 206.744304-104.344304-29.164557-22.035443-46.01519-37.589873-80.364557-51.848102-25.275949 59.625316-82.956962 112.76962-126.379747 156.192406z m-46.01519 4.536708c54.440506-46.01519 97.21519-104.992405 124.435443-171.098734-39.534177-13.610127-59.625316-21.387342-103.696202-22.683544l-22.035443 193.782278h1.296202z m-31.10886-751.149367c-46.663291 38.886076-62.865823 88.789873-91.382279 147.118988 36.293671 11.665823 53.144304 17.498734 93.326582 18.794936v-165.913924h-1.944303zM887.898734 406.035443h-145.174683c-1.296203 61.56962-12.313924 98.511392-31.756962 152.303798 37.589873 15.55443 57.032911 33.053165 88.789873 57.681012 56.38481-62.865823 84.901266-119.898734 88.141772-209.98481z m-375.898734 427.746835c-244.334177 0-442.005063-197.670886-442.005063-442.005063S267.665823-50.227847999999994 512-50.227847999999994s442.005063 197.670886 442.005063 442.005063S756.334177 833.782278 512 833.782278z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="fonts-u" unicode="&#58950;" d="M0-49.23076900000001L945.230769-49.23076900000001 945.230769-128 0-128 0-49.23076900000001ZM0 896L407.076943 896 407.076943 834.065644 319.153861 827.872177 299.076923 809.911217 299.076923 365.841959C299.076923 281.19796199999996 317.076716 220.709337 353.076933 184.37435100000005 389.077071 148.03936499999998 448.153442 129.87210800000003 530.307702 129.87210800000003 606.000364 129.87210800000003 660.807522 149.17482299999995 694.730752 187.78072599999996 728.653982 226.38662899999997 745.61536 289.66226700000004 745.61536 377.60953099999995L745.61536 804.956475 724.153817 826.633531 633.461524 834.065644 633.461524 896 955.384596 896 955.384596 834.065644 868.846119 826.633531 849.461563 804.956475 849.461563 364.60331299999996C849.461563 246.92743900000005 819.923338 161.66533900000002 760.846178 108.81441500000005 701.76894 55.96348999999998 606.462188 29.53846199999998 474.923087 29.53846199999998 406.153531 29.53846199999998 345.807951 38.51886300000001 293.884613 56.47990200000004 241.961275 74.44093999999996 201.230887 100.143419 171.692347 133.58820400000002 149.076834 160.01362700000004 133.038474 190.25793999999996 123.57695 224.32200899999998 114.115348 258.386078 109.384625 307.21047599999997 109.384625 370.796702L109.384625 809.911217 89.307687 827.872177 0 834.065644 0 896Z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="triangle-d" unicode="&#58917;" d="M773.128299 88.65234199999998M889.696178 575.195553L158.862147 575.195553 524.357446 209.64704300000005 889.696178 575.195553Z"  horiz-adv-x="1024" />
+            <glyph glyph-name="next" unicode="&#58971;"
+                   d="M948.066926 382.958838l-411.990051-412.24426c-18.47333-18.47333-48.417689-18.47333-66.875207 0-18.47333 18.461167-18.47333 48.405526 0 66.875207L814.691135 383.088983 467.512212 730.269123c-18.466032 18.458735-18.466032 48.405526 0 66.873991 18.468465 18.464816 48.410391 18.464816 66.872774 0l38.682336-38.682336-0.261507-0.239614 375.259894-375.265975v0.003649m-378.312834 0L157.756743-29.28542200000004c-18.47333-18.47333-48.415256-18.47333-66.872775 0-18.47333 18.461167-18.47333 48.405526 0 66.875207L436.369787 383.088983 89.19208 730.269123c-18.4636 18.458735-18.4636 48.405526 0 66.873991 18.470898 18.464816 48.415256 18.464816 66.872774 0l38.692067-38.682336-0.266372-0.239614 375.267191-375.265975-0.004865 0.003649m0 0z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="tips" unicode="&#59138;" d="M967.280184 578.537671c-24.915459 58.887178-60.544935 111.76755-105.96745 157.161413-45.393863 45.393863-98.273211 81.051991-157.160389 105.96745-60.988026 25.803689-125.735679 38.853913-192.494129 38.853913-66.729797 0-131.504056-13.0799-192.494129-38.853913-58.887178-24.916483-111.766526-60.544935-157.160389-105.96745-45.393863-45.393863-81.051991-98.274234-105.96745-157.161413-25.803689-60.988026-38.884612-125.734656-38.884612-192.464453s13.0799-131.50508 38.884612-192.464453c24.915459-58.887178 60.544935-111.737874 105.96745-157.161413 45.393863-45.393863 98.273211-81.051991 157.160389-105.96745 60.988026-25.803689 125.735679-38.853913 192.494129-38.853913 66.729797 0 131.504056 13.0799 192.494129 38.853913 58.887178 24.916483 111.766526 60.544935 157.160389 105.96745 45.393863 45.393863 81.051991 98.274234 105.96745 157.161413 25.803689 60.988026 38.853913 125.734656 38.853913 192.464453S993.084896 517.549645 967.280184 578.537671zM511.687892-55.138552000000004c-243.302305 0-441.241446 197.909465-441.241446 441.21177S268.385587 827.284989 511.687892 827.284989c243.273652-0.029676 441.210747-197.938118 441.210747-441.21177S754.990197-55.138552000000004 511.687892-55.138552000000004zM511.657192 573.565427m-45.511543 0a44.475 44.475 0 1 1 91.023086 0 44.475 44.475 0 1 1-91.023086 0ZM542.729885 184.14011300000004c0-17.162892-13.906731-31.071669-31.070646-31.071669l0 0c-17.163915 0-31.070646 13.907755-31.070646 31.071669L480.588593 426.998303c0 17.162892 13.906731 31.071669 31.070646 31.071669l0 0c17.163915 0 31.070646-13.907755 31.070646-31.071669L542.729885 184.14011300000004z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="picture" unicode="&#58954;" d="M765.376 615.424c0 0 103.04 1.024 103.04-100.992 0 0 9.536-98.752-103.04-100.928 0 0-100.864-2.176-99.84 100.928C665.536 514.496 664.448 605.8879999999999 765.376 615.424ZM968.32 770.56c0 0 54.208-4.224 54.208-52.032l0-712.832c0 0-3.2-51.008-54.208-52.096L968.32 770.56ZM1.472 5.631999999999948c0 0 2.176-52.096 52.096-52.096L968.32-46.464000000000055l0 150.848-99.712 0-203.072 206.144-153.024-153.984L304.32 413.568l-205.056-307.072-45.632-1.024L52.48 718.4639999999999 1.472 718.4639999999999 1.472 5.631999999999948ZM968.32 770.56L53.568 770.56c0 0-52.096 1.088-52.096-52.032L968.32 718.528 968.32 770.56Z"  horiz-adv-x="1024" />
+            <glyph glyph-name="component" unicode="&#59479;"
+                   d="M917.376 652.544L500.8 891.2a34.304 34.304 0 0 1-34.176 0L50.112 652.48a33.92 33.92 0 0 1-17.088-29.376v-477.44c0-12.16 6.528-23.296 17.088-29.44l416.512-238.72a35.136 35.136 0 0 1 34.176 0l416.576 238.72a33.92 33.92 0 0 1 17.088 29.44v477.44a33.92 33.92 0 0 1-17.088 29.44z m-51.264-487.36l-382.4-219.136-382.336 219.136V603.52l382.336 219.136 382.4-219.136v-438.272zM198.784 535.488a33.792 33.792 0 0 1 12.544-46.4l237.824-136.32V83.20000000000005c0-18.816 15.232-33.92 34.176-33.92a33.92 33.92 0 0 1 34.176 33.92V352.384l238.656 136.832a33.856 33.856 0 0 1 12.544 46.4 34.368 34.368 0 0 1-46.72 12.416L483.712 411.52 245.504 548.0319999999999a34.432 34.432 0 0 1-46.72-12.544z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="more-vertical" unicode="&#58993;" d="M511.998465 623.681848c40.525995 0 73.386404 35.771715 73.386404 79.892585s-32.860409 79.892585-73.386404 79.892585c-40.524972 0-73.384357-35.771715-73.384357-79.892585S471.47247 623.681848 511.998465 623.681848L511.998465 623.681848zM511.998465 463.893608c-40.524972 0-73.384357-35.772738-73.384357-79.893608 0-44.12087 32.859385-79.892585 73.384357-79.892585 40.525995 0 73.386404 35.772738 73.386404 79.892585C585.384869 428.12087 552.52446 463.893608 511.998465 463.893608L511.998465 463.893608zM511.998465 144.320199c-40.524972 0-73.384357-35.733852-73.384357-79.894631 0-44.119847 32.859385-79.893608 73.384357-79.893608 40.525995 0 73.386404 35.772738 73.386404 79.893608C585.383846 108.58634600000005 552.52446 144.320199 511.998465 144.320199L511.998465 144.320199z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="flag" unicode="&#58988;" d="M878.368178 798.272211c-11.363815 4.799306-24.470321 2.360767-33.31578-6.245238-0.36532-0.350994-37.162388-35.304064-95.163383-56.05262-75.462692-26.993794-150.763702-18.409279-223.812415 25.517163-38.347376 23.060205-81.875752 40.665165-129.376603 52.327786-37.582967 9.228175-77.742619 14.777565-119.363552 16.496719-70.805626 2.925632-121.493052-6.224772-123.615389-6.615675-14.56574-2.682086-25.140587-15.380292-25.140587-30.191626L128.58047-31.312913999999978c0-16.954137 13.745049-30.699186 30.699186-30.699186s30.699186 13.745049 30.699186 30.699186L189.978842 266.68306099999995c15.562441 5.250584 47.994084 14.447037 91.40171 17.48728 35.985586 2.51938 72.440869 0.378623 108.35073-6.363941 44.847417-8.420787 89.059362-24.102954 131.409912-46.611597 46.26879-24.591071 93.776803-41.069371 141.203976-48.977481 38.270629-6.380314 76.541257-7.219425 113.740484-2.491751 64.277956 8.16803 103.877859 30.461779 105.532545 31.406291 9.56689 5.464455 15.471366 15.637142 15.471366 26.656103L897.089565 769.958352C897.091612 782.298402 889.73711 793.470859 878.368178 798.272211zM835.69324 257.496841c-14.58416-5.755074-38.82526-13.530155-70.319555-17.225313-30.990828-3.635807-62.940494-2.676969-94.952582 2.851954-40.201607 6.943133-80.731696 21.171182-120.464629 42.289152-48.455595 25.753547-99.208513 43.61945-150.848637 53.101405-29.29214 5.378497-58.896388 8.079002-88.407516 8.079002-12.228509 0-24.443715-0.464581-36.609803-1.39272-34.879392-2.663666-63.618946-8.741082-84.111676-14.355963L189.978842 766.569162c19.971867 2.003634 50.446949 3.910053 86.392626 2.334161 58.186214-2.554172 143.250588-15.041578 218.064504-60.029188 61.32674-36.877909 119.196753-49.491181 169.691797-49.488111 42.293245 0.002047 79.416747 8.854669 109.019972 19.711947 24.269753 8.901741 45.327348 19.747763 62.544475 30.179346L835.692217 257.496841z"  horiz-adv-x="1024" />
+            <glyph glyph-name="more" unicode="&#58975;"
+                   d="M224 288c-52.928 0-96 43.072-96 96s43.072 96 96 96 96-43.072 96-96-43.072-96-96-96z m288 0c-52.928 0-96 43.072-96 96s43.072 96 96 96 96-43.072 96-96-43.072-96-96-96z m288 0c-52.928 0-96 43.072-96 96s43.072 96 96 96 96-43.072 96-96-43.072-96-96-96z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="loading" unicode="&#58941;" d="M511.999488 756.654348m-70.608128 0a69 69 0 1 1 141.216255 0 69 69 0 1 1-141.216255 0ZM236.047576 639.997442m-68.561515 0a67 67 0 1 1 137.123031 0 67 67 0 1 1-137.123031 0ZM125.530506 382.12428m-62.421678 0a61 61 0 1 1 124.843356 0 61 61 0 1 1-124.843356 0ZM227.861126 100.71507499999996m-54.235229 0a53 53 0 1 1 108.470457 0 53 53 0 1 1-108.470457 0ZM514.166851-16.84438799999998m-47.192835 0a46.118 46.118 0 1 1 94.385671 0 46.118 46.118 0 1 1-94.385671 0ZM804.730553 91.450061m-33.834596 0a33.064 33.064 0 1 1 67.669192 0 33.064 33.064 0 1 1-67.669192 0ZM935.55411 383.395226m-23.969924 0a23.424 23.424 0 1 1 47.939849 0 23.424 23.424 0 1 1-47.939849 0ZM856.723717 634.80007m-17.135262 0a16.745 16.745 0 1 1 34.270525 0 16.745 16.745 0 1 1-34.270525 0Z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="fonts-i" unicode="&#58948;" d="M897.948 834.255l0-64.322-128.65 0L447.674-1.9329999999999927l128.65 0 0-64.32L126.052-66.25300000000004l0 64.32 128.65 0 321.622 771.866-128.65 0L447.674 834.255 897.948 834.255z"  horiz-adv-x="1024" />
+            <glyph glyph-name="login-wechat" unicode="&#58999;"
+                   d="M516.464646 896C233.714646 896 4.464646 666.75 4.464646 384S233.714646-128 516.464646-128s512 229.25 512 512S799.214646 896 516.464646 896z m-74-523.375c-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.5-1.875-0.25-0.75-0.5-1.125-0.5-1.875-0.25-0.75-0.5-1.125-0.5-1.875-0.25-0.75-0.25-1.125-0.5-1.875s-0.5-1.125-0.5-1.875c-0.25-0.75-0.25-1.125-0.5-1.875s-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875c0-0.75-0.25-1.125-0.25-1.875s-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875 0-1.125-0.25-1.875c0-0.75-0.25-1.125-0.25-1.875s0-1.125-0.25-1.875c0-0.75 0-1.125-0.25-1.875 0-0.75 0-1.125-0.25-1.875v-22.5c0-0.75 0-1.125 0.25-1.875 0-0.75 0-1.125 0.25-1.875 0-0.75 0-1.125 0.25-1.875 0-0.75 0-1.125 0.25-1.875 0-0.75 0.25-1.125 0.25-1.875s0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875l0.25-0.875c-4.25-0.25-8.625-0.75-12.75-0.75-3.75-0.25-7.25-0.25-11-0.25-3.5 0-7 0-10.5 0.25-7.25 0.25-14 0.875-20.75 1.875-4.25 0.5-8.125 1.125-12.375 1.875-3.5 0.5-6.75 1.125-10.25 1.875-3 0.5-6.25 1.125-9.25 1.875-3 0.75-5.875 1.125-8.875 1.875-2.75 0.75-5.875 1.125-8.875 1.875-2.75 0.5-5.625 1.125-8.375 1.625l-3.25-1.625-3.75-1.875-4 1.375-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-2.75-1.375-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-2.5-1.375 0.5 1.375 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.5 1.125c-0.5 0.25-0.75 0.5-1.125 0.75-0.875 0.75-1.625 1.125-2.5 1.875s-1.625 1.125-2.5 1.875-1.625 1.125-2.5 1.875c-0.75 0.75-1.625 1.125-2.375 1.875-0.75 0.75-1.625 1.125-2.375 1.875-0.75 0.75-1.625 1.125-2.375 1.875-0.75 0.75-1.625 1.125-2.375 1.875-0.75 0.75-1.375 1.125-2.375 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-1.875 1.875-0.75 0.75-1.375 1.125-1.875 1.875l-1.875 1.875-1.875 1.875-1.875 1.875-1.875 1.875c-0.75 0.75-1.125 1.125-1.625 1.875s-1.125 1.125-1.625 1.875-1.125 1.125-1.625 1.875-1.125 1.125-1.625 1.875-1.125 1.125-1.625 1.875-1.125 1.125-1.625 1.875-0.875 1.125-1.625 1.875c-0.5 0.75-0.875 1.125-1.625 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.125 1.875-0.5 0.75-0.875 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.5 1.125-0.875 1.875-0.25 0.75-0.5 1.125-0.875 1.875-0.25 0.75-0.5 1.125-0.875 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.5 1.875-0.25 0.75-0.5 1.125-0.5 1.875-0.25 0.75-0.5 1.125-0.5 1.875-0.25 0.75-0.25 1.125-0.5 1.875s-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875 0 1.125-0.25 1.875c0 0.75 0 1.125-0.25 1.875 0 0.75 0 1.125-0.25 1.875 0 0.75 0 1.125-0.25 1.875V457.25v1.875 1.875 1.875 1.875 1.875 0.875 0.875 1.875 1.875 1.875 1.875 1.875 1.875c0 0.75 0 1.125 0.25 1.875 0 0.75 0 1.125 0.25 1.875 0 0.75 0 1.125 0.25 1.875 0 0.75 0.25 1.125 0.25 1.875s0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.5 1.875c0 0.75 0.25 1.125 0.5 1.875s0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.5 1.125 0.5 1.875c0.25 0.75 0.5 1.125 0.5 1.875 0.25 0.75 0.5 1.125 0.5 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.875 1.875 0.25 0.75 0.5 1.125 0.875 1.875 0.25 0.75 0.5 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.875 1.125 1.125 1.875 0.5 0.75 0.875 1.125 1.125 1.875 0.5 0.75 0.875 1.125 1.125 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.625 1.875 0.5 0.75 0.875 1.125 1.625 1.875 0.5 0.75 1.125 1.125 1.625 1.875s1.125 1.125 1.625 1.875 1.125 1.125 1.625 1.875 1.125 1.125 1.625 1.875 1.125 1.125 1.625 1.875l1.875 1.875 1.875 1.875 1.875 1.875 1.875 1.875c0.75 0.75 1.375 1.125 1.875 1.875 0.75 0.75 1.375 1.125 2.125 1.875 0.75 0.75 1.375 1.125 2.125 1.875 0.75 0.75 1.375 1.125 2.125 1.875 0.75 0.75 1.375 1.125 2.125 1.875 0.75 0.75 1.375 1.125 2.125 1.875 0.75 0.75 1.375 1.125 2.375 1.875 0.75 0.75 1.625 1.125 2.375 1.875 0.75 0.75 1.625 1.125 2.375 1.875 0.75 0.75 1.625 1.125 2.375 1.875 0.875 0.75 1.625 1.125 2.5 1.875s1.625 1.125 2.5 1.875 1.875 1.125 2.5 1.875c0.875 0.75 1.875 1.125 2.75 1.875 0.875 0.75 1.875 1.125 2.75 1.875 0.875 0.75 1.875 1.125 2.75 1.875 0.875 0.75 1.875 1.125 3 1.875 0.875 0.75 2.125 1.125 3 1.875s2.125 1.125 3 1.875c1.125 0.75 2.125 1.125 3.25 1.875 1.125 0.75 2.375 1.125 3.25 1.875 1.125 0.75 2.375 1.125 3.5 1.875 1.125 0.75 2.375 1.125 3.75 1.875 1.125 0.75 2.5 1.125 3.75 1.875 1.375 0.75 2.5 1.125 4 1.875 1.375 0.75 2.75 1.125 4.25 1.875 1.375 0.75 2.75 1.125 4.25 1.875 1.375 0.75 3 1.125 4.375 1.875 1.625 0.75 3 1.125 4.625 1.875 1.625 0.75 3.25 1.125 4.875 1.875 1.875 0.75 3.5 1.125 5.375 1.875s3.75 1.125 5.625 1.875c2.125 0.75 4.25 1.125 6 1.875 2.375 0.75 4.375 1.125 6.75 1.875 2.5 0.75 4.875 1.125 7.5 1.875 2.75 0.75 5.625 1.125 8.625 1.875 3.5 0.75 6.75 1.125 10.25 1.875 4.375 0.75 8.875 1.375 13.25 1.875 11 1.125 22.125 1.875 33.25 1.875h2.5c11.125 0 22.375-0.75 33.5-1.875 4.375-0.5 8.875-1.125 13.25-1.875 3.5-0.5 7-1.125 10.25-1.875 2.75-0.5 5.875-1.125 8.625-1.875 2.5-0.5 5.125-1.125 7.625-1.875 2.375-0.5 4.625-1.125 6.75-1.875 2.125-0.5 4.25-1.125 6.25-1.875 1.875-0.75 4-1.125 5.875-1.875s3.75-1.125 5.375-1.875c1.625-0.75 3.5-1.125 5.125-1.875 1.625-0.75 3.25-1.125 4.875-1.875 1.625-0.75 3-1.125 4.625-1.875 1.375-0.75 3-1.125 4.375-1.875s2.75-1.125 4.25-1.875c1.375-0.75 2.75-1.125 4-1.875 1.375-0.75 2.5-1.125 3.75-1.875 1.125-0.75 2.5-1.125 3.75-1.875 1.125-0.75 2.375-1.125 3.5-1.875 1.125-0.75 2.375-1.125 3.5-1.875 1.125-0.75 2.375-1.125 3.25-1.875 1.125-0.75 2.125-1.125 3.25-1.875 1.125-0.75 2.125-1.125 3-1.875s2.125-1.125 3-1.875 1.875-1.125 3-1.875c0.875-0.75 1.875-1.125 2.75-1.875 0.875-0.75 1.875-1.125 2.75-1.875 0.875-0.75 1.875-1.125 2.75-1.875 0.875-0.75 1.875-1.125 2.5-1.875 0.875-0.75 1.625-1.125 2.5-1.875s1.625-1.125 2.5-1.875 1.625-1.125 2.375-1.875c0.75-0.75 1.625-1.125 2.375-1.875 0.75-0.75 1.625-1.125 2.375-1.875 0.75-0.75 1.375-1.125 2.375-1.875 0.75-0.75 1.375-1.125 2.375-1.875 0.75-0.75 1.375-1.125 2.125-1.875 0.75-0.75 1.375-1.125 2.125-1.875 0.75-0.75 1.375-1.125 2.125-1.875 0.75-0.75 1.375-1.125 2.125-1.875 0.75-0.75 1.375-1.125 1.875-1.875 0.75-0.75 1.375-1.125 1.875-1.875l1.875-1.875 1.875-1.875 1.875-1.875 1.875-1.875c0.75-0.75 1.125-1.125 1.625-1.875s1.125-1.125 1.625-1.875 1.125-1.125 1.625-1.875 1.125-1.125 1.625-1.875 1.125-1.125 1.625-1.875 0.875-1.125 1.625-1.875c0.5-0.75 0.875-1.125 1.625-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.125-1.875 0.5-0.75 0.875-1.125 1.125-1.875 0.5-0.75 0.875-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.5-1.125 0.875-1.875 0.25-0.75 0.5-1.125 0.875-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.5-1.875 0.25-0.75 0.5-1.125 0.5-1.875 0.25-0.75 0.25-1.125 0.5-1.875s0.5-1.125 0.5-1.875c0.25-0.75 0.25-1.125 0.5-1.875s0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875c0-0.5 0.25-0.75 0.25-1.125-4.625 0.5-9.25 0.875-14 1.125-3.5 0.25-7 0.25-10.75 0.25-4 0-8.125 0-12.125-0.25-6.75-0.25-13.25-0.875-19.5-1.875-3.75-0.5-7.625-1.125-11.375-1.875-3-0.5-5.875-1.125-8.875-1.875-2.5-0.5-5.125-1.125-7.5-1.875-2.125-0.5-4.375-1.125-6.5-1.875-1.875-0.5-4-1.125-5.875-1.875-1.875-0.5-3.5-1.125-5.375-1.875-1.625-0.75-3.25-1.125-4.875-1.875-1.625-0.75-3-1.125-4.625-1.875-1.375-0.75-3-1.125-4.375-1.875s-2.75-1.125-4.25-1.875c-1.375-0.75-2.5-1.125-4-1.875-1.125-0.75-2.5-1.125-3.75-1.875-1.125-0.75-2.375-1.125-3.5-1.875-1.125-0.75-2.375-1.125-3.5-1.875-1.125-0.75-2.125-1.125-3.25-1.875-0.875-0.75-2.125-1.125-3-1.875s-2.125-1.125-3-1.875-1.875-1.125-3-1.875c-0.875-0.75-1.875-1.125-2.75-1.875-0.875-0.75-1.875-1.125-2.75-1.875-0.875-0.75-1.875-1.125-2.5-1.875-0.875-0.75-1.625-1.125-2.5-1.875s-1.625-1.125-2.5-1.875c-0.75-0.75-1.625-1.125-2.375-1.875-0.75-0.75-1.625-1.125-2.375-1.875-0.75-0.75-1.625-1.125-2.375-1.875-0.75-0.75-1.375-1.125-2.125-1.875-0.75-0.75-1.375-1.125-2.125-1.875-0.75-0.75-1.375-1.125-2.125-1.875-0.75-0.75-1.375-1.125-2.125-1.875-0.75-0.75-1.375-1.125-2.125-1.875-0.75-0.75-1.375-1.125-1.875-1.875l-1.875-1.875-1.875-1.875-1.875-1.875c-0.75-0.75-1.125-1.125-1.625-1.875s-1.125-1.125-1.625-1.875-1.125-1.125-1.625-1.875-1.125-1.125-1.625-1.875-1.125-1.125-1.625-1.875-0.875-1.125-1.625-1.875c-0.5-0.75-0.875-1.125-1.625-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.125-1.875-0.5-0.75-0.875-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.5-1.125-0.875-1.875-0.25-0.75-0.5-1.125-0.875-1.875-0.25-0.75-0.5-1.125-0.875-1.875-0.25-0.75-0.5-1.125-0.75-1.875-3.125-4.625-3.375-5.125-3.625-5.75z m433.625-71.25v-11.375c0-0.5 0-0.875-0.25-1.625 0-0.5 0-0.875-0.25-1.625 0-0.5 0-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.5-0.875-0.5-1.625-0.25-0.5-0.5-0.875-0.5-1.625-0.25-0.5-0.5-0.875-0.5-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.875-1.625-0.25-0.5-0.5-0.875-0.875-1.625-0.25-0.5-0.5-0.875-0.875-1.625-0.25-0.5-0.5-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.875-0.875-1.125-1.625-0.5-0.5-0.875-0.875-1.125-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625l-1.625-1.625-1.625-1.625c-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.375-0.875-1.875-1.625-0.75-0.5-1.375-0.875-1.875-1.625-0.75-0.5-1.375-0.875-2.125-1.625-0.75-0.5-1.375-0.875-2.125-1.625l-0.75-0.5 0.25-0.875 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.25-1.125-2.125 1.125-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-0.5 0.25-0.875-0.25c-2.125-0.5-4.25-0.875-6-1.625-2.125-0.5-4.25-0.875-6.25-1.625-2.125-0.5-4.25-0.875-6.5-1.625-2.375-0.5-4.375-0.875-6.75-1.625-2.375-0.5-4.875-1.125-7.25-1.625-2.75-0.5-5.375-1.125-8.125-1.625-3.25-0.5-6.5-1.125-9.75-1.625-5.375-0.75-10.75-1.125-15.875-1.625-2.75-0.25-5.875-0.25-8.625-0.25-3.75 0-7.5 0-11.125 0.25-6.5 0.25-12.75 0.75-19.125 1.625-3.75 0.5-7.5 0.875-11 1.625-2.75 0.5-5.875 0.875-8.625 1.625-2.375 0.5-4.875 0.875-7.25 1.625-2.125 0.5-4.25 0.875-6.25 1.625-1.875 0.5-3.75 0.875-5.625 1.625-1.875 0.5-3.5 0.875-5.125 1.625-1.625 0.5-3.25 0.875-4.875 1.625-1.375 0.5-3 0.875-4.375 1.625-1.375 0.5-2.75 0.875-4.25 1.625-1.375 0.5-2.5 0.875-4 1.625-1.125 0.5-2.5 0.875-3.75 1.625-1.125 0.5-2.375 0.875-3.75 1.625-1.125 0.5-2.375 0.875-3.5 1.625-1.125 0.5-2.125 0.875-3.25 1.625-1.125 0.5-2.125 0.875-3.25 1.625-0.875 0.5-2.125 0.875-3 1.625-0.875 0.5-1.875 0.875-3 1.625-0.875 0.5-1.875 0.875-2.75 1.625-0.875 0.5-1.875 0.875-2.75 1.625-0.875 0.5-1.875 0.875-2.5 1.625-0.875 0.5-1.625 0.875-2.5 1.625-0.875 0.5-1.625 0.875-2.5 1.625-0.75 0.5-1.625 0.875-2.375 1.625-0.75 0.5-1.625 0.875-2.375 1.625-0.75 0.5-1.625 0.875-2.375 1.625-0.75 0.5-1.375 0.875-2.375 1.625-0.75 0.5-1.375 0.875-2.125 1.625-0.75 0.5-1.375 0.875-2.125 1.625-0.75 0.5-1.375 0.875-2.125 1.625-0.75 0.5-1.375 0.875-2.125 1.625-0.75 0.5-1.375 0.875-1.875 1.625-0.75 0.5-1.375 0.875-1.875 1.625-0.75 0.5-1.125 0.875-1.875 1.625-0.75 0.5-1.125 0.875-1.875 1.625-0.75 0.5-1.125 0.875-1.875 1.625-0.75 0.5-1.125 0.875-1.875 1.625-0.5 0.5-1.125 0.875-1.625 1.625-0.5 0.5-1.125 0.875-1.625 1.625-0.5 0.5-1.125 0.875-1.625 1.625-0.5 0.5-1.125 0.875-1.625 1.625l-1.625 1.625-1.625 1.625c-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.125 1.625-0.5 0.5-0.875 0.875-1.125 1.625-0.5 0.5-0.875 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.5 0.875-0.875 1.625-0.25 0.5-0.5 0.875-0.875 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.5 1.625-0.25 0.5-0.5 0.875-0.5 1.625-0.25 0.5-0.5 0.875-0.5 1.625-0.25 0.5-0.5 0.875-0.5 1.625-0.25 0.5-0.5 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5 0 0.875-0.25 1.625 0 0.5 0 0.875-0.25 1.625 0 0.5 0 0.875-0.25 1.625v1.625 1.625 1.625 3.25 1.625 3.25 1.375 1.625 1.625 1.625 1.625 1.625 1.625 1.625 1.625 1.625c0 0.5 0 0.875 0.25 1.625 0 0.5 0 0.875 0.25 1.625 0 0.5 0 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.875 1.625 0.25 0.5 0.5 0.875 0.875 1.625 0.25 0.5 0.5 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.875 0.875 1.125 1.625 0.5 0.5 0.875 0.875 1.125 1.625 0.5 0.5 0.875 0.875 1.125 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625l1.625 1.625 1.625 1.625c0.5 0.5 1.125 0.875 1.625 1.625 0.5 0.5 1.125 0.875 1.625 1.625 0.5 0.5 1.125 0.875 1.625 1.625 0.5 0.5 1.125 0.875 1.625 1.625 0.5 0.5 1.125 0.875 1.875 1.625 0.75 0.5 1.125 0.875 1.875 1.625 0.75 0.5 1.125 0.875 1.875 1.625 0.75 0.5 1.125 0.875 1.875 1.625 0.75 0.5 1.375 0.875 1.875 1.625 0.75 0.5 1.375 0.875 1.875 1.625 0.75 0.5 1.375 0.875 2.125 1.625 0.75 0.5 1.375 0.875 2.125 1.625 0.75 0.5 1.375 0.875 2.125 1.625 0.75 0.5 1.375 0.875 2.125 1.625 0.75 0.5 1.375 0.875 2.375 1.625 0.75 0.5 1.625 0.875 2.375 1.625 0.75 0.5 1.625 0.875 2.375 1.625 0.75 0.5 1.625 0.875 2.375 1.625 0.875 0.5 1.625 0.875 2.5 1.625 0.875 0.5 1.625 0.875 2.5 1.625 0.875 0.5 1.875 0.875 2.5 1.625 0.875 0.5 1.875 0.875 2.75 1.625 0.875 0.5 1.875 0.875 2.75 1.625 0.875 0.5 1.875 0.875 3 1.625 0.875 0.5 2.125 0.875 3 1.625 1.125 0.5 2.125 0.875 3.25 1.625 1.125 0.5 2.125 0.875 3.25 1.625 1.125 0.5 2.375 0.875 3.5 1.625 1.125 0.5 2.375 0.875 3.75 1.625 1.125 0.5 2.5 0.875 3.75 1.625 1.375 0.5 2.5 0.875 4 1.625 1.375 0.5 2.75 0.875 4.25 1.625 1.375 0.5 3 0.875 4.375 1.625 1.625 0.5 3.25 0.875 4.875 1.625 1.625 0.5 3.5 0.875 5.125 1.625 1.875 0.5 3.75 0.875 5.875 1.625 2.125 0.5 4.25 1.125 6.25 1.625 2.375 0.5 4.875 1.125 7.25 1.625 2.75 0.5 5.875 1.125 8.625 1.625 3.75 0.75 7.5 1.125 11.125 1.625 9.25 1.125 19.125 1.625 28.875 1.625h1.375c9.25 0 18.375-0.75 27.5-1.625 3.75-0.5 7.25-0.875 10.75-1.625 2.75-0.5 5.625-0.875 8.375-1.625 2.375-0.5 4.625-0.875 7-1.625 2.125-0.5 4.25-0.875 6.25-1.625 1.875-0.5 3.75-0.875 5.625-1.625 1.625-0.5 3.5-0.875 5.125-1.625 1.625-0.5 3.25-0.875 4.625-1.625 1.375-0.5 3-0.875 4.375-1.625 1.375-0.5 2.75-0.875 4.25-1.625 1.375-0.5 2.5-0.875 4-1.625 1.125-0.5 2.5-0.875 3.75-1.625 1.125-0.5 2.375-0.875 3.5-1.625 1.125-0.5 2.375-0.875 3.5-1.625 1.125-0.5 2.125-0.875 3.25-1.625 1.125-0.5 2.125-0.875 3.25-1.625 0.875-0.5 2.125-0.875 3-1.625 0.875-0.5 1.875-0.875 3-1.625 0.875-0.5 1.875-0.875 2.75-1.625 0.875-0.5 1.875-0.875 2.75-1.625 0.875-0.5 1.875-0.875 2.5-1.625 0.875-0.5 1.625-0.875 2.5-1.625 0.875-0.5 1.625-0.875 2.5-1.625 0.875-0.5 1.625-0.875 2.5-1.625 0.75-0.5 1.625-0.875 2.375-1.625 0.75-0.5 1.625-0.875 2.375-1.625 0.75-0.5 1.375-0.875 2.375-1.625 0.75-0.5 1.375-0.875 2.125-1.625 0.75-0.5 1.375-0.875 2.125-1.625 0.75-0.5 1.375-0.875 2.125-1.625 0.75-0.5 1.375-0.875 2.125-1.625 0.75-0.5 1.375-0.875 1.875-1.625 0.75-0.5 1.375-0.875 1.875-1.625 0.75-0.5 1.125-0.875 1.875-1.625 0.75-0.5 1.125-0.875 1.875-1.625 0.75-0.5 1.125-0.875 1.875-1.625 0.75-0.5 1.125-0.875 1.875-1.625 0.5-0.5 1.125-0.875 1.625-1.625 0.5-0.5 1.125-0.875 1.625-1.625 0.5-0.5 1.125-0.875 1.625-1.625 0.5-0.5 1.125-0.875 1.625-1.625 0.5-0.5 1.125-0.875 1.625-1.625l1.625-1.625 1.625-1.625c0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.875-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.5-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.5-0.875 0.875-1.625 0.25-0.5 0.5-0.875 0.875-1.625 0.25-0.5 0.5-0.875 0.875-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.5-1.625 0.25-0.5 0.5-0.875 0.5-1.625 0.25-0.5 0.5-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0-0.875 0.25-1.625 0-0.5 0-0.875 0.25-1.625 0-0.5 0-0.875 0.25-1.625 0-0.5 0-0.875 0.25-1.625 0-0.5 0-0.875 0.25-1.625v-11.375h-3.125zM589.714646 384c-12.625 0-25.375-12.75-25.375-25.375 0-12.75 12.75-25.375 25.375-25.375 19.375 0 31.875 12.625 31.875 25.375-0.125 12.625-12.75 25.375-31.875 25.375zM729.589646 384c-12.625 0-25.375-12.75-25.375-25.375 0-12.75 12.75-25.375 25.375-25.375 19.125 0 31.875 12.625 31.875 25.375 0 12.625-12.75 25.375-31.875 25.375zM328.714646 568.75c-19.125 0-38.375-12.625-38.375-31.625 0-19.125 19.375-31.875 38.375-31.875s31.875 12.75 31.875 31.875-12.875 31.625-31.875 31.625zM506.964646 568.75c-19.125 0-38.125-12.625-38.125-31.625 0-19.125 19.125-31.875 38.125-31.875 19.125 0 31.875 12.75 31.875 31.875s-12.875 31.625-31.875 31.625z"
+                   horiz-adv-x="1059"/>
 
-    
-    <glyph glyph-name="refresh-1" unicode="&#58982;" d="M688.146 736l-192 128v-256l192 128.001zM496.146 767.7090000000001c-231.174-8.416-416-198.479-416-431.709 0-238.587 193.413-432 432-432 233.23 0 423.293 184.826 431.709 416h-64.05c-8.377-195.817-169.778-352-367.658-352-203.241 0-368 164.759-368 368 0 197.88 156.183 359.282 352 367.658v64.051z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="rmb" unicode="&#58974;" d="M511.998465 896C229.23338 896 0.004605 666.769178 0.004605 384.001023c0-282.773272 229.227752-512.001023 511.99386-512.001023 282.769178 0 511.994883 229.227752 511.994883 512.001023C1023.994372 666.769178 794.767644 896 511.998465 896zM511.998465-91.59690499999999c-262.660188 0-475.589742 212.930577-475.589742 475.597929 0 262.663258 212.929554 475.594859 475.589742 475.594859 262.663258 0 475.590765-212.9316 475.590765-475.594859C987.590254 121.33469500000001 774.662747-91.59690499999999 511.998465-91.59690499999999zM738.742652 301.137781L544.432155 301.137781l0 69.780273 194.310497 0c17.835204 0 32.249495 14.43885 32.249495 32.220842 0 17.784038-14.414291 32.19526-32.249495 32.19526L589.7462 435.334155l149.620669 209.579249c8.916067 15.397688 3.63069 35.099403-11.82021 43.988864-15.398712 8.891508-35.097356 3.629667-44.017516-11.793604L512.187777 437.098335 340.84334 677.108664c-8.864902 15.423271-28.617781 20.685111-44.016493 11.793604-15.395642-8.889461-20.685111-28.590152-11.82021-43.988864l149.622716-209.579249L285.628808 435.334155c-17.781992 0-32.245402-14.411221-32.245402-32.19526 0-17.781992 14.46341-32.220842 32.245402-32.220842l194.310497 0 0-69.780273L285.628808 301.137781c-17.781992 0-32.245402-14.413268-32.245402-32.19526s14.46341-32.220842 32.245402-32.220842l194.310497 0 0-132.435265c0-17.780969 14.46341-32.19526 32.248472-32.19526 17.835204 0 32.245402 14.414291 32.245402 32.19526L544.433178 236.72065499999997l194.310497 0c17.835204 0 32.249495 14.43885 32.249495 32.220842S756.577856 301.137781 738.742652 301.137781"  horiz-adv-x="1024" />
+            <glyph glyph-name="shrink-right" unicode="&#58984;"
+                   d="M52.294-28.71900000000005h899.793c16.546 0 29.999 13.405 29.999 29.999v59.974c-0.013 16.562-13.436 29.985-29.998 29.999h-899.795c-16.57 0-29.999-13.429-29.999-29.999v-59.974c0-16.617 13.429-29.999 29.999-29.999zM952.087 451.165h-479.884c-16.57 0-29.999-13.405-29.999-29.999v-59.974c0 0 0 0 0 0 0-16.572 13.428-30.01 29.997-30.022h479.885c16.571 0.013 29.999 13.448 29.999 30.022 0 0 0 0 0 0v59.974c0 16.593-13.429 29.999-29.999 29.999zM52.294 691.0840000000001h899.793c16.554 0.013 29.972 13.423 29.999 29.974v59.999c0 16.57-13.429 29.999-29.999 29.999h-899.793c-16.57 0-29.999-13.429-29.999-29.999v-59.997c0-16.546 13.429-29.975 29.999-29.975zM45.183 383.53499999999997l239.919-150.598v301.196l-239.919-150.598z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="addition" unicode="&#58916;" d="M544 768L480 768 480 416 128 416 128 352 480 352 480 0 544 0 544 352 895.936 352 895.936 416 544 416Z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="home" unicode="&#59022;" d="M824.084343-40.42033900000001H232.898863c-74.604138 0-85.85232 28.334325-85.852321 49.997718l-0.584307 5.314029V447.645552h48.806589v-402.916582c0-25.547863 13.548574-36.343743 37.629015-36.343743h568.020898c25.928532 0 27.978215 6.220678 27.978215 37.84391V447.585177l48.806589 0.118704c0.022513-14.346753 0-382.76666 0-433.098999 0-38.130436-12.726859-54.765301-51.858088-54.765301l-1.76111-0.25992zM1012.470921 493.103884C849.773422 615.120868 687.101505 737.137853 524.404006 859.153814c-6.207375 4.659113-18.433838 4.659113-24.641213 0C337.077573 737.137853 174.393377 615.120868 11.696902 493.103884c-24.856108-18.635429-0.572028-61.044308 24.642236-42.13361A15995638.709915 15995638.709915 0 0 1 512.025071 807.737794c0.988514-0.715291 1.644453-1.144056 2.823302-2.037403 18.040888-13.524015 36.057217-27.036773 54.073546-40.560788 58.291614-43.718711 116.583229-87.437421 174.874843-131.143852 81.33647-61.008492 162.696476-122.015961 244.033969-183.024454 25.212218-18.911722 49.496298 23.497157 24.64019 42.132587z"  horiz-adv-x="1024" />
+            <glyph glyph-name="spread-left" unicode="&#58987;"
+                   d="M942.974 770.924h-843.556c-15.513 0-28.124-12.567-28.124-28.124v-56.226c0.012-15.527 12.596-28.111 28.123-28.124h843.559c15.534 0 28.124 12.59 28.124 28.124v56.226c0 15.578-12.59 28.124-28.124 28.124zM99.418 321.033h449.891c15.534 0 28.124 12.567 28.124 28.124v56.226c0 0 0 0 0 0 0 15.537-12.589 28.134-28.122 28.146h-449.892c-15.534-0.012-28.124-12.608-28.124-28.146 0 0 0 0 0 0v-56.226c0-15.556 12.59-28.124 28.124-28.124zM942.974 96.10900000000004h-843.556c-15.519-0.012-28.099-12.584-28.124-28.101v-56.249c0-15.534 12.59-28.124 28.124-28.124h843.556c15.534 0 28.124 12.59 28.124 28.124v56.248c0 15.513-12.59 28.103-28.124 28.102zM949.641 384.436l-224.924 141.186v-282.37l224.924 141.186z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="user" unicode="&#59248;" d="M611.2 342.4c70.4 54.4 115.2 140.8 115.2 230.4 0 156.8-128 288-284.8 288s-284.8-128-284.8-284.8c0-92.8 44.8-182.4 115.2-236.8C108.8 272 0 105.60000000000002 0-80c0-9.6 9.6-19.2 19.2-19.2h848c9.6 0 19.2 9.6 19.2 19.2 0 188.8-112 355.2-275.2 422.4z m-576-396.8C44.8 115.20000000000005 156.8 268.79999999999995 320 320c6.4 3.2 12.8 9.6 12.8 16s-3.2 16-9.6 19.2c-76.8 41.6-128 131.2-128 224 0 134.4 112 246.4 246.4 246.4s246.4-112 246.4-249.6c0-89.6-51.2-176-128-220.8-6.4-3.2-9.6-9.6-9.6-19.2 0-6.4 6.4-12.8 12.8-16 160-51.2 275.2-204.8 281.6-377.6H35.2zM812.8 361.6c54.4 41.6 86.4 108.8 86.4 176 0 89.6-54.4 172.8-134.4 208-9.6 3.2-22.4 0-25.6-9.6-3.2-9.6 0-22.4 9.6-25.6 67.2-28.8 112-99.2 112-172.8 0-67.2-38.4-131.2-96-163.2-6.4-3.2-9.6-9.6-9.6-19.2 0-6.4 6.4-12.8 12.8-16 131.2-41.6 217.6-160 217.6-297.6 0-9.6 9.6-19.2 19.2-19.2s19.2 9.6 19.2 19.2c-3.2 140.8-86.4 262.4-211.2 320z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="notice" unicode="&#58983;" d="M544 798.976V864h-64v-65.024C289.536 786.304 160 658.624 160 416v-288h64V416c0 192 115.456 320 288 320 180.544 0 288-128 288-320v-288h64V416c0 242.88-122.496 370.56-320 382.976zM672 64a160 160 0 1 0-320 0h64a96 96 0 0 1 192 0h64zM64 128h896v-64H64v64z"  horiz-adv-x="1024" />
+            <glyph glyph-name="camera" unicode="&#58976;"
+                   d="M884.3 648.6H704.2L679.5 698l-0.2 0.4c-1.9 3.6-3.6 6.9-5.1 9.9-12 23.4-21.5 41.9-54.1 41.9H416.7c-32.9 0-43.7-21.3-55.1-43.8-1.3-2.6-2.7-5.3-4.2-8.1l-24.8-49.7H152.4c-34 0-61.7-27.7-61.7-61.7v-488c0-34 27.7-61.7 61.7-61.7h731.9c34 0 61.7 27.7 61.7 61.7v488c0 34-27.7 61.7-61.7 61.7zM904 98.89999999999998c0-10.8-8.8-19.7-19.7-19.7H152.4c-10.8 0-19.7 8.8-19.7 19.7v488c0 10.8 8.8 19.7 19.7 19.7h206.1l36.2 72.5c1.5 2.9 2.9 5.7 4.3 8.3 10.6 20.8 11.1 20.8 17.7 20.8H620c4.6 0 5.8-0.6 5.8-0.6 2-1.2 7.2-11.2 10.9-18.5 1.6-3.1 3.3-6.5 5.3-10.1l36.2-72.4h206.1c10.8 0 19.7-8.8 19.7-19.7v-488zM525.5 565.5c-123.5 0-223.6-100.1-223.6-223.6S402 118.20000000000005 525.5 118.20000000000005s223.7 100.1 223.7 223.7c0 123.5-100.2 223.6-223.7 223.6z m0-402.5c-98.8 0-178.9 80.1-178.9 178.9 0 98.8 80.1 178.9 178.9 178.9 98.8 0 178.9-80.1 178.9-178.9 0-98.8-80.1-178.9-178.9-178.9z m246 402.5v-44.7H861v44.7h-89.5z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="login-weibo" unicode="&#58997;" d="M411.270737 288.350316c-17.973895 7.504842-41.189053-0.229053-52.264421-17.542737-11.223579-17.394526-5.955368-38.103579 11.870316-46.201263 18.108632-8.232421 42.132211-0.417684 53.342316 17.421474C435.253895 260.05557899999997 429.446737 280.62989500000003 411.270737 288.350316zM455.545263 306.64757899999995c-6.885053 2.721684-15.508211-0.579368-19.550316-7.329684-3.920842-6.790737-1.751579-14.524632 5.146947-17.367579 7.019789-2.883368 16.006737 0.458105 20.048842 7.370105C465.071158 296.259368 462.551579 304.087579 455.545263 306.64757899999995zM427.52 426.684632c-115.968-11.439158-203.924211-82.216421-196.378947-158.073263 7.531789-75.910737 107.654737-128.161684 223.649684-116.749474 115.994947 11.439158 203.924211 82.216421 196.392421 158.140632C643.664842 385.859368 543.541895 438.110316 427.52 426.684632zM529.300211 247.70021099999997c-23.673263-53.355789-91.769263-81.798737-149.530947-63.232-55.754105 17.933474-79.373474 72.811789-54.945684 122.246737 23.956211 48.464842 86.352842 75.870316 141.541053 61.561263C523.506526 353.562947 552.663579 299.85684200000003 529.300211 247.70021099999997zM512 896C229.241263 896 0 666.772211 0 384c0-282.758737 229.241263-512 512-512 282.772211 0 512 229.241263 512 512C1024 666.772211 794.772211 896 512 896zM455.531789 101.02568399999996c-145.354105 0-293.941895 70.197895-293.941895 185.667368 0 60.362105 38.386526 130.182737 104.474947 196.069053 88.252632 87.929263 191.164632 127.986526 229.874526 89.397895 17.084632-17.003789 18.741895-46.457263 7.760842-81.623579-5.726316-17.690947 16.666947-7.895579 16.666947-7.936 71.343158 29.763368 133.564632 31.514947 156.321684-0.862316 12.139789-17.246316 10.954105-41.472-0.215579-69.510737-5.173895-12.921263 1.589895-14.928842 11.466105-17.879579 40.178526-12.422737 84.924632-42.455579 84.924632-95.380211C772.837053 211.36168399999997 646.090105 101.02568399999996 455.531789 101.02568399999996zM718.672842 468.197053c4.715789 14.457263 1.765053 30.962526-9.202526 43.061895-10.954105 12.072421-27.136 16.666947-42.037895 13.527579l0 0.026947c-12.463158-2.694737-24.724211 5.268211-27.392 17.664-2.667789 12.463158 5.281684 24.697263 17.744842 27.338105 30.531368 6.467368 63.595789-2.937263 85.989053-27.715368 22.447158-24.764632 28.456421-58.489263 18.849684-88.064-3.907368-12.099368-16.936421-18.728421-29.062737-14.848-12.139789 3.920842-18.782316 16.922947-14.874947 28.995368L718.672842 468.183579zM853.261474 424.865684c-0.013474-0.013474-0.013474-0.080842-0.013474-0.107789-4.567579-14.026105-19.712-21.706105-33.778526-17.165474-14.133895 4.554105-21.854316 19.590737-17.300211 33.670737l0 0.013474c13.999158 43.169684 5.12 92.429474-27.567158 128.565895-32.714105 36.122947-80.949895 49.92-125.507368 40.488421-14.484211-3.085474-28.752842 6.130526-31.838316 20.574316-3.098947 14.403368 6.144 28.631579 20.641684 31.717053l0.026947 0c62.625684 13.271579 130.519579-6.117053 176.545684-56.966737C860.483368 554.886737 872.892632 485.618526 853.261474 424.865684z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="voice" unicode="&#59016;" d="M463.380164 644.0568969999999v-0.003069c-4.550643 4.549619-10.484795 7.02295-16.913205 7.02295s-12.365632-2.473331-16.915251-7.02295c-4.549619-4.551666-7.020904-10.485819-7.020904-16.914229s2.471284-12.365632 7.020904-16.915251c60.437487-60.438511 93.675496-140.756791 93.675496-226.222301 0-85.464487-33.238009-165.783791-93.675496-226.220255-4.549619-4.551666-7.020904-10.487865-7.020904-16.915252 0-6.429433 2.471284-12.365632 7.020904-16.914228 4.550643-4.549619 10.486842-7.02295 16.915251-7.02295s12.364609 2.473331 16.913205 7.02295c35.114752 35.116799 62.317301 76.06849 80.814584 121.668037 17.904789 44.018539 26.90579 90.608647 26.90579 138.384768s-9.101285 94.26799-26.90579 138.384767c-18.59552 45.697785-45.698808 86.550215-80.814584 121.667013zM781.892405 618.929614v-0.002047c-31.358195 77.452-77.550237 146.990772-137.098471 206.539007-4.550643 4.549619-10.485819 7.02295-16.915252 7.02295-6.42841 0-12.363585-2.473331-16.914228-7.02295-9.29776-9.299807-9.29776-24.531719 0-33.82948 54.997592-54.998615 97.631598-119.195729 126.613676-190.71153 27.993564-69.044516 42.237987-142.045133 42.237987-216.924541s-14.244422-147.882072-42.237987-216.923518c-28.982078-71.517847-71.616084-135.616724-126.613676-190.711529-9.29776-9.298783-9.29776-24.531719 0-33.82948 4.551666-4.551666 10.485819-7.02295 16.914228-7.02295 6.429433 0 12.366655 2.471284 16.915252 7.02295 59.547211 59.547211 105.740276 129.085984 137.098471 206.53696 30.369681 74.78117 45.699832 153.817248 45.699831 234.928591 0 81.111343-15.331173 160.146397-45.699831 234.927567zM299.474141 427.621497c-11.670807 11.573593-27.103288 18.004049-43.522236 18.004049-16.419971 0-31.852452-6.429433-43.52326-18.004049-11.57257-11.57257-18.003026-27.104311-18.003026-43.522236 0-16.420995 6.42841-31.851429 18.003026-43.52326 11.574616-11.57257 27.103288-18.003026 43.52326-18.003025s31.852452 6.429433 43.522236 18.003025c11.573593 11.573593 18.003026 27.104311 18.003025 43.52326 0 16.419971-6.427386 31.852452-18.003025 43.522236z"  horiz-adv-x="1024" />
+            <glyph glyph-name="note" unicode="&#58990;"
+                   d="M987.2 384.36L512.43 859.13a84.75 84.75 0 0 1-65 24.71L111.55 864.09a84.83 84.83 0 0 1-79.65-79.65L12.15 448.57a84.57 84.57 0 0 1 24.69-65l474.8-474.8a84.91 84.91 0 0 1 119.93 0L987.2 264.41999999999996a84.9 84.9 0 0 1 0 119.94z m-39.28-80.66L592.29-51.91999999999996a29.31 29.31 0 0 0-41.37 0L76.1 422.9a29.22 29.22 0 0 0-8.49 22.38l19.74 335.88a29.29 29.29 0 0 0 27.48 27.48l335.9 19.75a29.32 29.32 0 0 0 22.38-8.52l474.8-474.8a29.31 29.31 0 0 0 0.01-41.37zM236.86 659.14c-50.92-50.95-50.92-133.8 0-184.72a130.61 130.61 0 1 1 184.71 184.72c-50.89 50.86-133.77 50.86-184.71 0zM382.29 513.7c-28.38-28.38-77.78-28.38-106.15 0a75.08 75.08 0 1 0 106.15 0z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="upload-drag" unicode="&#59009;" d="M666.931 445.918l-124.245 99.362c-7.221 5.639-16.428 9.042-26.429 9.042-9.963 0-19.136-3.376-26.438-9.047l-124.215-99.391c-9.615-7.772-15.713-19.565-15.713-32.782 0-9.946 3.453-19.084 9.223-26.284 13.828-17.359 41.51-20.465 58.918-6.505l56.252 45.022v-261.12c0-23.177 18.842-41.984 41.95-41.984s41.95 18.842 41.95 41.984v261.12l56.286-45.056c17.545-13.892 45.09-10.718 58.914 6.554 5.754 7.137 9.236 16.316 9.236 26.308 0 13.211-6.086 24.999-15.609 32.716zM235.827 142.95000000000005c-85.026 0-152.542 31.71-188.655 89.839-36.113 58.095-34.406 134.724 4.335 195.174 37.342 58.334 102.366 92.023 178.995 94.549-19.866 130.492 42.667 202.377 84.753 235.008 90.112 69.871 234.257 79.053 335.565 21.367 58.982-33.587 94.037-85.675 100.454-146.978 113.937 18.978 177.562-33.826 206.814-69.905 63.317-78.131 71.27-204.39 18.91-300.203-46.524-85.06-130.389-127.317-229.82-116.497-18.739 2.116-32.222 18.978-30.174 37.683s19.285 32.017 37.683 30.174c96.7-10.718 143.258 46.353 162.406 81.408 39.014 71.373 33.826 167.868-12.049 224.495-38.673 47.684-100.352 60.518-178.483 37.069-2.94-0.916-6.319-1.443-9.822-1.443-18.851 0-34.133 15.282-34.133 34.133 0 1.495 0.096 2.969 0.283 4.414 8.549 68.506-31.114 106.53-65.93 126.362-77.346 44.066-191.522 37.035-259.925-15.974-58.266-45.193-75.947-117.18-51.132-208.179 0.761-2.688 1.198-5.775 1.198-8.963 0-18.851-15.282-34.133-34.133-34.133-1.481 0-2.94 0.094-4.371 0.277-70.759 8.822-128.991-13.535-159.677-61.424-24.61-38.434-26.146-86.46-3.823-122.368 27.716-44.578 86.05-64.375 164.147-55.637 1.132 0.133 2.443 0.209 3.772 0.209 18.853 0 34.138-15.284 34.138-34.138 0-17.525-13.205-31.965-30.208-33.914-14.153-1.653-27.874-2.404-41.118-2.404z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="login-qq" unicode="&#58998;" d="M512 896C229.227789 896 0 666.772211 0 384c0-282.745263 229.227789-512 512-512s512 229.254737 512 512C1024 666.772211 794.772211 896 512 896L512 896zM738.856421 258.93726300000003c0 0-16.208842-44.220632-45.945263-83.941053 0 0 53.126737-18.054737 48.64-64.983579 0 0 1.778526-52.345263-113.461895-48.734316 0 0-81.071158 6.319158-105.377684 40.609684l-21.423158 0c-24.306526-34.304-105.350737-40.609684-105.350737-40.609684-115.280842-3.610947-113.475368 48.734316-113.475368 48.734316-4.500211 46.928842 48.626526 64.983579 48.626526 64.983579-29.709474 39.720421-45.918316 83.941053-45.918316 83.941053-72.057263-116.439579-64.848842 16.249263-64.848842 16.249263 13.527579 78.524632 70.238316 129.967158 70.238316 129.967158-8.111158 71.316211 21.611789 83.941053 21.611789 83.941053C318.410105 709.712842 508.025263 705.859368 512 705.751579c3.988211 0.107789 193.576421 3.961263 199.828211-216.643368 0 0 29.709474-12.638316 21.611789-83.941053 0 0 56.737684-51.442526 70.238316-129.967158l0 0C803.678316 275.18652599999996 810.873263 142.49768400000005 738.856421 258.93726300000003L738.856421 258.93726300000003zM738.856421 258.93726300000003"  horiz-adv-x="1024" />
+            <glyph glyph-name="refresh" unicode="&#58985;"
+                   d="M928 810.666667c-18.133333 0-32-13.866667-32-32v-164.266667C816 747.733333 669.866667 832 512 832 264.533333 832 64 631.4666669999999 64 384s200.533333-448 448-448c230.4 0 422.4 172.8 445.866667 402.133333 2.133333 17.066667-10.666667 33.066667-28.8 35.2-17.066667 2.133333-33.066667-10.666667-35.2-28.8C873.6 148.26666699999998 709.333333 0 512 0c-212.266667 0-384 171.733333-384 384s171.733333 384 384 384c137.6 0 264.533333-74.666667 332.8-192H693.333333c-18.133333 0-32-13.866667-32-32s13.866667-32 32-32h266.666667V778.666667c0 18.133333-14.933333 32-32 32z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="snowflake" unicode="&#59057;" d="M480.695-64h63.725V59.291000000000054l68.854-68.242 44.945 44.546-113.798 112.79v180.02l177.271-102.44 41.67-155.652 60.725 16.284-25.398 94.872 85.259-49.266 31.87 55.246-84.726 48.961 94.497 25.343-16.495 61.622-156.068-41.855-176.934 102.245 177.667 102.667 155.513-41.709 16.274 60.793-94.78 25.418 85.255 49.264-31.869 55.247-84.733-48.965 25.326 94.594-61.557 16.51-41.817-156.206-176.948-102.251V644.461l113.849 113.951-44.459 44.496-69.392-69.454V832h-63.725v-97.935l-69.188 69.249-45.068-45.107 114.256-114.355V438.89l-156.557 90.469L283.45 684.39l-60.188-16.458 24.84-94.632-107.544 62.145-31.868-55.247 106.667-61.639-93.463-25.557 16.074-61.237 154.482 42.243 156.169-90.243-156.138-90.226-154.485 42.243-15.855-60.409 94.289-25.784-107.534-62.14 31.868-55.247 106.672 61.642-24.621-93.801 61.012-16.685 40.69 155.028 156.179 90.25v-180.455l-113.801-112.79 44.338-43.944 69.463 68.845V-64z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="file-b" unicode="&#58965;" d="M790.08 177.91999999999996l-138.112-119.232V177.91999999999996h138.112zM198.848 763.008h627.328v-516.16H617.088a34.56 34.56 0 0 1-34.816-34.432v-206.528H198.848V763.008z m662.208 68.8H164.032a34.56 34.56 0 0 1-34.816-34.432v-825.92a34.56 34.56 0 0 1 34.816-34.432h453.056l278.784 240.896V797.376a34.56 34.56 0 0 1-34.816 34.432z"  horiz-adv-x="1024" />
+            <glyph glyph-name="female" unicode="&#58977;"
+                   d="M774.4 800c-48 35.2-108.8 51.2-172.8 51.2-105.6 0-208-51.2-268.8-150.4-89.6-134.4-57.6-313.6 60.8-416l-32-51.2-188.8 121.6S128 384 108.8 352c-22.4-35.2 22.4-64 22.4-64l188.8-121.6-105.6-163.2s-19.2-32 16-51.2c38.4-22.4 57.6 12.8 57.6 12.8l102.4 160 185.6-121.6s48-28.8 70.4 6.4c19.2 28.8-25.6 57.6-25.6 57.6L432 192l32 48c44.8-22.4 92.8-32 137.6-32 105.6 0 208 51.2 268.8 150.4 96 147.2 51.2 345.6-96 441.6z m35.2-400c-44.8-67.2-118.4-108.8-201.6-108.8-44.8 0-92.8 12.8-131.2 38.4-112 73.6-147.2 220.8-73.6 332.8 44.8 64 121.6 105.6 201.6 108.8 44.8 0 92.8-12.8 131.2-38.4 112-73.6 147.2-220.8 73.6-332.8z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="template" unicode="&#58979;" d="M734 172.89999999999998v82.8h-59.9v-37l-35.7-9.7 15.7-57.8zM674.1 419.3H734v-81.8h-59.9zM734 600.2l-95.6-26 15.7-57.8 20 5.4v-20.7H734zM866.1 131.29999999999995v-37l-35.7-9.7 7.9-28.9 7.8-28.9 79.9 21.7v82.8h-29.9zM740.9 60.299999999999955L651.4 36l7.9-28.9 7.8-29 89.5 24.4-7.8 28.9zM740.9 781.7l-89.5-24.3 7.9-28.9 7.8-28.9 89.5 24.3-7.8 28.9zM830.4 806l7.9-28.9 7.8-28.9 20 5.5v-20.8H926V832zM866.1 612.6v-120.3H926V612.6h-29.9zM866.1 371.9v-120.3H926V371.9h-29.9zM541.9 665.6l35.7 9.7-7.8 28.9-7.8 28.9-50-13.6L98 832v-783.5l384.1-104.3L512-64l29.9 8.1 35.7 9.7-7.8 28.9-7.8 28.9-20-5.4V120.79999999999995l35.7 9.7-15.7 57.8-20-5.4V486l35.7 9.7-15.7 57.8-20-5.4V665.6z m-59.8-659.4l-324.2 88.1V753.7l324.2-88.1V548l-192 52.2v-427.3l192-52.2v-114.5z m0 360.9V182.79999999999995l-132.2 35.9V521.8l132.2-35.9v-118.8z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="transfer" unicode="&#59025;" d="M320 768H128c-35.2 0-64-28.8-64-64v-640c0-35.2 28.8-64 64-64h192c35.2 0 64 28.8 64 64V704c0 35.2-28.8 64-64 64z m0-672c0-16-16-32-32-32H160c-16 0-32 16-32 32V672c0 16 16 32 32 32h128c16 0 32-16 32-32v-576z m256 544h-64c-19.2 0-32-12.8-32-32s16-32 32-32h64c19.2 0 32 12.8 32 32s-16 32-32 32z m-64-448h-64c-19.2 0-32-12.8-32-32s16-32 32-32h64c19.2 0 32 12.8 32 32s-16 32-32 32z m384 576H704c-35.2 0-64-28.8-64-64v-640c0-35.2 28.8-64 64-64h192c35.2 0 64 28.8 64 64V704c0 35.2-28.8 64-64 64z m0-672c0-16-16-32-32-32H736c-16 0-32 16-32 32V672c0 16 16 32 32 32h128c16 0 32-16 32-32v-576z"  horiz-adv-x="1024" />
+            <glyph glyph-name="male" unicode="&#58978;"
+                   d="M889.6 800h-240s-35.2 0-38.4-41.6c0-19.2 16-38.4 38.4-38.4h140.8l-179.2-179.2C556.8 582.4 489.6 608 416 608 240 608 96 464 96 288s144-320 320-320 320 144 320 320c0 73.6-25.6 140.8-67.2 195.2l179.2 179.2v-140.8c0-22.4 19.2-38.4 38.4-38.4 22.4 0 38.4 19.2 38.4 41.6V764.8h3.2C924.8 800 889.6 800 889.6 800zM416 48c-131.2 0-236.8 105.6-236.8 236.8 0 131.2 105.6 236.8 236.8 236.8s236.8-105.6 236.8-236.8c0-131.2-105.6-236.8-236.8-236.8z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="auz" unicode="&#58994;" d="M324.266667 435.2c-17.066667 17.066667-39.822222 17.066667-51.2 0-17.066667-17.066667-17.066667-39.822222 0-51.2l153.6-159.288889c5.688889-5.688889 17.066667-11.377778 28.444444-11.377778s17.066667 5.688889 28.444445 11.377778l295.822222 290.133333c17.066667 17.066667 17.066667 39.822222 0 51.2-17.066667 17.066667-39.822222 17.066667-51.2 0L455.111111 304.355556 324.266667 435.2zM927.288889 753.777778L523.377778 896h-22.755556L96.711111 753.777778c-17.066667-5.688889-28.444444-17.066667-28.444444-34.133334v-432.355555c11.377778-250.311111 409.6-409.6 426.666666-415.288889h22.755556c17.066667 5.688889 415.288889 159.288889 426.666667 415.288889V719.644444c11.377778 17.066667 0 28.444444-17.066667 34.133334z m-45.511111-460.8c-5.688889-182.044444-301.511111-312.888889-369.777778-341.333334-113.777778 45.511111-358.4 182.044444-369.777778 341.333334v398.222222L512 822.044444l369.777778-125.155555v-403.911111z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="console" unicode="&#58981;" d="M30.552 104.72699999999998c4.654-16.29 23.272-23.272 37.236-18.618 16.291 4.655 23.273 23.273 18.618 37.236C16.588 314.182 84.08 521.31 237.68 640c11.636 9.31 23.273 16.29 37.236 25.6 25.6 16.29 53.528 30.255 83.782 39.564 58.182 20.945 118.691 30.254 176.873 27.927h25.6c6.982 0 11.636 0 18.618-2.327 30.255-4.655 58.182-11.637 88.436-23.273 235.055-86.11 356.073-346.764 269.964-581.818-4.654-16.291 2.327-32.582 18.618-37.237 16.291-4.654 32.582 2.328 37.237 18.619 41.89 116.363 39.563 239.709 0 349.09h2.327C921.897 656.2909999999999 738.043 784.2909999999999 537.897 793.6h-48.873c-200.145-9.31-384-137.31-458.472-337.455-39.564-109.381-41.891-232.727 0-351.418z m707.49 386.328a29.498 29.498 0 0 1-41.89 0L521.606 316.509c-4.654 2.327-9.309 2.327-13.963 2.327-32.582 0-58.182-25.6-58.182-58.181s25.6-58.182 58.182-58.182 58.181 25.6 58.181 58.182c0 4.654 0 9.309-2.327 16.29l174.546 174.546c11.636 11.636 11.636 30.254 0 39.564z m228.073-458.473H58.48c-16.29 0-30.255-13.964-30.255-30.255 0-16.29 13.964-30.254 30.255-30.254h907.636c16.291 0 30.255 13.963 30.255 30.254 0 16.291-13.964 30.255-30.255 30.255z"  horiz-adv-x="1024" />
+            <glyph glyph-name="screen-restore" unicode="&#59224;"
+                   d="M582.6 454.6v320h50V540l274 274 35.4-35.4-274-274h234.6v-50h-320zM117.4-46l274 274v-234.6h50v320h-320v-50H356l-274-274 35.4-35.4zM132 764h302V814H82v-352h50V764z m760-760H590v-50h352V306h-50v-302z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="app" unicode="&#58963;" d="M432.022 818.946h-376.324c-6.627 0-12.078-5.45-12.078-12.078v-376.324c0-6.627 5.45-12.078 12.078-12.078h376.324c6.627 0 12.078 5.45 12.078 12.078v376.473c0 6.627-5.45 11.93-12.078 11.93zM391.517 471.196h-295.169v295.169h295.021v-295.169zM976.847 635.717l-211.95 211.95c-8.837 8.837-23.124 8.837-31.963 0l-211.95-211.95c-8.837-8.837-8.837-23.124 0-31.963l211.95-212.098c8.837-8.837 23.124-8.837 31.963 0l211.95 211.95c8.837 8.987 8.837 23.271 0 32.109zM432.022 313.45000000000005h-376.324c-6.627 0-12.078-5.45-12.078-12.078v-376.324c0-6.627 5.45-12.078 12.078-12.078h376.324c6.627 0 12.078 5.45 12.078 12.078v376.473c0 6.627-5.45 11.93-12.078 11.93zM391.517-34.15499999999997h-295.169v295.021h295.021v-295.021zM932.511 313.45000000000005h-376.324c-6.627 0-12.078-5.45-12.078-12.078v-376.324c0-6.627 5.45-12.078 12.078-12.078h376.324c6.627 0 12.078 5.45 12.078 12.078v376.473c0 6.627-5.45 11.93-12.078 11.93zM891.859-34.15499999999997h-295.021v295.021h295.021v-295.021z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="prev" unicode="&#58970;" d="M62.573 384.103l423.401 423.662c18.985 18.985 49.757 18.985 68.727 0 18.982-18.972 18.985-49.746 0-68.729l-355.058-355.067 356.796-356.796c18.977-18.971 18.976-49.746 0-68.727-18.982-18.976-49.751-18.976-68.727 0l-39.753 39.753 0.269 0.246-385.655 385.661zM451.365 384.103l423.407 423.662c18.985 18.985 49.757 18.985 68.727 0 18.982-18.972 18.985-49.746 0-68.729l-355.058-355.067 356.796-356.796c18.977-18.971 18.976-49.746 0-68.727-18.982-18.976-49.757-18.977-68.727 0l-39.762 39.754 0.273 0.249-385.662 385.661zM451.365 384.103z"  horiz-adv-x="1024" />
+            <glyph glyph-name="password" unicode="&#58995;"
+                   d="M519.2 343.29999999999995c-41.1 0-74.4-33.3-74.4-74.4 0-29.7 17.5-55 42.5-67.1v-81.9c0-17.6 14.3-31.9 31.9-31.9 17.6 0 31.9 14.3 31.9 31.9v81.9c25.1 12 42.5 37.4 42.5 66.9 0 41.3-33.2 74.6-74.4 74.6zM827.6-62.10000000000002H189.4c-35.9 0-65.1 29.2-65.1 65.1V428.4c0 35.9 29.2 65.1 65.1 65.1h638.2c17.3 0 33.7-6.7 46-19.1 12.3-12.3 19.1-28.7 19.1-46V3c0-35.9-29.2-65.1-65.1-65.1zM231.9 427.2c-34.8 0-41.3-6.6-41.3-41.3v-340.4c0-34.8 6.6-41.3 41.3-41.3h553.2c34.8 0 41.3 6.6 41.3 41.3V385.9c0 34.8-6.6 41.3-41.3 41.3H231.9zM519.2 86.70000000000005c-18.3 0-33.2 14.8-33.2 33.2V201c-26.3 12.8-42.6 38.8-42.6 67.8 0 41.8 33.9 75.7 75.7 75.7s75.7-33.9 75.7-75.7c0-29-16.3-55-42.5-67.8v-81.1c0.1-18.2-14.9-33.2-33.1-33.2zM519.2 342c-40.4 0-73.2-32.9-73.2-73.2 0-28.3 16.1-53.6 41.9-65.8l0.7-0.4V120c0-17 13.7-30.7 30.7-30.7S550 103.10000000000002 550 120v82.6l0.7 0.4c25.8 12.3 41.9 37.5 41.9 65.8-0.2 40.4-33.1 73.2-73.4 73.2zM207 523.1c-9.1 0-17.6 3.5-23.9 10-6.4 6.4-10 15-10 23.9v2h-0.2l0.2 1.4c0.1 0.5 0.1 0.9 0.2 1.4l0.2 1c0.1 0.6 0.2 1.4 0.4 2 15.3 75.7 57 144.2 117.2 193 29.9 24.2 63.4 43 99.8 56 37.5 13.3 77 20.2 117.5 20.2 61 0 120.8-16.3 173-47.2 50.6-29.9 93-72.8 122.5-123.8 4-5.6 6.1-12.2 6.1-19.2 0-18.3-15-33.3-33.3-33.3-13.2 0-25.1 7.7-30.4 19.8-49.2 84.6-140.4 137.4-238 137.4-128.1 0-238.2-87.1-267.6-211.8v-0.2c-0.7-18.4-15.4-32.6-33.7-32.6z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="website" unicode="&#59310;" d="M777.073418 147.443038c-30.460759 21.387342-40.83038 40.182278-76.47595 53.792405 25.275949 60.273418 40.182278 83.605063 42.126583 154.896203H887.898734c-3.888608-99.159494-45.367089-143.878481-110.825316-208.688608zM136.101266 356.13164600000005h167.210126c1.944304-71.291139 16.850633-94.622785 42.126583-154.896203-34.997468-13.610127-68.050633-31.756962-98.511393-53.792405C181.468354 212.25316499999997 139.989873 256.97215200000005 136.101266 356.13164600000005z m103.048101 259.888607c29.164557-23.979747 61.56962-42.774684 96.567089-57.681012-19.443038-53.792405-30.460759-90.734177-31.756962-152.951899H136.101266c3.240506 90.734177 46.663291 147.767089 103.048101 210.632911z m309.144304-209.98481V523.989873c47.311392 1.296203 71.291139 10.36962 114.065823 25.27595 18.146835-51.2 28.516456-84.901266 30.460759-143.23038H548.293671z m104.344304-195.078481c-40.182278 12.962025-60.273418 20.091139-104.344304 21.387342V356.13164600000005h144.526582c-1.944304-68.050633-16.202532-88.141772-40.182278-145.174684z m36.941772-57.681013c31.756962-12.313924 39.534177-28.516456 66.75443-47.311392-51.848101-44.718987-114.713924-73.883544-182.116455-84.901266 36.941772 37.589873 90.734177 82.308861 115.362025 132.212658z m-163.321519-137.397468l22.035443 165.913924c40.182278-1.296203 56.38481-7.777215 92.678481-18.794937-27.220253-56.38481-66.106329-106.288608-113.417722-147.118987h-1.296202z m-75.827848 5.18481c-67.402532 11.017722-130.268354 40.83038-182.764557 84.901266 27.868354 19.443038 57.681013 34.997468 88.789873 47.311392 23.331646-48.607595 55.088608-93.326582 93.974684-132.212658z m47.311392 335.068355v-123.787342c-44.070886-1.296203-64.162025-8.425316-104.344304-21.387342-23.979747 57.681013-38.237975 77.124051-40.182278 145.174684h144.526582zM383.675949 549.265823c42.774684-14.906329 66.75443-23.331646 114.065823-25.27595v-117.95443H353.21519c1.944304 58.329114 12.313924 92.03038 30.460759 143.23038z m-37.589873 57.032911c-31.756962 12.962025-60.921519 30.460759-88.141772 51.848101 53.792405 51.848101 115.362025 91.382278 192.486076 104.344304-44.718987-44.718987-80.364557-97.863291-104.344304-156.192405z m151.655696 161.377215v-193.782278c-44.070886 1.296203-64.162025 9.073418-103.696202 22.683544 29.164557 68.698734 49.903797 127.027848 102.4 171.098734h1.296202z m75.827848-4.536708c77.772152-13.610127 149.711392-49.903797 206.744304-104.344304-29.164557-22.035443-46.01519-37.589873-80.364557-51.848102-25.275949 59.625316-82.956962 112.76962-126.379747 156.192406z m-46.01519 4.536708c54.440506-46.01519 97.21519-104.992405 124.435443-171.098734-39.534177-13.610127-59.625316-21.387342-103.696202-22.683544l-22.035443 193.782278h1.296202z m-31.10886-751.149367c-46.663291 38.886076-62.865823 88.789873-91.382279 147.118988 36.293671 11.665823 53.144304 17.498734 93.326582 18.794936v-165.913924h-1.944303zM887.898734 406.035443h-145.174683c-1.296203 61.56962-12.313924 98.511392-31.756962 152.303798 37.589873 15.55443 57.032911 33.053165 88.789873 57.681012 56.38481-62.865823 84.901266-119.898734 88.141772-209.98481z m-375.898734 427.746835c-244.334177 0-442.005063-197.670886-442.005063-442.005063S267.665823-50.227847999999994 512-50.227847999999994s442.005063 197.670886 442.005063 442.005063S756.334177 833.782278 512 833.782278z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="next" unicode="&#58971;" d="M948.066926 382.958838l-411.990051-412.24426c-18.47333-18.47333-48.417689-18.47333-66.875207 0-18.47333 18.461167-18.47333 48.405526 0 66.875207L814.691135 383.088983 467.512212 730.269123c-18.466032 18.458735-18.466032 48.405526 0 66.873991 18.468465 18.464816 48.410391 18.464816 66.872774 0l38.682336-38.682336-0.261507-0.239614 375.259894-375.265975v0.003649m-378.312834 0L157.756743-29.28542200000004c-18.47333-18.47333-48.415256-18.47333-66.872775 0-18.47333 18.461167-18.47333 48.405526 0 66.875207L436.369787 383.088983 89.19208 730.269123c-18.4636 18.458735-18.4636 48.405526 0 66.873991 18.470898 18.464816 48.415256 18.464816 66.872774 0l38.692067-38.682336-0.266372-0.239614 375.267191-375.265975-0.004865 0.003649m0 0z"  horiz-adv-x="1024" />
+            <glyph glyph-name="senior" unicode="&#58996;"
+                   d="M719.9 249.39999999999998L514.7 379.5V485.1C615.6 419 731.5 344 731.5 344s139.2-45.6 139.2 106.5c0 93-172.5 112.1-197.2 11.8l-69.6 47.3s24.2 101.5 162.4 106.5c138.2 4.9 192-94.6 190.9-199.6-1.2-104.7-136-198.3-237.3-167.1zM561 414c-4-19-23-33.7-47.6-33.7l-6.9 4.3-217.3 137.8S171 555.2 160.8 439c-10.2-116.1 147.4-129.5 186.8-23.8l81.7-47.6s-65.1-119.1-198.5-119.1C97.3 248.5 0.6 423.8 114 546.3c113.5 122.4 218.6 64.6 257 35.7 16.4-12.4 85.3-57.9 158.6-105.9l3.1-2.4c28.3-18.2 33.4-35.6 28.3-59.7zM434.1 149.70000000000005h212c16.7 0 30.3-13.6 30.3-30.3v-15.1c0-16.7-13.6-30.3-30.3-30.3h-212c-16.7 0-30.3 13.6-30.3 30.3v15.1c0 16.8 13.6 30.3 30.3 30.3z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="component" unicode="&#59479;" d="M917.376 652.544L500.8 891.2a34.304 34.304 0 0 1-34.176 0L50.112 652.48a33.92 33.92 0 0 1-17.088-29.376v-477.44c0-12.16 6.528-23.296 17.088-29.44l416.512-238.72a35.136 35.136 0 0 1 34.176 0l416.576 238.72a33.92 33.92 0 0 1 17.088 29.44v477.44a33.92 33.92 0 0 1-17.088 29.44z m-51.264-487.36l-382.4-219.136-382.336 219.136V603.52l382.336 219.136 382.4-219.136v-438.272zM198.784 535.488a33.792 33.792 0 0 1 12.544-46.4l237.824-136.32V83.20000000000005c0-18.816 15.232-33.92 34.176-33.92a33.92 33.92 0 0 1 34.176 33.92V352.384l238.656 136.832a33.856 33.856 0 0 1 12.544 46.4 34.368 34.368 0 0 1-46.72 12.416L483.712 411.52 245.504 548.0319999999999a34.432 34.432 0 0 1-46.72-12.544z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="more" unicode="&#58975;" d="M224 288c-52.928 0-96 43.072-96 96s43.072 96 96 96 96-43.072 96-96-43.072-96-96-96z m288 0c-52.928 0-96 43.072-96 96s43.072 96 96 96 96-43.072 96-96-43.072-96-96-96z m288 0c-52.928 0-96 43.072-96 96s43.072 96 96 96 96-43.072 96-96-43.072-96-96-96z"  horiz-adv-x="1024" />
+            <glyph glyph-name="theme" unicode="&#58986;"
+                   d="M512 800C229.696 800 0 570.304 0 288c0-90.368 30.304-174.496 85.344-236.896 55.264-62.624 129.152-97.12 208.128-97.12 81.568 0 161.536 36.832 231.264 106.592l2.272 2.496c65.792 81.472 132.896 121.056 205.088 121.056 46.72 0 89.216-15.872 126.688-29.92 30.336-11.328 56.576-21.12 81.216-21.12C1024 133.08799999999997 1024 241.664 1024 288c0 282.304-229.696 512-512 512z m428-602.912c-13.088 0-35.296 8.288-58.784 17.088-40.48 15.136-90.848 33.952-149.12 33.952-92.352 0-175.328-46.944-253.76-143.456-57.184-56.704-121.056-86.688-184.832-86.688-60.352 0-117.216 26.784-160.128 75.456C88.64 144.12800000000004 64 213.216 64 288 64 535.04 264.96 736 512 736s448-200.96 448-448c0-27.328-1.952-90.912-20-90.912zM800.704 379.93600000000004m-64 0a64 64 0 1 1 128 0 64 64 0 1 1-128 0ZM457.024 582.624m-64 0a64 64 0 1 1 128 0 64 64 0 1 1-128 0ZM672.704 555.9359999999999m-64 0a64 64 0 1 1 128 0 64 64 0 1 1-128 0ZM291.392 443.936m-64 0a64 64 0 1 1 128 0 64 64 0 1 1-128 0ZM278.4 197.24800000000005m-96 0a96 96 0 1 1 192 0 96 96 0 1 1-192 0Z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="login-wechat" unicode="&#58999;" d="M516.464646 896C233.714646 896 4.464646 666.75 4.464646 384S233.714646-128 516.464646-128s512 229.25 512 512S799.214646 896 516.464646 896z m-74-523.375c-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.75-1.875-0.25-0.75-0.5-1.125-0.5-1.875-0.25-0.75-0.5-1.125-0.5-1.875-0.25-0.75-0.5-1.125-0.5-1.875-0.25-0.75-0.25-1.125-0.5-1.875s-0.5-1.125-0.5-1.875c-0.25-0.75-0.25-1.125-0.5-1.875s-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875-0.25-1.125-0.5-1.875c0-0.75-0.25-1.125-0.25-1.875s-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875-0.25-1.125-0.25-1.875 0-1.125-0.25-1.875c0-0.75-0.25-1.125-0.25-1.875s0-1.125-0.25-1.875c0-0.75 0-1.125-0.25-1.875 0-0.75 0-1.125-0.25-1.875v-22.5c0-0.75 0-1.125 0.25-1.875 0-0.75 0-1.125 0.25-1.875 0-0.75 0-1.125 0.25-1.875 0-0.75 0-1.125 0.25-1.875 0-0.75 0.25-1.125 0.25-1.875s0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.25-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875l0.25-0.875c-4.25-0.25-8.625-0.75-12.75-0.75-3.75-0.25-7.25-0.25-11-0.25-3.5 0-7 0-10.5 0.25-7.25 0.25-14 0.875-20.75 1.875-4.25 0.5-8.125 1.125-12.375 1.875-3.5 0.5-6.75 1.125-10.25 1.875-3 0.5-6.25 1.125-9.25 1.875-3 0.75-5.875 1.125-8.875 1.875-2.75 0.75-5.875 1.125-8.875 1.875-2.75 0.5-5.625 1.125-8.375 1.625l-3.25-1.625-3.75-1.875-4 1.375-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-2.75-1.375-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-3.75-1.875-2.5-1.375 0.5 1.375 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.75 1.875 0.5 1.125c-0.5 0.25-0.75 0.5-1.125 0.75-0.875 0.75-1.625 1.125-2.5 1.875s-1.625 1.125-2.5 1.875-1.625 1.125-2.5 1.875c-0.75 0.75-1.625 1.125-2.375 1.875-0.75 0.75-1.625 1.125-2.375 1.875-0.75 0.75-1.625 1.125-2.375 1.875-0.75 0.75-1.625 1.125-2.375 1.875-0.75 0.75-1.375 1.125-2.375 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-2.125 1.875-0.75 0.75-1.375 1.125-1.875 1.875-0.75 0.75-1.375 1.125-1.875 1.875l-1.875 1.875-1.875 1.875-1.875 1.875-1.875 1.875c-0.75 0.75-1.125 1.125-1.625 1.875s-1.125 1.125-1.625 1.875-1.125 1.125-1.625 1.875-1.125 1.125-1.625 1.875-1.125 1.125-1.625 1.875-1.125 1.125-1.625 1.875-0.875 1.125-1.625 1.875c-0.5 0.75-0.875 1.125-1.625 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.375 1.875-0.5 0.75-0.875 1.125-1.125 1.875-0.5 0.75-0.875 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.5 0.75-0.75 1.125-1.125 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.75 1.125-0.875 1.875-0.25 0.75-0.5 1.125-0.875 1.875-0.25 0.75-0.5 1.125-0.875 1.875-0.25 0.75-0.5 1.125-0.875 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.75 1.875-0.25 0.75-0.5 1.125-0.5 1.875-0.25 0.75-0.5 1.125-0.5 1.875-0.25 0.75-0.5 1.125-0.5 1.875-0.25 0.75-0.25 1.125-0.5 1.875s-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.5 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875-0.25 1.125-0.25 1.875 0 1.125-0.25 1.875c0 0.75 0 1.125-0.25 1.875 0 0.75 0 1.125-0.25 1.875 0 0.75 0 1.125-0.25 1.875V457.25v1.875 1.875 1.875 1.875 1.875 0.875 0.875 1.875 1.875 1.875 1.875 1.875 1.875c0 0.75 0 1.125 0.25 1.875 0 0.75 0 1.125 0.25 1.875 0 0.75 0 1.125 0.25 1.875 0 0.75 0.25 1.125 0.25 1.875s0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.25 1.875 0.25 1.125 0.5 1.875c0 0.75 0.25 1.125 0.5 1.875s0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.25 1.125 0.5 1.875 0.5 1.125 0.5 1.875c0.25 0.75 0.5 1.125 0.5 1.875 0.25 0.75 0.5 1.125 0.5 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.75 1.875 0.25 0.75 0.5 1.125 0.875 1.875 0.25 0.75 0.5 1.125 0.875 1.875 0.25 0.75 0.5 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 0.875 1.875 0.25 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.75 1.125 1.125 1.875 0.5 0.75 0.875 1.125 1.125 1.875 0.5 0.75 0.875 1.125 1.125 1.875 0.5 0.75 0.875 1.125 1.125 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.375 1.875 0.5 0.75 0.875 1.125 1.625 1.875 0.5 0.75 0.875 1.125 1.625 1.875 0.5 0.75 1.125 1.125 1.625 1.875s1.125 1.125 1.625 1.875 1.125 1.125 1.625 1.875 1.125 1.125 1.625 1.875 1.125 1.125 1.625 1.875l1.875 1.875 1.875 1.875 1.875 1.875 1.875 1.875c0.75 0.75 1.375 1.125 1.875 1.875 0.75 0.75 1.375 1.125 2.125 1.875 0.75 0.75 1.375 1.125 2.125 1.875 0.75 0.75 1.375 1.125 2.125 1.875 0.75 0.75 1.375 1.125 2.125 1.875 0.75 0.75 1.375 1.125 2.125 1.875 0.75 0.75 1.375 1.125 2.375 1.875 0.75 0.75 1.625 1.125 2.375 1.875 0.75 0.75 1.625 1.125 2.375 1.875 0.75 0.75 1.625 1.125 2.375 1.875 0.875 0.75 1.625 1.125 2.5 1.875s1.625 1.125 2.5 1.875 1.875 1.125 2.5 1.875c0.875 0.75 1.875 1.125 2.75 1.875 0.875 0.75 1.875 1.125 2.75 1.875 0.875 0.75 1.875 1.125 2.75 1.875 0.875 0.75 1.875 1.125 3 1.875 0.875 0.75 2.125 1.125 3 1.875s2.125 1.125 3 1.875c1.125 0.75 2.125 1.125 3.25 1.875 1.125 0.75 2.375 1.125 3.25 1.875 1.125 0.75 2.375 1.125 3.5 1.875 1.125 0.75 2.375 1.125 3.75 1.875 1.125 0.75 2.5 1.125 3.75 1.875 1.375 0.75 2.5 1.125 4 1.875 1.375 0.75 2.75 1.125 4.25 1.875 1.375 0.75 2.75 1.125 4.25 1.875 1.375 0.75 3 1.125 4.375 1.875 1.625 0.75 3 1.125 4.625 1.875 1.625 0.75 3.25 1.125 4.875 1.875 1.875 0.75 3.5 1.125 5.375 1.875s3.75 1.125 5.625 1.875c2.125 0.75 4.25 1.125 6 1.875 2.375 0.75 4.375 1.125 6.75 1.875 2.5 0.75 4.875 1.125 7.5 1.875 2.75 0.75 5.625 1.125 8.625 1.875 3.5 0.75 6.75 1.125 10.25 1.875 4.375 0.75 8.875 1.375 13.25 1.875 11 1.125 22.125 1.875 33.25 1.875h2.5c11.125 0 22.375-0.75 33.5-1.875 4.375-0.5 8.875-1.125 13.25-1.875 3.5-0.5 7-1.125 10.25-1.875 2.75-0.5 5.875-1.125 8.625-1.875 2.5-0.5 5.125-1.125 7.625-1.875 2.375-0.5 4.625-1.125 6.75-1.875 2.125-0.5 4.25-1.125 6.25-1.875 1.875-0.75 4-1.125 5.875-1.875s3.75-1.125 5.375-1.875c1.625-0.75 3.5-1.125 5.125-1.875 1.625-0.75 3.25-1.125 4.875-1.875 1.625-0.75 3-1.125 4.625-1.875 1.375-0.75 3-1.125 4.375-1.875s2.75-1.125 4.25-1.875c1.375-0.75 2.75-1.125 4-1.875 1.375-0.75 2.5-1.125 3.75-1.875 1.125-0.75 2.5-1.125 3.75-1.875 1.125-0.75 2.375-1.125 3.5-1.875 1.125-0.75 2.375-1.125 3.5-1.875 1.125-0.75 2.375-1.125 3.25-1.875 1.125-0.75 2.125-1.125 3.25-1.875 1.125-0.75 2.125-1.125 3-1.875s2.125-1.125 3-1.875 1.875-1.125 3-1.875c0.875-0.75 1.875-1.125 2.75-1.875 0.875-0.75 1.875-1.125 2.75-1.875 0.875-0.75 1.875-1.125 2.75-1.875 0.875-0.75 1.875-1.125 2.5-1.875 0.875-0.75 1.625-1.125 2.5-1.875s1.625-1.125 2.5-1.875 1.625-1.125 2.375-1.875c0.75-0.75 1.625-1.125 2.375-1.875 0.75-0.75 1.625-1.125 2.375-1.875 0.75-0.75 1.375-1.125 2.375-1.875 0.75-0.75 1.375-1.125 2.375-1.875 0.75-0.75 1.375-1.125 2.125-1.875 0.75-0.75 1.375-1.125 2.125-1.875 0.75-0.75 1.375-1.125 2.125-1.875 0.75-0.75 1.375-1.125 2.125-1.875 0.75-0.75 1.375-1.125 1.875-1.875 0.75-0.75 1.375-1.125 1.875-1.875l1.875-1.875 1.875-1.875 1.875-1.875 1.875-1.875c0.75-0.75 1.125-1.125 1.625-1.875s1.125-1.125 1.625-1.875 1.125-1.125 1.625-1.875 1.125-1.125 1.625-1.875 1.125-1.125 1.625-1.875 0.875-1.125 1.625-1.875c0.5-0.75 0.875-1.125 1.625-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.375-1.875 0.5-0.75 0.875-1.125 1.125-1.875 0.5-0.75 0.875-1.125 1.125-1.875 0.5-0.75 0.875-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 1.125-1.875 0.5-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.75-1.125 0.875-1.875 0.25-0.75 0.5-1.125 0.875-1.875 0.25-0.75 0.5-1.125 0.875-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.75-1.875 0.25-0.75 0.5-1.125 0.5-1.875 0.25-0.75 0.5-1.125 0.5-1.875 0.25-0.75 0.25-1.125 0.5-1.875s0.5-1.125 0.5-1.875c0.25-0.75 0.25-1.125 0.5-1.875s0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875 0.25-1.125 0.5-1.875c0-0.5 0.25-0.75 0.25-1.125-4.625 0.5-9.25 0.875-14 1.125-3.5 0.25-7 0.25-10.75 0.25-4 0-8.125 0-12.125-0.25-6.75-0.25-13.25-0.875-19.5-1.875-3.75-0.5-7.625-1.125-11.375-1.875-3-0.5-5.875-1.125-8.875-1.875-2.5-0.5-5.125-1.125-7.5-1.875-2.125-0.5-4.375-1.125-6.5-1.875-1.875-0.5-4-1.125-5.875-1.875-1.875-0.5-3.5-1.125-5.375-1.875-1.625-0.75-3.25-1.125-4.875-1.875-1.625-0.75-3-1.125-4.625-1.875-1.375-0.75-3-1.125-4.375-1.875s-2.75-1.125-4.25-1.875c-1.375-0.75-2.5-1.125-4-1.875-1.125-0.75-2.5-1.125-3.75-1.875-1.125-0.75-2.375-1.125-3.5-1.875-1.125-0.75-2.375-1.125-3.5-1.875-1.125-0.75-2.125-1.125-3.25-1.875-0.875-0.75-2.125-1.125-3-1.875s-2.125-1.125-3-1.875-1.875-1.125-3-1.875c-0.875-0.75-1.875-1.125-2.75-1.875-0.875-0.75-1.875-1.125-2.75-1.875-0.875-0.75-1.875-1.125-2.5-1.875-0.875-0.75-1.625-1.125-2.5-1.875s-1.625-1.125-2.5-1.875c-0.75-0.75-1.625-1.125-2.375-1.875-0.75-0.75-1.625-1.125-2.375-1.875-0.75-0.75-1.625-1.125-2.375-1.875-0.75-0.75-1.375-1.125-2.125-1.875-0.75-0.75-1.375-1.125-2.125-1.875-0.75-0.75-1.375-1.125-2.125-1.875-0.75-0.75-1.375-1.125-2.125-1.875-0.75-0.75-1.375-1.125-2.125-1.875-0.75-0.75-1.375-1.125-1.875-1.875l-1.875-1.875-1.875-1.875-1.875-1.875c-0.75-0.75-1.125-1.125-1.625-1.875s-1.125-1.125-1.625-1.875-1.125-1.125-1.625-1.875-1.125-1.125-1.625-1.875-1.125-1.125-1.625-1.875-0.875-1.125-1.625-1.875c-0.5-0.75-0.875-1.125-1.625-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.375-1.875-0.5-0.75-0.875-1.125-1.125-1.875-0.5-0.75-0.875-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.5-0.75-0.75-1.125-1.125-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.75-1.125-0.875-1.875-0.25-0.75-0.5-1.125-0.875-1.875-0.25-0.75-0.5-1.125-0.875-1.875-0.25-0.75-0.5-1.125-0.875-1.875-0.25-0.75-0.5-1.125-0.75-1.875-3.125-4.625-3.375-5.125-3.625-5.75z m433.625-71.25v-11.375c0-0.5 0-0.875-0.25-1.625 0-0.5 0-0.875-0.25-1.625 0-0.5 0-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.25-1.625 0-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.25-0.875-0.5-1.625-0.25-0.5-0.5-0.875-0.5-1.625-0.25-0.5-0.5-0.875-0.5-1.625-0.25-0.5-0.5-0.875-0.5-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.75-1.625-0.25-0.5-0.5-0.875-0.875-1.625-0.25-0.5-0.5-0.875-0.875-1.625-0.25-0.5-0.5-0.875-0.875-1.625-0.25-0.5-0.5-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.25-0.5-0.75-0.875-0.875-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.75-0.875-1.125-1.625-0.5-0.5-0.875-0.875-1.125-1.625-0.5-0.5-0.875-0.875-1.125-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625-0.5-0.5-0.875-0.875-1.375-1.625l-1.625-1.625-1.625-1.625c-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.5-0.5-1.125-0.875-1.625-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.125-0.875-1.875-1.625-0.75-0.5-1.375-0.875-1.875-1.625-0.75-0.5-1.375-0.875-1.875-1.625-0.75-0.5-1.375-0.875-2.125-1.625-0.75-0.5-1.375-0.875-2.125-1.625l-0.75-0.5 0.25-0.875 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.5-1.625 0.25-1.125-2.125 1.125-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-2.75 1.625-0.5 0.25-0.875-0.25c-2.125-0.5-4.25-0.875-6-1.625-2.125-0.5-4.25-0.875-6.25-1.625-2.125-0.5-4.25-0.875-6.5-1.625-2.375-0.5-4.375-0.875-6.75-1.625-2.375-0.5-4.875-1.125-7.25-1.625-2.75-0.5-5.375-1.125-8.125-1.625-3.25-0.5-6.5-1.125-9.75-1.625-5.375-0.75-10.75-1.125-15.875-1.625-2.75-0.25-5.875-0.25-8.625-0.25-3.75 0-7.5 0-11.125 0.25-6.5 0.25-12.75 0.75-19.125 1.625-3.75 0.5-7.5 0.875-11 1.625-2.75 0.5-5.875 0.875-8.625 1.625-2.375 0.5-4.875 0.875-7.25 1.625-2.125 0.5-4.25 0.875-6.25 1.625-1.875 0.5-3.75 0.875-5.625 1.625-1.875 0.5-3.5 0.875-5.125 1.625-1.625 0.5-3.25 0.875-4.875 1.625-1.375 0.5-3 0.875-4.375 1.625-1.375 0.5-2.75 0.875-4.25 1.625-1.375 0.5-2.5 0.875-4 1.625-1.125 0.5-2.5 0.875-3.75 1.625-1.125 0.5-2.375 0.875-3.75 1.625-1.125 0.5-2.375 0.875-3.5 1.625-1.125 0.5-2.125 0.875-3.25 1.625-1.125 0.5-2.125 0.875-3.25 1.625-0.875 0.5-2.125 0.875-3 1.625-0.875 0.5-1.875 0.875-3 1.625-0.875 0.5-1.875 0.875-2.75 1.625-0.875 0.5-1.875 0.875-2.75 1.625-0.875 0.5-1.875 0.875-2.5 1.625-0.875 0.5-1.625 0.875-2.5 1.625-0.875 0.5-1.625 0.875-2.5 1.625-0.75 0.5-1.625 0.875-2.375 1.625-0.75 0.5-1.625 0.875-2.375 1.625-0.75 0.5-1.625 0.875-2.375 1.625-0.75 0.5-1.375 0.875-2.375 1.625-0.75 0.5-1.375 0.875-2.125 1.625-0.75 0.5-1.375 0.875-2.125 1.625-0.75 0.5-1.375 0.875-2.125 1.625-0.75 0.5-1.375 0.875-2.125 1.625-0.75 0.5-1.375 0.875-1.875 1.625-0.75 0.5-1.375 0.875-1.875 1.625-0.75 0.5-1.125 0.875-1.875 1.625-0.75 0.5-1.125 0.875-1.875 1.625-0.75 0.5-1.125 0.875-1.875 1.625-0.75 0.5-1.125 0.875-1.875 1.625-0.5 0.5-1.125 0.875-1.625 1.625-0.5 0.5-1.125 0.875-1.625 1.625-0.5 0.5-1.125 0.875-1.625 1.625-0.5 0.5-1.125 0.875-1.625 1.625l-1.625 1.625-1.625 1.625c-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.375 1.625-0.5 0.5-0.875 0.875-1.125 1.625-0.5 0.5-0.875 0.875-1.125 1.625-0.5 0.5-0.875 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.5 0.5-0.75 0.875-1.125 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.75 0.875-0.875 1.625-0.25 0.5-0.5 0.875-0.875 1.625-0.25 0.5-0.5 0.875-0.875 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.75 1.625-0.25 0.5-0.5 0.875-0.5 1.625-0.25 0.5-0.5 0.875-0.5 1.625-0.25 0.5-0.5 0.875-0.5 1.625-0.25 0.5-0.5 0.875-0.5 1.625-0.25 0.5-0.5 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.5 1.625-0.25 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5-0.25 0.875-0.25 1.625 0 0.5 0 0.875-0.25 1.625 0 0.5 0 0.875-0.25 1.625 0 0.5 0 0.875-0.25 1.625v1.625 1.625 1.625 3.25 1.625 3.25 1.375 1.625 1.625 1.625 1.625 1.625 1.625 1.625 1.625 1.625c0 0.5 0 0.875 0.25 1.625 0 0.5 0 0.875 0.25 1.625 0 0.5 0 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0 0.5 0.25 0.875 0.25 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.25 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.5 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.75 1.625 0.25 0.5 0.5 0.875 0.875 1.625 0.25 0.5 0.5 0.875 0.875 1.625 0.25 0.5 0.5 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 0.875 1.625 0.25 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.75 0.875 1.125 1.625 0.5 0.5 0.875 0.875 1.125 1.625 0.5 0.5 0.875 0.875 1.125 1.625 0.5 0.5 0.875 0.875 1.125 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625 0.5 0.5 0.875 0.875 1.375 1.625l1.625 1.625 1.625 1.625c0.5 0.5 1.125 0.875 1.625 1.625 0.5 0.5 1.125 0.875 1.625 1.625 0.5 0.5 1.125 0.875 1.625 1.625 0.5 0.5 1.125 0.875 1.625 1.625 0.5 0.5 1.125 0.875 1.875 1.625 0.75 0.5 1.125 0.875 1.875 1.625 0.75 0.5 1.125 0.875 1.875 1.625 0.75 0.5 1.125 0.875 1.875 1.625 0.75 0.5 1.375 0.875 1.875 1.625 0.75 0.5 1.375 0.875 1.875 1.625 0.75 0.5 1.375 0.875 2.125 1.625 0.75 0.5 1.375 0.875 2.125 1.625 0.75 0.5 1.375 0.875 2.125 1.625 0.75 0.5 1.375 0.875 2.125 1.625 0.75 0.5 1.375 0.875 2.375 1.625 0.75 0.5 1.625 0.875 2.375 1.625 0.75 0.5 1.625 0.875 2.375 1.625 0.75 0.5 1.625 0.875 2.375 1.625 0.875 0.5 1.625 0.875 2.5 1.625 0.875 0.5 1.625 0.875 2.5 1.625 0.875 0.5 1.875 0.875 2.5 1.625 0.875 0.5 1.875 0.875 2.75 1.625 0.875 0.5 1.875 0.875 2.75 1.625 0.875 0.5 1.875 0.875 3 1.625 0.875 0.5 2.125 0.875 3 1.625 1.125 0.5 2.125 0.875 3.25 1.625 1.125 0.5 2.125 0.875 3.25 1.625 1.125 0.5 2.375 0.875 3.5 1.625 1.125 0.5 2.375 0.875 3.75 1.625 1.125 0.5 2.5 0.875 3.75 1.625 1.375 0.5 2.5 0.875 4 1.625 1.375 0.5 2.75 0.875 4.25 1.625 1.375 0.5 3 0.875 4.375 1.625 1.625 0.5 3.25 0.875 4.875 1.625 1.625 0.5 3.5 0.875 5.125 1.625 1.875 0.5 3.75 0.875 5.875 1.625 2.125 0.5 4.25 1.125 6.25 1.625 2.375 0.5 4.875 1.125 7.25 1.625 2.75 0.5 5.875 1.125 8.625 1.625 3.75 0.75 7.5 1.125 11.125 1.625 9.25 1.125 19.125 1.625 28.875 1.625h1.375c9.25 0 18.375-0.75 27.5-1.625 3.75-0.5 7.25-0.875 10.75-1.625 2.75-0.5 5.625-0.875 8.375-1.625 2.375-0.5 4.625-0.875 7-1.625 2.125-0.5 4.25-0.875 6.25-1.625 1.875-0.5 3.75-0.875 5.625-1.625 1.625-0.5 3.5-0.875 5.125-1.625 1.625-0.5 3.25-0.875 4.625-1.625 1.375-0.5 3-0.875 4.375-1.625 1.375-0.5 2.75-0.875 4.25-1.625 1.375-0.5 2.5-0.875 4-1.625 1.125-0.5 2.5-0.875 3.75-1.625 1.125-0.5 2.375-0.875 3.5-1.625 1.125-0.5 2.375-0.875 3.5-1.625 1.125-0.5 2.125-0.875 3.25-1.625 1.125-0.5 2.125-0.875 3.25-1.625 0.875-0.5 2.125-0.875 3-1.625 0.875-0.5 1.875-0.875 3-1.625 0.875-0.5 1.875-0.875 2.75-1.625 0.875-0.5 1.875-0.875 2.75-1.625 0.875-0.5 1.875-0.875 2.5-1.625 0.875-0.5 1.625-0.875 2.5-1.625 0.875-0.5 1.625-0.875 2.5-1.625 0.875-0.5 1.625-0.875 2.5-1.625 0.75-0.5 1.625-0.875 2.375-1.625 0.75-0.5 1.625-0.875 2.375-1.625 0.75-0.5 1.375-0.875 2.375-1.625 0.75-0.5 1.375-0.875 2.125-1.625 0.75-0.5 1.375-0.875 2.125-1.625 0.75-0.5 1.375-0.875 2.125-1.625 0.75-0.5 1.375-0.875 2.125-1.625 0.75-0.5 1.375-0.875 1.875-1.625 0.75-0.5 1.375-0.875 1.875-1.625 0.75-0.5 1.125-0.875 1.875-1.625 0.75-0.5 1.125-0.875 1.875-1.625 0.75-0.5 1.125-0.875 1.875-1.625 0.75-0.5 1.125-0.875 1.875-1.625 0.5-0.5 1.125-0.875 1.625-1.625 0.5-0.5 1.125-0.875 1.625-1.625 0.5-0.5 1.125-0.875 1.625-1.625 0.5-0.5 1.125-0.875 1.625-1.625 0.5-0.5 1.125-0.875 1.625-1.625l1.625-1.625 1.625-1.625c0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.375-1.625 0.5-0.5 0.875-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.875-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 1.125-1.625 0.5-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.5-0.875 0.875-1.625 0.25-0.5 0.75-0.875 0.875-1.625 0.25-0.5 0.5-0.875 0.875-1.625 0.25-0.5 0.5-0.875 0.875-1.625 0.25-0.5 0.5-0.875 0.875-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.75-1.625 0.25-0.5 0.5-0.875 0.5-1.625 0.25-0.5 0.5-0.875 0.5-1.625 0.25-0.5 0.5-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0.25-0.5 0.25-0.875 0.5-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0.25-0.875 0.25-1.625 0-0.5 0-0.875 0.25-1.625 0-0.5 0-0.875 0.25-1.625 0-0.5 0-0.875 0.25-1.625 0-0.5 0-0.875 0.25-1.625 0-0.5 0-0.875 0.25-1.625v-11.375h-3.125zM589.714646 384c-12.625 0-25.375-12.75-25.375-25.375 0-12.75 12.75-25.375 25.375-25.375 19.375 0 31.875 12.625 31.875 25.375-0.125 12.625-12.75 25.375-31.875 25.375zM729.589646 384c-12.625 0-25.375-12.75-25.375-25.375 0-12.75 12.75-25.375 25.375-25.375 19.125 0 31.875 12.625 31.875 25.375 0 12.625-12.75 25.375-31.875 25.375zM328.714646 568.75c-19.125 0-38.375-12.625-38.375-31.625 0-19.125 19.375-31.875 38.375-31.875s31.875 12.75 31.875 31.875-12.875 31.625-31.875 31.625zM506.964646 568.75c-19.125 0-38.125-12.625-38.125-31.625 0-19.125 19.125-31.875 38.125-31.875 19.125 0 31.875 12.75 31.875 31.875s-12.875 31.625-31.875 31.625z"  horiz-adv-x="1059" />
 
-    
-    <glyph glyph-name="shrink-right" unicode="&#58984;" d="M52.294-28.71900000000005h899.793c16.546 0 29.999 13.405 29.999 29.999v59.974c-0.013 16.562-13.436 29.985-29.998 29.999h-899.795c-16.57 0-29.999-13.429-29.999-29.999v-59.974c0-16.617 13.429-29.999 29.999-29.999zM952.087 451.165h-479.884c-16.57 0-29.999-13.405-29.999-29.999v-59.974c0 0 0 0 0 0 0-16.572 13.428-30.01 29.997-30.022h479.885c16.571 0.013 29.999 13.448 29.999 30.022 0 0 0 0 0 0v59.974c0 16.593-13.429 29.999-29.999 29.999zM52.294 691.0840000000001h899.793c16.554 0.013 29.972 13.423 29.999 29.974v59.999c0 16.57-13.429 29.999-29.999 29.999h-899.793c-16.57 0-29.999-13.429-29.999-29.999v-59.997c0-16.546 13.429-29.975 29.999-29.975zM45.183 383.53499999999997l239.919-150.598v301.196l-239.919-150.598z"  horiz-adv-x="1024" />
+            <glyph glyph-name="tread" unicode="&#59077;"
+                   d="M860.8 172.79999999999995l6.4-57.6-6.4 57.6c12.8 0 25.6 3.2 35.2 12.8 6.4 9.6 6.4 22.4 3.2 32l57.6 12.8-57.6-12.8L800 553.6c-6.4 28.8-25.6 51.2-48 64-9.6 6.4-22.4 9.6-32 9.6H182.4c-22.4 3.2-41.6-6.4-51.2-25.6-6.4-9.6-6.4-19.2-9.6-28.8v-342.4c0-19.2 9.6-38.4 28.8-48 6.4-3.2 12.8-6.4 19.2-6.4h192l19.2-25.6 147.2-188.8c6.4-9.6 19.2-12.8 28.8-9.6 16 3.2 25.6 19.2 22.4 35.2l-9.6 118.4-6.4 67.2h297.6z m-233.6-57.6l9.6-128c3.2-28.8-9.6-54.4-28.8-73.6-35.2-32-92.8-28.8-124.8 6.4l-156.8 195.2H179.2c-19.2 0-38.4 6.4-57.6 16-35.2 19.2-57.6 57.6-57.6 99.2V572.8c0 19.2 6.4 38.4 16 57.6 19.2 38.4 57.6 60.8 99.2 54.4h537.6c67.2-3.2 121.6-48 137.6-112l102.4-339.2c6.4-28.8 3.2-57.6-12.8-80-19.2-22.4-48-38.4-76.8-38.4h-240zM304 627.2v-451.2h57.6V627.2H304z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="spread-left" unicode="&#58987;" d="M942.974 770.924h-843.556c-15.513 0-28.124-12.567-28.124-28.124v-56.226c0.012-15.527 12.596-28.111 28.123-28.124h843.559c15.534 0 28.124 12.59 28.124 28.124v56.226c0 15.578-12.59 28.124-28.124 28.124zM99.418 321.033h449.891c15.534 0 28.124 12.567 28.124 28.124v56.226c0 0 0 0 0 0 0 15.537-12.589 28.134-28.122 28.146h-449.892c-15.534-0.012-28.124-12.608-28.124-28.146 0 0 0 0 0 0v-56.226c0-15.556 12.59-28.124 28.124-28.124zM942.974 96.10900000000004h-843.556c-15.519-0.012-28.099-12.584-28.124-28.101v-56.249c0-15.534 12.59-28.124 28.124-28.124h843.556c15.534 0 28.124 12.59 28.124 28.124v56.248c0 15.513-12.59 28.103-28.124 28.102zM949.641 384.436l-224.924 141.186v-282.37l224.924 141.186z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="camera" unicode="&#58976;" d="M884.3 648.6H704.2L679.5 698l-0.2 0.4c-1.9 3.6-3.6 6.9-5.1 9.9-12 23.4-21.5 41.9-54.1 41.9H416.7c-32.9 0-43.7-21.3-55.1-43.8-1.3-2.6-2.7-5.3-4.2-8.1l-24.8-49.7H152.4c-34 0-61.7-27.7-61.7-61.7v-488c0-34 27.7-61.7 61.7-61.7h731.9c34 0 61.7 27.7 61.7 61.7v488c0 34-27.7 61.7-61.7 61.7zM904 98.89999999999998c0-10.8-8.8-19.7-19.7-19.7H152.4c-10.8 0-19.7 8.8-19.7 19.7v488c0 10.8 8.8 19.7 19.7 19.7h206.1l36.2 72.5c1.5 2.9 2.9 5.7 4.3 8.3 10.6 20.8 11.1 20.8 17.7 20.8H620c4.6 0 5.8-0.6 5.8-0.6 2-1.2 7.2-11.2 10.9-18.5 1.6-3.1 3.3-6.5 5.3-10.1l36.2-72.4h206.1c10.8 0 19.7-8.8 19.7-19.7v-488zM525.5 565.5c-123.5 0-223.6-100.1-223.6-223.6S402 118.20000000000005 525.5 118.20000000000005s223.7 100.1 223.7 223.7c0 123.5-100.2 223.6-223.7 223.6z m0-402.5c-98.8 0-178.9 80.1-178.9 178.9 0 98.8 80.1 178.9 178.9 178.9 98.8 0 178.9-80.1 178.9-178.9 0-98.8-80.1-178.9-178.9-178.9z m246 402.5v-44.7H861v44.7h-89.5z"  horiz-adv-x="1024" />
+            <glyph glyph-name="praise" unicode="&#59078;"
+                   d="M860.8 595.2h-297.6l6.4 67.2 9.6 118.4c3.2 16-6.4 32-22.4 35.2-9.6 3.2-22.4 0-28.8-9.6l-147.2-188.8-19.2-25.6h-192c-6.4 0-12.8-3.2-19.2-6.4-19.2-9.6-28.8-28.8-28.8-48v-342.4c0-9.6 3.2-22.4 9.6-28.8 9.6-19.2 28.8-28.8 48-25.6h537.6c12.8 0 22.4 3.2 32 9.6 25.6 12.8 44.8 35.2 48 64l102.4 336 57.6-12.8-57.6 12.8c3.2 9.6 0 22.4-3.2 32-9.6 6.4-22.4 12.8-35.2 12.8l6.4 57.6-6.4-57.6z m-233.6 57.6h240c28.8 0 57.6-12.8 76.8-38.4 16-22.4 19.2-54.4 12.8-80l-102.4-339.2c-16-64-70.4-108.8-137.6-112H179.2c-41.6-3.2-80 19.2-99.2 54.4-9.6 19.2-16 38.4-16 57.6V537.6c0 41.6 22.4 80 57.6 99.2 19.2 9.6 38.4 12.8 57.6 16h144L480 848c32 35.2 89.6 38.4 124.8 6.4 19.2-19.2 32-44.8 28.8-73.6l-6.4-128z m-323.2-512h57.6V592H304v-451.2z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="note" unicode="&#58990;" d="M987.2 384.36L512.43 859.13a84.75 84.75 0 0 1-65 24.71L111.55 864.09a84.83 84.83 0 0 1-79.65-79.65L12.15 448.57a84.57 84.57 0 0 1 24.69-65l474.8-474.8a84.91 84.91 0 0 1 119.93 0L987.2 264.41999999999996a84.9 84.9 0 0 1 0 119.94z m-39.28-80.66L592.29-51.91999999999996a29.31 29.31 0 0 0-41.37 0L76.1 422.9a29.22 29.22 0 0 0-8.49 22.38l19.74 335.88a29.29 29.29 0 0 0 27.48 27.48l335.9 19.75a29.32 29.32 0 0 0 22.38-8.52l474.8-474.8a29.31 29.31 0 0 0 0.01-41.37zM236.86 659.14c-50.92-50.95-50.92-133.8 0-184.72a130.61 130.61 0 1 1 184.71 184.72c-50.89 50.86-133.77 50.86-184.71 0zM382.29 513.7c-28.38-28.38-77.78-28.38-106.15 0a75.08 75.08 0 1 0 106.15 0z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="refresh" unicode="&#58985;" d="M928 810.666667c-18.133333 0-32-13.866667-32-32v-164.266667C816 747.733333 669.866667 832 512 832 264.533333 832 64 631.4666669999999 64 384s200.533333-448 448-448c230.4 0 422.4 172.8 445.866667 402.133333 2.133333 17.066667-10.666667 33.066667-28.8 35.2-17.066667 2.133333-33.066667-10.666667-35.2-28.8C873.6 148.26666699999998 709.333333 0 512 0c-212.266667 0-384 171.733333-384 384s171.733333 384 384 384c137.6 0 264.533333-74.666667 332.8-192H693.333333c-18.133333 0-32-13.866667-32-32s13.866667-32 32-32h266.666667V778.666667c0 18.133333-14.933333 32-32 32z"  horiz-adv-x="1024" />
+            <glyph glyph-name="star-fill" unicode="&#58968;"
+                   d="M752-43.200000000000045c-9.6 0-20.8 3.2-30.4 8l-208 104-209.6-104c-20.8-11.2-48-9.6-67.2 4.8-19.2 14.4-30.4 40-25.6 64l43.2 224L89.6 411.2C72 428.8 65.6 456 72 478.4c8 24 27.2 41.6 52.8 44.8l228.8 41.6 102.4 208c11.2 22.4 33.6 36.8 57.6 36.8s48-14.4 57.6-36.8l102.4-208 228.8-40c24-3.2 44.8-20.8 51.2-44.8 8-24 1.6-49.6-16-67.2L772.8 257.6l41.6-224c4.8-25.6-6.4-49.6-25.6-64-9.6-8-22.4-12.8-36.8-12.8z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="female" unicode="&#58977;" d="M774.4 800c-48 35.2-108.8 51.2-172.8 51.2-105.6 0-208-51.2-268.8-150.4-89.6-134.4-57.6-313.6 60.8-416l-32-51.2-188.8 121.6S128 384 108.8 352c-22.4-35.2 22.4-64 22.4-64l188.8-121.6-105.6-163.2s-19.2-32 16-51.2c38.4-22.4 57.6 12.8 57.6 12.8l102.4 160 185.6-121.6s48-28.8 70.4 6.4c19.2 28.8-25.6 57.6-25.6 57.6L432 192l32 48c44.8-22.4 92.8-32 137.6-32 105.6 0 208 51.2 268.8 150.4 96 147.2 51.2 345.6-96 441.6z m35.2-400c-44.8-67.2-118.4-108.8-201.6-108.8-44.8 0-92.8 12.8-131.2 38.4-112 73.6-147.2 220.8-73.6 332.8 44.8 64 121.6 105.6 201.6 108.8 44.8 0 92.8-12.8 131.2-38.4 112-73.6 147.2-220.8 73.6-332.8z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="male" unicode="&#58978;" d="M889.6 800h-240s-35.2 0-38.4-41.6c0-19.2 16-38.4 38.4-38.4h140.8l-179.2-179.2C556.8 582.4 489.6 608 416 608 240 608 96 464 96 288s144-320 320-320 320 144 320 320c0 73.6-25.6 140.8-67.2 195.2l179.2 179.2v-140.8c0-22.4 19.2-38.4 38.4-38.4 22.4 0 38.4 19.2 38.4 41.6V764.8h3.2C924.8 800 889.6 800 889.6 800zM416 48c-131.2 0-236.8 105.6-236.8 236.8 0 131.2 105.6 236.8 236.8 236.8s236.8-105.6 236.8-236.8c0-131.2-105.6-236.8-236.8-236.8z"  horiz-adv-x="1024" />
+            <glyph glyph-name="rate" unicode="&#59003;"
+                   d="M959.008 489.984l-308 47.008L512 832 372.992 536.992l-308-47.008 223.008-228-52.992-324L512 90.976l276.992-152.992-52.992 324zM512 156L304 39.00800000000004l40 235.008-179.008 182.016 242.016 32 104.992 224 104-224 240.992-34.016L680 273.024l36.992-235.008z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="screen-restore" unicode="&#59224;" d="M582.6 454.6v320h50V540l274 274 35.4-35.4-274-274h234.6v-50h-320zM117.4-46l274 274v-234.6h50v320h-320v-50H356l-274-274 35.4-35.4zM132 764h302V814H82v-352h50V764z m760-760H590v-50h352V306h-50v-302z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="password" unicode="&#58995;" d="M519.2 343.29999999999995c-41.1 0-74.4-33.3-74.4-74.4 0-29.7 17.5-55 42.5-67.1v-81.9c0-17.6 14.3-31.9 31.9-31.9 17.6 0 31.9 14.3 31.9 31.9v81.9c25.1 12 42.5 37.4 42.5 66.9 0 41.3-33.2 74.6-74.4 74.6zM827.6-62.10000000000002H189.4c-35.9 0-65.1 29.2-65.1 65.1V428.4c0 35.9 29.2 65.1 65.1 65.1h638.2c17.3 0 33.7-6.7 46-19.1 12.3-12.3 19.1-28.7 19.1-46V3c0-35.9-29.2-65.1-65.1-65.1zM231.9 427.2c-34.8 0-41.3-6.6-41.3-41.3v-340.4c0-34.8 6.6-41.3 41.3-41.3h553.2c34.8 0 41.3 6.6 41.3 41.3V385.9c0 34.8-6.6 41.3-41.3 41.3H231.9zM519.2 86.70000000000005c-18.3 0-33.2 14.8-33.2 33.2V201c-26.3 12.8-42.6 38.8-42.6 67.8 0 41.8 33.9 75.7 75.7 75.7s75.7-33.9 75.7-75.7c0-29-16.3-55-42.5-67.8v-81.1c0.1-18.2-14.9-33.2-33.1-33.2zM519.2 342c-40.4 0-73.2-32.9-73.2-73.2 0-28.3 16.1-53.6 41.9-65.8l0.7-0.4V120c0-17 13.7-30.7 30.7-30.7S550 103.10000000000002 550 120v82.6l0.7 0.4c25.8 12.3 41.9 37.5 41.9 65.8-0.2 40.4-33.1 73.2-73.4 73.2zM207 523.1c-9.1 0-17.6 3.5-23.9 10-6.4 6.4-10 15-10 23.9v2h-0.2l0.2 1.4c0.1 0.5 0.1 0.9 0.2 1.4l0.2 1c0.1 0.6 0.2 1.4 0.4 2 15.3 75.7 57 144.2 117.2 193 29.9 24.2 63.4 43 99.8 56 37.5 13.3 77 20.2 117.5 20.2 61 0 120.8-16.3 173-47.2 50.6-29.9 93-72.8 122.5-123.8 4-5.6 6.1-12.2 6.1-19.2 0-18.3-15-33.3-33.3-33.3-13.2 0-25.1 7.7-30.4 19.8-49.2 84.6-140.4 137.4-238 137.4-128.1 0-238.2-87.1-267.6-211.8v-0.2c-0.7-18.4-15.4-32.6-33.7-32.6z"  horiz-adv-x="1024" />
+            <glyph glyph-name="template-1" unicode="&#58966;"
+                   d="M512 384zM43.52 601.6l409.6-176.64c58.88-30.72 110.08 0 110.08 0l414.72 174.08 2.56 2.56c10.24 5.12 15.36 15.36 15.36 28.16 0 15.36-10.24 28.16-23.04 30.72L563.2 837.12c-56.32 23.04-97.28 0-97.28 0L46.08 660.48c-12.8-5.12-20.48-17.92-20.48-30.72s7.68-23.04 17.92-28.16z m0 0M512 222.72000000000003c-2.56 0-7.68 0-10.24 2.56l-486.4 215.04c-12.8 5.12-17.92 20.48-12.8 33.28 5.12 12.8 20.48 17.92 33.28 12.8L512 276.48 988.16 486.4c12.8 5.12 28.16 0 33.28-12.8 5.12-12.8 0-28.16-12.8-33.28l-486.4-215.04c-2.56-2.56-7.68-2.56-10.24-2.56zM512 71.67999999999995c-2.56 0-7.68 0-10.24 2.56l-486.4 215.04c-12.8 5.12-17.92 20.48-12.8 33.28 5.12 10.24 20.48 17.92 33.28 10.24L512 125.44000000000005 988.16 332.79999999999995c12.8 5.12 28.16 0 33.28-12.8 5.12-12.8 0-28.16-12.8-33.28l-486.4-215.04H512zM512-79.36000000000001c-2.56 0-7.68 0-10.24 2.56l-486.4 215.04c-12.8 5.12-17.92 20.48-12.8 33.28 5.12 12.8 20.48 17.92 33.28 12.8L512-25.600000000000023l476.16 209.92c12.8 5.12 28.16 0 33.28-12.8 5.12-12.8 0-28.16-12.8-33.28l-486.4-215.04c-2.56-2.56-7.68-2.56-10.24-2.56z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="senior" unicode="&#58996;" d="M719.9 249.39999999999998L514.7 379.5V485.1C615.6 419 731.5 344 731.5 344s139.2-45.6 139.2 106.5c0 93-172.5 112.1-197.2 11.8l-69.6 47.3s24.2 101.5 162.4 106.5c138.2 4.9 192-94.6 190.9-199.6-1.2-104.7-136-198.3-237.3-167.1zM561 414c-4-19-23-33.7-47.6-33.7l-6.9 4.3-217.3 137.8S171 555.2 160.8 439c-10.2-116.1 147.4-129.5 186.8-23.8l81.7-47.6s-65.1-119.1-198.5-119.1C97.3 248.5 0.6 423.8 114 546.3c113.5 122.4 218.6 64.6 257 35.7 16.4-12.4 85.3-57.9 158.6-105.9l3.1-2.4c28.3-18.2 33.4-35.6 28.3-59.7zM434.1 149.70000000000005h212c16.7 0 30.3-13.6 30.3-30.3v-15.1c0-16.7-13.6-30.3-30.3-30.3h-212c-16.7 0-30.3 13.6-30.3 30.3v15.1c0 16.8 13.6 30.3 30.3 30.3z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="theme" unicode="&#58986;" d="M512 800C229.696 800 0 570.304 0 288c0-90.368 30.304-174.496 85.344-236.896 55.264-62.624 129.152-97.12 208.128-97.12 81.568 0 161.536 36.832 231.264 106.592l2.272 2.496c65.792 81.472 132.896 121.056 205.088 121.056 46.72 0 89.216-15.872 126.688-29.92 30.336-11.328 56.576-21.12 81.216-21.12C1024 133.08799999999997 1024 241.664 1024 288c0 282.304-229.696 512-512 512z m428-602.912c-13.088 0-35.296 8.288-58.784 17.088-40.48 15.136-90.848 33.952-149.12 33.952-92.352 0-175.328-46.944-253.76-143.456-57.184-56.704-121.056-86.688-184.832-86.688-60.352 0-117.216 26.784-160.128 75.456C88.64 144.12800000000004 64 213.216 64 288 64 535.04 264.96 736 512 736s448-200.96 448-448c0-27.328-1.952-90.912-20-90.912zM800.704 379.93600000000004m-64 0a64 64 0 1 1 128 0 64 64 0 1 1-128 0ZM457.024 582.624m-64 0a64 64 0 1 1 128 0 64 64 0 1 1-128 0ZM672.704 555.9359999999999m-64 0a64 64 0 1 1 128 0 64 64 0 1 1-128 0ZM291.392 443.936m-64 0a64 64 0 1 1 128 0 64 64 0 1 1-128 0ZM278.4 197.24800000000005m-96 0a96 96 0 1 1 192 0 96 96 0 1 1-192 0Z"  horiz-adv-x="1024" />
+            <glyph glyph-name="vercode" unicode="&#59001;"
+                   d="M513.807059-128C351.171765-128 58.428235 126.19294100000002 54.211765 376.16941199999997V662.287059a93.364706 93.364706 0 0 0 81.317647 88.545882 570.428235 570.428235 0 0 1 163.237647 40.357647A393.336471 393.336471 0 0 1 446.945882 872.508235a101.797647 101.797647 0 0 0 120.470589 5.421177A629.458824 629.458824 0 0 1 716.8 792.395294a1255.303529 1255.303529 0 0 1 169.863529-38.550588 98.785882 98.785882 0 0 0 79.510589-90.955294 2911.171765 2911.171765 0 0 0-3.011765-291.538824C924.611765 49.09176500000001 672.828235-128 513.807059-128z m0 963.764706a39.152941 39.152941 0 0 1-24.696471-7.830588A438.512941 438.512941 0 0 0 319.247059 734.569412a608.376471 608.376471 0 0 0-180.705883-43.369412 33.731765 33.731765 0 0 1-24.094117-30.117647v-283.708235C118.663529 155.10588199999995 389.722353-67.76470600000005 513.807059-67.76470600000005s354.183529 148.178824 391.529412 444.536471c9.035294 175.887059 0 281.901176 0 283.105882a38.550588 38.550588 0 0 1-29.515295 33.731765 1287.830588 1287.830588 0 0 0-180.705882 41.562353A676.442353 676.442353 0 0 0 536.094118 829.741176a37.345882 37.345882 0 0 1-24.094118 6.02353zM784.865882 479.171765L487.905882 198.47529399999996a40.357647 40.357647 0 0 0-49.392941-4.818823l-7.830588 6.625882-161.430588 171.068235a40.357647 40.357647 0 1 0 60.235294 55.416471l133.722353-141.552941 267.444706 252.988235a40.357647 40.357647 0 1 0 55.41647-60.235294"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="tread" unicode="&#59077;" d="M860.8 172.79999999999995l6.4-57.6-6.4 57.6c12.8 0 25.6 3.2 35.2 12.8 6.4 9.6 6.4 22.4 3.2 32l57.6 12.8-57.6-12.8L800 553.6c-6.4 28.8-25.6 51.2-48 64-9.6 6.4-22.4 9.6-32 9.6H182.4c-22.4 3.2-41.6-6.4-51.2-25.6-6.4-9.6-6.4-19.2-9.6-28.8v-342.4c0-19.2 9.6-38.4 28.8-48 6.4-3.2 12.8-6.4 19.2-6.4h192l19.2-25.6 147.2-188.8c6.4-9.6 19.2-12.8 28.8-9.6 16 3.2 25.6 19.2 22.4 35.2l-9.6 118.4-6.4 67.2h297.6z m-233.6-57.6l9.6-128c3.2-28.8-9.6-54.4-28.8-73.6-35.2-32-92.8-28.8-124.8 6.4l-156.8 195.2H179.2c-19.2 0-38.4 6.4-57.6 16-35.2 19.2-57.6 57.6-57.6 99.2V572.8c0 19.2 6.4 38.4 16 57.6 19.2 38.4 57.6 60.8 99.2 54.4h537.6c67.2-3.2 121.6-48 137.6-112l102.4-339.2c6.4-28.8 3.2-57.6-12.8-80-19.2-22.4-48-38.4-76.8-38.4h-240zM304 627.2v-451.2h57.6V627.2H304z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="praise" unicode="&#59078;" d="M860.8 595.2h-297.6l6.4 67.2 9.6 118.4c3.2 16-6.4 32-22.4 35.2-9.6 3.2-22.4 0-28.8-9.6l-147.2-188.8-19.2-25.6h-192c-6.4 0-12.8-3.2-19.2-6.4-19.2-9.6-28.8-28.8-28.8-48v-342.4c0-9.6 3.2-22.4 9.6-28.8 9.6-19.2 28.8-28.8 48-25.6h537.6c12.8 0 22.4 3.2 32 9.6 25.6 12.8 44.8 35.2 48 64l102.4 336 57.6-12.8-57.6 12.8c3.2 9.6 0 22.4-3.2 32-9.6 6.4-22.4 12.8-35.2 12.8l6.4 57.6-6.4-57.6z m-233.6 57.6h240c28.8 0 57.6-12.8 76.8-38.4 16-22.4 19.2-54.4 12.8-80l-102.4-339.2c-16-64-70.4-108.8-137.6-112H179.2c-41.6-3.2-80 19.2-99.2 54.4-9.6 19.2-16 38.4-16 57.6V537.6c0 41.6 22.4 80 57.6 99.2 19.2 9.6 38.4 12.8 57.6 16h144L480 848c32 35.2 89.6 38.4 124.8 6.4 19.2-19.2 32-44.8 28.8-73.6l-6.4-128z m-323.2-512h57.6V592H304v-451.2z"  horiz-adv-x="1024" />
+            <glyph glyph-name="service" unicode="&#58918;"
+                   d="M895.44035 502.006246A31.340412 31.340412 0 0 1 895.44035 512.2398499999999 383.76015 383.76015 0 0 1 127.92005 512.2398499999999a31.340412 31.340412 0 0 1 0-10.233604 167.575265 167.575265 0 0 1-127.92005-159.900062V320.359775a168.854466 168.854466 0 0 1 140.712055-163.098064A351.140537 351.140537 0 0 1 401.029357-63.400375000000054h5.756402a95.940037 95.940037 0 1 1 0 63.960025 287.180512 287.180512 0 0 0-195.717677 156.062461h35.817614A40.294816 40.294816 0 0 1 287.820112 192.43972499999995V468.747033a40.294816 40.294816 0 0 1-40.934416 39.015615H191.880075A30.061212 30.061212 0 0 1 191.880075 512.2398499999999a319.800125 319.800125 0 0 0 639.60025 0 30.061212 30.061212 0 0 1 0-3.837601h-55.005622a40.294816 40.294816 0 0 1-40.934416-39.015616V192.43972499999995a40.294816 40.294816 0 0 1 40.934416-39.015615h72.274829A170.773267 170.773267 0 0 1 1023.3604 320.359775v21.746409a167.575265 167.575265 0 0 1-127.92005 159.900062zM496.329794 0.5596500000000333a31.980012 31.980012 0 1 0-31.980013-31.980012 31.980012 31.980012 0 0 0 31.980013 31.980012zM223.860087 220.582136h-49.249219A106.813242 106.813242 0 0 0 63.960025 320.359775v21.746409a106.813242 106.813242 0 0 0 110.650843 102.33604h49.249219zM959.400375 320.359775a106.813242 106.813242 0 0 0-110.650843-102.33604h-49.24922V444.442224h49.24922A106.813242 106.813242 0 0 0 959.400375 342.106184zM650.473454 750.171143l-23.665209 8.314803a31.980012 31.980012 0 0 1-19.827608-63.960025l18.548407-7.035602a31.980012 31.980012 0 1 1 24.94441 58.843223zM305.089319 674.698314A31.980012 31.980012 0 0 1 358.17614 640.1599 202.113679 202.113679 0 0 0 511.6802 716.91193a31.980012 31.980012 0 0 1 0 63.960025 263.515303 263.515303 0 0 1-206.590881-106.173641z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="star-fill" unicode="&#58968;" d="M752-43.200000000000045c-9.6 0-20.8 3.2-30.4 8l-208 104-209.6-104c-20.8-11.2-48-9.6-67.2 4.8-19.2 14.4-30.4 40-25.6 64l43.2 224L89.6 411.2C72 428.8 65.6 456 72 478.4c8 24 27.2 41.6 52.8 44.8l228.8 41.6 102.4 208c11.2 22.4 33.6 36.8 57.6 36.8s48-14.4 57.6-36.8l102.4-208 228.8-40c24-3.2 44.8-20.8 51.2-44.8 8-24 1.6-49.6-16-67.2L772.8 257.6l41.6-224c4.8-25.6-6.4-49.6-25.6-64-9.6-8-22.4-12.8-36.8-12.8z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="rate" unicode="&#59003;" d="M959.008 489.984l-308 47.008L512 832 372.992 536.992l-308-47.008 223.008-228-52.992-324L512 90.976l276.992-152.992-52.992 324zM512 156L304 39.00800000000004l40 235.008-179.008 182.016 242.016 32 104.992 224 104-224 240.992-34.016L680 273.024l36.992-235.008z"  horiz-adv-x="1024" />
+            <glyph glyph-name="cellphone" unicode="&#59000;"
+                   d="M785.066667 896H238.933333a102.4 102.4 0 0 1-102.4-102.4v-819.2a102.4 102.4 0 0 1 102.4-102.4h546.133334a102.4 102.4 0 0 1 102.4 102.4V793.6a102.4 102.4 0 0 1-102.4 102.4zM238.933333 827.733333h546.133334a34.133333 34.133333 0 0 0 34.133333-34.133333v-648.533333H204.8V793.6a34.133333 34.133333 0 0 0 34.133333 34.133333z m546.133334-887.466666H238.933333a34.133333 34.133333 0 0 0-34.133333 34.133333v102.4h614.4v-102.4a34.133333 34.133333 0 0 0-34.133333-34.133333zM512 8.53333299999997m-34.133333 0a34.133333 34.133333 0 1 1 68.266666 0 34.133333 34.133333 0 1 1-68.266666 0ZM426.666667 725.333333h170.666666a17.066667 17.066667 0 0 1 0 34.133334h-170.666666a17.066667 17.066667 0 0 1 0-34.133334z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="template-1" unicode="&#58966;" d="M512 384zM43.52 601.6l409.6-176.64c58.88-30.72 110.08 0 110.08 0l414.72 174.08 2.56 2.56c10.24 5.12 15.36 15.36 15.36 28.16 0 15.36-10.24 28.16-23.04 30.72L563.2 837.12c-56.32 23.04-97.28 0-97.28 0L46.08 660.48c-12.8-5.12-20.48-17.92-20.48-30.72s7.68-23.04 17.92-28.16z m0 0M512 222.72000000000003c-2.56 0-7.68 0-10.24 2.56l-486.4 215.04c-12.8 5.12-17.92 20.48-12.8 33.28 5.12 12.8 20.48 17.92 33.28 12.8L512 276.48 988.16 486.4c12.8 5.12 28.16 0 33.28-12.8 5.12-12.8 0-28.16-12.8-33.28l-486.4-215.04c-2.56-2.56-7.68-2.56-10.24-2.56zM512 71.67999999999995c-2.56 0-7.68 0-10.24 2.56l-486.4 215.04c-12.8 5.12-17.92 20.48-12.8 33.28 5.12 10.24 20.48 17.92 33.28 10.24L512 125.44000000000005 988.16 332.79999999999995c12.8 5.12 28.16 0 33.28-12.8 5.12-12.8 0-28.16-12.8-33.28l-486.4-215.04H512zM512-79.36000000000001c-2.56 0-7.68 0-10.24 2.56l-486.4 215.04c-12.8 5.12-17.92 20.48-12.8 33.28 5.12 12.8 20.48 17.92 33.28 12.8L512-25.600000000000023l476.16 209.92c12.8 5.12 28.16 0 33.28-12.8 5.12-12.8 0-28.16-12.8-33.28l-486.4-215.04c-2.56-2.56-7.68-2.56-10.24-2.56z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="vercode" unicode="&#59001;" d="M513.807059-128C351.171765-128 58.428235 126.19294100000002 54.211765 376.16941199999997V662.287059a93.364706 93.364706 0 0 0 81.317647 88.545882 570.428235 570.428235 0 0 1 163.237647 40.357647A393.336471 393.336471 0 0 1 446.945882 872.508235a101.797647 101.797647 0 0 0 120.470589 5.421177A629.458824 629.458824 0 0 1 716.8 792.395294a1255.303529 1255.303529 0 0 1 169.863529-38.550588 98.785882 98.785882 0 0 0 79.510589-90.955294 2911.171765 2911.171765 0 0 0-3.011765-291.538824C924.611765 49.09176500000001 672.828235-128 513.807059-128z m0 963.764706a39.152941 39.152941 0 0 1-24.696471-7.830588A438.512941 438.512941 0 0 0 319.247059 734.569412a608.376471 608.376471 0 0 0-180.705883-43.369412 33.731765 33.731765 0 0 1-24.094117-30.117647v-283.708235C118.663529 155.10588199999995 389.722353-67.76470600000005 513.807059-67.76470600000005s354.183529 148.178824 391.529412 444.536471c9.035294 175.887059 0 281.901176 0 283.105882a38.550588 38.550588 0 0 1-29.515295 33.731765 1287.830588 1287.830588 0 0 0-180.705882 41.562353A676.442353 676.442353 0 0 0 536.094118 829.741176a37.345882 37.345882 0 0 1-24.094118 6.02353zM784.865882 479.171765L487.905882 198.47529399999996a40.357647 40.357647 0 0 0-49.392941-4.818823l-7.830588 6.625882-161.430588 171.068235a40.357647 40.357647 0 1 0 60.235294 55.416471l133.722353-141.552941 267.444706 252.988235a40.357647 40.357647 0 1 0 55.41647-60.235294"  horiz-adv-x="1024" />
+            <glyph glyph-name="print" unicode="&#58989;"
+                   d="M843.946667 603.733333h-47.36V725.333333a90.026667 90.026667 0 0 1-94.72 85.333334H312.32a81.493333 81.493333 0 0 1-85.333333-85.333334v-121.6H170.666667a81.493333 81.493333 0 0 1-85.333334-85.333333v-325.12a89.173333 89.173333 0 0 1 85.333334-93.866667h56.746666v-52.48a89.6 89.6 0 0 1 89.6-89.6h389.973334a89.6 89.6 0 0 1 89.6 89.6v52.48h47.36a97.706667 97.706667 0 0 1 94.72 93.866667V518.4a90.026667 90.026667 0 0 1-94.72 85.333333zM279.466667 725.333333a30.72 30.72 0 0 0 32.853333 33.706667h389.546667c18.773333 0 42.666667-11.52 42.666666-33.706667v-121.6H279.466667z m465.066666-678.4a37.546667 37.546667 0 0 0-37.546666-37.973333H317.013333a37.546667 37.546667 0 0 0-37.546666 37.973333v170.666667a37.546667 37.546667 0 0 0 37.546666 38.4h389.973334a37.546667 37.546667 0 0 0 37.546666-37.973333z m142.506667 146.346667a45.653333 45.653333 0 0 0-42.666667-42.666667h-47.786666v66.133334a89.6 89.6 0 0 1-89.6 89.6H317.013333a89.6 89.6 0 0 1-89.6-89.6v-65.28H170.666667a37.546667 37.546667 0 0 0-33.28 42.666666v324.266667A31.146667 31.146667 0 0 0 170.666667 552.106667h673.28c19.2 0 42.666667-11.52 42.666666-33.706667z m-640 281.173333h-37.546667a13.226667 13.226667 0 0 0 0 26.026667h38.826667a13.226667 13.226667 0 1 0 0-26.026667z m94.293333 0H298.666667a13.226667 13.226667 0 1 0 0 26.026667h42.666666a13.226667 13.226667 0 0 0 0-26.026667z m426.666667-116.48H248.32a13.226667 13.226667 0 0 0 0 26.026667H768a13.226667 13.226667 0 0 0 0-26.026667z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="service" unicode="&#58918;" d="M895.44035 502.006246A31.340412 31.340412 0 0 1 895.44035 512.2398499999999 383.76015 383.76015 0 0 1 127.92005 512.2398499999999a31.340412 31.340412 0 0 1 0-10.233604 167.575265 167.575265 0 0 1-127.92005-159.900062V320.359775a168.854466 168.854466 0 0 1 140.712055-163.098064A351.140537 351.140537 0 0 1 401.029357-63.400375000000054h5.756402a95.940037 95.940037 0 1 1 0 63.960025 287.180512 287.180512 0 0 0-195.717677 156.062461h35.817614A40.294816 40.294816 0 0 1 287.820112 192.43972499999995V468.747033a40.294816 40.294816 0 0 1-40.934416 39.015615H191.880075A30.061212 30.061212 0 0 1 191.880075 512.2398499999999a319.800125 319.800125 0 0 0 639.60025 0 30.061212 30.061212 0 0 1 0-3.837601h-55.005622a40.294816 40.294816 0 0 1-40.934416-39.015616V192.43972499999995a40.294816 40.294816 0 0 1 40.934416-39.015615h72.274829A170.773267 170.773267 0 0 1 1023.3604 320.359775v21.746409a167.575265 167.575265 0 0 1-127.92005 159.900062zM496.329794 0.5596500000000333a31.980012 31.980012 0 1 0-31.980013-31.980012 31.980012 31.980012 0 0 0 31.980013 31.980012zM223.860087 220.582136h-49.249219A106.813242 106.813242 0 0 0 63.960025 320.359775v21.746409a106.813242 106.813242 0 0 0 110.650843 102.33604h49.249219zM959.400375 320.359775a106.813242 106.813242 0 0 0-110.650843-102.33604h-49.24922V444.442224h49.24922A106.813242 106.813242 0 0 0 959.400375 342.106184zM650.473454 750.171143l-23.665209 8.314803a31.980012 31.980012 0 0 1-19.827608-63.960025l18.548407-7.035602a31.980012 31.980012 0 1 1 24.94441 58.843223zM305.089319 674.698314A31.980012 31.980012 0 0 1 358.17614 640.1599 202.113679 202.113679 0 0 0 511.6802 716.91193a31.980012 31.980012 0 0 1 0 63.960025 263.515303 263.515303 0 0 1-206.590881-106.173641z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="cellphone" unicode="&#59000;" d="M785.066667 896H238.933333a102.4 102.4 0 0 1-102.4-102.4v-819.2a102.4 102.4 0 0 1 102.4-102.4h546.133334a102.4 102.4 0 0 1 102.4 102.4V793.6a102.4 102.4 0 0 1-102.4 102.4zM238.933333 827.733333h546.133334a34.133333 34.133333 0 0 0 34.133333-34.133333v-648.533333H204.8V793.6a34.133333 34.133333 0 0 0 34.133333 34.133333z m546.133334-887.466666H238.933333a34.133333 34.133333 0 0 0-34.133333 34.133333v102.4h614.4v-102.4a34.133333 34.133333 0 0 0-34.133333-34.133333zM512 8.53333299999997m-34.133333 0a34.133333 34.133333 0 1 1 68.266666 0 34.133333 34.133333 0 1 1-68.266666 0ZM426.666667 725.333333h170.666666a17.066667 17.066667 0 0 1 0 34.133334h-170.666666a17.066667 17.066667 0 0 1 0-34.133334z"  horiz-adv-x="1024" />
+            <glyph glyph-name="cols" unicode="&#58896;"
+                   d="M128 448h384V832H128z m64 320h256v-256H192zM576 832v-384h384V832z m320-320H640V768h256zM192 384h64v-384H192zM384 384h64v-384H384zM640 384h64v-384H640zM832 384h64v-384h-64z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="print" unicode="&#58989;" d="M843.946667 603.733333h-47.36V725.333333a90.026667 90.026667 0 0 1-94.72 85.333334H312.32a81.493333 81.493333 0 0 1-85.333333-85.333334v-121.6H170.666667a81.493333 81.493333 0 0 1-85.333334-85.333333v-325.12a89.173333 89.173333 0 0 1 85.333334-93.866667h56.746666v-52.48a89.6 89.6 0 0 1 89.6-89.6h389.973334a89.6 89.6 0 0 1 89.6 89.6v52.48h47.36a97.706667 97.706667 0 0 1 94.72 93.866667V518.4a90.026667 90.026667 0 0 1-94.72 85.333333zM279.466667 725.333333a30.72 30.72 0 0 0 32.853333 33.706667h389.546667c18.773333 0 42.666667-11.52 42.666666-33.706667v-121.6H279.466667z m465.066666-678.4a37.546667 37.546667 0 0 0-37.546666-37.973333H317.013333a37.546667 37.546667 0 0 0-37.546666 37.973333v170.666667a37.546667 37.546667 0 0 0 37.546666 38.4h389.973334a37.546667 37.546667 0 0 0 37.546666-37.973333z m142.506667 146.346667a45.653333 45.653333 0 0 0-42.666667-42.666667h-47.786666v66.133334a89.6 89.6 0 0 1-89.6 89.6H317.013333a89.6 89.6 0 0 1-89.6-89.6v-65.28H170.666667a37.546667 37.546667 0 0 0-33.28 42.666666v324.266667A31.146667 31.146667 0 0 0 170.666667 552.106667h673.28c19.2 0 42.666667-11.52 42.666666-33.706667z m-640 281.173333h-37.546667a13.226667 13.226667 0 0 0 0 26.026667h38.826667a13.226667 13.226667 0 1 0 0-26.026667z m94.293333 0H298.666667a13.226667 13.226667 0 1 0 0 26.026667h42.666666a13.226667 13.226667 0 0 0 0-26.026667z m426.666667-116.48H248.32a13.226667 13.226667 0 0 0 0 26.026667H768a13.226667 13.226667 0 0 0 0-26.026667z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="cols" unicode="&#58896;" d="M128 448h384V832H128z m64 320h256v-256H192zM576 832v-384h384V832z m320-320H640V768h256zM192 384h64v-384H192zM384 384h64v-384H384zM640 384h64v-384H640zM832 384h64v-384h-64z"  horiz-adv-x="1024" />
+            <glyph glyph-name="export" unicode="&#59005;"
+                   d="M896.4374528 479.830016c0 26.673152-21.6236032 48.2967552-48.2967552 48.2967552H630.8069376c-26.673152 0-48.2967552-21.6236032-48.2967552-48.2967552v-83.04831147H384.69522773l-2.71428266 5.36849067c-41.336832 87.44686933-35.95195733 204.128256 150.601728 199.94487467v-108.91537067l172.19037866 164.757504L532.58267307 822.7110912v-106.57245867c-228.64418133 5.70709333-263.651328-183.517184-157.433856-314.01028266l4.6891008-5.34664534h-88.46595414c-26.673152 0-48.2967552-21.6236032-48.2967552-48.2967552v-66.78882986h-98.43616426c-26.673152 0-40.4258816-21.6236032-30.71781547-48.2967552l79.10304427-217.33485227c9.70806613-26.673152 39.20145067-48.2967552 65.87460266-48.2967552h603.70670934c23.75898453 0 37.2506624 17.16169387 33.05745066 39.76178347 0.4980736 2.77108053 0.77441707 5.619712 0.77441707 8.53497173v463.765504z m-60.37067093-306.4528896l-21.8464256 60.02223787c-9.70806613 26.673152-39.20145067 48.2967552-65.87460267 48.2967552H303.44697173v30.56708266c0 13.336576 10.81125547 24.14783147 24.14783147 24.14783147h315.28605013v107.1972352c0 13.336576 10.81125547 24.14783147 24.14783147 24.14783147h144.88917333c13.336576 0 24.14783147-10.81125547 24.14783147-24.14783147v-270.2311424z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="export" unicode="&#59005;" d="M896.4374528 479.830016c0 26.673152-21.6236032 48.2967552-48.2967552 48.2967552H630.8069376c-26.673152 0-48.2967552-21.6236032-48.2967552-48.2967552v-83.04831147H384.69522773l-2.71428266 5.36849067c-41.336832 87.44686933-35.95195733 204.128256 150.601728 199.94487467v-108.91537067l172.19037866 164.757504L532.58267307 822.7110912v-106.57245867c-228.64418133 5.70709333-263.651328-183.517184-157.433856-314.01028266l4.6891008-5.34664534h-88.46595414c-26.673152 0-48.2967552-21.6236032-48.2967552-48.2967552v-66.78882986h-98.43616426c-26.673152 0-40.4258816-21.6236032-30.71781547-48.2967552l79.10304427-217.33485227c9.70806613-26.673152 39.20145067-48.2967552 65.87460266-48.2967552h603.70670934c23.75898453 0 37.2506624 17.16169387 33.05745066 39.76178347 0.4980736 2.77108053 0.77441707 5.619712 0.77441707 8.53497173v463.765504z m-60.37067093-306.4528896l-21.8464256 60.02223787c-9.70806613 26.673152-39.20145067 48.2967552-65.87460267 48.2967552H303.44697173v30.56708266c0 13.336576 10.81125547 24.14783147 24.14783147 24.14783147h315.28605013v107.1972352c0 13.336576 10.81125547 24.14783147 24.14783147 24.14783147h144.88917333c13.336576 0 24.14783147-10.81125547 24.14783147-24.14783147v-270.2311424z"  horiz-adv-x="1024" />
 
-    
-    <glyph glyph-name="slider" unicode="&#59156;" d="M228.7 683.9v-66.7H112v66.7h116.7z m333.2-266.6v-66.7H112v66.7h449.9zM295.4 150.60000000000002V84H112v66.7h183.4v-0.1z m116.6 600c9 0 16.8-3.3 23.5-9.9 6.5-6.5 9.9-14.5 9.9-23.5v-133.3c0-9-3.3-16.8-9.9-23.5-6.5-6.5-14.5-9.9-23.5-9.9H278.8c-9 0-16.8 3.3-23.5 9.9-6.5 6.5-9.9 14.3-9.9 23.5V717.1c0 9 3.3 16.8 9.9 23.5 6.5 6.5 14.3 9.9 23.5 9.9h133.3v0.1h-0.1z m66.7-533.3c9 0 16.8-3.3 23.5-9.9 6.5-6.5 9.9-14.5 9.9-23.5v-133.3c0-9-3.3-16.8-9.9-23.5-6.5-6.5-14.5-9.9-23.5-9.9H345.3c-9 0-16.8 3.3-23.5 9.9-6.5 6.5-9.9 14.5-9.9 23.5V183.89999999999998c0 9 3.3 16.8 9.9 23.5 6.5 6.5 14.3 9.9 23.5 9.9h133.4v0.1zM912 683.9v-66.7H462.1v66.7H912z m0-533.3V84H528.6v66.7h383.3v-0.1h0.1zM745.2 483.9c9 0 16.8-3.3 23.5-9.9 6.5-6.5 9.9-14.5 9.9-23.5v-133.3c0-9-3.3-16.8-9.9-23.5-6.5-6.5-14.5-9.9-23.5-9.9H612c-9 0-16.8 3.3-23.5 9.9-6.5 6.5-9.9 14.3-9.9 23.5V450.6c0 9 3.3 16.8 9.9 23.5 6.5 6.5 14.5 9.9 23.5 9.9l133.2-0.1zM912 417.3v-66.7H795.3v66.7H912z"  horiz-adv-x="1024" />
+            <glyph glyph-name="slider" unicode="&#59156;"
+                   d="M228.7 683.9v-66.7H112v66.7h116.7z m333.2-266.6v-66.7H112v66.7h449.9zM295.4 150.60000000000002V84H112v66.7h183.4v-0.1z m116.6 600c9 0 16.8-3.3 23.5-9.9 6.5-6.5 9.9-14.5 9.9-23.5v-133.3c0-9-3.3-16.8-9.9-23.5-6.5-6.5-14.5-9.9-23.5-9.9H278.8c-9 0-16.8 3.3-23.5 9.9-6.5 6.5-9.9 14.3-9.9 23.5V717.1c0 9 3.3 16.8 9.9 23.5 6.5 6.5 14.3 9.9 23.5 9.9h133.3v0.1h-0.1z m66.7-533.3c9 0 16.8-3.3 23.5-9.9 6.5-6.5 9.9-14.5 9.9-23.5v-133.3c0-9-3.3-16.8-9.9-23.5-6.5-6.5-14.5-9.9-23.5-9.9H345.3c-9 0-16.8 3.3-23.5 9.9-6.5 6.5-9.9 14.5-9.9 23.5V183.89999999999998c0 9 3.3 16.8 9.9 23.5 6.5 6.5 14.3 9.9 23.5 9.9h133.4v0.1zM912 683.9v-66.7H462.1v66.7H912z m0-533.3V84H528.6v66.7h383.3v-0.1h0.1zM745.2 483.9c9 0 16.8-3.3 23.5-9.9 6.5-6.5 9.9-14.5 9.9-23.5v-133.3c0-9-3.3-16.8-9.9-23.5-6.5-6.5-14.5-9.9-23.5-9.9H612c-9 0-16.8 3.3-23.5 9.9-6.5 6.5-9.9 14.3-9.9 23.5V450.6c0 9 3.3 16.8 9.9 23.5 6.5 6.5 14.5 9.9 23.5 9.9l133.2-0.1zM912 417.3v-66.7H795.3v66.7H912z"
+                   horiz-adv-x="1024"/>
 
-    
-    <glyph glyph-name="subtraction" unicode="&#59006;" d="M785 348H239c-19.8 0-36 16.2-36 36s16.2 36 36 36h546c19.8 0 36-16.2 36-36s-16.2-36-36-36z"  horiz-adv-x="1024" />
 
-    
+            <glyph glyph-name="subtraction" unicode="&#59006;"
+                   d="M785 348H239c-19.8 0-36 16.2-36 36s16.2 36 36 36h546c19.8 0 36-16.2 36-36s-16.2-36-36-36z"
+                   horiz-adv-x="1024"/>
 
 
-  </font>
-</defs></svg>
+        </font>
+    </defs>
+</svg>
diff --git a/zy-acs-cv/src/main/webapp/views/console-old.html b/zy-acs-cv/src/main/webapp/views/console-old.html
deleted file mode 100644
index e6f6ac4..0000000
--- a/zy-acs-cv/src/main/webapp/views/console-old.html
+++ /dev/null
@@ -1,1229 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <meta charset="utf-8">
-    <title>WCS鎺у埗涓績</title>
-    <!--<link rel="stylesheet" type="text/css" href="../static/css/common.css">-->
-    <link rel="stylesheet" href="../static/css/console.css">
-    <!--		<link rel="stylesheet" type="text/css" href="../static/css/normalize.css">-->
-    <link rel="stylesheet" href="../static/css/animate.min.css">
-
-
-    <script src="../static/js/jquery/jquery-3.3.1.min.js"></script>
-    <script src="../static/js/layer/layer.js"></script>
-    <script type="text/javascript" src="../static/js/common.js"></script>
-
-</head>
-<body>
-<div id="root">
-    <div class="head">
-        <div class="head-left">
-            <h1>鑷姩浠撳簱WCS鐩戞帶鍥�</h1>
-            <h6>AUTOMATIC WAREHOUSE WCS MONITORING DIAGRAM</h6>
-        </div>
-        <div class="head-right">
-            <img src="../static/images/zy-logo.png" alt="涓壃" height="44" width="80">
-        </div>
-    </div>
-
-    <!-- 璐ф灦 + 鍫嗗灈鏈� + 鍏ュ簱绔欑偣 -->
-    <div class="main-part">
-        <!-- 绗竴缁� -->
-        <div class="lane">
-            <!-- 璐ф灦 -->
-            <div class="stock-group">
-                <button class="item" style="margin-left: 82px">60</button>
-                <button class="item">58</button>
-                <button class="item">56</button>
-                <button class="item">54</button>
-                <button class="item">52</button>
-                <button class="item">50</button>
-                <button class="item">48</button>
-                <button class="item">46</button>
-                <button class="item">44</button>
-                <button class="item">42</button>
-                <button class="item">40</button>
-                <button class="item">38</button>
-                <button class="item">36</button>
-                <button class="item">34</button>
-                <button class="item">32</button>
-                <button class="item">30</button>
-                <button class="item">28</button>
-                <button class="item">26</button>
-                <button class="item">24</button>
-                <button class="item">22</button>
-                <button class="item">20</button>
-                <button class="item">18</button>
-                <button class="item">16</button>
-                <button class="item">14</button>
-                <button class="item">12</button>
-                <button class="item">10</button>
-                <button class="item">8</button>
-                <button class="item">6</button>
-                <button class="item">4</button>
-                <button class="item">2</button>
-
-
-            </div>
-            <div class="stock-group">
-
-                <button class="item" style="margin-left: 82px">60</button>
-                <button class="item">58</button>
-                <button class="item">56</button>
-                <button class="item">54</button>
-                <button class="item">52</button>
-                <button class="item">50</button>
-                <button class="item">48</button>
-                <button class="item">46</button>
-                <button class="item">44</button>
-                <button class="item">42</button>
-                <button class="item">40</button>
-                <button class="item">38</button>
-                <button class="item">36</button>
-                <button class="item">34</button>
-                <button class="item">32</button>
-                <button class="item">30</button>
-                <button class="item">28</button>
-                <button class="item">26</button>
-                <button class="item">24</button>
-                <button class="item">22</button>
-                <button class="item">20</button>
-                <button class="item">18</button>
-                <button class="item">16</button>
-                <button class="item">14</button>
-                <button class="item">12</button>
-                <button class="item">10</button>
-                <button class="item">8</button>
-                <button class="item">6</button>
-                <button class="item">4</button>
-                <button class="item">2</button>
-                <div id="site-101" class="site" style="">101</div>
-            </div>
-            <!-- 鍫嗗灈鏈� -->
-            <div class="crn">
-                <hr class="pathway">
-                <div id="crn-1" class="machine"></div>
-            </div>
-            <!-- 璐ф灦 -->
-            <div class="stock-group">
-
-                <button class="item" style="margin-left: 82px">60</button>
-                <button class="item">58</button>
-                <button class="item">56</button>
-                <button class="item">54</button>
-                <button class="item">52</button>
-                <button class="item">50</button>
-                <button class="item">48</button>
-                <button class="item">46</button>
-                <button class="item">44</button>
-                <button class="item">42</button>
-                <button class="item">40</button>
-                <button class="item">38</button>
-                <button class="item">36</button>
-                <button class="item">34</button>
-                <button class="item">32</button>
-                <button class="item">30</button>
-                <button class="item">28</button>
-                <button class="item">26</button>
-                <button class="item">24</button>
-                <button class="item">22</button>
-                <button class="item">20</button>
-                <button class="item">18</button>
-                <button class="item">16</button>
-                <button class="item">14</button>
-                <button class="item">12</button>
-                <button class="item">10</button>
-                <button class="item">8</button>
-                <button class="item">6</button>
-                <button class="item">4</button>
-                <button class="item">2</button>
-                <div id="site-106" class="site" style="">106</div>
-            </div>
-            <div class="stock-group">
-                <button class="item" style="margin-left: 82px">60</button>
-                <button class="item">58</button>
-                <button class="item">56</button>
-                <button class="item">54</button>
-                <button class="item">52</button>
-                <button class="item">50</button>
-                <button class="item">48</button>
-                <button class="item">46</button>
-                <button class="item">44</button>
-                <button class="item">42</button>
-                <button class="item">40</button>
-                <button class="item">38</button>
-                <button class="item">36</button>
-                <button class="item">34</button>
-                <button class="item">32</button>
-                <button class="item">30</button>
-                <button class="item">28</button>
-                <button class="item">26</button>
-                <button class="item">24</button>
-                <button class="item">22</button>
-                <button class="item">20</button>
-                <button class="item">18</button>
-                <button class="item">16</button>
-                <button class="item">14</button>
-                <button class="item">12</button>
-                <button class="item">10</button>
-                <button class="item">8</button>
-                <button class="item">6</button>
-                <button class="item">4</button>
-                <button class="item">2</button>
-            </div>
-        </div>
-        <!-- 绗簩缁� -->
-        <div class="lane">
-            <span class="row-no"></span>
-            <!-- 璐ф灦 -->
-            <div class="stock-group">
-                <button class="item" style="margin-left: 193px">52</button>
-                <button class="item">50</button>
-                <button class="item">48</button>
-                <button class="item">46</button>
-                <button class="item">44</button>
-                <button class="item">42</button>
-                <button class="item">40</button>
-                <button class="item">38</button>
-                <button class="item">36</button>
-                <button class="item">34</button>
-                <button class="item">32</button>
-                <button class="item">30</button>
-                <button class="item">28</button>
-                <button class="item">26</button>
-                <button class="item">24</button>
-                <button class="item">22</button>
-                <button class="item">20</button>
-                <button class="item">18</button>
-                <button class="item">16</button>
-                <button class="item">14</button>
-                <button class="item">12</button>
-                <button class="item">10</button>
-                <button class="item">8</button>
-                <button class="item">6</button>
-                <button class="item">4</button>
-                <button class="item">2</button>
-            </div>
-            <div class="stock-group">
-
-                <button class="item" style="margin-left: 193px">52</button>
-                <button class="item">50</button>
-                <button class="item">48</button>
-                <button class="item">46</button>
-                <button class="item">44</button>
-                <button class="item">42</button>
-                <button class="item">40</button>
-                <button class="item">38</button>
-                <button class="item">36</button>
-                <button class="item">34</button>
-                <button class="item">32</button>
-                <button class="item">30</button>
-                <button class="item">28</button>
-                <button class="item">26</button>
-                <button class="item">24</button>
-                <button class="item">22</button>
-                <button class="item">20</button>
-                <button class="item">18</button>
-                <button class="item">16</button>
-                <button class="item">14</button>
-                <button class="item">12</button>
-                <button class="item">10</button>
-                <button class="item">8</button>
-                <button class="item">6</button>
-                <button class="item">4</button>
-                <button class="item">2</button>
-                <div id="site-113" class="site" style="">113</div>
-            </div>
-            <!-- 鍫嗗灈鏈� -->
-            <div class="crn" style="margin-left: 108px">
-                <hr class="pathway">
-                <div id="crn-2" class="machine"></div>
-            </div>
-            <!-- 璐ф灦 -->
-            <div class="stock-group">
-                <button class="item" style="margin-left: 193px">52</button>
-                <button class="item">50</button>
-                <button class="item">48</button>
-                <button class="item">46</button>
-                <button class="item">44</button>
-                <button class="item">42</button>
-                <button class="item">40</button>
-                <button class="item">38</button>
-                <button class="item">36</button>
-                <button class="item">34</button>
-                <button class="item">32</button>
-                <button class="item">30</button>
-                <button class="item">28</button>
-                <button class="item">26</button>
-                <button class="item">24</button>
-                <button class="item">22</button>
-                <button class="item">20</button>
-                <button class="item">18</button>
-                <button class="item">16</button>
-                <button class="item">14</button>
-                <button class="item">12</button>
-                <button class="item">10</button>
-                <button class="item">8</button>
-                <button class="item">6</button>
-                <button class="item">4</button>
-                <button class="item">2</button>
-                <div id="site-120" class="site" style="">120</div>
-
-            </div>
-            <div class="stock-group">
-
-                <button class="item" style="margin-left: 193px">52</button>
-                <button class="item">50</button>
-                <button class="item">48</button>
-                <button class="item">46</button>
-                <button class="item">44</button>
-                <button class="item">42</button>
-                <button class="item">40</button>
-                <button class="item">38</button>
-                <button class="item">36</button>
-                <button class="item">34</button>
-                <button class="item">32</button>
-                <button class="item">30</button>
-                <button class="item">28</button>
-                <button class="item">26</button>
-                <button class="item">24</button>
-                <button class="item">22</button>
-                <button class="item">20</button>
-                <button class="item">18</button>
-                <button class="item">16</button>
-                <button class="item">14</button>
-                <button class="item">12</button>
-                <button class="item">10</button>
-                <button class="item">8</button>
-                <button class="item">6</button>
-                <button class="item">4</button>
-                <button class="item">2</button>
-            </div>
-        </div>
-        <!--绗笁缁�-->
-        <div class="lane">
-            <span class="row-no"></span>
-            <!-- 璐ф灦 -->
-            <div class="stock-group">
-                <button class="item" style="margin-left: 193px">52</button>
-                <button class="item">50</button>
-                <button class="item">48</button>
-                <button class="item">46</button>
-                <button class="item">44</button>
-                <button class="item">42</button>
-                <button class="item">40</button>
-                <button class="item">38</button>
-                <button class="item">36</button>
-                <button class="item">34</button>
-                <button class="item">32</button>
-                <button class="item">30</button>
-                <button class="item">28</button>
-                <button class="item">26</button>
-                <button class="item">24</button>
-                <button class="item">22</button>
-                <button class="item">20</button>
-                <button class="item">18</button>
-                <button class="item">16</button>
-                <button class="item">14</button>
-                <button class="item">12</button>
-                <button class="item">10</button>
-                <button class="item">8</button>
-                <button class="item">6</button>
-                <button class="item">4</button>
-                <button class="item">2</button>
-            </div>
-            <div class="stock-group">
-                <button class="item" style="margin-left: 193px">52</button>
-                <button class="item">50</button>
-                <button class="item">48</button>
-                <button class="item">46</button>
-                <button class="item">44</button>
-                <button class="item">42</button>
-                <button class="item">40</button>
-                <button class="item">38</button>
-                <button class="item">36</button>
-                <button class="item">34</button>
-                <button class="item">32</button>
-                <button class="item">30</button>
-                <button class="item">28</button>
-                <button class="item">26</button>
-                <button class="item">24</button>
-                <button class="item">22</button>
-                <button class="item">20</button>
-                <button class="item">18</button>
-                <button class="item">16</button>
-                <button class="item">14</button>
-                <button class="item">12</button>
-                <button class="item">10</button>
-                <button class="item">8</button>
-                <button class="item">6</button>
-                <button class="item">4</button>
-                <button class="item">2</button>
-                <div id="site-127" class="site" style="">127</div>
-
-            </div>
-            <!-- 鍫嗗灈鏈� -->
-            <div class="crn" style="margin-left: 108px">
-                <hr class="pathway">
-                <div id="crn-3" class="machine"></div>
-            </div>
-            <!-- 璐ф灦 -->
-            <div class="stock-group">
-                <button class="item" style="margin-left: 193px">52</button>
-                <button class="item">50</button>
-                <button class="item">48</button>
-                <button class="item">46</button>
-                <button class="item">44</button>
-                <button class="item">42</button>
-                <button class="item">40</button>
-                <button class="item">38</button>
-                <button class="item">36</button>
-                <button class="item">34</button>
-                <button class="item">32</button>
-                <button class="item">30</button>
-                <button class="item">28</button>
-                <button class="item">26</button>
-                <button class="item">24</button>
-                <button class="item">22</button>
-                <button class="item">20</button>
-                <button class="item">18</button>
-                <button class="item">16</button>
-                <button class="item">14</button>
-                <button class="item">12</button>
-                <button class="item">10</button>
-                <button class="item">8</button>
-                <button class="item">6</button>
-                <button class="item">4</button>
-                <button class="item">2</button>
-                <div id="site-133" class="site" style="">133</div>
-
-            </div>
-            <div class="stock-group">
-                <button class="item" style="margin-left: 193px">52</button>
-                <button class="item">50</button>
-                <button class="item">48</button>
-                <button class="item">46</button>
-                <button class="item">44</button>
-                <button class="item">42</button>
-                <button class="item">40</button>
-                <button class="item">38</button>
-                <button class="item">36</button>
-                <button class="item">34</button>
-                <button class="item">32</button>
-                <button class="item">30</button>
-                <button class="item">28</button>
-                <button class="item">26</button>
-                <button class="item">24</button>
-                <button class="item">22</button>
-                <button class="item">20</button>
-                <button class="item">18</button>
-                <button class="item">16</button>
-                <button class="item">14</button>
-                <button class="item">12</button>
-                <button class="item">10</button>
-                <button class="item">8</button>
-                <button class="item">6</button>
-                <button class="item">4</button>
-                <button class="item">2</button>
-            </div>
-        </div>
-    </div>
-    <!--绗�1鍒楋紙瀹藉害 70px锛� -->
-    <div class="site-row site-row-1">
-        <div class="site-k" style="height:39px;width:70px;"></div>
-        <div id="site-102" class="site" style="height: 18px;line-height: 18px;">102</div>
-        <div id="site-107" class="site" style="height: 18px;line-height: 18px;margin-top: 20px">107</div>
-        <div id="site-114" class="site" style="height: 18px;line-height: 18px;margin-top: 68px">114</div>
-        <div id="site-121" class="site" style="height: 18px;line-height: 18px;margin-top: 20px">121</div>
-        <div id="site-128" class="site" style="height: 18px;line-height: 18px;margin-top: 68px">128</div>
-        <div id="site-134" class="site" style="height: 18px;line-height: 18px;margin-top: 20px">134</div>
-    </div>
-    <div class="site-row site-row-2">
-        <div class="site-k" style="height:39px;width:70px;"></div>
-        <div id="site-103" class="site" style="height: 18px;line-height: 18px;">103</div>
-        <div id="site-105" class="site" style="height: 18px;line-height: 18px">105</div>
-        <div id="site-108" class="site" style="height: 18px;line-height: 18px">108</div>
-        <div id="site-111" class="site" style="height: 66px;line-height: 66px">111</div>
-        <div id="site-115" class="site" style="height: 18px;line-height: 18px">115</div>
-        <div id="site-118" class="site" style="height: 18px;line-height: 18px">118</div>
-        <div id="site-122" class="site" style="height: 18px;line-height: 18px">122</div>
-        <div id="site-125" class="site" style="height: 66px;line-height: 66px">125</div>
-        <div id="site-129" class="site" style="height: 18px;line-height: 18px">129</div>
-        <div id="site-132" class="site" style="height: 18px;line-height: 18px">132</div>
-        <div id="site-135" class="site" style="height: 18px;line-height: 18px">135</div>
-    </div>
-    <div class="site-row site-row-3">
-        <div class="site-k" style="height:39px;width:70px;"></div>
-        <div id="site-104" class="site" style="height: 18px;line-height: 18px;width:162px;">104</div>
-        <div id="site-109" class="site" style="height: 18px;line-height: 18px; margin-top: 20px">109</div>
-        <div id="site-112" class="site" style="height: 66px;line-height: 68px">112</div>
-        <div id="site-116" class="site" style="height: 18px;line-height: 18px;">116</div>
-        <div id="site-119" class="site" style="height: 18px;line-height: 18px">119</div>
-        <div id="site-123" class="site" style="height: 18px;line-height: 18px">123</div>
-        <div id="site-126" class="site" style="height: 66px;line-height: 68px">126</div>
-        <div id="site-130" class="site" style="height: 18px;line-height: 18px">130</div>
-        <div id="site-136" class="site" style="height: 18px;line-height: 18px;width:162px; margin-top: 20px">136</div>
-    </div>
-    <div class="site-row site-row-4">
-        <div id="site-110" class="site" style="height: 18px;line-height: 18px;">110</div>
-        <div id="site-117" class="site" style="height: 18px;line-height: 18px; margin-top: 68px">117</div>
-        <div id="site-124" class="site" style="height: 18px;line-height: 18px; margin-top: 20px">124</div>
-        <div id="site-131" class="site" style="height: 18px;line-height: 18px; margin-top: 68px">131</div>
-    </div>
-</div>
-<!--搴曢儴-->
-<div id="body">
-    <!-- 鎬诲紑鍏� -->
-    <div class="system-state">
-        <div class="body-head">鎬诲紑鍏�</div>
-        <div class="switch">
-            <div id="system-icon" class="system-icon-open" onclick="systemSwitch()"></div>
-            <div class="switch_r">
-                <p>绯荤粺鐘舵��</p>
-                <p id="system-run-desc">绯荤粺杩愯涓�</p>
-            </div>
-        </div>
-    </div>
-    <!-- 鍫嗗灈鏈虹姸鎬� -->
-    <div class="machine-status">
-        <div class="body-head">鍫嗗灈鏈虹姸鎬�</div>
-        <div class="state">
-            <span>鍫嗗灈鏈� 1</span>
-            <span class="state-ss machine-put-flag	">鍏ュ簱</span>
-        </div>
-        <div class="state">
-            <span>鍫嗗灈鏈� 2</span>
-            <span class="state-ss machine-auto-flag	">鑷姩</span>
-
-        </div>
-        <div class="button"><span>鎵�鏈夌姸鎬�</span></div>
-        <div class="button item-group">
-            <span class="machine-put-flag">鍏ュ簱</span>
-            <span class="machine-take-flag">鍑哄簱</span>
-            <span class="machine-stock-move-flag">搴撳埌搴�</span>
-            <span class="machine-site-move-flag">绔欏埌绔�</span>
-            <span class="machine-p-move-flag">PToP</span>
-            <span class="machine-error-flag">寮傚父</span>
-            <span class="machine-auto-flag">鑷姩</span>
-            <span class="machine-unauto-flag">闈炶嚜鍔�/鎵嬪姩</span>
-        </div>
-    </div>
-    <div class="line-status">
-        <div class="body-head">杈撻�佺嚎鐘舵��</div>
-        <div class="state states">
-            <span>杩愯緭绾挎�绘暟</span>
-            <span class="line-ss">58</span>
-        </div>
-        <div class="button"><span>鎵�鏈夌姸鎬�</span></div>
-        <div class="button item-group">
-            <span class="site-auto-run-id">鑷姩+鏈夌墿+ID</span>
-            <span class="site-auto-run">鑷姩+鏈夌墿</span>
-            <span class="site-auto-id">鑷姩+ID</span>
-            <span class="site-auto">鑷姩</span>
-            <span class="site-unauto">闈炶嚜鍔�/鎵嬪姩</span>
-        </div>
-    </div>
-    <div class="bar-code">
-        <div class="body-head" id="code">鏉$爜鎵弿鍣�</div>
-        <div class="tablebox">
-            <div class="table-head">
-                <li><span>鏉$爜鍚嶇О</span><span class="right">鎵爜鏃堕棿</span></li>
-            </div>
-            <div id="barcode1" class="table-body">
-
-            </div>
-        </div>
-        <div class="tablebox">
-            <div class="table-head">
-                <li><span>鏉$爜鍚嶇О</span><span class="right">鎵爜鏃堕棿</span></li>
-            </div>
-            <div id="barcode2" class="table-body">
-
-            </div>
-        </div>
-        <div class="tablebox">
-            <div class="table-head">
-                <li><span>鏉$爜鍚嶇О</span><span class="right">鎵爜鏃堕棿</span></li>
-            </div>
-            <div id="barcode3" class="table-body">
-
-            </div>
-        </div>
-    </div>
-</div>
-<!-- 鍫嗗灈鏈哄脊绐� -->
-<div id="crnWindow" style="display: none;" class="animate__animated animate__fadeIn">
-    <div id="crnWindow-head">
-        <div class='detailed'></div>
-        <button></button>
-    </div>
-    <form>
-        <!-- 鍫嗗灈鏈哄彿 -->
-        <div class="form-item">
-            <div class="form-item-label" style>
-                <span>鍫嗗灈鏈哄彿锛�</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="crnNo" value="">
-            </div>
-        </div>
-        <!-- 宸ヤ綔鍙� -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>宸ヤ綔鍙凤細</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="workNo" value="">
-            </div>
-        </div>
-        <!-- 绔欐簮 -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>绔欐簮锛�</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="sourceStaNo" value="">
-            </div>
-        </div>
-        <!-- 鐩爣绔� -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>鐩爣绔欙細</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="staNo" value="">
-            </div>
-        </div>
-        <!-- 宸ヤ綔鐘舵�� -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>宸ヤ綔鐘舵�侊細</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="wrkSts" value="">
-            </div>
-        </div>
-        <!-- 鍑哄叆绫诲瀷 -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>鍑哄叆绫诲瀷锛�</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="ioType" value="">
-            </div>
-        </div>
-        <!-- 婧愬簱浣� -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>婧愬簱浣嶏細</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="sourceLocNo" value="">
-            </div>
-        </div>
-        <!-- 鐩爣搴撲綅 -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>鐩爣搴撲綅锛�</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="locNo" value="">
-            </div>
-        </div>
-        <!-- 鍫嗗灈鏈虹姸鎬� -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>鍫嗗灈鏈虹姸鎬侊細</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="crnStatus" value="">
-            </div>
-        </div>
-        <!-- 寮傚父 -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>寮傚父锛�</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="error" value="">
-            </div>
-        </div>
-    </form>
-</div>
-<!-- 杈撻�佽澶囧脊绐� -->
-<div id="siteWindow" style="display: none;" class="animate__animated animate__fadeIn">
-    <!-- 琛ㄥご -->
-    <div id="siteWindow-head">
-        <div class='detailed'></div>
-        <button></button>
-    </div>
-    <form>
-        <!-- 璁惧鍙� -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>璁惧鍙凤細</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="siteId" value="">
-            </div>
-        </div>
-        <!-- 宸ヤ綔鍙� -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>宸ヤ綔鍙凤細</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="workNo" value="">
-            </div>
-        </div>
-        <!-- 宸ヤ綔鐘舵�� -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>宸ヤ綔鐘舵�侊細</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="wrkSts" value="">
-            </div>
-        </div>
-        <!-- 鑷姩 -->
-        <div class="form-item-checkbox">
-            <div class="form-item-label-checkbox">
-                <span>鑷姩</span>
-            </div>
-            <div class="form-item-input-checkbox">
-                <input type="checkbox" name="autoing">
-            </div>
-        </div>
-        <!-- 鏈夌墿 -->
-        <div class="form-item-checkbox">
-            <div class="form-item-label-checkbox">
-                <span>鏈夌墿</span>
-            </div>
-            <div class="form-item-input-checkbox">
-                <input type="checkbox" name="loading">
-            </div>
-        </div>
-        <!-- 鑳藉叆 -->
-        <div class="form-item-checkbox">
-            <div class="form-item-label-checkbox">
-                <span>鑳藉叆</span>
-            </div>
-            <div class="form-item-input-checkbox">
-                <input type="checkbox" name="canining">
-            </div>
-        </div>
-        <!-- 鑳藉嚭 -->
-        <div class="form-item-checkbox">
-            <div class="form-item-label-checkbox">
-                <span>鑳藉嚭</span>
-            </div>
-            <div class="form-item-input-checkbox">
-                <input type="checkbox" name="canouting">
-            </div>
-        </div>
-        <!-- 鍑哄叆绫诲瀷 -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>鍑哄叆绫诲瀷锛�</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="ioType" value="">
-            </div>
-        </div>
-        <!-- 婧愮珯 -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>婧愮珯锛�</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="sourceStaNo" value="">
-            </div>
-        </div>
-        <!-- 鐩爣绔� -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>鐩爣绔欙細</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="staNo" value="">
-            </div>
-        </div>
-        <!-- 婧愬簱浣� -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>婧愬簱浣嶏細</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="sourceLocNo" value="">
-            </div>
-        </div>
-        <!-- 鐩爣搴撲綅 -->
-        <div class="form-item">
-            <div class="form-item-label">
-                <span>鐩爣搴撲綅锛�</span>
-            </div>
-            <div class="form-item-input">
-                <input type="text" name="locNo" value="">
-            </div>
-        </div>
-
-    </form>
-</div>
-
-</div>
-
-
-</body>
-</html>
-<script>
-    var tData = []
-    var tData1 = []
-    var tData2 = []
-    var tData3 = []
-
-    function getCodeData() {
-        $.ajax({
-            url: baseUrl + '/console/barcode/output/site',
-            method: 'GET',
-            success: function (res) {
-                if (res.code === 200) {
-                    tData = eval(res.data);
-                    if (tData.length <= 5) {
-                        tData1 = tData
-                    } else if (tData.length <= 10) {
-                        tData1 = tData.slice(0, 5)
-                        tData.splice(0, 5)
-                        tData2 = tData
-                    } else if (tData.length <= 15) {
-                        tData1 = tData.slice(0, 5)
-                        tData2 = tData.slice(6, 10)
-                        tData.splice(0, 10)
-                        tData3 = tData
-                    } else {
-                        tData = tData.slice(-15)
-                        tData1 = tData.slice(-15)
-                        tData2 = tData.slice(-10)
-                        tData3 = tData.slice(-5)
-
-                    }
-                }
-            }
-        })
-    }
-
-    setInterval(function () {
-        getCodeData();
-        renderBarCode();
-    }, 1000)
-
-
-    function renderBarCode() {
-        for (var i = 0; i < tData1.length; i++) {
-            var str1 = '<li><span>' + tData1[i].barcode + '</span><span class="right">' + tData1[i].time + '</span></li>'
-            $('#barcode1').append(str1)
-        }
-        for (var j = 0; j < tData2.length; j++) {
-            var str2 = '<li><span>' + tData2[j].barcode + '</span><span class="right">' + tData2[j].time + '</span></li>'
-            $('#barcode2').append(str2)
-        }
-        for (var k = 0; k < tData3.length; k++) {
-            var str3 = '<li><span>' + tData3[k].barcode + '</span><span class="right">' + tData3[k].time + '</span></li>'
-            $('#barcode3').append(str3)
-        }
-    }
-</script>
-<script type="text/javascript">
-    // 寮圭獥绔欑偣淇℃伅
-    $('.site').on('click', function () {
-        var id = this.id.split("-")[1];
-        $("#siteWindow").attr("style", "display:block;");//鏄剧ずdiv
-        $("#crnWindow").attr("style", "display:none;");
-        $(".detailed").empty();
-        $('.detailed').append(id + '绔欑偣璇︾粏淇℃伅');
-        $.ajax({
-            url: baseUrl + "/console/site/detail",
-            headers: {
-                'token': localStorage.getItem('token')
-            },
-            data: {
-                siteId: id
-            },
-            method: 'post',
-            success: function (res) {
-                for (var val in res.data) {
-                    var find = $("#siteWindow").find(":input[name='" + val + "']");
-                    if (find[0].type === 'text') {
-                        find.val(res.data[val]);
-                    } else if (find[0].type === 'checkbox') {
-                        find.attr("checked", res.data[val] === 'Y');
-                    }
-                }
-            }
-
-        })
-
-    });
-    // 鍫嗗灈鏈轰俊鎭�
-    $('.machine').on('click', function () {
-        var id = this.id.split("-")[1];
-        $("#crnWindow").attr('style', 'display:block;');
-        $("#siteWindow").attr("style", "display:none;");
-        $('.detailed').empty();
-        $('.detailed').append(id + '鍙峰爢鍨涙満');
-        $.ajax({
-            url: baseUrl + "/console/crn/detail",
-            headers: {
-                'token': localStorage.getItem('token')
-            },
-            data: {
-                crnNo: id
-            },
-            method: 'post',
-            success: function (res) {
-                for (var val in res.data) {
-                    var find = $("#crnWindow").find(":input[name='" + val + "']");
-                    if (find[0].type === 'text') {
-                        find.val(res.data[val]);
-                    } else if (find[0].type === 'checkbox') {
-                        find.attr("checked", res.data[val] === 'Y');
-                    }
-                }
-            }
-
-        })
-
-    })
-    // 寮圭獥鍏抽棴
-    $('button').on('click', function () {
-        $('#siteWindow').attr('style', 'display:none')
-        $('#crnWindow').attr('style', 'display:none')
-    })
-
-
-    var crn1Position = 0;
-    var crn2Position = 0;
-    var crn3Position = 0;
-    var crn4Position = 0;
-    var crn5Position = 0;
-
-    // 鍒濆鍖�
-    getSitesInfo();
-    getCrnInfo();
-    getSystemRunningStatus();
-    getBarcodeInfo();
-    getScaleInfo();
-    // 瀹炴椂璁块棶
-    setInterval(function () {
-        getCrnInfo();
-        getSystemRunningStatus();
-        getBarcodeInfo();
-        getScaleInfo();
-    }, 1000);
-    setInterval(function () {
-        getSitesInfo();
-    }, 3000);
-
-    // 绯荤粺杩愯寮�鍏�
-    function systemSwitch() {
-        if (parent.systemRunning) {
-            layer.prompt({title: '璇疯緭鍏ュ彛浠わ紝骞跺仠姝� WCS 绯荤粺', formType: 1, shadeClose: true}, function (pass, idx) {
-                layer.close(idx);
-                doSwitch(0, pass); // 鍋滄wcs绯荤粺
-            });
-        } else {
-            doSwitch(1); // 鍚姩wcs绯荤粺
-        }
-    }
-
-    // 璇锋眰鏈嶅姟鍣ㄦ帶鍒秝cs绯荤粺杩愯鐘舵��
-    function doSwitch(operatorType, password) {
-        // 鍔犺浇tips
-        var index = layer.load(1, {
-            shade: [0.1, '#fff']
-        });
-        $.ajax({
-            url: baseUrl + "/console/system/switch",
-            headers: {'token': localStorage.getItem('token')},
-            // async: false,
-            data: {
-                operatorType: operatorType,
-                password: password
-            },
-            method: 'POST',
-            success: function (res) {
-                layer.close(index);
-                if (res.code === 200) {
-                    if (res.data.status) {
-                        $('#system-icon').attr("class", "system-icon-open");
-                        $('#system-run-desc').html("绯荤粺杩愯涓�...");
-                        parent.systemRunning = true;
-                    } else {
-                        $('#system-icon').attr("class", "system-icon-close");
-                        $('#system-run-desc').html("绯荤粺宸插仠姝�!");
-                        parent.systemRunning = false;
-                    }
-                } else if (res.code === 403) {
-                    parent.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-
-                }
-            }
-        });
-
-    }
-
-    // 鑾峰彇wcs绯荤粺杩愯鐘舵��
-    function getSystemRunningStatus() {
-        $.ajax({
-            url: baseUrl + "/console/system/running/status",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                if (res.code === 200) {
-                    if (res.data.status) {
-                        $('#system-icon').attr("class", "system-icon-open");
-                        $('#system-run-desc').html("绯荤粺杩愯涓�...");
-                        parent.systemRunning = true;
-                    } else {
-                        $('#system-icon').attr("class", "system-icon-close");
-                        $('#system-run-desc').html("绯荤粺宸插仠姝�!");
-                        parent.systemRunning = false;
-                    }
-                } else if (res.code === 403) {
-                    parent.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    // 杈撻�佽澶囧疄鏃舵暟鎹幏鍙�
-    function getSitesInfo() {
-        $.ajax({
-            url: baseUrl + "/console/latest/data/site",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                if (res.code === 200) {
-                    var sites = res.data;
-                    for (var i = 0; i < sites.length; i++) {
-                        var siteEl = $("#site-" + sites[i].siteId);
-                        siteEl.attr("class", "site " + sites[i].siteStatus);
-                        if (sites[i].workNo != null && sites[i].workNo > 0) {
-                            siteEl.html(sites[i].siteId + "[" + sites[i].workNo + "]");
-                        } else {
-                            siteEl.html(sites[i].siteId);
-                        }
-                        if (i + 1 === 8) {
-                            carAnimate(i + 1, Number(sites[i].nearbySta));
-                        }
-                    }
-                } else if (res.code === 403) {
-                    parent.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    // 鍫嗗灈鏈哄疄鏃舵暟鎹幏鍙�
-    function getCrnInfo() {
-        $.ajax({
-            url: baseUrl + "/console/latest/data/crn",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                if (res.code === 200) {
-                    var crns = res.data;
-                    for (var i = 0; i < crns.length; i++) {
-                        var crnEl = $("#crn-" + crns[i].crnId);
-                        crnEl.attr("class", "machine " + crns[i].crnStatus);
-                        var unit = ($('.item').eq(0).width() + 13) / 2;
-                        if (crns[i].bay < 0) {
-                            crns[i].bay = 0
-                        }
-                        crnEl.animate({left: (crns[i].bay * unit) + 'px'}, 1000);
-                    }
-                } else if (res.code === 403) {
-                    parent.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    // 鎵爜鍣ㄥ疄鏃舵暟鎹幏鍙�
-    function getBarcodeInfo() {
-        $.ajax({
-            url: baseUrl + "/console/latest/data/barcode",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                if (res.code === 200) {
-                    var barcodes = res.data;
-                    for (var i = 0; i < barcodes.length; i++) {
-                        $("#code-decoder-data-" + barcodes[i].barcodeId).html(barcodes[i].codeValue);
-                    }
-                } else if (res.code === 403) {
-                    parent.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    // 纾呯Г瀹炴椂鏁版嵁鑾峰彇
-    function getScaleInfo() {
-        $.ajax({
-            url: baseUrl + "/console/latest/data/scale",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-
-                if (res.code === 200) {
-                    var sclaes = res.data;
-                    for (var i = 0; i < sclaes.length; i++) {
-                        console.log(sclaes[i].scaleId + ":" + sclaes[i].value)
-                        $("#scale-data-" + sclaes[i].scaleId).text(sclaes[i].value);
-                    }
-                } else if (res.code === 403) {
-                    parent.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    // 鍫嗗灈鏈哄亸绉诲姩鐢�
-    function crnAnimate(id, leftVal) {
-        switch (id) {
-            case 1:
-                $("#crn-1").animate({left: leftVal + 'px'}, 1000);
-                crn1Position = leftVal;
-                break;
-            case 2:
-                $("#crn-2").animate({left: leftVal + 'px'}, 1000);
-                crn2Position = leftVal;
-                break;
-            case 3:
-                $("#crn-3").animate({left: leftVal + 'px'}, 1000);
-                crn3Position = leftVal;
-                break;
-            case 4:
-                $("#crn-4").animate({left: leftVal + 'px'}, 1000);
-                crn4Position = leftVal;
-                break;
-            case 5:
-                $("#crn-5").animate({left: leftVal + 'px'}, 1000);
-                crn5Position = leftVal;
-                break;
-            default:
-                break
-        }
-    }
-
-    // 椤甸潰鐐瑰嚮浜嬩欢鐩戝惉 ---------------------------------------------------------
-
-    // 杈撻�佽澶囩偣鍑讳簨浠�
-    // $('.site').on('click', function () {
-    // 	var id = this.id.split("-")[1];
-    // 	if (id === undefined) {
-    // 		return;
-    // 	}
-    // 	layer.open({
-    // 		title: id + " 绔欑偣淇℃伅璇︽儏",
-    // 		closeBtn: 0,
-    // 		skin: 'layui-layer-lan',
-    // 		offset: '180px',
-    // 		type: 1,
-    // 		shadeClose: true,
-    // 		content: $('#siteWindow'),
-    // 		area: ['35rem', '18rem'],
-    // 		btn: ['纭畾', '鍏抽棴'],
-    // 		success: function(layero, index){
-    // 			http.post(baseUrl+"/console/site/detail", {siteId: id}, function (res) {
-    // 				for (var val in res.data) {
-    // 					var find = $("#siteWindow").find(":input[name='" + val + "']");
-    // 					if (find[0].type==='text') {
-    // 						find.val(res.data[val]);
-    // 					} else if (find[0].type === 'checkbox') {
-    // 						find.attr("checked", res.data[val] === 'Y');
-    // 					}
-    // 				}
-    // 			})
-    // 		},
-    // 		end: function () {
-    // 			$(':input', $("#siteWindow")).val('').removeAttr('checked').removeAttr('selected');
-    // 		}
-    // 	});
-    // });
-
-    // 鍫嗗灈鏈虹偣鍑讳簨浠�
-    // $('.machine').on('click', function () {
-    // 	var id = this.id.split("-")[1];
-    // 	layer.open({
-    // 		title: id+"鍙峰爢鍨涙満",
-    // 		skin: 'layui-layer-lan',
-    // 		closeBtn: 0,
-    // 		type: 1,
-    // 		offset: '150px',
-    // 		shadeClose: true,
-    // 		content: $("#crnWindow"),
-    // 		area: ['40rem', '20rem'],
-    // 		btn: ['纭畾', '鍏抽棴'],
-    // 		success: function(layero, index){
-    // 			http.post(baseUrl+"/console/crn/detail", {crnNo: id}, function (res) {
-    // 				for (var val in res.data) {
-    // 					var find = $("#crnWindow").find(":input[name='" + val + "']");
-    // 					if (find[0].type==='text') {
-    // 						find.val(res.data[val]);
-    // 					} else if (find[0].type === 'checkbox') {
-    // 						find.attr("checked", res.data[val] === 'Y');
-    // 					}
-    // 				}
-    // 			})
-    // 		},
-    // 		end: function () {
-    // 			$(':input', $("#crnWindow")).val('').removeAttr('checked').removeAttr('selected');
-    // 		}
-    // 	});
-    // });
-
-
-    // 灏忚溅鍋忕Щ鍔ㄧ敾
-    function carAnimate(id, target) {
-        var targetTop = 122;
-        if (id === 8) {
-            switch (target) {
-                case 1:
-                    targetTop += 160;
-                    break;
-                case 2:
-                    targetTop += 140;
-                    break;
-                case 3:
-                    targetTop += 80;
-                    break;
-                case 4:
-                    targetTop += 40;
-                    break;
-                case 7:
-                    targetTop += 0;
-                    break;
-                default:
-                    return;
-            }
-        } else {
-            return;
-        }
-        $("#site-" + id).animate({top: targetTop + 'px'}, 1000);
-    }
-
-
-</script>
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/webapp/views/console.html b/zy-acs-cv/src/main/webapp/views/console.html
deleted file mode 100644
index 8a48028..0000000
--- a/zy-acs-cv/src/main/webapp/views/console.html
+++ /dev/null
@@ -1,767 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <meta charset="UTF-8">
-    <title>鑷姩浠撳簱wcs绯荤粺</title>
-    <link rel="stylesheet" href="../static/css/render.css">
-    <script src="../static/js/jquery/jquery-3.3.1.min.js"></script>
-    <script src="../static/js/layer/layer.js"></script>
-    <!--鍦板浘json-->
-    <script src="../static/js/console.map.js"></script>
-    <script src="../static/js/console.js"></script>
-    <script src="../static/js/common.js"></script>
-
-
-</head>
-<body>
-    <div id="main">
-        <div class="head">
-            <div class="head-left">
-                <h1>鑷姩浠撳簱WCS鐩戞帶鍥�</h1>
-                <h6>AUTOMATIC WAREHOUSE WCS MONITORING DIAGRAM</h6>
-            </div>
-            <div class="head-right">
-                <img src="../static/images/zy-logo.png" alt="涓壃" height="44" width="80">
-            </div>
-        </div>
-        <!-- 璐ф灦 + 鍫嗗灈鏈� + 鍏ュ簱绔欑偣 -->
-        <div class="main-part">
-
-        </div>
-        <div id="body">
-            <!-- 鎬诲紑鍏� -->
-            <div class="system-state">
-                <div class="body-head">鎬诲紑鍏�</div>
-                <div class="switch">
-                    <div id="system-icon" class="system-icon-open" onclick="systemSwitch()"></div>
-                    <div class="switch_r">
-                        <p>绯荤粺鐘舵��</p>
-                        <p id="system-run-desc">绯荤粺杩愯涓�</p>
-                    </div>
-                </div>
-            </div>
-            <!-- 鍫嗗灈鏈虹姸鎬� -->
-            <div class="machine-status">
-                <div class="body-head">鍫嗗灈鏈虹姸鎬�</div>
-                <div class="state">
-                    <span>鍫嗗灈鏈� 1</span>
-                    <span class="state-ss machine-put-flag	">鍏ュ簱</span>
-                </div>
-                <div class="state">
-                    <span>鍫嗗灈鏈� 2</span>
-                    <span class="state-ss machine-auto-flag	">鑷姩</span>
-
-                </div>
-                <div class="button"><span>鎵�鏈夌姸鎬�</span></div>
-                <div class="button item-group">
-                    <span class="machine-put-flag">鍏ュ簱</span>
-                    <span class="machine-take-flag">鍑哄簱</span>
-                    <span class="machine-stock-move-flag">搴撳埌搴�</span>
-                    <span class="machine-site-move-flag">绔欏埌绔�</span>
-                    <span class="machine-p-move-flag">PToP</span>
-                    <span class="machine-error-flag">寮傚父</span>
-                    <span class="machine-auto-flag">鑷姩</span>
-                    <span class="machine-unauto-flag">闈炶嚜鍔�/鎵嬪姩</span>
-                </div>
-            </div>
-            <div class="line-status">
-                <div class="body-head">杈撻�佺嚎鐘舵��</div>
-                <div class="state states">
-                    <span>杩愯緭绾挎�绘暟</span>
-                    <span id="line-total" class="line-ss"></span>
-                </div>
-                <div class="button"><span>鎵�鏈夌姸鎬�</span></div>
-                <div class="button item-group">
-                    <span class="site-auto-run-id">鑷姩+鏈夌墿+ID</span>
-                    <span class="site-auto-run">鑷姩+鏈夌墿</span>
-                    <span class="site-auto-id">鑷姩+ID</span>
-                    <span class="site-auto">鑷姩</span>
-                    <span class="site-unauto">闈炶嚜鍔�/鎵嬪姩</span>
-                </div>
-            </div>
-            <div class="bar-code">
-                <div class="body-head" id="code">鏉$爜鎵弿鍣�</div>
-                <div class="tablebox">
-                    <div class="table-head">
-                        <li><span>鏉$爜鍚嶇О</span><span class="right">鎵爜鏃堕棿</span></li>
-                    </div>
-                    <div id="barcode1" class="table-body">
-
-                    </div>
-                </div>
-                <div class="tablebox">
-                    <div class="table-head">
-                        <li><span>鏉$爜鍚嶇О</span><span class="right">鎵爜鏃堕棿</span></li>
-                    </div>
-                    <div id="barcode2" class="table-body">
-
-                    </div>
-                </div>
-                <div class="tablebox">
-                    <div class="table-head">
-                        <li><span>鏉$爜鍚嶇О</span><span class="right">鎵爜鏃堕棿</span></li>
-                    </div>
-                    <div id="barcode3" class="table-body">
-
-                    </div>
-                </div>
-            </div>
-        </div>
-        <!-- 鍫嗗灈鏈哄脊绐� -->
-        <div id="crnWindow" style="display: none;" class="animate__animated animate__fadeIn">
-            <div id="crnWindow-head">
-                <div class='detailed'></div>
-                <button></button>
-            </div>
-            <form>
-                <!-- 鍫嗗灈鏈哄彿 -->
-                <div class="form-item">
-                    <div class="form-item-label" style>
-                        <span>鍫嗗灈鏈哄彿锛�</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="crnNo" value="">
-                    </div>
-                </div>
-                <!-- 宸ヤ綔鍙� -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>宸ヤ綔鍙凤細</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="workNo" value="">
-                    </div>
-                </div>
-                <!-- 绔欐簮 -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>绔欐簮锛�</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="sourceStaNo" value="">
-                    </div>
-                </div>
-                <!-- 鐩爣绔� -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>鐩爣绔欙細</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="staNo" value="">
-                    </div>
-                </div>
-                <!-- 宸ヤ綔鐘舵�� -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>宸ヤ綔鐘舵�侊細</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="wrkSts" value="">
-                    </div>
-                </div>
-                <!-- 鍑哄叆绫诲瀷 -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>鍑哄叆绫诲瀷锛�</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="ioType" value="">
-                    </div>
-                </div>
-                <!-- 婧愬簱浣� -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>婧愬簱浣嶏細</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="sourceLocNo" value="">
-                    </div>
-                </div>
-                <!-- 鐩爣搴撲綅 -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>鐩爣搴撲綅锛�</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="locNo" value="">
-                    </div>
-                </div>
-                <!-- 鍫嗗灈鏈虹姸鎬� -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>鍫嗗灈鏈虹姸鎬侊細</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="crnStatus" value="">
-                    </div>
-                </div>
-                <!-- 寮傚父 -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>寮傚父锛�</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="error" value="">
-                    </div>
-                </div>
-            </form>
-        </div>
-        <!-- 杈撻�佽澶囧脊绐� -->
-        <div id="siteWindow" style="display: none;" class="animate__animated animate__fadeIn">
-            <!-- 琛ㄥご -->
-            <div id="siteWindow-head">
-                <div class='detailed'></div>
-                <button></button>
-            </div>
-            <form>
-                <!-- 璁惧鍙� -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>璁惧鍙凤細</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="siteId" value="">
-                    </div>
-                </div>
-                <!-- 宸ヤ綔鍙� -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>宸ヤ綔鍙凤細</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="workNo" value="">
-                    </div>
-                </div>
-                <!-- 宸ヤ綔鐘舵�� -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>宸ヤ綔鐘舵�侊細</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="wrkSts" value="">
-                    </div>
-                </div>
-                <!-- 鑷姩 -->
-                <div class="form-item-checkbox">
-                    <div class="form-item-label-checkbox">
-                        <span>鑷姩</span>
-                    </div>
-                    <div class="form-item-input-checkbox">
-                        <input type="checkbox" name="autoing">
-                    </div>
-                </div>
-                <!-- 鏈夌墿 -->
-                <div class="form-item-checkbox">
-                    <div class="form-item-label-checkbox">
-                        <span>鏈夌墿</span>
-                    </div>
-                    <div class="form-item-input-checkbox">
-                        <input type="checkbox" name="loading">
-                    </div>
-                </div>
-                <!-- 鑳藉叆 -->
-                <div class="form-item-checkbox">
-                    <div class="form-item-label-checkbox">
-                        <span>鑳藉叆</span>
-                    </div>
-                    <div class="form-item-input-checkbox">
-                        <input type="checkbox" name="canining">
-                    </div>
-                </div>
-                <!-- 鑳藉嚭 -->
-                <div class="form-item-checkbox">
-                    <div class="form-item-label-checkbox">
-                        <span>鑳藉嚭</span>
-                    </div>
-                    <div class="form-item-input-checkbox">
-                        <input type="checkbox" name="canouting">
-                    </div>
-                </div>
-                <!-- 鍑哄叆绫诲瀷 -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>鍑哄叆绫诲瀷锛�</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="ioType" value="">
-                    </div>
-                </div>
-                <!-- 婧愮珯 -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>婧愮珯锛�</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="sourceStaNo" value="">
-                    </div>
-                </div>
-                <!-- 鐩爣绔� -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>鐩爣绔欙細</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="staNo" value="">
-                    </div>
-                </div>
-                <!-- 婧愬簱浣� -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>婧愬簱浣嶏細</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="sourceLocNo" value="">
-                    </div>
-                </div>
-                <!-- 鐩爣搴撲綅 -->
-                <div class="form-item">
-                    <div class="form-item-label">
-                        <span>鐩爣搴撲綅锛�</span>
-                    </div>
-                    <div class="form-item-input">
-                        <input type="text" name="locNo" value="">
-                    </div>
-                </div>
-
-            </form>
-        </div>
-    </div>
-
-</body>
-
-</html>
-<script>
-    getMap();
-</script>
-<script>
-    setInterval(function () {
-        getCodeData();
-        renderBarCode();
-    }, 1000)
-    var tData = [],tData1 = [],tData2 = [],tData3 = [];
-    function getCodeData() {
-        $.ajax({
-            url: baseUrl + '/console/barcode/output/site',
-            method: 'GET',
-            success: function (res) {
-                console.log(res)
-                if (res.code === 200) {
-                    tData = eval(res.data);
-                    if (tData.length <= 5) {
-                        tData1 = tData
-                    } else if (tData.length <= 10) {
-                        tData1 = tData.slice(0, 5)
-                        tData.splice(0, 5)
-                        tData2 = tData
-                    } else if (tData.length <= 15) {
-                        tData1 = tData.slice(0, 5)
-                        tData2 = tData.slice(6, 10)
-                        tData.splice(0, 10)
-                        tData3 = tData
-                    } else {
-                        tData = tData.slice(-15)
-                        tData1 = tData.slice(-15)
-                        tData2 = tData.slice(-10)
-                        tData3 = tData.slice(-5)
-                    }
-                }
-            }
-        })
-    }
-    function renderBarCode() {
-        for (var i = 0; i < tData1.length; i++) {
-            var str1 = '<li><span>' + tData1[i].barcode + '</span><span class="right">' + tData1[i].time + '</span></li>'
-            $('#barcode1').append(str1)
-        }
-        for (var j = 0; j < tData2.length; j++) {
-            var str2 = '<li><span>' + tData2[j].barcode + '</span><span class="right">' + tData2[j].time + '</span></li>'
-            $('#barcode2').append(str2)
-        }
-        for (var k = 0; k < tData3.length; k++) {
-            var str3 = '<li><span>' + tData3[k].barcode + '</span><span class="right">' + tData3[k].time + '</span></li>'
-            $('#barcode3').append(str3)
-        }
-    }
-</script>
-<script type="text/javascript">
-    // 寮圭獥绔欑偣淇℃伅
-    $('.site').on('click', function () {
-        var id = this.id.split("-")[1];
-        $("#siteWindow").attr("style", "display:block;");//鏄剧ずdiv
-        $("#crnWindow").attr("style", "display:none;");
-        $(".detailed").empty();
-        $('.detailed').append(id + '绔欑偣璇︾粏淇℃伅');
-        $.ajax({
-            url: baseUrl + "/console/site/detail",
-            headers: {
-                'token': localStorage.getItem('token')
-            },
-            data: {
-                siteId: id
-            },
-            method: 'post',
-            success: function (res) {
-                for (var val in res.data) {
-                    var find = $("#siteWindow").find(":input[name='" + val + "']");
-                    if (find[0].type === 'text') {
-                        find.val(res.data[val]);
-                    } else if (find[0].type === 'checkbox') {
-                        find.attr("checked", res.data[val] === 'Y');
-                    }
-                }
-            }
-
-        })
-
-    });
-    // 鍫嗗灈鏈轰俊鎭�
-    $('.machine').on('click', function () {
-        var id = this.id.split("-")[1];
-        $("#crnWindow").attr('style', 'display:block;');
-        $("#siteWindow").attr("style", "display:none;");
-        $('.detailed').empty();
-        $('.detailed').append(id + '鍙峰爢鍨涙満');
-        $.ajax({
-            url: baseUrl + "/console/crn/detail",
-            headers: {
-                'token': localStorage.getItem('token')
-            },
-            data: {
-                crnNo: id
-            },
-            method: 'post',
-            success: function (res) {
-                for (var val in res.data) {
-                    var find = $("#crnWindow").find(":input[name='" + val + "']");
-                    if (find[0].type === 'text') {
-                        find.val(res.data[val]);
-                    } else if (find[0].type === 'checkbox') {
-                        find.attr("checked", res.data[val] === 'Y');
-                    }
-                }
-            }
-
-        })
-
-    })
-    // 寮圭獥鍏抽棴
-    $('button').on('click', function () {
-        $('#siteWindow').attr('style', 'display:none')
-        $('#crnWindow').attr('style', 'display:none')
-    })
-
-
-    var crn1Position = 0;
-    var crn2Position = 0;
-    var crn3Position = 0;
-    var crn4Position = 0;
-    var crn5Position = 0;
-
-    // 鍒濆鍖�
-    getSitesInfo();
-    getCrnInfo();
-    getSystemRunningStatus();
-    getBarcodeInfo();
-    getScaleInfo();
-    // 瀹炴椂璁块棶
-    setInterval(function () {
-        getCrnInfo();
-        getSystemRunningStatus();
-        getBarcodeInfo();
-        getScaleInfo();
-    }, 1000);
-    setInterval(function () {
-        getSitesInfo();
-    }, 3000);
-
-    // 绯荤粺杩愯寮�鍏�
-    function systemSwitch() {
-        if (parent.systemRunning) {
-            layer.prompt({title: '璇疯緭鍏ュ彛浠わ紝骞跺仠姝� WCS 绯荤粺', formType: 1, shadeClose: true}, function (pass, idx) {
-                layer.close(idx);
-                doSwitch(0, pass); // 鍋滄wcs绯荤粺
-            });
-        } else {
-            doSwitch(1); // 鍚姩wcs绯荤粺
-        }
-    }
-
-    // 璇锋眰鏈嶅姟鍣ㄦ帶鍒秝cs绯荤粺杩愯鐘舵��
-    function doSwitch(operatorType, password) {
-        // 鍔犺浇tips
-        var index = layer.load(1, {
-            shade: [0.1, '#fff']
-        });
-        $.ajax({
-            url: baseUrl + "/console/system/switch",
-            headers: {'token': localStorage.getItem('token')},
-            // async: false,
-            data: {
-                operatorType: operatorType,
-                password: password
-            },
-            method: 'POST',
-            success: function (res) {
-                layer.close(index);
-                if (res.code === 200) {
-                    if (res.data.status) {
-                        $('#system-icon').attr("class", "system-icon-open");
-                        $('#system-run-desc').html("绯荤粺杩愯涓�...");
-                        parent.systemRunning = true;
-                    } else {
-                        $('#system-icon').attr("class", "system-icon-close");
-                        $('#system-run-desc').html("绯荤粺宸插仠姝�!");
-                        parent.systemRunning = false;
-                    }
-                } else if (res.code === 403) {
-                    parent.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-
-                }
-            }
-        });
-
-    }
-
-    // 鑾峰彇wcs绯荤粺杩愯鐘舵��
-    function getSystemRunningStatus() {
-        $.ajax({
-            url: baseUrl + "/console/system/running/status",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                if (res.code === 200) {
-                    if (res.data.status) {
-                        $('#system-icon').attr("class", "system-icon-open");
-                        $('#system-run-desc').html("绯荤粺杩愯涓�...");
-                        parent.systemRunning = true;
-                    } else {
-                        $('#system-icon').attr("class", "system-icon-close");
-                        $('#system-run-desc').html("绯荤粺宸插仠姝�!");
-                        parent.systemRunning = false;
-                    }
-                } else if (res.code === 403) {
-                    parent.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    // 杈撻�佽澶囧疄鏃舵暟鎹幏鍙�
-    function getSitesInfo() {
-        $.ajax({
-            url: baseUrl + "/console/latest/data/site",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                if (res.code === 200) {
-                    var sites = res.data;
-                    for (var i = 0; i < sites.length; i++) {
-                        var siteEl = $("#site-" + sites[i].siteId);
-                        siteEl.attr("class", "site " + sites[i].siteStatus);
-                        if (sites[i].workNo != null && sites[i].workNo > 0) {
-                            siteEl.html(sites[i].siteId + "[" + sites[i].workNo + "]");
-                        } else {
-                            siteEl.html(sites[i].siteId);
-                        }
-
-                        if (sites[i].siteId === '1' || sites[i].siteId === '2' || sites[i].siteId === '3') {
-
-                            carAnimate(Number(sites[i].siteId), Number(sites[i].nearbySta));
-                        }
-                    }
-                } else if (res.code === 403) {
-                    parent.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    // 鍫嗗灈鏈哄疄鏃舵暟鎹幏鍙�
-    function getCrnInfo() {
-        $.ajax({
-            url: baseUrl + "/console/latest/data/crn",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                // console.log(res)
-                if (res.code === 200) {
-                    var crns = res.data;
-                    for (var i = 0; i < crns.length; i++) {
-                        var crnEl = $("#crn-" + crns[i].crnId);
-                        crnEl.attr("class", "machine " + crns[i].crnStatus);
-                        var unit = 0;//($('.item').eq(0).width() + 13) / 2;
-
-                        if (crns[i].bay < 0 || crns[i].bay === -2) {
-                            crns[i].bay = 1
-                        }
-                        // crnEl.animate({left: (crns[i].bay * unit) + 'px'}, 1000);
-                        // crns[i].bay = 15;
-                        var offSet = 0;
-                        switch (i) {
-                            case 0:
-                            case 1:
-                            case 2:
-                            case 3:
-                                unit = 18;
-                                offSet = 500;
-                                break;
-                            case 5:
-                                unit = 124;
-                                offSet = 550;
-                                break;
-                            case 4:
-                            case 6:
-                                unit = 62;
-                                offSet = 550;
-                                break;
-                        }
-
-                        if(crns[i].bay === 1){
-                            crnEl.animate({left: offSet + 'px'}, 1000);
-                        } else {
-                            crnEl.animate({left: (offSet - unit + (crns[i].bay * unit)) + 'px'}, 1000);
-                        }
-
-                    }
-                } else if (res.code === 403) {
-                    parent.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    // 鎵爜鍣ㄥ疄鏃舵暟鎹幏鍙�
-    function getBarcodeInfo() {
-        $.ajax({
-            url: baseUrl + "/console/latest/data/barcode",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                if (res.code === 200) {
-                    var barcodes = res.data;
-                    for (var i = 0; i < barcodes.length; i++) {
-                        $("#barcode-"+barcodes[i].barcodeId).html(barcodes[i].codeValue ? barcodes[i].codeValue : "--");
-                    }
-                } else if (res.code === 403) {
-                    parent.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    // 纾呯Г瀹炴椂鏁版嵁鑾峰彇
-    function getScaleInfo() {
-        $.ajax({
-            url: baseUrl + "/console/latest/data/scale",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-
-                if (res.code === 200) {
-                    var sclaes = res.data;
-                    for (var i = 0; i < sclaes.length; i++) {
-                        console.log(sclaes[i].scaleId + ":" + sclaes[i].value)
-                        $("#scale-data-" + sclaes[i].scaleId).text(sclaes[i].value);
-                    }
-                } else if (res.code === 403) {
-                    parent.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    // 鍫嗗灈鏈哄亸绉诲姩鐢�
-    function crnAnimate(id, leftVal) {
-        // console.log(crn1Position)
-        switch (id) {
-            case 1:
-                $("#crn-1").animate({left: leftVal + 'px'}, 1000);
-                crn1Position = leftVal;
-                break;
-            case 2:
-                $("#crn-2").animate({left: leftVal + 'px'}, 1000);
-                crn2Position = leftVal;
-                break;
-            case 3:
-                $("#crn-3").animate({left: leftVal + 'px'}, 1000);
-                crn3Position = leftVal;
-                break;
-            // case 4:
-            //     $("#crn-4").animate({left: leftVal + 'px'}, 1000);
-            //     crn4Position = leftVal;
-            //     break;
-            // case 5:
-            //     $("#crn-5").animate({left: leftVal + 'px'}, 1000);
-            //     crn5Position = leftVal;
-            //     break;
-            default:
-                break
-        }
-    }
-
-    // 灏忚溅鍋忕Щ鍔ㄧ敾
-    function carAnimate(id, target) {
-        // debugger
-        var targetTop = 0;
-        if (id === 1 || id === '1' || id === '2' || id === 2 || id === '3' || id === 3) {
-            switch (target) {
-                case 1:
-                    targetTop += 792;
-                    break;
-                case 2:
-                    targetTop += 771;
-                    break;
-                case 3:
-                    targetTop += 727;
-                    break;
-                case 4:
-                    targetTop += 706;
-                    break;
-                case 5:
-                    targetTop += 662;
-                    break;
-                case 6:
-                    targetTop += 620;
-                    break;
-                case 7:
-                    targetTop += 578;
-                    break;
-                case 8:
-                    targetTop += 530;
-                    break;
-                case 9:
-                    targetTop += 190;
-                    break;
-                case 10:
-                    targetTop += 147;
-                    break;
-                case 11:
-                    targetTop += 107;
-                    break;
-                case 12:
-                    targetTop += 63;
-                    break;
-                default:
-                    return;
-            }
-        } else {
-            return;
-        }
-
-        $("#site-" + id).animate({top: targetTop + 'px'}, 1000);
-    }
-
-
-</script>
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/webapp/views/control.html b/zy-acs-cv/src/main/webapp/views/control.html
index 0468aed..867f9d6 100644
--- a/zy-acs-cv/src/main/webapp/views/control.html
+++ b/zy-acs-cv/src/main/webapp/views/control.html
@@ -5,7 +5,8 @@
     <title>WCS鐩戞帶</title>
     <meta name="renderer" content="webkit">
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="viewport"
+          content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
     <link rel="stylesheet" type="text/css" href="../static/css/normalize.css">
     <link rel="stylesheet" type="text/css" href="../static/css/common.css">
     <script type="text/javascript" src="../static/js/jquery/jquery-3.3.1.min.js"></script>
@@ -19,8 +20,8 @@
             right: 0;
             left: 0;
             text-align: center;
-            font: 14px Helvetica Neue,Helvetica,PingFang SC,\5FAE\8F6F\96C5\9ED1,Tahoma,Arial,sans-serif;
-            box-shadow: 0 -1px 2px 0 rgba(0,0,0,.0);
+            font: 14px Helvetica Neue, Helvetica, PingFang SC, \5FAE\8F6F\96C5\9ED1, Tahoma, Arial, sans-serif;
+            box-shadow: 0 -1px 2px 0 rgba(0, 0, 0, .0);
             box-sizing: border-box;
             background-color: #fff;
             z-index: 999;
@@ -28,12 +29,14 @@
             font-size: 13px;
             line-height: 30px;
         }
+
         footer a {
             color: #3573ab;
             font-weight: bold;
             text-decoration: none;
             cursor: pointer;
         }
+
         body {
             background-color: #e5e5e5;
             padding: 10px;
@@ -41,17 +44,17 @@
 
         header {
             border-radius: 5px;
-            box-shadow: 0 0 3px rgba(0,0,0,.3);
+            box-shadow: 0 0 3px rgba(0, 0, 0, .3);
             background-color: #fff;
             height: 29%;
             position: relative;
             padding: 10px 20px;
         }
 
-        main{
+        main {
             margin-top: 10px;
             border-radius: 5px;
-            box-shadow: 0 0 3px rgba(0,0,0,.3);
+            box-shadow: 0 0 3px rgba(0, 0, 0, .3);
             background-color: #fff;
             height: 67%;
             position: relative;
@@ -62,6 +65,7 @@
             width: 50%;
             height: 100%;
         }
+
         .main-item:last-child {
             border-left: 1px solid rgba(0, 0, 0, 0.3);
         }
@@ -69,23 +73,24 @@
 </head>
 <body>
 
-    <header>
-        <div style="font-size: 180px">鍫嗗灈鏈鸿椹堕�熷害</div>
-    </header>
+<header>
+    <div style="font-size: 180px">鍫嗗灈鏈鸿椹堕�熷害</div>
+</header>
 
-    <main>
-        <div class="main-item">
+<main>
+    <div class="main-item">
 
-        </div>
+    </div>
 
-        <div class="main-item">
+    <div class="main-item">
 
-        </div>
-    </main>
+    </div>
+</main>
 
-    <footer class="footer">
-        Copyright 漏 2023 All Rights Reserved. <a href="http://www.zoneyung.com" target="_blank">娴欐睙涓壃绔嬪簱鎶�鏈湁闄愬叕鍙�</a>  淇濈暀鎵�鏈夋潈鍒�
-    </footer>
+<footer class="footer">
+    Copyright 漏 2023 All Rights Reserved. <a href="http://www.zoneyung.com" target="_blank">娴欐睙涓壃绔嬪簱鎶�鏈湁闄愬叕鍙�</a>
+    淇濈暀鎵�鏈夋潈鍒�
+</footer>
 
 </body>
 </html>
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/webapp/views/crn.html b/zy-acs-cv/src/main/webapp/views/crn.html
deleted file mode 100644
index 8c87a2e..0000000
--- a/zy-acs-cv/src/main/webapp/views/crn.html
+++ /dev/null
@@ -1,637 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <meta charset="UTF-8">
-    <title>鍫嗗灈鏈虹洃鎺х鐞�</title>
-    <meta name="renderer" content="webkit">
-    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
-    <link rel="stylesheet" type="text/css" href="../static/css/normalize.css">
-    <link rel="stylesheet" type="text/css" href="../static/css/common.css">
-    <link rel="stylesheet" type="text/css" href="../static/css/crn.css">
-    <script type="text/javascript" src="../static/js/jquery/jquery-3.3.1.min.js"></script>
-    <script type="text/javascript" src="../static/js/common.js"></script>
-    <script type="text/javascript" src="../static/js/layer/layer.js"></script>
-    <style>
-        .demoBtn {
-            vertical-align: middle;
-            width: 20%;
-            height: 25px;
-            left: 0;
-            top: 0;
-            text-shadow: inherit;
-            font-size: 15px;
-            margin-left: 5px;
-            margin-right: 5px;
-            display: inline-block;
-            background-color: #FF5722;
-            border: none;
-            color: #FFF;
-            box-shadow: 1px 1px 5px #B6B6B6;
-            border-radius: 3px;
-            cursor: pointer;
-        }
-
-        .demoBtn:hover {
-            opacity: 0.8
-        }
-        .demoBtn:focus {
-            outline: 0;
-        }
-    </style>
-</head>
-<body>
-<div style="padding: 10px;height: 100%;float: left;width: 6%">
-    <div class="button-window"></div>
-</div>
-<div style="height: 100%;padding-left: 6%">
-    <div style="padding: 10px;height: 100%">
-        <!-- 鏃ュ織鐩戞帶鏉� -->
-        <div class="log-board">
-            <!-- 鎵ц鍛戒护 -->
-
-            <!-- 鎵ц鍛戒护 -->
-            <div class="command-log">
-                <h3>鎵ц涓殑鍛戒护</h3>
-                <div class="crn-command-item">
-                    <label>1#</label>
-                    <button id="demoBtn-1" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>
-                    <!--            <span>&nbsp;</span>-->
-                    <input id="crn1" disabled="disabled">
-                </div>
-                <div class="crn-command-item">
-                    <label>2#</label>
-                    <button id="demoBtn-2" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>
-                    <!--            <span>&nbsp;</span>-->
-                    <input id="crn2" disabled="disabled">
-                </div>
-                <div class="crn-command-item">
-                    <label>3#</label>
-                    <button id="demoBtn-3" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>
-                    <!--            <span>&nbsp;</span>-->
-                    <input id="crn3" disabled="disabled">
-                </div>
-<!--                <div class="crn-command-item">-->
-<!--                    <label>4#</label>-->
-<!--                    <button id="demoBtn-4" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>-->
-<!--                    &lt;!&ndash;            <span>&nbsp;</span>&ndash;&gt;-->
-<!--                    <input id="crn4" disabled="disabled">-->
-<!--                </div>-->
-            </div>
-            <!-- 鍫嗗灈鏈虹姸鎬佷綅淇℃伅 -->
-            <div class="crn-state">
-                <table id="crn-state-table">
-                    <thead>
-                    <tr>
-                        <th>鍫嗗灈鏈�</th>
-                        <th>妯″紡</th>
-                        <th>鐘舵��</th>
-                        <th>鏈夌墿</th>
-                        <th>鍒�</th>
-                        <th>灞�</th>
-                        <th>璐у弶瀹氫綅</th>
-                        <th>杞借揣鍙板畾浣�</th>
-                        <th>璧拌鍦ㄥ畾浣�</th>
-                        <th>鏁呴殰浠g爜</th>
-                        <th>鏁呴殰鎻忚堪</th>
-                    </tr>
-                    </thead>
-                    <tbody>
-                    </tbody>
-                </table>
-            </div>
-        </div>
-        <!-- 鍫嗗灈鏈虹姸鎬� -->
-        <div class="crn-msg">
-            <table id="crn-msg-table">
-                <thead>
-                <tr>
-                    <th>鍫嗗灈鏈�</th>
-                    <th>宸ヤ綔鍙�</th>
-                    <th>鐘舵��</th>
-                    <th>婧愮珯</th>
-                    <th>鐩爣绔�</th>
-                    <th>婧愬簱浣�</th>
-                    <th>鐩爣搴撲綅</th>
-                    <th>璧拌閫熷害锛坢/min)</th>
-                    <th>鍗囬檷閫熷害锛坢/min)</th>
-                    <th>鍙夌墮閫熷害锛坢/min)</th>
-                    <th>璧拌璺濈(Km)</th>
-                    <th>鍗囬檷璺濈(Km)</th>
-                    <th>璧拌鏃堕暱(H)</th>
-                    <th>鍗囬檷鏃堕暱(H)</th>
-                </tr>
-                </thead>
-                <tbody>
-                </tbody>
-            </table>
-        </div>
-        <!-- 鎵嬪姩鎿嶄綔 -->
-        <div class="crn-operation">
-
-            <!-- 閬僵灞� -->
-            <div class="crn-operation-shade">
-        <span class="crn-operation-shade-span">
-            WCS 绯荤粺杩愯涓紝璇峰仠姝㈠悗鎿嶄綔
-        </span>
-            </div>
-
-            <!-- 璁惧浠诲姟閫夋嫨 -->
-            <div class="task-select">
-                <!-- 鍫嗗灈鏈洪�夋嫨 -->
-                <div id="crn-select" class="operator-item" style="width: 55%">
-                    <span class="select-title">鍫嗗灈鏈哄彿</span>
-                    <div class="select-container" style="padding: 20px 0;">
-                        <label><input type="radio" name="crnSelect" value="1" checked>&nbsp;1鍙峰爢鍨涙満</label>
-                        <label><input type="radio" name="crnSelect" value="2">&nbsp;2鍙峰爢鍨涙満</label>
-                        <label><input type="radio" name="crnSelect" value="3">&nbsp;3鍙峰爢鍨涙満</label>
-<!--                        <label><input type="radio" name="crnSelect" value="4">&nbsp;4鍙峰爢鍨涙満</label>-->
-                    </div>
-                </div>
-                <!-- 婧愮珯/婧愬簱浣� 閫夋嫨 -->
-                <div id="source-select" class="operator-item">
-                    <span class="select-title">婧愮珯/婧愬簱浣�</span>
-                    <div class="select-container">
-                        <div class="select-container-item">
-                            <span>绔�</span>
-                            <label><input id="sourceStaNo" type="number" name="points" min="0" /></label>
-                        </div>
-                        <div class="select-container-item">
-                            <span>鎺�</span>
-                            <label><input id="sourceRow" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label>
-                        </div>
-                        <div class="select-container-item">
-                            <span>鍒�</span>
-                            <label><input id="sourceBay" type="number" name="points" min="0" style="background-color: #a9eeff" value="0" /></label>
-                        </div>
-                        <div class="select-container-item">
-                            <span>灞�</span>
-                            <label><input id="sourceLev" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label>
-                        </div>
-                    </div>
-                </div>
-                <!-- 鐩爣绔�/鐩爣搴撲綅 閫夋嫨 -->
-                <div id="target-select" class="operator-item">
-                    <span class="select-title">鐩爣绔�/鐩爣搴撲綅</span>
-                    <div class="select-container">
-                        <div class="select-container-item">
-                            <span>绔�</span>
-                            <label><input id="staNo" type="number" name="points" min="0" /></label>
-                        </div>
-                        <div class="select-container-item">
-                            <span>鎺�</span>
-                            <label><input id="row" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label>
-                        </div>
-                        <div class="select-container-item">
-                            <span>鍒�</span>
-                            <label><input id="bay" type="number" name="points" min="0" style="background-color: #a9eeff" value="0" /></label>
-                        </div>
-                        <div class="select-container-item">
-                            <span>灞�</span>
-                            <label><input id="lev" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label>
-                        </div>
-                    </div>
-                </div>
-            </div>
-
-            <!-- 璁惧浠诲姟鎿嶄綔 -->
-            <div class="task-operator">
-                <fieldset>
-                    <legend>鎵嬪姩鎿嶄綔</legend>
-                    <div class="button-group">
-<!--                        <button class="item" onclick="put()">鍏ュ簱</button>-->
-<!--                        <button class="item" onclick="take()">鍑哄簱</button>-->
-                        <button class="item" onclick="stockMove()">搴撲綅杞Щ</button>
-<!--                        <button class="item" onclick="siteMove()">绔欏埌绔�</button>-->
-                        <!--                <button class="item" onclick="bacOrigin()">鍥炲師鐐�</button>-->
-                        <!--                <button class="item" onclick="reverseOrigin()">鍙嶅師鐐�</button>-->
-                        <!--                <button class="item" onclick="coorMove()">鍧愭爣绉昏</button>-->
-                        <button class="item" onclick="taskComplete()">浠诲姟瀹屾垚</button>
-                        <!--                <button class="item" onclick="pause()">鏆傚仠</button>-->
-                        <!--                <button class="item" onclick="boot()">鍚姩</button>-->
-<!--                        <button class="item" onclick="clearCommand()">娓呴櫎鍛戒护</button>-->
-<!--                        <button class="item" onclick="handleReset()">澶嶄綅</button>-->
-                    </div>
-                </fieldset>
-            </div>
-
-        </div>
-        <!-- 鍫嗗灈鏈烘棩蹇楄緭鍑� -->
-        <div class="crn-output-board">
-            <textarea id="crn-output"></textarea>
-        </div>
-    </div>
-</div>
-</body>
-<script>
-    // 绌虹櫧琛屾暟
-    var crnStateTableBlankRows = 0;
-    var crnMsgTableBlankRows = 0;
-    // 瀹為檯琛屾暟
-    var crnStateTableFullRows = 0;
-    var crnMsgTableFullRows = 0;
-    // 鍒濆鍖�
-    var crnOutputDom = document.getElementById("crn-output");
-    $(document).ready(function() {
-        getCommandLog();
-        initCrnStateTable();
-        getCrnStateInfo();
-        initCrnMsgTable();
-        getCrnMsgInfo();
-        operatorBlockShow();
-    });
-    // 鏁版嵁鏇存柊
-    setInterval(function () {
-        getCrnStateInfo();
-        getCrnMsgInfo();
-        getCommandLog();
-    },1000);
-    setInterval(function () {
-        getCrnOutput();
-        operatorBlockShow();
-        initDemo();
-    },500);
-
-    // 鍒ゆ柇鎵嬪姩鎿嶄綔妯″潡鏄惁鍙敤
-    function operatorBlockShow() {
-        if (parent.systemRunning) {
-            $('.crn-operation').css("opacity", "0.5");
-            $('.crn-operation-shade').show();
-            $('.crn-operation-shade-span').show();
-        }  else {
-            $('.crn-operation').css("opacity", "1");
-            $('.crn-operation-shade').hide();
-            $('.crn-operation-shade-span').hide();
-        }
-    }
-
-    // 鑾峰彇鍫嗗灈鏈烘墽琛屼腑鐨勫懡浠�
-    function getCommandLog() {
-        $.ajax({
-            url: baseUrl + "/crn/command/ongoing",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                if (res.code === 200) {
-                    var commands = res.data;
-                    for (var i=0; i<commands.length;i++){
-                        $("#crn"+commands[i].crnNo).val(commands[i].command);
-                    }
-                } else if (res.code === 403) {
-                    window.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-                }
-            }
-        })
-    }
-
-    // 鍫嗗灈鏈轰俊鎭〃鑾峰彇 ---- 琛ㄤ竴
-    function getCrnStateInfo() {
-        var tableEl = $('#crn-state-table');
-        $.ajax({
-            url: baseUrl+ "/crn/table/crn/state",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                if (res.code === 200){
-                    var table = res.data;
-                    if (table.length > crnStateTableBlankRows && table.length !== crnStateTableFullRows) {
-                        initCrnStateTable(table.length-crnStateTableBlankRows);
-                        crnStateTableFullRows = table.length;
-                    }
-                    for (var i=1;i<=table.length;i++){
-                        var tr = tableEl.find("tr").eq(i);
-                        setVal(tr.children("td").eq(0), table[i-1].crnNo);
-                        setVal(tr.children("td").eq(1), table[i-1].statusType);
-                        setVal(tr.children("td").eq(2), table[i-1].status);
-                        setVal(tr.children("td").eq(3), table[i-1].loading);
-                        setVal(tr.children("td").eq(4), table[i-1].bay);
-                        setVal(tr.children("td").eq(5), table[i-1].lev);
-                        setVal(tr.children("td").eq(6), table[i-1].forkOffset);
-                        setVal(tr.children("td").eq(7), table[i-1].liftPos);
-                        setVal(tr.children("td").eq(8), table[i-1].walkPos);
-                        setVal(tr.children("td").eq(9), table[i-1].warnCode);
-                        setVal(tr.children("td").eq(10), table[i-1].alarm);
-                    }
-                } else if (res.code === 403){
-                    window.location.href = baseUrl+"/login";
-                }  else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    // 鍫嗗灈鏈烘暟鎹〃鑾峰彇 ---- 琛ㄤ簩
-    function getCrnMsgInfo() {
-        var tableEl = $('#crn-msg-table');
-        $.ajax({
-            url: baseUrl+ "/crn/table/crn/msg",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                if (res.code === 200){
-                    var table = res.data;
-                    if (table.length > crnStateTableBlankRows && table.length !== crnMsgTableFullRows) {
-                        initCrnStateTable(table.length-crnStateTableBlankRows);
-                        crnMsgTableFullRows = table.length;
-                    }
-                    for (var i=1;i<=table.length;i++){
-                        var tr = tableEl.find("tr").eq(i);
-                        setVal(tr.children("td").eq(0), table[i-1].crnNo);
-                        setVal(tr.children("td").eq(1), table[i-1].workNo);
-                        setVal(tr.children("td").eq(2), table[i-1].status);
-                        setVal(tr.children("td").eq(3), table[i-1].sourceStaNo);
-                        setVal(tr.children("td").eq(4), table[i-1].staNo);
-                        setVal(tr.children("td").eq(5), table[i-1].sourceLocNo);
-                        setVal(tr.children("td").eq(6), table[i-1].locNo);
-                        setVal(tr.children("td").eq(7), table[i-1].xspeed);
-                        setVal(tr.children("td").eq(8), table[i-1].yspeed);
-                        setVal(tr.children("td").eq(9), table[i-1].zspeed);
-                        setVal(tr.children("td").eq(10), table[i-1].xdistance);
-                        setVal(tr.children("td").eq(11), table[i-1].ydistance);
-                        setVal(tr.children("td").eq(12), table[i-1].xduration);
-                        setVal(tr.children("td").eq(13), table[i-1].yduration);
-                    }
-                } else if (res.code === 403){
-                    window.location.href = baseUrl+"/login";
-                }  else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    // 鍫嗗灈鏈烘墜鍔ㄦ搷浣滃尯 -----------------------------------------------------------------------
-
-    function getReqParam() {
-        var crnNo = $('input[name="crnSelect"]:checked').val();
-        var sourceStaNo = $('#sourceStaNo').val();
-        var sourceRow = $('#sourceRow').val();
-        var sourceBay = $('#sourceBay').val();
-        var sourceLev = $('#sourceLev').val();
-        var staNo = $('#staNo').val();
-        var row = $('#row').val();
-        var bay = $('#bay').val();
-        var lev = $('#lev').val();
-        return {
-            crnNo: crnNo,
-            sourceStaNo: sourceStaNo,
-            sourceRow: sourceRow,
-            sourceBay: sourceBay,
-            sourceLev: sourceLev,
-            staNo: staNo,
-            row: row,
-            bay: bay,
-            lev: lev
-        };
-    }
-
-    // 鍏ュ簱
-    function put() {
-        http.post(baseUrl+"/crn/operator/put", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 鍑哄簱
-    function take() {
-        http.post(baseUrl+"/crn/operator/take", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 搴撲綅杞Щ
-    function stockMove() {
-        http.post(baseUrl+"/crn/operator/stockMove", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 绔欏埌绔�
-    function siteMove() {
-        http.post(baseUrl+"/crn/operator/siteMove", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 鍧愭爣绉诲姩
-    function coorMove() {
-        http.post(baseUrl+"/crn/operator/coorMove", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 鍥炲師鐐�
-    function bacOrigin() {
-        http.post(baseUrl+"/crn/operator/bacOrigin", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 鍥炲師鐐�
-    function reverseOrigin() {
-        http.post(baseUrl+"/crn/operator/reverseOrigin", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 浠诲姟瀹屾垚
-    function taskComplete() {
-        http.post(baseUrl+"/crn/operator/taskComplete", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 鏆傚仠
-    function pause() {
-        http.post(baseUrl+"/crn/operator/pause", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 鍚姩
-    function boot() {
-        http.post(baseUrl+"/crn/operator/boot", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 娓呴櫎鍛戒护
-    function clearCommand() {
-        http.post(baseUrl+"/crn/operator/clearCommand", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 鎵嬪姩澶嶄綅
-    function handleReset() {
-        http.post(baseUrl+"/crn/operator/handleReset", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 杈撻�佽澶囨棩蹇楄緭鍑� -----------------------------------------------------------------------
-    function getCrnOutput() {
-        $.ajax({
-            url: baseUrl + "/crn/output/site",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                console.log(res)
-                if (res.code === 200) {
-                    crnOutput(res.data);
-                } else if (res.code === 403) {
-                    window.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-                }
-            }
-        })
-    }
-
-    // ------------------------------------------------------------------------------------------------
-
-    // 鍫嗗灈鏈轰俊鎭〃鑾峰彇  ----- 琛ㄤ竴
-    function initCrnStateTable(row) {
-        var line;
-        if (row === undefined){
-            var one = $('#crn-state-table thead').height();
-            var total = $('.crn-state').height();
-            var count = total / one;
-            count = parseInt(count) - 1;
-            crnStateTableBlankRows = count;
-            line = count;
-        } else {
-            line = row;
-        }
-        var html = "";
-        for (var i = 0; i < line; i ++){
-            html += " <tr>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "     </tr>\n";
-        }
-        $('#crn-state-table tbody').after(html);
-    }
-
-    // 鍫嗗灈鏈烘暟鎹〃鑾峰彇  ----- 琛ㄤ簩
-    function initCrnMsgTable(row) {
-        var line;
-        if (row === undefined){
-            var one = $('#crn-msg-table thead').height();
-            var total = $('.crn-msg').height();
-            var count = total / one;
-            count = parseInt(count) - 1;
-            crnMsgTableBlankRows = count;
-            line = count;
-        } else {
-            line = row;
-        }
-        var html = "";
-        for (var i = 0; i < line; i ++){
-            html += " <tr>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "     </tr>\n";
-        }
-        $('#crn-msg-table tbody').after(html);
-    }
-
-    // 鏃ュ織杈撳嚭妗�
-    function crnOutput(content){
-        crnOutputDom.value += content;
-        crnOutputDom.scrollTop = crnOutputDom.scrollHeight;
-    }
-
-
-    var crnDemoData;
-    function initDemo() {
-        $.ajax({
-            url: baseUrl+"/crn/demo/status",
-            async: false,
-            method: 'GET',
-            success: function (res) {
-                if (res.code === 200) {
-                    crnDemoData = res.data;
-                    crnDemoData.forEach(function (e) {
-                        $("#demoBtn-"+e.crnNo).html(e.demo?'鍋滄':'婕旂ず');
-                    })
-                } else if (res.code === 403){
-                    parent.location.href = baseUrl+"/login";
-                }  else {
-                    layer.msg(res.msg, {icon: 2});
-                }
-            }
-        })
-    }
-
-    function demoSwitch(el) {
-        var crnId = el.split("-")[1];
-        var opt;
-        if (crnDemoData == null) {
-            initDemo();
-        }
-        for (var i = 0; i<crnDemoData.length; i++) {
-            if (Number(crnDemoData[i].crnNo) === Number(crnId)) {
-                opt = !crnDemoData[i].demo;
-            }
-        }
-        layer.confirm(crnId + ' 鍙峰爢鍨涙満纭畾'+ (opt?'寮�濮�':'鍋滄') + '婕旂ず鍚楋紵', function(){
-            doDemo(crnId, 'root', opt); // 鍋滄wcs绯荤粺
-        });
-    }
-
-    function doDemo(crnId, password, opt) {
-        // 鍔犺浇tips
-        var index = layer.load(1, {
-            shade: [0.1,'#fff']
-        });
-        $.ajax({
-            url: baseUrl+ "/crn/demo/switch",
-            headers: {'token': localStorage.getItem('token')},
-            // async: false,
-            data: {
-                crnId: Number(crnId),
-                password: password,
-                opt: opt
-            },
-            method: 'POST',
-            success: function (res) {
-                layer.close(index);
-                if (res.code === 200){
-                    layer.msg(res.msg, {icon: 1});
-                } else if (res.code === 403){
-                    window.location.href = baseUrl+"/login";
-                }  else {
-                    layer.msg(res.msg, {icon: 2});
-                }
-            }
-        });
-
-    }
-
-</script>
-</html>
diff --git a/zy-acs-cv/src/main/webapp/views/index.html b/zy-acs-cv/src/main/webapp/views/index.html
index e47b77d..0e2c574 100644
--- a/zy-acs-cv/src/main/webapp/views/index.html
+++ b/zy-acs-cv/src/main/webapp/views/index.html
@@ -1,106 +1,98 @@
 <!DOCTYPE html>
-<html>
+<html lang="zh-CN">
 <head>
     <meta charset="utf-8">
+    <meta name="viewport"
+          content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
     <title>鑷姩浠撳簱WCS绯荤粺</title>
+    <link rel="icon" type="image/x-icon" href="../static/images/favicon.ico">
     <link rel="stylesheet" href="../static/css/index.css">
-    <link rel="stylesheet" href="../static/css/layx.min.css" type="text/css" />
-    <script src="../static/js/jquery/jquery-3.3.1.min.js"></script>
-    <link rel="icon" type="image/x-icon" href="../static/images/favicon.ico" />
-    <script src="../static/js/tools/layx.min.js"></script>
+    <link rel="stylesheet" href="../static/css/layx.min.css">
     <style>
         .layx-window.layx-skin-news .layx-control-bar {
-            background-color: #333333;
+            background-color: #333;
         }
     </style>
 </head>
 <body>
-<!-- 瀵艰埅鏍� -->
-<!--		<div class="nav">-->
-<!--			<li class="right">娉ㄩ攢<a id="about" class="nav-unselect" onclick="logout()" href="#"></a></li>-->
-<!--		</div>-->
 <div class="sidebar">
     <div class="nav">
         <ul class="cl-effect-4">
-            <li><a id="console" onclick="nav(this.id)" class="nav-select" href="#">涓绘帶鍥�</a></li>
-            <li><a id="pipeline" onclick="nav(this.id)" class="nav-unselect" href="#">杈撻�佽澶�</a></li>
-            <li><a id="crn" onclick="nav(this.id)" class="nav-unselect" href="#">鍫嗗灈鏈�</a></li>
-            <li><a id="rgv" onclick="nav(this.id)" class="nav-unselect" href="#">RGV</a></li>
+            <li><a id="pipeline" onclick="nav(this.id)" class="nav-select" href="#">杈撻�佽澶�</a></li>
         </ul>
     </div>
 </div>
-<!--<div style="z-index: 999; position: absolute; top: 250px; left: 900px; width: 200px; height: 200px; opacity: 0.5;background-color: #0000FF">-->
-
-<!--</div>-->
 <!-- 涓讳綋鍐呭 -->
-<iframe id="content" src="console.html"></iframe>
+<iframe id="content" src="pipeline.html" frameborder="0"></iframe>
 <footer class="footer">
-    Copyright 漏 2023 All Rights Reserved. <a href="http://www.zoneyung.com" target="_blank">娴欐睙涓壃绔嬪簱鎶�鏈湁闄愬叕鍙�</a>  淇濈暀鎵�鏈夋潈鍒�
+    Copyright 漏 2023 All Rights Reserved. <a href="http://www.zoneyung.com" target="_blank">娴欐睙涓壃绔嬪簱鎶�鏈湁闄愬叕鍙�</a>
+    淇濈暀鎵�鏈夋潈鍒�
 </footer>
 </body>
+<script src="../static/js/jquery/jquery-3.3.1.min.js"></script>
+<script src="../static/js/tools/layx.min.js"></script>
 <script>
-    // 瀵艰埅鏍�
+    // 瀵艰埅鏍忓垏鎹㈠嚱鏁�
     function nav(id) {
-        $('.nav-select').attr("class", "nav-unselect");
-        $('#'+id).attr("class", "nav-select");
-        $('#content').attr("src", id+".html");
+        $('.nav-select').removeClass('nav-select').addClass('nav-unselect');
+        $('#' + id).removeClass('nav-unselect').addClass('nav-select');
+        $('#content').attr('src', id + '.html');
     }
 
+    // 娉ㄩ攢鍑芥暟
     function logout() {
-        localStorage.removeItem("token");
-        window.location.href = baseUrl + "/login";
+        localStorage.removeItem('token');
+        window.location.href = (window.baseUrl || '') + '/login';
     }
 
-    // 绯荤粺杩愯鐘舵��
-    var systemRunning = true;
-
-
-    news();layx.min('wcs-news');
-    function news() {
-        layx.iframe(
-            'wcs-news' // id
-            , '绯荤粺鍒嗘瀽鎶ュ憡'
-            , "news.html"
-            , {
-                shadow:false
-                , storeStatus:false
-                // , skin: 'news'
-                , width:800
-                , height:600
-                , position:'rb'
-                // , control:false
-                , opacity:0.9
-                , border:false
-                , icon:'<img src="../static/images/favicon.ico" style="height:22px;display:block;"  alt=""/>'
-                , stickMenu:true
-                , maxMenu:false
-                , closeMenu:false
-                , moveLimit:{
-                    leftOut: false,
-                    rightOut: false,
-                    topOut: false,
-                    bottomOut: false,
-                }
-                , minWidth:300
-                , minHeight:300
-                , borderRadius: '8px'
-                , shadeDestroy:true
-                , escKey: false
-                , event:{
-                    onmin: {
-                        after: function () {
-                            $('.layx-min-statu').css("left", "inherit").css("right", "10px")
-                        }
+    // 绯荤粺鍒嗘瀽鎶ュ憡寮圭獥
+    function showNewsReport() {
+        layx.iframe('wcs-news', '绯荤粺鍒嗘瀽鎶ュ憡', 'news.html', {
+            shadow: false,
+            storeStatus: false,
+            width: 800,
+            height: 600,
+            position: 'rb',
+            opacity: 0.9,
+            border: false,
+            icon: '<img src="../static/images/favicon.ico" style="height:22px;display:block;" alt=""/>',
+            stickMenu: true,
+            maxMenu: false,
+            closeMenu: false,
+            moveLimit: {
+                leftOut: false,
+                rightOut: false,
+                topOut: false,
+                bottomOut: false
+            },
+            minWidth: 300,
+            minHeight: 300,
+            borderRadius: '8px',
+            shadeDestroy: true,
+            escKey: false,
+            event: {
+                onmin: {
+                    after: function () {
+                        $('.layx-min-statu').css('left', 'inherit').css('right', '10px');
                     }
-                    , onrestore:{
-                        after: function () {
-                            let win = layx.getFrameContext('wcs-news');
-                            win.autoScroll = true
+                },
+                onrestore: {
+                    after: function () {
+                        let win = layx.getFrameContext('wcs-news');
+                        if (win) {
+                            win.autoScroll = true;
                         }
                     }
                 }
             }
-        );
+        });
     }
+
+    // 椤甸潰鍔犺浇瀹屾垚鍚庡垵濮嬪寲
+    $(document).ready(function () {
+        showNewsReport();
+        layx.min('wcs-news');
+    });
 </script>
 </html>
diff --git a/zy-acs-cv/src/main/webapp/views/indexTV.html b/zy-acs-cv/src/main/webapp/views/indexTV.html
deleted file mode 100644
index 711a467..0000000
--- a/zy-acs-cv/src/main/webapp/views/indexTV.html
+++ /dev/null
@@ -1,63 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <meta charset="utf-8">
-    <title>鑷姩浠撳簱WCS绯荤粺</title>
-    <link rel="stylesheet" href="../static/css/index.css">
-    <link rel="stylesheet" href="../static/css/layx.min.css" type="text/css" />
-    <script src="../static/js/jquery/jquery-3.3.1.min.js"></script>
-    <script src="../static/js/tools/layx.min.js"></script>
-    <style>
-        .layx-window.layx-skin-news .layx-control-bar {
-            background-color: #333333;
-        }
-        html{
-            transform: scale(1) translate(0,0);
-            /*transform: scale(0.5) translate(-50%,-50%);*/
-            height: 190%;
-            width: 190%;
-        }
-
-    </style>
-</head>
-<body>
-
-<!-- 瀵艰埅鏍� -->
-<!--		<div class="nav">-->
-<!--			<li class="right">娉ㄩ攢<a id="about" class="nav-unselect" onclick="logout()" href="#"></a></li>-->
-<!--		</div>-->
-<div class="sidebar">
-    <div class="nav">
-        <ul class="cl-effect-4">
-            <li><a id="console" onclick="nav(this.id)" class="nav-select" href="#">涓绘帶鍥�</a></li>
-            <li><a id="pipeline" onclick="nav(this.id)" class="nav-unselect" href="#">杈撻�佽澶�</a></li>
-            <li><a id="crn" onclick="nav(this.id)" class="nav-unselect" href="#">鍫嗗灈鏈�</a></li>
-        </ul>
-    </div>
-</div>
-<!--<div style="z-index: 999; position: absolute; top: 250px; left: 900px; width: 200px; height: 200px; opacity: 0.5;background-color: #0000FF">-->
-
-<!--</div>-->
-<!-- 涓讳綋鍐呭 -->
-<iframe id="content" src="console.html"></iframe>
-<footer class="footer">
-    Copyright 漏 2023 All Rights Reserved. <a href="http://www.zoneyung.com" target="_blank">娴欐睙涓壃绔嬪簱鎶�鏈湁闄愬叕鍙�</a>  淇濈暀鎵�鏈夋潈鍒�
-</footer>
-</body>
-<script>
-    // 瀵艰埅鏍�
-    function nav(id) {
-        $('.nav-select').attr("class", "nav-unselect");
-        $('#'+id).attr("class", "nav-select");
-        $('#content').attr("src", id+".html");
-    }
-
-    function logout() {
-        localStorage.removeItem("token");
-        window.location.href = baseUrl + "/login";
-    }
-
-    // 绯荤粺杩愯鐘舵��
-    var systemRunning = true;
-</script>
-</html>
diff --git a/zy-acs-cv/src/main/webapp/views/led.html b/zy-acs-cv/src/main/webapp/views/led.html
deleted file mode 100644
index 85a8695..0000000
--- a/zy-acs-cv/src/main/webapp/views/led.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <meta charset="UTF-8">
-    <title>Title</title>
-</head>
-<body>
-<h1>LED</h1>
-</body>
-</html>
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/webapp/views/login.html b/zy-acs-cv/src/main/webapp/views/login.html
deleted file mode 100644
index 39f81b9..0000000
--- a/zy-acs-cv/src/main/webapp/views/login.html
+++ /dev/null
@@ -1,238 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <meta charset="UTF-8">
-    <title>绯荤粺鐧诲綍</title>
-    <link rel="stylesheet" href="../static/layui/css/layui.css" media="all">
-    <link rel="icon" type="image/x-icon" href="../static/images/wcs_logo.png" />
-    <link rel="stylesheet" href="../static/css/animate.min.css">
-    <script type="text/javascript" src="../static/layui/layui.js"></script>
-    <link rel="icon" type="image/x-icon" href="../static/images/favicon.ico" />
-    <script type="text/javascript" src="../static/js/common.js"></script>
-    <style>
-        html{
-            height: 100%;
-        }
-        body.login-bg {
-            color: #777;
-            height: 100%;
-            /*background-image: linear-gradient(to right, #ff9569 0%, #e92758 100%);*/
-            /*background-image: linear-gradient(-90deg, #a2e7f3 0%, #98baee 100%);*/
-            background-image: url("../static/images/login.png");
-            /*background: -webkit-linear-gradient(red, blue); !* Safari 5.1 - 6.0 *!;*/
-            /*background-image: url("../static/image/login_bg.jpg");*/
-            /*background-repeat: no-repeat;*/
-            /*background-size: cover;*/
-            /*background-position: top center;*/
-        }
-
-        #login-wrapper {
-            box-sizing:border-box;
-            background: #fff;
-            position: absolute;
-            top: 45%;
-            left: 50%;
-            margin-top: -210px;
-            margin-left: -220px;
-            width: 400px;
-            min-height: 380px;
-            padding: 50px;
-            text-align: center;
-            border-radius: 5px;
-            box-shadow: 0px 0px 10px rgb(168, 165, 165);
-            transform-origin: 50% 50%;
-            /*animation: loading 1s 0s forwards;*/
-            transform: rotateX(0deg);
-        }
-
-        #login-wrapper h2 {
-            color: rgba(64,158,255,0.9);
-            font-size: 26px;
-            font-weight: bold;
-            margin-bottom: 30px;
-        }
-
-        .layadmin-user-login-body .layui-form-item {
-            margin-bottom: 20px;
-            position: relative;
-        }
-        .layadmin-user-login-body .layui-form-item .layui-input {
-            height: 42px;
-            padding-left: 40px;
-            font-size: 16px;
-            border: 1px solid #c8cccf;
-            color: inherit;
-        }
-        .login-submit {
-            margin-top: 30px;
-        }
-        .layadmin-user-login-icon {
-            position: absolute;
-            left: 1px;
-            top: 1px;
-            width: 38px;
-            line-height: 40px;
-            text-align: center;
-            color: #B2B2B2;
-            font-size: 18px;
-        }
-        .layui-btn-normal {
-            background-color: rgba(64,158,255,0.9);
-            font-size: 20px;
-            border-radius: 4px;
-            height: 52px;
-        }
-        #code-box {
-            position: relative;
-            height: 42px;
-        }
-        #code-label {
-            z-index: 999;
-        }
-        #code {
-            position: absolute;
-            left: 0;
-            top: 0;
-            display: inline-block;
-            width: 60%;
-        }
-        #codeImg {
-            border: 1px solid rgba(0,0,0,0.1);
-            position: absolute;
-            right: 5%;
-            top: 0;
-            width: 30%;
-            height: 90%;
-        }
-    </style>
-</head>
-<body class="login-bg animsition">
-
-<div id="login-wrapper" class="animate__animated animate__bounceInDown">
-    <header>
-        <h2>WCS 绯荤粺鐧诲綍</h2>
-    </header>
-    <div class="layui-form layadmin-user-login-body">
-        <div class="layui-form-item">
-            <label class="layui-icon layui-icon-cellphone layadmin-user-login-icon"></label>
-            <input id="mobile" class="layui-input" type="text" name="mobile" lay-verify="mobile" placeholder="璐﹀彿">
-        </div>
-        <div class="layui-form-item">
-            <label class="layui-icon layui-icon-password layadmin-user-login-icon"></label>
-            <input id="password" class="layui-input" type="password" name="password" lay-verify="password" placeholder="瀵嗙爜">
-        </div>
-        <div id="code-box" class="layui-form-item" style="">
-            <label id="code-label" class="layui-icon layui-icon-vercode layadmin-user-login-icon"></label>
-            <input id="code" class="layui-input" type="text" name="password" lay-verify="code" placeholder="楠岃瘉鐮�">
-            <img id="codeImg" title="鐪嬩笉娓咃紵鐐瑰嚮鎹竴寮犮��">
-        </div>
-        <!--<div class="layui-form-item">-->
-            <!--<input id="rememberPwd" style="vertical-align: middle" type="checkbox" lay-filter="remPwd" lay-skin="switch" lay-text="寮�鍚瘄鍏抽棴" title="璁颁綇瀵嗙爜" checked="checked">-->
-            <!--<span style="vertical-align: middle;font-size: 15px">璁颁綇瀵嗙爜</span>-->
-        <!--</div>-->
-    </div>
-    <div class="layui-form-item login-submit">
-        <button id="login-button" class="layui-btn layui-btn-fluid layui-btn-normal" lay-submit="" lay-filter="login">鐧� &nbsp  &nbsp 褰�</button>
-    </div>
-</div>
-
-</body>
-<script type="text/javascript" src="../static/js/jquery/jquery-3.3.1.min.js"></script>
-<script type="text/javascript" src="../static/js/tools/md5.js"></script>
-<script type="text/javascript">
-
-    // 楠岃瘉鐮佸紑鍏�
-    var codeSwitch = 'Y';
-    $.ajax({
-        url: baseUrl+"/code/switch.action",
-        async: false,
-        success: function (res) {
-            if (res.data === 'N'){
-                codeSwitch = res.data;
-                $('#code-box').css("display", "none");
-            }
-        }
-    });
-
-    // 鍒濆鍖栭獙璇佺爜
-    initCode();
-    $('#codeImg').click(function () {
-        initCode();
-    });
-    function initCode() {
-        var random = Math.random();
-        $('#codeImg').attr("src", baseUrl+"/code.action?sd="+random);
-        setTimeout(function () {
-            $.ajax({
-                url: baseUrl+"/code.do",
-                data: {sd: random},
-                method: 'POST',
-                async: false,
-                success: function (code) {
-                    sessionStorage.setItem("code", code);
-                }
-            });
-        }, 100);
-    }
-
-    layui.use(['form','layer'],function () {
-        var form = layui.form,
-            layer = layui.layer,
-            $ = layui.jquery;
-
-        form.on('submit(login)', function (data) {
-            var mobile = $("#mobile").val();
-            if (mobile === "") {
-                layer.msg("璇疯緭鍏ヨ处鍙�", {offset: '150px'});
-                return;
-            }
-            var password = $("#password").val();
-            if (password === "") {
-                layer.msg("璇疯緭鍏ュ瘑鐮�", {offset: '150px'});
-                return;
-            }
-            var code = $("#code").val();
-            if (code === "" && codeSwitch === 'Y') {
-                layer.msg("璇疯緭鍏ラ獙璇佺爜", {offset: '150px'});
-                return;
-            }
-            if (sessionStorage.getItem("code").toUpperCase() !== code.toUpperCase()&&codeSwitch==='Y'){
-                layer.msg("楠岃瘉鐮侀敊璇�", {offset: '150px'});
-                return;
-            }
-
-            var user = {
-                mobile: mobile,
-                password: hex_md5(password)
-            };
-            $.ajax({
-                url: baseUrl+"/login.action",
-                data: user,
-                method: 'POST',
-                success: function (res) {
-                    if (res.code === 200){
-                        localStorage.setItem("token", res.data.token);
-                        localStorage.setItem("username", res.data.username);
-                        if (res.data.username==="dsj1"){
-                            window.location.href = "indexTV.html";
-                        }else {
-                            window.location.href = "index.html";
-                        }
-                    } else {
-                        layer.msg(res.msg, {offset: '150px'});
-                    }
-                }
-            });
-            return false;
-        });
-
-        $('body').keydown(function () {
-            if (event.keyCode === 13) {
-                $("#login-button").click();
-            }
-        });
-
-    });
-</script>
-<script type></script>
-</html>
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/webapp/views/monitor/css/Pacifico.css b/zy-acs-cv/src/main/webapp/views/monitor/css/Pacifico.css
index d405f7c..72c19b0 100644
--- a/zy-acs-cv/src/main/webapp/views/monitor/css/Pacifico.css
+++ b/zy-acs-cv/src/main/webapp/views/monitor/css/Pacifico.css
@@ -6,6 +6,7 @@
     src: local('Pacifico Regular'), local('Pacifico-Regular'), url(http://fonts.gstatic.com/s/pacifico/v17/FwZY7-Qmy14u9lezJ-6K6MmTpA.woff2) format('woff2');
     unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
 }
+
 /* cyrillic */
 @font-face {
     font-family: 'Pacifico';
@@ -14,6 +15,7 @@
     src: local('Pacifico Regular'), local('Pacifico-Regular'), url(http://fonts.gstatic.com/s/pacifico/v17/FwZY7-Qmy14u9lezJ-6D6MmTpA.woff2) format('woff2');
     unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
 }
+
 /* vietnamese */
 @font-face {
     font-family: 'Pacifico';
@@ -22,6 +24,7 @@
     src: local('Pacifico Regular'), local('Pacifico-Regular'), url(http://fonts.gstatic.com/s/pacifico/v17/FwZY7-Qmy14u9lezJ-6I6MmTpA.woff2) format('woff2');
     unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
 }
+
 /* latin-ext */
 @font-face {
     font-family: 'Pacifico';
@@ -30,6 +33,7 @@
     src: local('Pacifico Regular'), local('Pacifico-Regular'), url(http://fonts.gstatic.com/s/pacifico/v17/FwZY7-Qmy14u9lezJ-6J6MmTpA.woff2) format('woff2');
     unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
 }
+
 /* latin */
 @font-face {
     font-family: 'Pacifico';
diff --git a/zy-acs-cv/src/main/webapp/views/monitor/css/lunbo.css b/zy-acs-cv/src/main/webapp/views/monitor/css/lunbo.css
index 5c70cf0..4e37808 100644
--- a/zy-acs-cv/src/main/webapp/views/monitor/css/lunbo.css
+++ b/zy-acs-cv/src/main/webapp/views/monitor/css/lunbo.css
@@ -1,9 +1,11 @@
 .layui-carousel {
     /*top: -45px;*/
 }
+
 .layui-icon layui-carousel-arrow {
     display: none;
 }
+
 .layui-carousel-ind ul {
     padding: 0 5px;
 }
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/webapp/views/monitor/css/monitor.css b/zy-acs-cv/src/main/webapp/views/monitor/css/monitor.css
index 0091392..59860d4 100644
--- a/zy-acs-cv/src/main/webapp/views/monitor/css/monitor.css
+++ b/zy-acs-cv/src/main/webapp/views/monitor/css/monitor.css
@@ -1,4 +1,4 @@
-*{
+* {
     margin: 0;
     padding: 0;
     color: #f2f9ff;
@@ -7,29 +7,32 @@
     line-height: 1.5;
     box-sizing: border-box;
 }
-html{
+
+html {
     height: 100%;
     overflow: hidden;
 }
-body{
+
+body {
     height: 100%;
 }
 
 body.monitor-bg {
     background-image: url("../img/background.png");
     background-repeat: no-repeat;
-    background-size:100% 100%;
-    background-attachment:fixed;
+    background-size: 100% 100%;
+    background-attachment: fixed;
 }
 
 /*澶撮儴*/
-.header{
+.header {
     position: relative;
     height: 10%;
     width: 100%;
     z-index: 999;
 }
-.title{
+
+.title {
     position: absolute;
     padding-top: 1px;
     margin-top: 1%;
@@ -38,12 +41,13 @@
     font-size: 40px;
     font-weight: bold;
     letter-spacing: 2px;
-    transform: scale(1,0.9);
+    transform: scale(1, 0.9);
     height: 77%;
     width: 30%;
     overflow: hidden;
     text-overflow: ellipsis;
 }
+
 .button-left {
     position: absolute;
     margin-left: 21.4%;
@@ -58,6 +62,7 @@
     transform: scaleX(-1);
     filter: FlipH;
 }
+
 .button-right {
     position: absolute;
     margin-left: 65.1%;
@@ -67,6 +72,7 @@
     background-image: url('../img/right.png');
     background-size: 100% 100%;
 }
+
 .time-tools {
     position: absolute;
     margin-left: 80%;
@@ -77,9 +83,10 @@
 }
 
 /*涓讳綋*/
-.container{
+.container {
     height: 90%;
 }
+
 .container-element-side {
     float: left;
     width: 24%;
@@ -87,6 +94,7 @@
     padding: 1%;
     box-sizing: border-box;
 }
+
 .container-side-box {
     position: relative;
     height: 100%;
@@ -102,9 +110,11 @@
     font-size: xx-small;
     color: #999;
 }
+
 .introduce {
     height: 30%;
 }
+
 .introduce-content {
     text-indent: 2em;
     margin-top: 13px;
@@ -115,19 +125,24 @@
     font-size: x-small;
     opacity: 0.7;
 }
+
 /*宸︿腑*/
 .charge-info {
     height: 60%;
 }
+
 .info-header {
     height: 15%;
 }
+
 .info-header h6 {
     letter-spacing: 3px;
 }
+
 .charge-info-elem {
     height: 20%;
 }
+
 .charge-info-elem img {
     display: inline-block;
     height: 100%;
@@ -135,23 +150,27 @@
     vertical-align: middle;
     padding: 10px 25px 10px 5px;
 }
+
 .info-detail {
     display: inline-block;
     height: 100%;
     width: 65%;
     vertical-align: middle
 }
+
 .real-data {
     width: 100%;
     height: 60%;
     position: relative;
 }
+
 .real-data .count {
     position: absolute;
     left: 0%;
     bottom: 0;
     font-size: x-large;
 }
+
 .real-data .unit {
     position: absolute;
     right: 0;
@@ -159,12 +178,14 @@
     font-size: x-small;
     opacity: 0.7;
 }
+
 .content {
     width: 100%;
     height: 40%;
     font-size: x-small;
     opacity: 0.7;
 }
+
 /*宸︿笅*/
 .footer {
     position: relative;
@@ -172,17 +193,19 @@
     height: 10%;
     text-align: center;
 }
+
 .footer span {
     position: absolute;
     left: 18%;
     top: 50%;
-    transform:translateY(-50%);
-    -webkit-transform:translateY(-50%);  /*鍏煎-webkit-寮曟搸娴忚鍣�*/
-    -moz-transform:translateY(-50%);     /*鍏煎-moz-寮曟搸娴忚鍣�*/
+    transform: translateY(-50%);
+    -webkit-transform: translateY(-50%); /*鍏煎-webkit-寮曟搸娴忚鍣�*/
+    -moz-transform: translateY(-50%); /*鍏煎-moz-寮曟搸娴忚鍣�*/
     overflow: hidden;
     text-overflow: ellipsis;
-    white-space:nowrap;
+    white-space: nowrap;
 }
+
 .footer img {
     position: absolute;
     right: 0;
@@ -190,6 +213,7 @@
     height: 100%;
     width: auto;
 }
+
 /* 涓� */
 .container-element-middle {
     float: left;
@@ -198,7 +222,8 @@
     padding: 1.2% 1% 1.5% 1%;
     box-sizing: border-box;
 }
-.map-board{
+
+.map-board {
     height: 100%;
     width: 100%;
     border: 1px solid rgba(20, 80, 136, 1);
@@ -214,19 +239,23 @@
     height: 30%;
     margin-bottom: 5%;
 }
+
 .line-chart-title {
     height: 30%;
 }
+
 .order-report {
     position: relative;
     height: 50%;
 }
+
 .order-report .order-report-left {
     letter-spacing: 2px;
     position: absolute;
     left: 0;
     bottom: 0;
 }
+
 .order-report .order-report-right {
     letter-spacing: 2px;
     font-size: x-large;
@@ -235,10 +264,12 @@
     right: 0;
     bottom: 0;
 }
+
 .order-report-english {
     position: relative;
     height: 50%;
 }
+
 .order-report-english .order-report-left {
     letter-spacing: 2px;
     color: #999;
@@ -251,6 +282,7 @@
     left: 0;
     top: 0;
 }
+
 .order-report-english .order-report-right {
     font-size: xx-small;
     color: #999;
@@ -262,27 +294,33 @@
     right: 0;
     top: 0;
 }
+
 #line-charts {
     height: 70%;
 }
+
 /*鍙充腑*/
 .container-side-box.right-middle {
     height: 50%;
     margin-bottom: 5%;
 }
+
 .top-header {
     height: 20%;
 }
+
 .income-date {
     position: relative;
     height: 50%;
 }
+
 .income-date .income-date-left {
     letter-spacing: 2px;
     position: absolute;
     left: 0;
     bottom: 0;
 }
+
 .income-date .income-date-right {
     letter-spacing: 2px;
     font-size: large;
@@ -291,10 +329,12 @@
     right: 0;
     bottom: 0;
 }
+
 .income-date-english {
     position: relative;
     height: 50%;
 }
+
 .income-date-english .income-date-left {
     letter-spacing: 2px;
     color: #999;
@@ -307,6 +347,7 @@
     left: 0;
     top: 0;
 }
+
 .income-date-english .income-date-right {
     font-size: xx-small;
     color: #999;
@@ -322,6 +363,7 @@
 .top-main {
     height: 40%;
 }
+
 #pie-charts {
     height: 100%;
 }
@@ -329,26 +371,32 @@
 .top-footer {
     height: 40%;
 }
+
 .top-footer-elem {
     float: left;
     width: 33.33%;
     height: 100%;
 }
+
 .elem-header {
     height: 60%;
     background-repeat: no-repeat;
     background-position: 45% 50%;
     background-size: 50% auto;
 }
+
 #elem-header-first {
     background-image: url("../img/g1.png");
 }
+
 #elem-header-second {
     background-image: url("../img/f1.png");
 }
+
 #elem-header-third {
     background-image: url("../img/e1.png");
 }
+
 .elem-main {
     height: 20%;
     text-align: center;
@@ -356,28 +404,34 @@
     opacity: 0.7;
     padding: 4px 0;
 }
+
 .elem-footer {
     height: 20%;
     text-align: center;
     letter-spacing: 2px;
 }
+
 /*鍙充笅*/
 .container-side-box.right-bottom {
     height: 15%;
 }
+
 .progress-bar {
     height: 60%;
 }
+
 .usage-rate {
     position: relative;
     height: 50%;
 }
+
 .usage-rate .usage-rate-left {
     letter-spacing: 2px;
     position: absolute;
     left: 0;
     bottom: 0;
 }
+
 .usage-rate .usage-rate-right {
     letter-spacing: 2px;
     font-size: large;
@@ -386,14 +440,17 @@
     right: 0;
     bottom: 0;
 }
+
 .usage-rate .usage-rate-right span {
     letter-spacing: 2px;
     font-size: large;
 }
+
 .usage-rate-english {
     position: relative;
     height: 50%;
 }
+
 .usage-rate-english .usage-rate-left {
     letter-spacing: 2px;
     color: #999;
@@ -406,6 +463,7 @@
     left: 0;
     top: 0;
 }
+
 .usage-rate-english .usage-rate-right {
     font-size: xx-small;
     color: #999;
@@ -417,10 +475,12 @@
     right: 0;
     top: 0;
 }
+
 .progress-bar-modal {
     height: 30%;
     padding-top: 1%;
 }
+
 .bar-container {
     width: 70%;
     height: 100%;
@@ -428,23 +488,26 @@
     vertical-align: middle;
     display: inline-block;
 }
+
 .bar-proportion {
     width: 60%;
     height: 100%;
     background-color: #e77b2c;
     position: relative;
 }
+
 .bar-proportion span {
     font-size: xx-small;
     position: absolute;
     right: 5%;
     top: 45%;
-    transform:translateY(-50%);
-    -webkit-transform:translateY(-50%);  /*鍏煎-webkit-寮曟搸娴忚鍣�*/
-    -moz-transform:translateY(-50%);     /*鍏煎-moz-寮曟搸娴忚鍣�*/
+    transform: translateY(-50%);
+    -webkit-transform: translateY(-50%); /*鍏煎-webkit-寮曟搸娴忚鍣�*/
+    -moz-transform: translateY(-50%); /*鍏煎-moz-寮曟搸娴忚鍣�*/
     opacity: 0.8;
 }
-.bar-container-count, .bar-container-count span  {
+
+.bar-container-count, .bar-container-count span {
     float: right;
     color: #e77b2c;
     vertical-align: middle;
@@ -457,6 +520,7 @@
     width: 5px;
     height: 5px;
 }
+
 .image-border1 {
     top: 0;
     left: 0;
@@ -464,18 +528,21 @@
     border-top: 2px solid #31c4c4;
     /*transform: scale(0.5)*/
 }
+
 .image-border2 {
     top: 0;
     right: 0;
     border-right: 2px solid #31c4c4;
     border-top: 2px solid #31c4c4;
 }
+
 .image-border3 {
     bottom: 0;
     left: 0;
     border-bottom: 2px solid #31c4c4;
     border-left: 2px solid #31c4c4;
 }
+
 .image-border4 {
     bottom: 0;
     right: 0;
@@ -484,14 +551,16 @@
 }
 
 /*鍦板浘*/
-.anchorBL img{
+.anchorBL img {
     display: none;
 }
+
 .BMap_cpyCtrl.BMap_noprint.anchorBL {
     display: none;
 }
-.ec-extension-bmap{
-    border-radius:15px;
+
+.ec-extension-bmap {
+    border-radius: 15px;
 }
 
 /*閬僵*/
@@ -505,6 +574,7 @@
     z-index: 1;
     display: none;
 }
+
 #closeBtn {
     font-size: large;
     float: right;
@@ -515,10 +585,12 @@
     outline: none;
     cursor: pointer;
 }
+
 #closeBtn:hover {
     background-color: white;
     color: black;
 }
+
 #detail-modal ul {
     position: absolute;
     top: 20%;
@@ -526,14 +598,17 @@
     transform: translate(-50%, 0);
     list-style-type: none;
 }
+
 #detail-modal li {
     font-size: large;
     padding: 20px;
 }
+
 .animationTop {
     -webkit-animation: animationTop 0.4s;
     animation: animationTop 0.4s;
 }
+
 @-webkit-keyframes animationTop {
     from {
         top: -500px;
@@ -544,6 +619,7 @@
         opacity: 1;
     }
 }
+
 @keyframes animationTop {
     from {
         top: -500px;
@@ -558,18 +634,23 @@
 .item-img {
     background-size: 100% 100%;
 }
+
 #img-1 {
     background-image: url(../img/banner/banner1.jpg);
 }
+
 #img-2 {
     background-image: url(../img/banner/banner2.jpg);
 }
+
 #img-3 {
     background-image: url(../img/banner/banner3.jpg);
 }
+
 #img-4 {
     background-image: url(../img/banner/banner4.jpg);
 }
+
 #img-5 {
     background-image: url(../img/banner/banner5.jpg);
 }
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/webapp/views/monitor/img/banner/test1.jpg b/zy-acs-cv/src/main/webapp/views/monitor/img/banner/test1.jpg
deleted file mode 100644
index e86cf83..0000000
--- a/zy-acs-cv/src/main/webapp/views/monitor/img/banner/test1.jpg
+++ /dev/null
Binary files differ
diff --git a/zy-acs-cv/src/main/webapp/views/monitor/img/banner/test2.jpg b/zy-acs-cv/src/main/webapp/views/monitor/img/banner/test2.jpg
deleted file mode 100644
index e86cf83..0000000
--- a/zy-acs-cv/src/main/webapp/views/monitor/img/banner/test2.jpg
+++ /dev/null
Binary files differ
diff --git a/zy-acs-cv/src/main/webapp/views/monitor/img/banner/test3.png b/zy-acs-cv/src/main/webapp/views/monitor/img/banner/test3.png
deleted file mode 100644
index dbdcd4f..0000000
--- a/zy-acs-cv/src/main/webapp/views/monitor/img/banner/test3.png
+++ /dev/null
Binary files differ
diff --git a/zy-acs-cv/src/main/webapp/views/monitor/js/md5.js b/zy-acs-cv/src/main/webapp/views/monitor/js/md5.js
index 950422b..bd10e20 100644
--- a/zy-acs-cv/src/main/webapp/views/monitor/js/md5.js
+++ b/zy-acs-cv/src/main/webapp/views/monitor/js/md5.js
@@ -1,19 +1,22 @@
 var hexcase = 0;
 var b64pad = "";
 var chrsz = 8;
-function hex_md5(s){ return binl2hex(core_md5(str2binl(s), s.length * chrsz));}
+
+function hex_md5(s) {
+    return binl2hex(core_md5(str2binl(s), s.length * chrsz));
+}
+
 /*
  * Perform a simple self-test to see if the VM is working
  */
-function md5_vm_test()
-{
+function md5_vm_test() {
     return hex_md5("abc") == "900150983cd24fb0d6963f7d28e17f72";
 }
+
 /*
  * Calculate the MD5 of an array of little-endian words, and a bit length
  */
-function core_md5(x, len)
-{
+function core_md5(x, len) {
     /* append padding */
     x[len >> 5] |= 0x80 << ((len) % 32);
     x[(((len + 64) >>> 9) << 4) + 14] = len;
@@ -21,76 +24,75 @@
     var b = -271733879;
     var c = -1732584194;
     var d = 271733878;
-    for(var i = 0; i < x.length; i += 16)
-    {
+    for (var i = 0; i < x.length; i += 16) {
         var olda = a;
         var oldb = b;
         var oldc = c;
         var oldd = d;
-        a = md5_ff(a, b, c, d, x[i+ 0], 7 , -680876936);
-        d = md5_ff(d, a, b, c, x[i+ 1], 12, -389564586);
-        c = md5_ff(c, d, a, b, x[i+ 2], 17, 606105819);
-        b = md5_ff(b, c, d, a, x[i+ 3], 22, -1044525330);
-        a = md5_ff(a, b, c, d, x[i+ 4], 7 , -176418897);
-        d = md5_ff(d, a, b, c, x[i+ 5], 12, 1200080426);
-        c = md5_ff(c, d, a, b, x[i+ 6], 17, -1473231341);
-        b = md5_ff(b, c, d, a, x[i+ 7], 22, -45705983);
-        a = md5_ff(a, b, c, d, x[i+ 8], 7 , 1770035416);
-        d = md5_ff(d, a, b, c, x[i+ 9], 12, -1958414417);
-        c = md5_ff(c, d, a, b, x[i+10], 17, -42063);
-        b = md5_ff(b, c, d, a, x[i+11], 22, -1990404162);
-        a = md5_ff(a, b, c, d, x[i+12], 7 , 1804603682);
-        d = md5_ff(d, a, b, c, x[i+13], 12, -40341101);
-        c = md5_ff(c, d, a, b, x[i+14], 17, -1502002290);
-        b = md5_ff(b, c, d, a, x[i+15], 22, 1236535329);
-        a = md5_gg(a, b, c, d, x[i+ 1], 5 , -165796510);
-        d = md5_gg(d, a, b, c, x[i+ 6], 9 , -1069501632);
-        c = md5_gg(c, d, a, b, x[i+11], 14, 643717713);
-        b = md5_gg(b, c, d, a, x[i+ 0], 20, -373897302);
-        a = md5_gg(a, b, c, d, x[i+ 5], 5 , -701558691);
-        d = md5_gg(d, a, b, c, x[i+10], 9 , 38016083);
-        c = md5_gg(c, d, a, b, x[i+15], 14, -660478335);
-        b = md5_gg(b, c, d, a, x[i+ 4], 20, -405537848);
-        a = md5_gg(a, b, c, d, x[i+ 9], 5 , 568446438);
-        d = md5_gg(d, a, b, c, x[i+14], 9 , -1019803690);
-        c = md5_gg(c, d, a, b, x[i+ 3], 14, -187363961);
-        b = md5_gg(b, c, d, a, x[i+ 8], 20, 1163531501);
-        a = md5_gg(a, b, c, d, x[i+13], 5 , -1444681467);
-        d = md5_gg(d, a, b, c, x[i+ 2], 9 , -51403784);
-        c = md5_gg(c, d, a, b, x[i+ 7], 14, 1735328473);
-        b = md5_gg(b, c, d, a, x[i+12], 20, -1926607734);
-        a = md5_hh(a, b, c, d, x[i+ 5], 4 , -378558);
-        d = md5_hh(d, a, b, c, x[i+ 8], 11, -2022574463);
-        c = md5_hh(c, d, a, b, x[i+11], 16, 1839030562);
-        b = md5_hh(b, c, d, a, x[i+14], 23, -35309556);
-        a = md5_hh(a, b, c, d, x[i+ 1], 4 , -1530992060);
-        d = md5_hh(d, a, b, c, x[i+ 4], 11, 1272893353);
-        c = md5_hh(c, d, a, b, x[i+ 7], 16, -155497632);
-        b = md5_hh(b, c, d, a, x[i+10], 23, -1094730640);
-        a = md5_hh(a, b, c, d, x[i+13], 4 , 681279174);
-        d = md5_hh(d, a, b, c, x[i+ 0], 11, -358537222);
-        c = md5_hh(c, d, a, b, x[i+ 3], 16, -722521979);
-        b = md5_hh(b, c, d, a, x[i+ 6], 23, 76029189);
-        a = md5_hh(a, b, c, d, x[i+ 9], 4 , -640364487);
-        d = md5_hh(d, a, b, c, x[i+12], 11, -421815835);
-        c = md5_hh(c, d, a, b, x[i+15], 16, 530742520);
-        b = md5_hh(b, c, d, a, x[i+ 2], 23, -995338651);
-        a = md5_ii(a, b, c, d, x[i+ 0], 6 , -198630844);
-        d = md5_ii(d, a, b, c, x[i+ 7], 10, 1126891415);
-        c = md5_ii(c, d, a, b, x[i+14], 15, -1416354905);
-        b = md5_ii(b, c, d, a, x[i+ 5], 21, -57434055);
-        a = md5_ii(a, b, c, d, x[i+12], 6 , 1700485571);
-        d = md5_ii(d, a, b, c, x[i+ 3], 10, -1894986606);
-        c = md5_ii(c, d, a, b, x[i+10], 15, -1051523);
-        b = md5_ii(b, c, d, a, x[i+ 1], 21, -2054922799);
-        a = md5_ii(a, b, c, d, x[i+ 8], 6 , 1873313359);
-        d = md5_ii(d, a, b, c, x[i+15], 10, -30611744);
-        c = md5_ii(c, d, a, b, x[i+ 6], 15, -1560198380);
-        b = md5_ii(b, c, d, a, x[i+13], 21, 1309151649);
-        a = md5_ii(a, b, c, d, x[i+ 4], 6 , -145523070);
-        d = md5_ii(d, a, b, c, x[i+11], 10, -1120210379);
-        c = md5_ii(c, d, a, b, x[i+ 2], 15, 718787259);
-        b = md5_ii(b, c, d, a, x[i+ 9], 21, -343485551);
+        a = md5_ff(a, b, c, d, x[i + 0], 7, -680876936);
+        d = md5_ff(d, a, b, c, x[i + 1], 12, -389564586);
+        c = md5_ff(c, d, a, b, x[i + 2], 17, 606105819);
+        b = md5_ff(b, c, d, a, x[i + 3], 22, -1044525330);
+        a = md5_ff(a, b, c, d, x[i + 4], 7, -176418897);
+        d = md5_ff(d, a, b, c, x[i + 5], 12, 1200080426);
+        c = md5_ff(c, d, a, b, x[i + 6], 17, -1473231341);
+        b = md5_ff(b, c, d, a, x[i + 7], 22, -45705983);
+        a = md5_ff(a, b, c, d, x[i + 8], 7, 1770035416);
+        d = md5_ff(d, a, b, c, x[i + 9], 12, -1958414417);
+        c = md5_ff(c, d, a, b, x[i + 10], 17, -42063);
+        b = md5_ff(b, c, d, a, x[i + 11], 22, -1990404162);
+        a = md5_ff(a, b, c, d, x[i + 12], 7, 1804603682);
+        d = md5_ff(d, a, b, c, x[i + 13], 12, -40341101);
+        c = md5_ff(c, d, a, b, x[i + 14], 17, -1502002290);
+        b = md5_ff(b, c, d, a, x[i + 15], 22, 1236535329);
+        a = md5_gg(a, b, c, d, x[i + 1], 5, -165796510);
+        d = md5_gg(d, a, b, c, x[i + 6], 9, -1069501632);
+        c = md5_gg(c, d, a, b, x[i + 11], 14, 643717713);
+        b = md5_gg(b, c, d, a, x[i + 0], 20, -373897302);
+        a = md5_gg(a, b, c, d, x[i + 5], 5, -701558691);
+        d = md5_gg(d, a, b, c, x[i + 10], 9, 38016083);
+        c = md5_gg(c, d, a, b, x[i + 15], 14, -660478335);
+        b = md5_gg(b, c, d, a, x[i + 4], 20, -405537848);
+        a = md5_gg(a, b, c, d, x[i + 9], 5, 568446438);
+        d = md5_gg(d, a, b, c, x[i + 14], 9, -1019803690);
+        c = md5_gg(c, d, a, b, x[i + 3], 14, -187363961);
+        b = md5_gg(b, c, d, a, x[i + 8], 20, 1163531501);
+        a = md5_gg(a, b, c, d, x[i + 13], 5, -1444681467);
+        d = md5_gg(d, a, b, c, x[i + 2], 9, -51403784);
+        c = md5_gg(c, d, a, b, x[i + 7], 14, 1735328473);
+        b = md5_gg(b, c, d, a, x[i + 12], 20, -1926607734);
+        a = md5_hh(a, b, c, d, x[i + 5], 4, -378558);
+        d = md5_hh(d, a, b, c, x[i + 8], 11, -2022574463);
+        c = md5_hh(c, d, a, b, x[i + 11], 16, 1839030562);
+        b = md5_hh(b, c, d, a, x[i + 14], 23, -35309556);
+        a = md5_hh(a, b, c, d, x[i + 1], 4, -1530992060);
+        d = md5_hh(d, a, b, c, x[i + 4], 11, 1272893353);
+        c = md5_hh(c, d, a, b, x[i + 7], 16, -155497632);
+        b = md5_hh(b, c, d, a, x[i + 10], 23, -1094730640);
+        a = md5_hh(a, b, c, d, x[i + 13], 4, 681279174);
+        d = md5_hh(d, a, b, c, x[i + 0], 11, -358537222);
+        c = md5_hh(c, d, a, b, x[i + 3], 16, -722521979);
+        b = md5_hh(b, c, d, a, x[i + 6], 23, 76029189);
+        a = md5_hh(a, b, c, d, x[i + 9], 4, -640364487);
+        d = md5_hh(d, a, b, c, x[i + 12], 11, -421815835);
+        c = md5_hh(c, d, a, b, x[i + 15], 16, 530742520);
+        b = md5_hh(b, c, d, a, x[i + 2], 23, -995338651);
+        a = md5_ii(a, b, c, d, x[i + 0], 6, -198630844);
+        d = md5_ii(d, a, b, c, x[i + 7], 10, 1126891415);
+        c = md5_ii(c, d, a, b, x[i + 14], 15, -1416354905);
+        b = md5_ii(b, c, d, a, x[i + 5], 21, -57434055);
+        a = md5_ii(a, b, c, d, x[i + 12], 6, 1700485571);
+        d = md5_ii(d, a, b, c, x[i + 3], 10, -1894986606);
+        c = md5_ii(c, d, a, b, x[i + 10], 15, -1051523);
+        b = md5_ii(b, c, d, a, x[i + 1], 21, -2054922799);
+        a = md5_ii(a, b, c, d, x[i + 8], 6, 1873313359);
+        d = md5_ii(d, a, b, c, x[i + 15], 10, -30611744);
+        c = md5_ii(c, d, a, b, x[i + 6], 15, -1560198380);
+        b = md5_ii(b, c, d, a, x[i + 13], 21, 1309151649);
+        a = md5_ii(a, b, c, d, x[i + 4], 6, -145523070);
+        d = md5_ii(d, a, b, c, x[i + 11], 10, -1120210379);
+        c = md5_ii(c, d, a, b, x[i + 2], 15, 718787259);
+        b = md5_ii(b, c, d, a, x[i + 9], 21, -343485551);
         a = safe_add(a, olda);
         b = safe_add(b, oldb);
         c = safe_add(c, oldc);
@@ -98,115 +100,111 @@
     }
     return Array(a, b, c, d);
 }
+
 /*
  * These functions implement the four basic operations the algorithm uses.
  */
-function md5_cmn(q, a, b, x, s, t)
-{
-    return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),b);
+function md5_cmn(q, a, b, x, s, t) {
+    return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s), b);
 }
-function md5_ff(a, b, c, d, x, s, t)
-{
+
+function md5_ff(a, b, c, d, x, s, t) {
     return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t);
 }
-function md5_gg(a, b, c, d, x, s, t)
-{
+
+function md5_gg(a, b, c, d, x, s, t) {
     return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t);
 }
-function md5_hh(a, b, c, d, x, s, t)
-{
+
+function md5_hh(a, b, c, d, x, s, t) {
     return md5_cmn(b ^ c ^ d, a, b, x, s, t);
 }
-function md5_ii(a, b, c, d, x, s, t)
-{
+
+function md5_ii(a, b, c, d, x, s, t) {
     return md5_cmn(c ^ (b | (~d)), a, b, x, s, t);
 }
+
 /*
  * Calculate the HMAC-MD5, of a key and some data
  */
-function core_hmac_md5(key, data)
-{
+function core_hmac_md5(key, data) {
     var bkey = str2binl(key);
-    if(bkey.length > 16) bkey = core_md5(bkey, key.length * chrsz);
+    if (bkey.length > 16) bkey = core_md5(bkey, key.length * chrsz);
     var ipad = Array(16), opad = Array(16);
-    for(var i = 0; i < 16; i++)
-    {
+    for (var i = 0; i < 16; i++) {
         ipad[i] = bkey[i] ^ 0x36363636;
         opad[i] = bkey[i] ^ 0x5C5C5C5C;
     }
     var hash = core_md5(ipad.concat(str2binl(data)), 512 + data.length * chrsz);
     return core_md5(opad.concat(hash), 512 + 128);
 }
+
 /*
  * Add integers, wrapping at 2^32. This uses 16-bit operations internally
  * to work around bugs in some JS interpreters.
  */
-function safe_add(x, y)
-{
+function safe_add(x, y) {
     var lsw = (x & 0xFFFF) + (y & 0xFFFF);
     var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
     return (msw << 16) | (lsw & 0xFFFF);
 }
+
 /*
  * Bitwise rotate a 32-bit number to the left.
  */
-function bit_rol(num, cnt)
-{
+function bit_rol(num, cnt) {
     return (num << cnt) | (num >>> (32 - cnt));
 }
+
 /*
  * Convert a string to an array of little-endian words
  * If chrsz is ASCII, characters >255 have their hi-byte silently ignored.
  */
-function str2binl(str)
-{
+function str2binl(str) {
     var bin = Array();
     var mask = (1 << chrsz) - 1;
-    for(var i = 0; i < str.length * chrsz; i += chrsz)
-        bin[i>>5] |= (str.charCodeAt(i / chrsz) & mask) << (i%32);
+    for (var i = 0; i < str.length * chrsz; i += chrsz)
+        bin[i >> 5] |= (str.charCodeAt(i / chrsz) & mask) << (i % 32);
     return bin;
 }
+
 /*
  * Convert an array of little-endian words to a string
  */
-function binl2str(bin)
-{
+function binl2str(bin) {
     var str = "";
     var mask = (1 << chrsz) - 1;
-    for(var i = 0; i < bin.length * 32; i += chrsz)
-        str += String.fromCharCode((bin[i>>5] >>> (i % 32)) & mask);
+    for (var i = 0; i < bin.length * 32; i += chrsz)
+        str += String.fromCharCode((bin[i >> 5] >>> (i % 32)) & mask);
     return str;
 }
+
 /*
  * Convert an array of little-endian words to a hex string.
  */
-function binl2hex(binarray)
-{
+function binl2hex(binarray) {
     var hex_tab = hexcase ? "0123456789ABCDEF" : "0123456789abcdef";
     var str = "";
-    for(var i = 0; i < binarray.length * 4; i++)
-    {
-        str += hex_tab.charAt((binarray[i>>2] >> ((i%4)*8+4)) & 0xF) +
-            hex_tab.charAt((binarray[i>>2] >> ((i%4)*8 )) & 0xF);
+    for (var i = 0; i < binarray.length * 4; i++) {
+        str += hex_tab.charAt((binarray[i >> 2] >> ((i % 4) * 8 + 4)) & 0xF) +
+            hex_tab.charAt((binarray[i >> 2] >> ((i % 4) * 8)) & 0xF);
     }
     return str;
 }
+
 /*
  * Convert an array of little-endian words to a base-64 string
  */
-function binl2b64(binarray)
-{
+function binl2b64(binarray) {
     var tab = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
     var str = "";
-    for(var i = 0; i < binarray.length * 4; i += 3)
-    {
-        var triplet = (((binarray[i >> 2] >> 8 * ( i %4)) & 0xFF) << 16)
-            | (((binarray[i+1 >> 2] >> 8 * ((i+1)%4)) & 0xFF) << 8 )
-            | ((binarray[i+2 >> 2] >> 8 * ((i+2)%4)) & 0xFF);
-        for(var j = 0; j < 4; j++)
-        {
-            if(i * 8 + j * 6 > binarray.length * 32) str += b64pad;
-            else str += tab.charAt((triplet >> 6*(3-j)) & 0x3F);
+    for (var i = 0; i < binarray.length * 4; i += 3) {
+        var triplet = (((binarray[i >> 2] >> 8 * (i % 4)) & 0xFF) << 16)
+            | (((binarray[i + 1 >> 2] >> 8 * ((i + 1) % 4)) & 0xFF) << 8)
+            | ((binarray[i + 2 >> 2] >> 8 * ((i + 2) % 4)) & 0xFF);
+        for (var j = 0; j < 4; j++) {
+            if (i * 8 + j * 6 > binarray.length * 32) str += b64pad;
+            else str += tab.charAt((triplet >> 6 * (3 - j)) & 0x3F);
         }
     }
     return str;
diff --git a/zy-acs-cv/src/main/webapp/views/monitor/js/monitor.js b/zy-acs-cv/src/main/webapp/views/monitor/js/monitor.js
index c99b0f8..da07b0f 100644
--- a/zy-acs-cv/src/main/webapp/views/monitor/js/monitor.js
+++ b/zy-acs-cv/src/main/webapp/views/monitor/js/monitor.js
@@ -31,8 +31,8 @@
  * 鑾峰彇鏃堕棿
  */
 function getDate() {
-    http.get(baseUrl+"/monitor/date", null, function (res) {
-        if (res.code === 200){
+    http.get(baseUrl + "/monitor/date", null, function (res) {
+        if (res.code === 200) {
             year = res.data.year;
             month = res.data.month;
             day = res.data.day;
@@ -40,9 +40,9 @@
             minute = res.data.minute;
             second = res.data.second;
             week = res.data.week;
-        } else if (res.code === 403){
-            parent.location.href = baseUrl+"/login";
-        }  else {
+        } else if (res.code === 403) {
+            parent.location.href = baseUrl + "/login";
+        } else {
             layer.msg("杩炴帴鏈嶅姟鍣ㄥけ璐�", {icon: 2});
         }
     })
@@ -53,8 +53,8 @@
  * 鑾峰彇鍏朵粬鏁版嵁
  */
 function getOther() {
-    http.get(baseUrl+"/monitor/other", {crnId: getUrlVal("crnId"), ledId: getUrlVal("ledId")}, function (res) {
-        if (res.code === 200){
+    http.get(baseUrl + "/monitor/other", {crnId: getUrlVal("crnId"), ledId: getUrlVal("ledId")}, function (res) {
+        if (res.code === 200) {
 
             // 宸�
             $('#xDistance').text(res.data.xDistance);
@@ -84,9 +84,9 @@
                 $('#led-p-content').text("");
             }
 
-        } else if (res.code === 403){
-            parent.location.href = baseUrl+"/login";
-        }  else {
+        } else if (res.code === 403) {
+            parent.location.href = baseUrl + "/login";
+        } else {
             layer.msg("杩炴帴鏈嶅姟鍣ㄥけ璐�", {icon: 2});
         }
     })
@@ -120,14 +120,11 @@
 function exitFull() {
     if (document.exitFullscreen) {
         document.exitFullscreen();
-    }
-    else if (document.mozCancelFullScreen) {
+    } else if (document.mozCancelFullScreen) {
         document.mozCancelFullScreen();
-    }
-    else if (document.webkitCancelFullScreen) {
+    } else if (document.webkitCancelFullScreen) {
         document.webkitCancelFullScreen();
-    }
-    else if (document.msExitFullscreen) {
+    } else if (document.msExitFullscreen) {
         document.msExitFullscreen();
     }
 }
@@ -136,7 +133,8 @@
 document.addEventListener("fullscreenchange", function () {
     try {
         fullscreenState.innerHTML = (document.fullscreen) ? "" : "not ";
-    } catch (e) {}
+    } catch (e) {
+    }
 }, false);
 document.addEventListener("mozfullscreenchange", function () {
     fullscreenState.innerHTML = (document.mozFullScreen) ? "" : "not ";
diff --git a/zy-acs-cv/src/main/webapp/views/monitor/monitor.html b/zy-acs-cv/src/main/webapp/views/monitor/monitor.html
index a2d8d81..461d6b4 100644
--- a/zy-acs-cv/src/main/webapp/views/monitor/monitor.html
+++ b/zy-acs-cv/src/main/webapp/views/monitor/monitor.html
@@ -29,14 +29,16 @@
         }
 
         .crn-speed span {
-            display:inline-block;
-            margin:20px auto;
-            font-size:56px;
-            font-family:'Pacifico',serif
+            display: inline-block;
+            margin: 20px auto;
+            font-size: 56px;
+            font-family: 'Pacifico', serif
         }
+
         .speed-content {
             height: 100%;
         }
+
         .speed-chart {
             float: left;
             width: 100%;
@@ -50,6 +52,7 @@
             width: 100%;
             height: 58%;
         }
+
         .scroll-bar {
             float: left;
             width: 50%;
@@ -58,31 +61,35 @@
         }
 
         .scroll-header span {
-            font-size:64px;
-            font-family:'Pacifico',serif
+            font-size: 64px;
+            font-family: 'Pacifico', serif
         }
 
         .scroll-content {
-            animation:anis 10s linear infinite;
+            animation: anis 10s linear infinite;
             padding: 200px 10px 20px 10px;
-            font-family:'Pacifico',serif;
-            overflow:hidden;
+            font-family: 'Pacifico', serif;
+            overflow: hidden;
         }
+
         .scroll-content:last-child {
             border-left: 1px solid rgba(0, 0, 0, 0.3);
         }
+
         .scroll-content:hover {
-            animation-play-state:paused;
+            animation-play-state: paused;
         }
+
         @keyframes anis {
             100% {
-                transform:translateY(-200px)
+                transform: translateY(-200px)
             }
         }
 
         #led-content {
             display: none;
         }
+
         #led-p-content {
             text-align: center;
             padding: 20px 40px;
@@ -95,292 +102,295 @@
 </head>
 <body class="monitor-bg">
 
-    <!-- 鐢电珯璇︽儏 -->
-    <div class="animationTop" id="detail-modal">
-        <button id="closeBtn">鍏抽棴</button>
-        <ul>
-            <li>鍦虹珯鍚�:&nbsp;涓嬫矙鏂板姞鍧$鎶�鍥厖鐢电珯</li>
-            <li>蹇厖涓暟:&nbsp;10</li>
-            <li>蹇厖鐢典环:&nbsp;1.08鍏�/搴�</li>
-            <li>鎱㈠厖涓暟:&nbsp;5</li>
-            <li>鎱㈠厖鐢典环:&nbsp;1.44鍏�/搴�</li>
-            <li>鎬绘敹鍏�:&nbsp;4212.4鍏�</li>
-        </ul>
-    </div>
+<!-- 鐢电珯璇︽儏 -->
+<div class="animationTop" id="detail-modal">
+    <button id="closeBtn">鍏抽棴</button>
+    <ul>
+        <li>鍦虹珯鍚�:&nbsp;涓嬫矙鏂板姞鍧$鎶�鍥厖鐢电珯</li>
+        <li>蹇厖涓暟:&nbsp;10</li>
+        <li>蹇厖鐢典环:&nbsp;1.08鍏�/搴�</li>
+        <li>鎱㈠厖涓暟:&nbsp;5</li>
+        <li>鎱㈠厖鐢典环:&nbsp;1.44鍏�/搴�</li>
+        <li>鎬绘敹鍏�:&nbsp;4212.4鍏�</li>
+    </ul>
+</div>
 
-    <!--澶撮儴-->
-    <div class="header" >
-        <div class="button-left"></div>
-        <div class="button-right"></div>
-        <div class="time-tools">
-            <span id="bar-year"></span>-<span id="bar-month"></span>-<span id="bar-day"></span> <span id="bar-hour"></span>:<span id="bar-minute"></span>:<span id="bar-second"></span>&nbsp;&nbsp;<span id="bar-week"></span>
-        </div>
-        <div class="title">
-            鑷姩浠撳簱WCS鐩戞帶骞冲彴
+<!--澶撮儴-->
+<div class="header">
+    <div class="button-left"></div>
+    <div class="button-right"></div>
+    <div class="time-tools">
+        <span id="bar-year"></span>-<span id="bar-month"></span>-<span id="bar-day"></span> <span id="bar-hour"></span>:<span
+            id="bar-minute"></span>:<span id="bar-second"></span>&nbsp;&nbsp;<span id="bar-week"></span>
+    </div>
+    <div class="title">
+        鑷姩浠撳簱WCS鐩戞帶骞冲彴
+    </div>
+</div>
+
+<!--涓讳綋-->
+<div class="container">
+
+    <!--宸�-->
+    <div class="container-element-side">
+        <div class="container-side-box">
+            <div class="image-border image-border1"></div>
+            <div class="image-border image-border2"></div>
+            <div class="image-border image-border3"></div>
+            <div class="image-border image-border4"></div>
+            <div class="introduce">
+                <h6>鑷姩鍖栫珛浣撲粨搴�</h6>
+                <p class="english">Automatic Storageand Retrieval System</p>
+                <p class="introduce-content">
+                    鍒╃敤绔嬩綋浠撳簱璁惧鍙疄鐜颁粨搴撻珮灞傚悎鐞嗗寲銆佸瓨鍙栬嚜鍔ㄥ寲銆佹搷浣滅畝渚垮寲锛涜嚜鍔ㄥ寲绔嬩綋浠撳簱鏄綋鍓嶆妧鏈按骞宠緝楂樼殑褰㈠紡銆傝嚜鍔ㄥ寲绔嬩綋浠撳簱鐨勪富浣撶敱璐ф灦銆佸贩閬撳紡鍫嗗灈璧烽噸鏈恒�佸叆锛堝嚭锛夊簱宸ヤ綔鍙板拰鑷姩杩愯繘锛堝嚭锛夊強鎿嶄綔鎺у埗绯荤粺缁勬垚銆傝揣鏋舵槸閽㈢粨鏋勬垨閽㈢瓔娣峰嚌鍦熺粨鏋勭殑寤虹瓚鐗╂垨缁撴瀯浣擄紝璐ф灦鍐呮槸鏍囧噯灏哄鐨勮揣浣嶇┖闂达紝宸烽亾鍫嗗灈璧烽噸鏈虹┛琛屼簬璐ф灦涔嬮棿鐨勫贩閬撲腑锛屽畬鎴愬瓨銆佸彇璐х殑宸ヤ綔銆傜鐞嗕笂閲囩敤璁$畻鏈哄強鏉″舰鐮佹妧鏈��</p>
+            </div>
+            <div class="charge-info">
+                <div class="info-header">
+                    <h6>浠撳簱鏁版嵁</h6>
+                    <p class="english">warehouse data</p>
+                </div>
+                <div class="charge-info-elem">
+                    <img src="img/a1.png">
+                    <div class="info-detail">
+                        <div class="real-data">
+                            <i class="count" id="xDistance">0</i>
+                            <span class="unit">m</span>
+                        </div>
+                        <div class="content">绱璧拌璺濈(绫�)</div>
+                    </div>
+                </div>
+                <div class="charge-info-elem">
+                    <img src="img/b1.png">
+                    <div class="info-detail">
+                        <div class="real-data">
+                            <i class="count" id="yDistance">0</i>
+                            <span class="unit">m</span>
+                        </div>
+                        <div class="content">绱鍗囬檷璺濈(绫�)</div>
+                    </div>
+                </div>
+                <div class="charge-info-elem">
+                    <img src="img/c1.png">
+                    <div class="info-detail">
+                        <div class="real-data">
+                            <i class="count" id="xDuration">0</i>
+                            <span class="unit">s</span>
+                        </div>
+                        <div class="content">绱璧拌鏃堕暱(绉�)</div>
+                    </div>
+                </div>
+                <div class="charge-info-elem">
+                    <img src="img/d1.png">
+                    <div class="info-detail">
+                        <div class="real-data">
+                            <i class="count" id="yDuration">0</i>
+                            <span class="unit">s</span>
+                        </div>
+                        <div class="content">绱鍗囬檷鏃堕暱(绉�)</div>
+                    </div>
+                </div>
+            </div>
+            <div class="footer container-side-box">
+                <div class="image-border image-border1"></div>
+                <div class="image-border image-border2"></div>
+                <div class="image-border image-border3"></div>
+                <div class="image-border image-border4"></div>
+                <span>娴欐睙涓壃绔嬪簱鎶�鏈湁闄愬叕鍙�</span>
+                <img src="../../static/image/barcode.png">
+            </div>
         </div>
     </div>
 
-    <!--涓讳綋-->
-    <div class="container">
+    <!--涓�-->
+    <div class="container-element-middle">
+        <div class="map-board">
+            <div class="image-border image-border1"></div>
+            <div class="image-border image-border2"></div>
+            <div class="image-border image-border3"></div>
+            <div class="image-border image-border4"></div>
 
-        <!--宸�-->
-        <div class="container-element-side">
-            <div class="container-side-box">
-                <div class="image-border image-border1"></div>
-                <div class="image-border image-border2"></div>
-                <div class="image-border image-border3"></div>
-                <div class="image-border image-border4"></div>
-                <div class="introduce">
-                    <h6>鑷姩鍖栫珛浣撲粨搴�</h6>
-                    <p class="english">Automatic Storageand Retrieval System</p>
-                    <p class="introduce-content">  鍒╃敤绔嬩綋浠撳簱璁惧鍙疄鐜颁粨搴撻珮灞傚悎鐞嗗寲銆佸瓨鍙栬嚜鍔ㄥ寲銆佹搷浣滅畝渚垮寲锛涜嚜鍔ㄥ寲绔嬩綋浠撳簱鏄綋鍓嶆妧鏈按骞宠緝楂樼殑褰㈠紡銆傝嚜鍔ㄥ寲绔嬩綋浠撳簱鐨勪富浣撶敱璐ф灦銆佸贩閬撳紡鍫嗗灈璧烽噸鏈恒�佸叆锛堝嚭锛夊簱宸ヤ綔鍙板拰鑷姩杩愯繘锛堝嚭锛夊強鎿嶄綔鎺у埗绯荤粺缁勬垚銆傝揣鏋舵槸閽㈢粨鏋勬垨閽㈢瓔娣峰嚌鍦熺粨鏋勭殑寤虹瓚鐗╂垨缁撴瀯浣擄紝璐ф灦鍐呮槸鏍囧噯灏哄鐨勮揣浣嶇┖闂达紝宸烽亾鍫嗗灈璧烽噸鏈虹┛琛屼簬璐ф灦涔嬮棿鐨勫贩閬撲腑锛屽畬鎴愬瓨銆佸彇璐х殑宸ヤ綔銆傜鐞嗕笂閲囩敤璁$畻鏈哄強鏉″舰鐮佹妧鏈��</p>
-                </div>
-                <div class="charge-info">
-                    <div class="info-header">
-                        <h6>浠撳簱鏁版嵁</h6>
-                        <p class="english">warehouse data</p>
+            <!-- 涓笂 -->
+            <div class="crn-speed">
+                <div class="speed-content">
+                    <div id="crn-chart" class="speed-chart">
                     </div>
-                    <div class="charge-info-elem">
-                        <img src="img/a1.png">
-                        <div class="info-detail">
-                            <div class="real-data">
-                                <i class="count" id="xDistance">0</i>
-                                <span class="unit">m</span>
-                            </div>
-                            <div class="content">绱璧拌璺濈(绫�)</div>
-                        </div>
-                    </div>
-                    <div class="charge-info-elem">
-                        <img src="img/b1.png">
-                        <div class="info-detail">
-                            <div class="real-data">
-                                <i class="count" id="yDistance">0</i>
-                                <span class="unit">m</span>
-                            </div>
-                            <div class="content">绱鍗囬檷璺濈(绫�)</div>
-                        </div>
-                    </div>
-                    <div class="charge-info-elem">
-                        <img src="img/c1.png">
-                        <div class="info-detail">
-                            <div class="real-data">
-                                <i class="count" id="xDuration">0</i>
-                                <span class="unit">s</span>
-                            </div>
-                            <div class="content">绱璧拌鏃堕暱(绉�)</div>
-                        </div>
-                    </div>
-                    <div class="charge-info-elem">
-                        <img src="img/d1.png">
-                        <div class="info-detail">
-                            <div class="real-data">
-                                <i class="count" id="yDuration">0</i>
-                                <span class="unit">s</span>
-                            </div>
-                            <div class="content">绱鍗囬檷鏃堕暱(绉�)</div>
-                        </div>
-                    </div>
-                </div>
-                <div class="footer container-side-box">
-                    <div class="image-border image-border1"></div>
-                    <div class="image-border image-border2"></div>
-                    <div class="image-border image-border3"></div>
-                    <div class="image-border image-border4"></div>
-                    <span>娴欐睙涓壃绔嬪簱鎶�鏈湁闄愬叕鍙�</span>
-                    <img src="../../static/image/barcode.png">
                 </div>
             </div>
+
+            <!-- 涓笅 -->
+            <div class="scroll-pane">
+                <div class="layui-carousel" id="banner">
+                    <div carousel-item>
+                        <div class="item-img" id="img-1" style="background-color: red"></div>
+                        <div class="item-img" id="img-2" style="background-color: gold"></div>
+                        <div class="item-img" id="img-3" style="background-color: green"></div>
+                        <div class="item-img" id="img-4" style="background-color: white"></div>
+                        <div class="item-img" id="img-5" style="background-color: darkgoldenrod"></div>
+                    </div>
+                </div>
+
+                <div id="led-content">
+                    <pre id="led-p-content"></pre>
+                </div>
+
+                <!--                        &lt;!&ndash; 涓乏 &ndash;&gt;-->
+                <!--                        <div class="scroll-bar left-bar">-->
+                <!--                            <div class="scroll-header">-->
+                <!--                                <span>鍏ュ簱</span>-->
+                <!--                                <p class="english">Entering Warehouse</p>-->
+                <!--                            </div>-->
+                <!--                            <div class="scroll-content">-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                            </div>-->
+                <!--                        </div>-->
+
+                <!--                        &lt;!&ndash; 涓彸 &ndash;&gt;-->
+                <!--                        <div class="scroll-bar right-bar">-->
+                <!--                            <div class="scroll-header">-->
+                <!--                                <span>鍑哄簱</span>-->
+                <!--                                <p class="english">Delivery Of Cargo From Storage</p>-->
+                <!--                            </div>-->
+                <!--                            <div class="scroll-content">-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                                <p>111111111111111111111</p>-->
+                <!--                            </div>-->
+                <!--                        </div>-->
+                <!--                    </div>-->
+
+            </div>
+
         </div>
-
-        <!--涓�-->
-        <div class="container-element-middle">
-            <div class="map-board">
-                    <div class="image-border image-border1"></div>
-                    <div class="image-border image-border2"></div>
-                    <div class="image-border image-border3"></div>
-                    <div class="image-border image-border4"></div>
-
-                    <!-- 涓笂 -->
-                    <div class="crn-speed">
-                        <div class="speed-content">
-                            <div id="crn-chart" class="speed-chart">
-                            </div>
-                        </div>
-                    </div>
-
-                    <!-- 涓笅 -->
-                    <div class="scroll-pane">
-                        <div class="layui-carousel" id="banner">
-                            <div carousel-item>
-                                <div class="item-img" id="img-1" style="background-color: red"></div>
-                                <div class="item-img" id="img-2" style="background-color: gold"></div>
-                                <div class="item-img" id="img-3" style="background-color: green"></div>
-                                <div class="item-img" id="img-4" style="background-color: white"></div>
-                                <div class="item-img" id="img-5" style="background-color: darkgoldenrod"></div>
-                            </div>
-                        </div>
-
-                        <div id="led-content">
-                            <pre id="led-p-content"></pre>
-                        </div>
-
-<!--                        &lt;!&ndash; 涓乏 &ndash;&gt;-->
-<!--                        <div class="scroll-bar left-bar">-->
-<!--                            <div class="scroll-header">-->
-<!--                                <span>鍏ュ簱</span>-->
-<!--                                <p class="english">Entering Warehouse</p>-->
-<!--                            </div>-->
-<!--                            <div class="scroll-content">-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                            </div>-->
-<!--                        </div>-->
-
-<!--                        &lt;!&ndash; 涓彸 &ndash;&gt;-->
-<!--                        <div class="scroll-bar right-bar">-->
-<!--                            <div class="scroll-header">-->
-<!--                                <span>鍑哄簱</span>-->
-<!--                                <p class="english">Delivery Of Cargo From Storage</p>-->
-<!--                            </div>-->
-<!--                            <div class="scroll-content">-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                                <p>111111111111111111111</p>-->
-<!--                            </div>-->
-<!--                        </div>-->
-<!--                    </div>-->
-
-                </div>
-
-            </div>
-        </div>
-
-        <!--鍙�-->
-        <div class="container-element-side">
-            <div class="container-side-box right-top">
-                <div class="image-border image-border1"></div>
-                <div class="image-border image-border2"></div>
-                <div class="image-border image-border3"></div>
-                <div class="image-border image-border4"></div>
-                <div class="line-chart-title">
-                    <div class="order-report">
-                        <span class="order-report-left" >鍏ュ嚭搴撶粺璁�</span>
-                        <span class="order-report-right">31</span>
-                    </div>
-                    <div class="order-report-english english">
-                        <span class="order-report-left">ORDER STATISTICS</span>
-                        <span class="order-report-right">浠婃棩鍏呯數璁㈠崟鏁�</span>
-                    </div>
-                </div>
-                <!--鎶樼嚎鍥�-->
-                <div id="line-charts"></div>
-            </div>
-            <div class="container-side-box right-middle">
-                <div class="image-border image-border1"></div>
-                <div class="image-border image-border2"></div>
-                <div class="image-border image-border3"></div>
-                <div class="image-border image-border4"></div>
-                <div class="top-header">
-                    <div class="income-date">
-                        <span class="income-date-left" >搴撳瓨绫诲瀷</span>
-                        <span class="income-date-right">浠婂ぉ</span>
-                    </div>
-                    <div class="income-date-english english">
-                        <span class="income-date-left">INCOME DATE</span>
-                        <span class="income-date-right">Today</span>
-                    </div>
-                </div>
-                <div class="top-main">
-                    <div id="pie-charts"></div>
-                </div>
-                <div class="top-footer">
-                    <div class="top-footer-elem">
-                        <div class="elem-header" id="elem-header-first">
-                        </div>
-                        <div class="elem-main">
-                            鍦ㄥ簱
-                        </div>
-                        <div class="elem-footer">
-                            <span id="stock-count">0</span>
-                        </div>
-                    </div>
-                    <div class="top-footer-elem">
-                        <div class="elem-header" id="elem-header-second">
-                        </div>
-                        <div class="elem-main">
-                            绌哄簱
-                        </div>
-                        <div class="elem-footer">
-                            <span id="empty-count">0</span>
-                        </div>
-                    </div>
-                    <div class="top-footer-elem">
-                        <div class="elem-header" id="elem-header-third">
-                        </div>
-                        <div class="elem-main">
-                            绂佺敤
-                        </div>
-                        <div class="elem-footer">
-                            <span id="none-count">0</span>
-                        </div>
-                    </div>
-                </div>
-            </div>
-            <div class="container-side-box right-bottom">
-                <div class="image-border image-border1"></div>
-                <div class="image-border image-border2"></div>
-                <div class="image-border image-border3"></div>
-                <div class="image-border image-border4"></div>
-                <div class="progress-bar">
-                    <div class="usage-rate">
-                        <span class="usage-rate-left" >搴撲綅浣跨敤鐜�</span>
-                        <span class="usage-rate-right"><span id="usedPr">0</span>%</span>
-                    </div>
-                    <div class="usage-rate-english english">
-                        <span class="usage-rate-left">EQUIPMENT USAGE THIS MONTH</span>
-                        <span class="usage-rate-right">鍚屾瘮涓婃湀 + 5%</span>
-                    </div>
-                </div>
-                <div class="progress-bar-modal">
-                    <div class="layui-progress layui-progress-big" lay-filter="used-progress" style="background-color: #233751;width: 80%;display: inline-block">
-                        <div class="layui-progress-bar layui-bg-red" lay-percent="0%"></div>
-                    </div>
-<!--                    <div class="bar-container">-->
-<!--                        <div class="bar-proportion"><span>瀹為檯浣跨敤</span></div>-->
-<!--                    </div>-->
-                    <i class="bar-container-count"><span id="used">0</span></i>
-                </div>
-            </div>
-        </div>
-
     </div>
+
+    <!--鍙�-->
+    <div class="container-element-side">
+        <div class="container-side-box right-top">
+            <div class="image-border image-border1"></div>
+            <div class="image-border image-border2"></div>
+            <div class="image-border image-border3"></div>
+            <div class="image-border image-border4"></div>
+            <div class="line-chart-title">
+                <div class="order-report">
+                    <span class="order-report-left">鍏ュ嚭搴撶粺璁�</span>
+                    <span class="order-report-right">31</span>
+                </div>
+                <div class="order-report-english english">
+                    <span class="order-report-left">ORDER STATISTICS</span>
+                    <span class="order-report-right">浠婃棩鍏呯數璁㈠崟鏁�</span>
+                </div>
+            </div>
+            <!--鎶樼嚎鍥�-->
+            <div id="line-charts"></div>
+        </div>
+        <div class="container-side-box right-middle">
+            <div class="image-border image-border1"></div>
+            <div class="image-border image-border2"></div>
+            <div class="image-border image-border3"></div>
+            <div class="image-border image-border4"></div>
+            <div class="top-header">
+                <div class="income-date">
+                    <span class="income-date-left">搴撳瓨绫诲瀷</span>
+                    <span class="income-date-right">浠婂ぉ</span>
+                </div>
+                <div class="income-date-english english">
+                    <span class="income-date-left">INCOME DATE</span>
+                    <span class="income-date-right">Today</span>
+                </div>
+            </div>
+            <div class="top-main">
+                <div id="pie-charts"></div>
+            </div>
+            <div class="top-footer">
+                <div class="top-footer-elem">
+                    <div class="elem-header" id="elem-header-first">
+                    </div>
+                    <div class="elem-main">
+                        鍦ㄥ簱
+                    </div>
+                    <div class="elem-footer">
+                        <span id="stock-count">0</span>
+                    </div>
+                </div>
+                <div class="top-footer-elem">
+                    <div class="elem-header" id="elem-header-second">
+                    </div>
+                    <div class="elem-main">
+                        绌哄簱
+                    </div>
+                    <div class="elem-footer">
+                        <span id="empty-count">0</span>
+                    </div>
+                </div>
+                <div class="top-footer-elem">
+                    <div class="elem-header" id="elem-header-third">
+                    </div>
+                    <div class="elem-main">
+                        绂佺敤
+                    </div>
+                    <div class="elem-footer">
+                        <span id="none-count">0</span>
+                    </div>
+                </div>
+            </div>
+        </div>
+        <div class="container-side-box right-bottom">
+            <div class="image-border image-border1"></div>
+            <div class="image-border image-border2"></div>
+            <div class="image-border image-border3"></div>
+            <div class="image-border image-border4"></div>
+            <div class="progress-bar">
+                <div class="usage-rate">
+                    <span class="usage-rate-left">搴撲綅浣跨敤鐜�</span>
+                    <span class="usage-rate-right"><span id="usedPr">0</span>%</span>
+                </div>
+                <div class="usage-rate-english english">
+                    <span class="usage-rate-left">EQUIPMENT USAGE THIS MONTH</span>
+                    <span class="usage-rate-right">鍚屾瘮涓婃湀 + 5%</span>
+                </div>
+            </div>
+            <div class="progress-bar-modal">
+                <div class="layui-progress layui-progress-big" lay-filter="used-progress"
+                     style="background-color: #233751;width: 80%;display: inline-block">
+                    <div class="layui-progress-bar layui-bg-red" lay-percent="0%"></div>
+                </div>
+                <!--                    <div class="bar-container">-->
+                <!--                        <div class="bar-proportion"><span>瀹為檯浣跨敤</span></div>-->
+                <!--                    </div>-->
+                <i class="bar-container-count"><span id="used">0</span></i>
+            </div>
+        </div>
+    </div>
+
+</div>
 </body>
 <script>
-    layui.use(['element', 'carousel'], function(){
+    layui.use(['element', 'carousel'], function () {
         var carousel = layui.carousel;
         var element = layui.element;
         // 杞挱鍥�
         carousel.render({
             elem: '#banner'
-            ,width: '100%' //璁剧疆瀹瑰櫒瀹藉害
-            ,arrow: 'hover' // 鍒囨崲绠ご榛樿鏄剧ず鐘舵�侊紝鍙�夊�间负 hover锛堟偓鍋滄樉绀猴級 always锛堝缁堟樉绀猴級 none锛堝缁堜笉鏄剧ず锛�
-            ,interval: '3000' // 鑷姩鍒囨崲鐨勬椂闂撮棿闅旓紝鍗曚綅锛歮s锛堟绉掞級锛屼笉鑳戒綆浜�800
-            ,anim: 'fade'
+            , width: '100%' //璁剧疆瀹瑰櫒瀹藉害
+            , arrow: 'hover' // 鍒囨崲绠ご榛樿鏄剧ず鐘舵�侊紝鍙�夊�间负 hover锛堟偓鍋滄樉绀猴級 always锛堝缁堟樉绀猴級 none锛堝缁堜笉鏄剧ず锛�
+            , interval: '3000' // 鑷姩鍒囨崲鐨勬椂闂撮棿闅旓紝鍗曚綅锛歮s锛堟绉掞級锛屼笉鑳戒綆浜�800
+            , anim: 'fade'
         });
     });
 
@@ -395,7 +405,6 @@
     $('.button-right').click(function () {
         full();
     });
-
 
 
     /***********************************************************************************/
@@ -572,7 +581,7 @@
                         shadowBlur: 10
                     }
                 },
-				axisLabel: {            // 鍧愭爣杞村皬鏍囪
+                axisLabel: {            // 鍧愭爣杞村皬鏍囪
                     fontWeight: 'bolder',
                     color: '#fff',
                     shadowColor: '#fff', //榛樿閫忔槑
@@ -600,16 +609,16 @@
                 //     }
                 // },
                 splitLine: {           // 鍒嗛殧绾�
-                    length:15,         // 灞炴�ength鎺у埗绾块暱
+                    length: 15,         // 灞炴�ength鎺у埗绾块暱
                     lineStyle: {       // 灞炴�ineStyle锛堣瑙乴ineStyle锛夋帶鍒剁嚎鏉℃牱寮�
-                        width:3,
+                        width: 3,
                         color: '#fff',
                         shadowColor: '#fff', //榛樿閫忔槑
                         shadowBlur: 10
                     }
                 },
                 pointer: {
-                    width:2,
+                    width: 2,
                     shadowColor: '#fff', //榛樿閫忔槑
                     shadowBlur: 5
                 },
@@ -665,11 +674,14 @@
                     color: '#fff',
                     shadowColor: '#fff', //榛樿閫忔槑
                     shadowBlur: 10,
-                    formatter: function(v){
+                    formatter: function (v) {
                         switch (v + '') {
-                            case '0': return '鍙�';
-                            case '1': return '涓�';
-                            case '2': return '宸�';
+                            case '0':
+                                return '鍙�';
+                            case '1':
+                                return '涓�';
+                            case '2':
+                                return '宸�';
                         }
                     }
                 },
@@ -693,7 +705,7 @@
                 detail: {
                     show: false
                 },
-                data:[{value: 0.5, name: 'gas'}]
+                data: [{value: 0.5, name: 'gas'}]
             }
         ]
     };
@@ -718,36 +730,36 @@
         xAxis: {
             type: 'category',
             boundaryGap: false,
-            data:  ['1', '2', '3', '4', '5', '6', '7'],
+            data: ['1', '2', '3', '4', '5', '6', '7'],
             axisLabel: {
-                textStyle:{
-                    color:'#aaa',  //鍧愭爣鐨勫瓧浣撻鑹�
+                textStyle: {
+                    color: '#aaa',  //鍧愭爣鐨勫瓧浣撻鑹�
                     fontSize: 6,
                 },
             },
-            axisLine:{
-                lineStyle:{
-                    color:'#3590ac', // 鍧愭爣杞撮鑹�
+            axisLine: {
+                lineStyle: {
+                    color: '#3590ac', // 鍧愭爣杞撮鑹�
                 }
             }
         },
         yAxis: {
             type: 'value',
             axisLabel: {
-                textStyle:{
-                    color:'#aaa',  //鍧愭爣鐨勫瓧浣撻鑹�
+                textStyle: {
+                    color: '#aaa',  //鍧愭爣鐨勫瓧浣撻鑹�
                     fontSize: 5
                 },
             },
-            axisLine:{
-                lineStyle:{
-                    color:'#3590ac', // 鍧愭爣杞撮鑹�
+            axisLine: {
+                lineStyle: {
+                    color: '#3590ac', // 鍧愭爣杞撮鑹�
                 }
             },
-            splitLine:{
+            splitLine: {
                 show: true,
-                lineStyle:{
-                    color:'#517a9b', // 鍒嗗壊绾块鑹�
+                lineStyle: {
+                    color: '#517a9b', // 鍒嗗壊绾块鑹�
                 }
             }
 
@@ -759,11 +771,11 @@
                 // areaStyle: {
                 //     color: '#7494ae' // 鎶樼嚎鍖哄煙棰滆壊
                 // },
-                itemStyle:{
-                    normal:{
-                        color:'#3590ac', //鎶樼偣棰滆壊
-                        lineStyle:{
-                            color:'#3590ac' //鎶樼嚎棰滆壊
+                itemStyle: {
+                    normal: {
+                        color: '#3590ac', //鎶樼偣棰滆壊
+                        lineStyle: {
+                            color: '#3590ac' //鎶樼嚎棰滆壊
                         }
                     }
                 }
@@ -774,11 +786,11 @@
                 // areaStyle: {
                 //     color: '#d55b35' // 鎶樼嚎鍖哄煙棰滆壊
                 // },
-                itemStyle:{
-                    normal:{
-                        color:'#ef550e', //鎶樼偣棰滆壊
-                        lineStyle:{
-                            color:'#ec670f' //鎶樼嚎棰滆壊
+                itemStyle: {
+                    normal: {
+                        color: '#ef550e', //鎶樼偣棰滆壊
+                        lineStyle: {
+                            color: '#ec670f' //鎶樼嚎棰滆壊
                         }
                     }
                 }
@@ -789,17 +801,17 @@
     function initlineChart() {
         var reportView = lineChartOption;
         $.ajax({
-            url: baseUrl+"/monitor/line/charts",
+            url: baseUrl + "/monitor/line/charts",
             method: 'GET',
             success: function (res) {
-                if (res.code === 200){
+                if (res.code === 200) {
                     var json = res.data.rows;
-                    reportView.xAxis.data=[getDateFormat(-11), getDateFormat(-10), getDateFormat(-9), getDateFormat(-8), getDateFormat(-7), getDateFormat(-6),
+                    reportView.xAxis.data = [getDateFormat(-11), getDateFormat(-10), getDateFormat(-9), getDateFormat(-8), getDateFormat(-7), getDateFormat(-6),
                         getDateFormat(-5), getDateFormat(-4), getDateFormat(-3), getDateFormat(-2), getDateFormat(-1), getDateFormat(-0)];
-                    reportView.series[0].data=res.data.rows[0].data;
-                    reportView.series[1].data=res.data.rows[1].data;
+                    reportView.series[0].data = res.data.rows[0].data;
+                    reportView.series[1].data = res.data.rows[1].data;
                     lineCharts.setOption(reportView)
-                } else if (res.code === 403){
+                } else if (res.code === 403) {
                     top.location.href = "/";
                 } else {
                     console.log(res.msg);
@@ -863,8 +875,8 @@
                         shadowOffsetX: 0,
                         shadowColor: 'rgba(0, 0, 0, 0.5)'
                     },
-                    normal:{
-                        color:function(params) {
+                    normal: {
+                        color: function (params) {
                             //鑷畾涔夐鑹�
                             let colorList = [
                                 '#28b9a2', '#69d7fc', '#fcbf5d',
@@ -876,13 +888,14 @@
             }
         ]
     };
+
     // 楗煎浘鍔犺浇
     function initPieChart() {
         $.ajax({
-            url: baseUrl+"/monitor/loc/rep",
+            url: baseUrl + "/monitor/loc/rep",
             method: 'GET',
             success: function (res) {
-                if (res.code === 200){
+                if (res.code === 200) {
                     pieChartOption.series[0].data = res.data.pie;
                     pieCharts.setOption(pieChartOption);
 
@@ -894,7 +907,7 @@
                     $('#used').text(res.data.used);
 
                     layui.element.progress('used-progress', res.data.usedPr + '%');
-                } else if (res.code === 403){
+                } else if (res.code === 403) {
                     top.location.href = "/";
                 } else {
                     layer.msg(res.msg);
@@ -904,7 +917,7 @@
     }
 
     // eCharts 璺熼殢绐楀彛鏀瑰彉
-    window.onresize = function(){
+    window.onresize = function () {
         crnChart.resize();
         lineCharts.resize();
         pieCharts.resize();
diff --git a/zy-acs-cv/src/main/webapp/views/monitor/monitor0.html b/zy-acs-cv/src/main/webapp/views/monitor/monitor0.html
deleted file mode 100644
index b20982a..0000000
--- a/zy-acs-cv/src/main/webapp/views/monitor/monitor0.html
+++ /dev/null
@@ -1,848 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <meta charset="UTF-8">
-    <title>ASRS鐩戞帶</title>
-    <link href="css/monitor.css" rel="stylesheet">
-    <link href="css/Pacifico.css" rel="stylesheet">
-    <link href="../../static/layui/css/layui.css" rel="stylesheet">
-    <link href="css/lunbo.css" rel="stylesheet">
-    <script src="js/jquery-3.3.1.min.js"></script>
-    <script src="js/vincent.js"></script>
-    <script src="js/echarts/echarts.min.js"></script>
-    <script src="js/jquery.countup.min.js"></script>
-    <script src="js/jquery.waypoints.min.js"></script>
-    <script src="../../static/layui/layui.js"></script>
-    <script src="../../static/js/common.js"></script>
-    <script src="js/monitor.js"></script>
-    <style>
-        .crn-speed {
-            width: 100%;
-            height: 75%;
-            position: absolute;
-            text-align: center;
-            overflow: hidden;
-            text-overflow: ellipsis;
-            white-space: nowrap;
-            top: -15%;
-            /*border-bottom: 1px solid rgba(0, 0, 0, 0.3);*/
-        }
-
-        .crn-speed span {
-            display:inline-block;
-            margin:20px auto;
-            font-size:56px;
-            font-family:'Pacifico',serif
-        }
-
-
-        .scroll-pane {
-            position: absolute;
-            width: 100%;
-            height: 85%;
-        }
-        .scroll-bar {
-            float: left;
-            width: 50%;
-            height: 100%;
-            text-align: center;
-        }
-
-        .scroll-header span {
-            font-size:64px;
-            font-family:'Pacifico',serif
-        }
-
-        .scroll-content {
-            animation:anis 10s linear infinite;
-            padding: 200px 10px 20px 10px;
-            font-family:'Pacifico',serif;
-            overflow:hidden;
-        }
-        .scroll-content:last-child {
-            border-left: 1px solid rgba(0, 0, 0, 0.3);
-        }
-        .scroll-content:hover {
-            animation-play-state:paused;
-        }
-        @keyframes anis {
-            100% {
-                transform:translateY(-200px)
-            }
-        }
-
-        #led-content {
-            display: none;
-        }
-        #led-p-content {
-            text-align: center;
-            padding: 20px 40px;
-            font-size: 35px;
-            font-weight: bold;
-            /*color: #FF5722;*/
-        }
-
-    </style>
-</head>
-<body class="monitor-bg">
-
-    <!--澶撮儴-->
-    <div class="header" >
-        <div class="button-left"></div>
-        <div class="button-right"></div>
-        <div class="time-tools">
-            <span id="bar-year"></span>-<span id="bar-month"></span>-<span id="bar-day"></span> <span id="bar-hour"></span>:<span id="bar-minute"></span>:<span id="bar-second"></span>&nbsp;&nbsp;<span id="bar-week"></span>
-        </div>
-        <div class="title">
-            鑷姩浠撳簱WCS鐩戞帶骞冲彴
-        </div>
-    </div>
-
-    <!--涓讳綋-->
-    <div class="container">
-
-        <!--宸�-->
-        <div class="container-element-side">
-            <div class="container-side-box">
-                <div class="image-border image-border1"></div>
-                <div class="image-border image-border2"></div>
-                <div class="image-border image-border3"></div>
-                <div class="image-border image-border4"></div>
-                <div class="introduce">
-                    <h6>鑷姩鍖栫珛浣撲粨搴�</h6>
-                    <p class="english">Automatic Storageand Retrieval System</p>
-                    <p class="introduce-content">  鍒╃敤绔嬩綋浠撳簱璁惧鍙疄鐜颁粨搴撻珮灞傚悎鐞嗗寲銆佸瓨鍙栬嚜鍔ㄥ寲銆佹搷浣滅畝渚垮寲锛涜嚜鍔ㄥ寲绔嬩綋浠撳簱鏄綋鍓嶆妧鏈按骞宠緝楂樼殑褰㈠紡銆傝嚜鍔ㄥ寲绔嬩綋浠撳簱鐨勪富浣撶敱璐ф灦銆佸贩閬撳紡鍫嗗灈璧烽噸鏈恒�佸叆锛堝嚭锛夊簱宸ヤ綔鍙板拰鑷姩杩愯繘锛堝嚭锛夊強鎿嶄綔鎺у埗绯荤粺缁勬垚銆傝揣鏋舵槸閽㈢粨鏋勬垨閽㈢瓔娣峰嚌鍦熺粨鏋勭殑寤虹瓚鐗╂垨缁撴瀯浣擄紝璐ф灦鍐呮槸鏍囧噯灏哄鐨勮揣浣嶇┖闂达紝宸烽亾鍫嗗灈璧烽噸鏈虹┛琛屼簬璐ф灦涔嬮棿鐨勫贩閬撲腑锛屽畬鎴愬瓨銆佸彇璐х殑宸ヤ綔銆傜鐞嗕笂閲囩敤璁$畻鏈哄強鏉″舰鐮佹妧鏈��</p>
-                </div>
-                <div class="charge-info">
-                    <div class="info-header">
-                        <h6>浠撳簱鏁版嵁</h6>
-                        <p class="english">warehouse data</p>
-                    </div>
-                    <div class="charge-info-elem">
-                        <img src="img/a.png">
-                        <div class="info-detail">
-                            <div class="real-data">
-                                <i class="count" id="xDistance">0</i>
-                                <span class="unit">m</span>
-                            </div>
-                            <div class="content">绱璧拌璺濈(绫�)</div>
-                        </div>
-                    </div>
-                    <div class="charge-info-elem">
-                        <img src="img/b.png">
-                        <div class="info-detail">
-                            <div class="real-data">
-                                <i class="count" id="yDistance">0</i>
-                                <span class="unit">m</span>
-                            </div>
-                            <div class="content">绱鍗囬檷璺濈(绫�)</div>
-                        </div>
-                    </div>
-                    <div class="charge-info-elem">
-                        <img src="img/c.png">
-                        <div class="info-detail">
-                            <div class="real-data">
-                                <i class="count" id="xDuration">0</i>
-                                <span class="unit">s</span>
-                            </div>
-                            <div class="content">绱璧拌鏃堕暱(绉�)</div>
-                        </div>
-                    </div>
-                    <div class="charge-info-elem">
-                        <img src="img/d.png">
-                        <div class="info-detail">
-                            <div class="real-data">
-                                <i class="count" id="yDuration">0</i>
-                                <span class="unit">s</span>
-                            </div>
-                            <div class="content">绱鍗囬檷鏃堕暱(绉�)</div>
-                        </div>
-                    </div>
-                </div>
-                <div class="footer container-side-box">
-                    <div class="image-border image-border1"></div>
-                    <div class="image-border image-border2"></div>
-                    <div class="image-border image-border3"></div>
-                    <div class="image-border image-border4"></div>
-                    <span>娴欐睙涓壃绔嬪簱鎶�鏈湁闄愬叕鍙�</span>
-                    <img src="../../static/image/barcode.png">
-                </div>
-            </div>
-        </div>
-
-        <!--涓�-->
-        <div class="container-element-middle">
-            <div class="map-board" style="padding-top: 10%">
-                    <div class="image-border image-border1"></div>
-                    <div class="image-border image-border2"></div>
-                    <div class="image-border image-border3"></div>
-                    <div class="image-border image-border4"></div>
-
-                    <!-- 涓笂 -->
-                    <div class="crn-speed" style="display: none">
-                        <div class="speed-content">
-                            <div id="crn-chart" class="speed-chart">
-                            </div>
-                        </div>
-                    </div>
-
-
-                <!-- 涓笅 -->
-                    <div class="scroll-pane">
-                        <div class="layui-carousel" id="banner">
-                            <div carousel-item>
-                                <div class="item-img" id="img-1" style="background-color: red"></div>
-                                <div class="item-img" id="img-2" style="background-color: gold"></div>
-                                <div class="item-img" id="img-3" style="background-color: green"></div>
-                                <div class="item-img" id="img-4" style="background-color: white"></div>
-                                <div class="item-img" id="img-5" style="background-color: darkgoldenrod"></div>
-                            </div>
-                        </div>
-
-                        <div id="led-content">
-                            <pre id="led-p-content"></pre>
-                        </div>
-                </div>
-
-            </div>
-        </div>
-
-        <!--鍙�-->
-        <div class="container-element-side">
-            <div class="container-side-box right-top">
-                <div class="image-border image-border1"></div>
-                <div class="image-border image-border2"></div>
-                <div class="image-border image-border3"></div>
-                <div class="image-border image-border4"></div>
-                <div class="line-chart-title">
-                    <div class="order-report">
-                        <span class="order-report-left" >鍏ュ嚭搴撶粺璁�</span>
-                        <span class="order-report-right">31</span>
-                    </div>
-                    <div class="order-report-english english">
-                        <span class="order-report-left">ORDER STATISTICS</span>
-                        <span class="order-report-right">浠婃棩鍏呯數璁㈠崟鏁�</span>
-                    </div>
-                </div>
-                <!--鎶樼嚎鍥�-->
-                <div id="line-charts"></div>
-            </div>
-            <div class="container-side-box right-middle">
-                <div class="image-border image-border1"></div>
-                <div class="image-border image-border2"></div>
-                <div class="image-border image-border3"></div>
-                <div class="image-border image-border4"></div>
-                <div class="top-header">
-                    <div class="income-date">
-                        <span class="income-date-left" >搴撳瓨绫诲瀷</span>
-                        <span class="income-date-right">浠婂ぉ</span>
-                    </div>
-                    <div class="income-date-english english">
-                        <span class="income-date-left">INCOME DATE</span>
-                        <span class="income-date-right">Today</span>
-                    </div>
-                </div>
-                <div class="top-main">
-                    <div id="pie-charts"></div>
-                </div>
-                <div class="top-footer">
-                    <div class="top-footer-elem">
-                        <div class="elem-header" id="elem-header-first">
-                        </div>
-                        <div class="elem-main">
-                            鍦ㄥ簱
-                        </div>
-                        <div class="elem-footer">
-                            <span id="stock-count">0</span>
-                        </div>
-                    </div>
-                    <div class="top-footer-elem">
-                        <div class="elem-header" id="elem-header-second">
-                        </div>
-                        <div class="elem-main">
-                            绌哄簱
-                        </div>
-                        <div class="elem-footer">
-                            <span id="empty-count">0</span>
-                        </div>
-                    </div>
-                    <div class="top-footer-elem">
-                        <div class="elem-header" id="elem-header-third">
-                        </div>
-                        <div class="elem-main">
-                            绂佺敤
-                        </div>
-                        <div class="elem-footer">
-                            <span id="none-count">0</span>
-                        </div>
-                    </div>
-                </div>
-            </div>
-            <div class="container-side-box right-bottom">
-                <div class="image-border image-border1"></div>
-                <div class="image-border image-border2"></div>
-                <div class="image-border image-border3"></div>
-                <div class="image-border image-border4"></div>
-                <div class="progress-bar">
-                    <div class="usage-rate">
-                        <span class="usage-rate-left" >搴撲綅浣跨敤鐜�</span>
-                        <span class="usage-rate-right"><span id="usedPr">0</span>%</span>
-                    </div>
-                    <div class="usage-rate-english english">
-                        <span class="usage-rate-left">EQUIPMENT USAGE THIS MONTH</span>
-                        <span class="usage-rate-right">鍚屾瘮涓婃湀 + 5%</span>
-                    </div>
-                </div>
-                <div class="progress-bar-modal">
-                    <div class="layui-progress layui-progress-big" lay-filter="used-progress" style="background-color: #233751;width: 80%;display: inline-block">
-                        <div class="layui-progress-bar layui-bg-red" lay-percent="0%"></div>
-                    </div>
-<!--                    <div class="bar-container">-->
-<!--                        <div class="bar-proportion"><span>瀹為檯浣跨敤</span></div>-->
-<!--                    </div>-->
-                    <i class="bar-container-count"><span id="used">0</span></i>
-                </div>
-            </div>
-        </div>
-
-    </div>
-</body>
-<script>
-    layui.use(['element', 'carousel'], function(){
-        var carousel = layui.carousel;
-        var element = layui.element;
-        // 杞挱鍥�
-        carousel.render({
-            elem: '#banner'
-            ,width: '100%' //璁剧疆瀹瑰櫒瀹藉害
-            ,arrow: 'hover' // 鍒囨崲绠ご榛樿鏄剧ず鐘舵�侊紝鍙�夊�间负 hover锛堟偓鍋滄樉绀猴級 always锛堝缁堟樉绀猴級 none锛堝缁堜笉鏄剧ず锛�
-            ,interval: '3000' // 鑷姩鍒囨崲鐨勬椂闂撮棿闅旓紝鍗曚綅锛歮s锛堟绉掞級锛屼笉鑳戒綆浜�800
-            ,anim: 'fade'
-        });
-    });
-
-    /***********************************************************************************/
-    /************************************* 澶撮儴鎸夐挳 *************************************/
-    /***********************************************************************************/
-    // 宸�
-    $('.button-left').click(function () {
-        exitFull();
-    });
-    // 鍙�
-    $('.button-right').click(function () {
-        full();
-    });
-
-    /***********************************************************************************/
-    /************************************ 鍫嗗灈鏈洪�熷害 *************************************/
-    /***********************************************************************************/
-
-    var crnChart = echarts.init(document.getElementById('crn-chart'));
-    crnChartOption = {
-        // backgroundColor: '#1b1b1b',
-        tooltip: {
-            formatter: '{a} <br/>{c} {b}'
-        },
-        // toolbox: {  // 淇濆瓨鍥剧墖
-        //     show: true,
-        //     feature: {
-        //         mark: {show: true},
-        //         restore: {show: true},
-        //         saveAsImage: {show: true}
-        //     }
-        // },
-        series: [
-            {
-                name: '璧拌閫熷害',
-                type: 'gauge',
-                min: 0,
-                max: 160,
-                splitNumber: 16,
-                radius: '50%',
-                axisLine: {            // 鍧愭爣杞寸嚎
-                    lineStyle: {       // 灞炴�ineStyle鎺у埗绾挎潯鏍峰紡
-                        color: [[0.09, '#0fe507'], [0.82, '#1e90ff'], [1, '#ff4500']],
-                        width: 3,
-                        shadowColor: '#fff', //榛樿閫忔槑
-                        shadowBlur: 10
-                    }
-                },
-                axisLabel: {            // 鍧愭爣杞存暟瀛�
-                    fontWeight: 'bolder',
-                    color: '#fff',
-                    shadowColor: '#fff', //榛樿閫忔槑
-                    shadowBlur: 10
-                },
-                axisTick: {            // 鍧愭爣杞村皬鏍囪
-                    length: 15,        // 灞炴�ength鎺у埗绾块暱
-                    lineStyle: {       // 灞炴�ineStyle鎺у埗绾挎潯鏍峰紡
-                        color: 'auto',
-                        shadowColor: '#fff', //榛樿閫忔槑
-                        shadowBlur: 10
-                    }
-                },
-                splitLine: {           // 鍒嗛殧绾�
-                    length: 25,         // 灞炴�ength鎺у埗绾块暱
-                    lineStyle: {       // 灞炴�ineStyle锛堣瑙乴ineStyle锛夋帶鍒剁嚎鏉℃牱寮�
-                        width: 3,
-                        color: '#fff',
-                        shadowColor: '#fff', //榛樿閫忔槑
-                        shadowBlur: 10
-                    }
-                },
-                pointer: {           // 鍒嗛殧绾�
-                    shadowColor: '#fff', //榛樿閫忔槑
-                    shadowBlur: 5
-                },
-                title: {    // 閫熷害鍗曚綅
-                    textStyle: {       // 鍏朵綑灞炴�ч粯璁や娇鐢ㄥ叏灞�鏂囨湰鏍峰紡锛岃瑙乀EXTSTYLE
-                        fontWeight: 'bolder',
-                        fontSize: 20,
-                        fontStyle: 'italic',
-                        color: '#fff',
-                        shadowColor: '#fff', //榛樿閫忔槑
-                        shadowBlur: 10
-                    }
-                },
-                detail: {   // 閫熷害鍊�
-                    backgroundColor: 'rgba(30,144,255,0.8)',
-                    borderWidth: 1,
-                    borderColor: '#fff',
-                    shadowColor: '#fff', //榛樿閫忔槑
-                    shadowBlur: 5,
-                    offsetCenter: [0, '50%'],       // x, y锛屽崟浣峱x
-                    textStyle: {       // 鍏朵綑灞炴�ч粯璁や娇鐢ㄥ叏灞�鏂囨湰鏍峰紡锛岃瑙乀EXTSTYLE
-                        fontWeight: 'bolder',
-                        color: '#fff'
-                    }
-                },
-                data: [{value: 40, name: 'x\nm/min'}]
-            },
-            {
-                name: '鍗囬檷閫熷害',
-                type: 'gauge',
-                center: ['25%', '55%'],    // 榛樿鍏ㄥ眬灞呬腑
-                radius: '30%',
-                min: 0,
-                max: 40,
-                endAngle: 40,
-                splitNumber: 5,
-                axisLine: {            // 鍧愭爣杞寸嚎
-                    lineStyle: {       // 灞炴�ineStyle鎺у埗绾挎潯鏍峰紡
-                        color: [[0.32, '#0fe507'], [0.86, '#1e90ff'], [1, '#ff4500']],
-                        width: 2,
-                        shadowColor: '#fff', //榛樿閫忔槑
-                        shadowBlur: 10
-                    }
-                },
-                axisLabel: {            // 鍧愭爣杞村皬鏍囪
-                    fontWeight: 'bolder',
-                    color: '#fff',
-                    shadowColor: '#fff', //榛樿閫忔槑
-                    shadowBlur: 10
-                },
-                axisTick: {            // 鍧愭爣杞村皬鏍囪
-                    length: 12,        // 灞炴�ength鎺у埗绾块暱
-                    lineStyle: {       // 灞炴�ineStyle鎺у埗绾挎潯鏍峰紡
-                        color: 'auto',
-                        shadowColor: '#fff', //榛樿閫忔槑
-                        shadowBlur: 10
-                    }
-                },
-                splitLine: {           // 鍒嗛殧绾�
-                    length: 20,         // 灞炴�ength鎺у埗绾块暱
-                    lineStyle: {       // 灞炴�ineStyle锛堣瑙乴ineStyle锛夋帶鍒剁嚎鏉℃牱寮�
-                        width: 3,
-                        color: '#fff',
-                        shadowColor: '#fff', //榛樿閫忔槑
-                        shadowBlur: 10
-                    }
-                },
-                pointer: {
-                    width: 5,
-                    shadowColor: '#fff', //榛樿閫忔槑
-                    shadowBlur: 5
-                },
-                title: {
-                    offsetCenter: [0, '-30%'],       // x, y锛屽崟浣峱x
-                    textStyle: {       // 鍏朵綑灞炴�ч粯璁や娇鐢ㄥ叏灞�鏂囨湰鏍峰紡锛岃瑙乀EXTSTYLE
-                        fontWeight: 'bolder',
-                        fontStyle: 'italic',
-                        color: '#fff',
-                        shadowColor: '#fff', //榛樿閫忔槑
-                        shadowBlur: 10
-                    }
-                },
-                detail: {
-                    //backgroundColor: 'rgba(30,144,255,0.8)',
-                    // borderWidth: 1,
-                    borderColor: '#fff',
-                    shadowColor: '#fff', //榛樿閫忔槑
-                    shadowBlur: 5,
-                    width: 80,
-                    height: 30,
-                    offsetCenter: [35, '20%'],       // x, y锛屽崟浣峱x
-                    textStyle: {       // 鍏朵綑灞炴�ч粯璁や娇鐢ㄥ叏灞�鏂囨湰鏍峰紡锛岃瑙乀EXTSTYLE
-                        fontWeight: 'bolder',
-                        color: '#fff'
-                    }
-                },
-                data: [{value: 1.5, name: 'y'}]
-            },
-            {
-                name: '璐у弶閫熷害',
-                type: 'gauge',
-                center: ['75%', '50%'],    // 榛樿鍏ㄥ眬灞呬腑
-                radius: '30%',
-                min: 0,
-                max: 50,
-                startAngle: 135,
-                endAngle: 50,
-                splitNumber: 2,
-                axisLine: {            // 鍧愭爣杞寸嚎
-                    lineStyle: {       // 灞炴�ineStyle鎺у埗绾挎潯鏍峰紡
-                        color: [[0.2, '#0fe507'], [0.8, '#1e90ff'], [1, '#ff4500']],
-                        width: 2,
-                        shadowColor: '#fff', //榛樿閫忔槑
-                        shadowBlur: 10
-                    }
-                },
-                axisLabel: {            // 鍧愭爣杞村皬鏍囪
-                    fontWeight: 'bolder',
-                    color: '#fff',
-                    shadowColor: '#fff', //榛樿閫忔槑
-                    shadowBlur: 10
-                },
-                axisTick: {            // 鍧愭爣杞村皬鏍囪
-                    length: 12,        // 灞炴�ength鎺у埗绾块暱
-                    lineStyle: {       // 灞炴�ineStyle鎺у埗绾挎潯鏍峰紡
-                        color: 'auto',
-                        shadowColor: '#fff', //榛樿閫忔槑
-                        shadowBlur: 10
-                    }
-                },
-                // axisLabel: {
-                //     fontWeight: 'bolder',
-                //     color: '#fff',
-                //     shadowColor: '#fff', //榛樿閫忔槑
-                //     shadowBlur: 10,
-                //     formatter: function (v){
-                //         switch (v + '') {
-                //             case '0': return 'E';
-                //             case '1': return 'Gas';
-                //             case '2': return 'F';
-                //         }
-                //     }
-                // },
-                splitLine: {           // 鍒嗛殧绾�
-                    length:15,         // 灞炴�ength鎺у埗绾块暱
-                    lineStyle: {       // 灞炴�ineStyle锛堣瑙乴ineStyle锛夋帶鍒剁嚎鏉℃牱寮�
-                        width:3,
-                        color: '#fff',
-                        shadowColor: '#fff', //榛樿閫忔槑
-                        shadowBlur: 10
-                    }
-                },
-                pointer: {
-                    width:2,
-                    shadowColor: '#fff', //榛樿閫忔槑
-                    shadowBlur: 5
-                },
-                title: {
-                    offsetCenter: [0, '-30%'],       // x, y锛屽崟浣峱x
-                    textStyle: {       // 鍏朵綑灞炴�ч粯璁や娇鐢ㄥ叏灞�鏂囨湰鏍峰紡锛岃瑙乀EXTSTYLE
-                        fontWeight: 'bolder',
-                        fontStyle: 'italic',
-                        color: '#fff',
-                        shadowColor: '#fff', //榛樿閫忔槑
-                        shadowBlur: 10
-                    }
-                },
-                detail: {
-                    //backgroundColor: 'rgba(30,144,255,0.8)',
-                    // borderWidth: 1,
-                    borderColor: '#fff',
-                    shadowColor: '#fff', //榛樿閫忔槑
-                    shadowBlur: 5,
-                    width: 80,
-                    height: 30,
-                    offsetCenter: [40, '5%'],       // x, y锛屽崟浣峱x
-                    textStyle: {       // 鍏朵綑灞炴�ч粯璁や娇鐢ㄥ叏灞�鏂囨湰鏍峰紡锛岃瑙乀EXTSTYLE
-                        fontWeight: 'bolder',
-                        color: '#fff'
-                    }
-                },
-                data: [{value: 0.5, name: 'z'}]
-            },
-            {
-                name: '璐у弶浣嶇疆',
-                type: 'gauge',
-                center: ['75%', '50%'],    // 榛樿鍏ㄥ眬灞呬腑
-                radius: '30%',
-                min: 0,
-                max: 2,
-                startAngle: 315,
-                endAngle: 225,
-                splitNumber: 2,
-                axisLine: {            // 鍧愭爣杞寸嚎
-                    lineStyle: {       // 灞炴�ineStyle鎺у埗绾挎潯鏍峰紡
-                        color: [[0.2, '#0fe507'], [0.8, '#1e90ff'], [1, '#ff4500']],
-                        width: 2,
-                        shadowColor: '#fff', //榛樿閫忔槑
-                        shadowBlur: 10
-                    }
-                },
-                axisTick: {            // 鍧愭爣杞村皬鏍囪
-                    show: false
-                },
-                axisLabel: {
-                    fontWeight: 'bolder',
-                    color: '#fff',
-                    shadowColor: '#fff', //榛樿閫忔槑
-                    shadowBlur: 10,
-                    formatter: function(v){
-                        switch (v + '') {
-                            case '0': return '鍙�';
-                            case '1': return '涓�';
-                            case '2': return '宸�';
-                        }
-                    }
-                },
-                splitLine: {           // 鍒嗛殧绾�
-                    length: 15,         // 灞炴�ength鎺у埗绾块暱
-                    lineStyle: {       // 灞炴�ineStyle锛堣瑙乴ineStyle锛夋帶鍒剁嚎鏉℃牱寮�
-                        width: 3,
-                        color: '#fff',
-                        shadowColor: '#fff', //榛樿閫忔槑
-                        shadowBlur: 10
-                    }
-                },
-                pointer: {
-                    width: 2,
-                    shadowColor: '#fff', //榛樿閫忔槑
-                    shadowBlur: 5
-                },
-                title: {
-                    show: false
-                },
-                detail: {
-                    show: false
-                },
-                data:[{value: 0.5, name: 'gas'}]
-            }
-        ]
-    };
-
-    /***********************************************************************************/
-    /************************************* 鎶樼嚎鍥� ***************************************/
-    /***********************************************************************************/
-
-    var lineCharts = echarts.init(document.getElementById('line-charts'));
-    var lineChartOption = {
-        // animation: false,
-        grid: {
-            top: '0%',
-            left: '0%',
-            right: '2%',
-            bottom: '0%',
-            containLabel: true,
-            // backgroundColor: 'rgb(116,148,174,0.3)',
-            show: true
-        },
-        xAxis: {
-            type: 'category',
-            boundaryGap: false,
-            data:  ['1', '2', '3', '4', '5', '6', '7'],
-            axisLabel: {
-                textStyle:{
-                    color:'#aaa',  //鍧愭爣鐨勫瓧浣撻鑹�
-                    fontSize: 6,
-                },
-            },
-            axisLine:{
-                lineStyle:{
-                    color:'#3590ac', // 鍧愭爣杞撮鑹�
-                }
-            }
-        },
-        yAxis: {
-            type: 'value',
-            axisLabel: {
-                textStyle:{
-                    color:'#aaa',  //鍧愭爣鐨勫瓧浣撻鑹�
-                    fontSize: 5
-                },
-            },
-            axisLine:{
-                lineStyle:{
-                    color:'#3590ac', // 鍧愭爣杞撮鑹�
-                }
-            },
-            splitLine:{
-                show: true,
-                lineStyle:{
-                    color:'#517a9b', // 鍒嗗壊绾块鑹�
-                }
-            }
-
-        },
-        series: [
-            {
-                data: [820, 932, 901, 934, 1290, 1330, 1320],
-                type: 'line',
-                // areaStyle: {
-                //     color: '#7494ae' // 鎶樼嚎鍖哄煙棰滆壊
-                // },
-                itemStyle:{
-                    normal:{
-                        color:'#3590ac', //鎶樼偣棰滆壊
-                        lineStyle:{
-                            color:'#3590ac' //鎶樼嚎棰滆壊
-                        }
-                    }
-                }
-            },
-            {
-                data: [820, 932, 901, 934, 1290, 1330, 1320],
-                type: 'line',
-                // areaStyle: {
-                //     color: '#d55b35' // 鎶樼嚎鍖哄煙棰滆壊
-                // },
-                itemStyle:{
-                    normal:{
-                        color:'#ef550e', //鎶樼偣棰滆壊
-                        lineStyle:{
-                            color:'#ec670f' //鎶樼嚎棰滆壊
-                        }
-                    }
-                }
-            }
-        ]
-    };
-
-    function initlineChart() {
-        var reportView = lineChartOption;
-        $.ajax({
-            url: baseUrl+"/monitor/line/charts",
-            method: 'GET',
-            success: function (res) {
-                if (res.code === 200){
-                    var json = res.data.rows;
-                    reportView.xAxis.data=[getDateFormat(-11), getDateFormat(-10), getDateFormat(-9), getDateFormat(-8), getDateFormat(-7), getDateFormat(-6),
-                        getDateFormat(-5), getDateFormat(-4), getDateFormat(-3), getDateFormat(-2), getDateFormat(-1), getDateFormat(-0)];
-                    reportView.series[0].data=res.data.rows[0].data;
-                    reportView.series[1].data=res.data.rows[1].data;
-                    lineCharts.setOption(reportView)
-                } else if (res.code === 403){
-                    top.location.href = "/";
-                } else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    /***********************************************************************************/
-    /************************************* 楗煎浘 *****************************************/
-    /***********************************************************************************/
-
-    var pieCharts = echarts.init(document.getElementById('pie-charts'));
-    var pieChartOption = {
-        // animation: false,
-        grid: {
-            top: '0%',
-            left: '0%',
-            right: '0%',
-            bottom: '0%',
-            containLabel: false,
-        },
-        tooltip: {
-            trigger: 'item',
-            formatter: '{a} <br/>{b}: {c} ({d}%)'
-        },
-        legend: {
-            orient: 'vertical',
-            left: 10,
-            data: ['鍦ㄥ簱', '绌�']
-        },
-        series: [
-            {
-                name: '璁块棶鏉ユ簮',
-                type: 'pie',
-                radius: ['25%', '70%'],
-                avoidLabelOverlap: false,
-                label: {
-                    show: false,
-                    position: 'center'
-                },
-                emphasis: {
-                    label: {
-                        show: false,
-                        fontSize: '50',
-                        fontWeight: 'bold'
-                    }
-                },
-                labelLine: {
-                    show: false
-                },
-                data: [
-                    {value: 1, name: '鍦ㄥ簱'},
-                    {value: 1, name: '绌�'},
-                    {value: 1, name: '浣跨敤'},
-                    {value: 1, name: '绂佺敤'},
-                ],
-                itemStyle: {
-                    emphasis: {
-                        shadowBlur: 10,
-                        shadowOffsetX: 0,
-                        shadowColor: 'rgba(0, 0, 0, 0.5)'
-                    },
-                    normal:{
-                        color:function(params) {
-                            //鑷畾涔夐鑹�
-                            let colorList = [
-                                '#28b9a2', '#69d7fc', '#fcbf5d',
-                            ];
-                            return colorList[params.dataIndex]
-                        }
-                    }
-                }
-            }
-        ]
-    };
-    // 楗煎浘鍔犺浇
-    function initPieChart() {
-        $.ajax({
-            url: baseUrl+"/monitor/loc/rep",
-            method: 'GET',
-            success: function (res) {
-                if (res.code === 200){
-                    pieChartOption.series[0].data = res.data.pie;
-                    pieCharts.setOption(pieChartOption);
-
-                    $('#stock-count').text(res.data.stockCunt);
-                    $('#empty-count').text(res.data.emptyCount);
-                    $('#none-count').text(res.data.noneCount);
-
-                    $('#usedPr').text(res.data.usedPr);
-                    $('#used').text(res.data.used);
-
-                    layui.element.progress('used-progress', res.data.usedPr + '%');
-                } else if (res.code === 403){
-                    top.location.href = "/";
-                } else {
-                    layer.msg(res.msg);
-                }
-            }
-        });
-    }
-
-    // eCharts 璺熼殢绐楀彛鏀瑰彉
-    window.onresize = function(){
-        lineCharts.resize();
-        pieCharts.resize();
-    }
-
-
-</script>
-</html>
diff --git a/zy-acs-cv/src/main/webapp/views/news.html b/zy-acs-cv/src/main/webapp/views/news.html
index e548501..7f9083a 100644
--- a/zy-acs-cv/src/main/webapp/views/news.html
+++ b/zy-acs-cv/src/main/webapp/views/news.html
@@ -12,6 +12,7 @@
             height: 100%;
             width: 100%;
         }
+
         /*=============== SCROLL UP ===============*/
         .scrollup {
             text-decoration: none;
@@ -21,7 +22,7 @@
             position: fixed;
             right: 1rem;
             bottom: -55%;
-            background-color: rgb(108,167,168);
+            background-color: rgb(108, 167, 168);
             box-shadow: 0 8px 12px hsla(228, 66%, 45%, .1);
             display: inline-flex;
             padding: .35rem;
@@ -31,9 +32,11 @@
             transition: .3s;
             font-size: 8px;
         }
+
         .scrollup:hover {
             transform: translateY(-.25rem);
         }
+
         /* Show Scroll Up*/
         .show-scroll {
             bottom: 5%;
@@ -42,12 +45,15 @@
         .news-desc {
             font-size: 14px;
         }
+
         .level-1 {
             color: #333333;
         }
+
         .level-2 {
             color: #0087ec;
         }
+
         .level-3 {
             color: red;
         }
@@ -67,22 +73,23 @@
 <script>
     var autoScroll = true;
 
-    function scrollUp(){
+    function scrollUp() {
         const scrollUp = document.getElementById('scroll-up');
-        if(this.scrollY >= 100) scrollUp.classList.add('show-scroll'); else scrollUp.classList.remove('show-scroll')
+        if (this.scrollY >= 100) scrollUp.classList.add('show-scroll'); else scrollUp.classList.remove('show-scroll')
     }
+
     window.addEventListener('scroll', scrollUp)
 
-    $(document).on('click ','#scroll-up', function () {
+    $(document).on('click ', '#scroll-up', function () {
         window.scrollTo(0, 0);
         autoScroll = false;
     })
 
-    $(document).on('click ','body', function () {
+    $(document).on('click ', 'body', function () {
         autoScroll = false;
     })
 
-    setInterval(()=>{
+    setInterval(() => {
         $.ajax({
             url: baseUrl + "/news/print",
             // headers: {'token': localStorage.getItem('token')},
diff --git a/zy-acs-cv/src/main/webapp/views/pipeline.html b/zy-acs-cv/src/main/webapp/views/pipeline.html
index c2de9e0..3dfce13 100644
--- a/zy-acs-cv/src/main/webapp/views/pipeline.html
+++ b/zy-acs-cv/src/main/webapp/views/pipeline.html
@@ -1,36 +1,33 @@
 <!DOCTYPE html>
-<html lang="en">
+<html lang="zh-CN">
 <head>
     <meta charset="UTF-8">
-    <title>WCS杈撻�佽澶囩鐞�</title>
     <meta name="renderer" content="webkit">
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
-    <link rel="stylesheet" type="text/css" href="../static/css/normalize.css">
-    <link rel="stylesheet" type="text/css" href="../static/css/common.css">
-    <link rel="stylesheet" type="text/css" href="../static/css/pipeline.css">
-    <script type="text/javascript" src="../static/js/jquery/jquery-3.3.1.min.js"></script>
-    <script type="text/javascript" src="../static/js/common.js"></script>
-    <script type="text/javascript" src="../static/js/layer/layer.js"></script>
+    <meta name="viewport"
+          content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <title>WCS杈撻�佽澶囩鐞�</title>
+    <link rel="stylesheet" href="../static/css/normalize.css">
+    <link rel="stylesheet" href="../static/css/common.css">
+    <link rel="stylesheet" href="../static/css/pipeline.css">
     <style>
         .io-mode-box {
             float: left;
             width: 16%;
             text-align: center;
         }
+
         .io-mode-box label {
             font-weight: bolder;
         }
+
         .ioModeBtn {
             vertical-align: middle;
             width: 50%;
             height: 30px;
-            left: 0;
-            top: 0;
             text-shadow: inherit;
             font-size: 15px;
-            margin-left: 5px;
-            margin-right: 5px;
+            margin: 0 5px;
             display: inline-block;
             background-color: #FF5722;
             border: none;
@@ -40,71 +37,28 @@
             cursor: pointer;
         }
     </style>
+    <script src="../static/js/jquery/jquery-3.3.1.min.js"></script>
+    <script src="../static/js/common.js"></script>
+    <script src="../static/js/layer/layer.js"></script>
 </head>
 <body>
-<div style="padding: 10px;height: 100%;float: left;width: 6%">
+<!-- 宸︿晶鎸夐挳鍖哄煙 -->
+<aside class="sidebar" style="padding: 10px; height: 100%; float: left; width: 6%;">
     <div class="button-window"></div>
-</div>
+</aside>
 
-<div style="height: 100%;padding-left: 6%">
-    <div style="padding: 10px;height: 100%">
+<!-- 涓诲唴瀹瑰尯鍩� -->
+<div class="main-content" style="height: 100%; padding-left: 6%;">
+    <div class="container" style="padding: 10px; height: 100%;">
+        <!-- 涓昏鍐呭 -->
         <main>
-
-            <!-- plc寮傚父鏃ュ織鐩戞帶鐗� -->
-            <div id="plc-error" class="main-board" style="padding-left: 10px">
-                <!-- 澶撮儴 -->
-<!--                <div class="plc-log-header">-->
-<!--                    &lt;!&ndash; 璁惧浠诲姟鎿嶄綔 &ndash;&gt;-->
-<!--                    <div class="io-mode-oper">-->
-<!--                        <fieldset>-->
-<!--                            <legend>鍏ュ嚭搴撴ā寮忥紙IO-Mode锛�</legend>-->
-<!--                            <div class="io-mode-box">-->
-<!--                                <label>F2</label>-->
-<!--                                <button id="io-mode-2" class="ioModeBtn" onclick="ioModeSwitch(this.id)"> - </button>-->
-<!--                            </div>-->
-<!--                            <div class="io-mode-box">-->
-<!--                                <label>F4</label>-->
-<!--                                <button id="io-mode-4" class="ioModeBtn" onclick="ioModeSwitch(this.id)"> - </button>-->
-<!--                            </div>-->
-<!--                        </fieldset>-->
-<!--                    </div>-->
-<!--                    &lt;!&ndash;            <div style="height: 40%">&ndash;&gt;-->
-<!--                    &lt;!&ndash;                <span>涓滀晶PLC鎵ц鎸囦护</span>&ndash;&gt;-->
-<!--                    &lt;!&ndash;            </div>&ndash;&gt;-->
-<!--                    &lt;!&ndash;            <div style="height: 40%">&ndash;&gt;-->
-<!--                    &lt;!&ndash;                <span>瑗夸晶PLC鎵ц鎸囦护</span>&ndash;&gt;-->
-<!--                    &lt;!&ndash;            </div>&ndash;&gt;-->
-<!--                    &lt;!&ndash;                    <div>&ndash;&gt;-->
-<!--                    &lt;!&ndash;                        <span style="color: #1E9FFF">PLC寮傚父淇℃伅琛�:</span>&ndash;&gt;-->
-<!--                    &lt;!&ndash;                    </div>&ndash;&gt;-->
-<!--                </div>-->
-                <!-- 涓讳綋 -->
-                <div class="plc-log-body">
-                    <div>
-                        <span style="color: #1E9FFF">PLC寮傚父淇℃伅琛�:</span>
-                    </div>
-                    <table id="plc-error-table">
-                        <thead>
-                        <tr>
-                            <th style="width: 200px">搴忓彿</th>
-                            <th style="width: 400px">PLC閿欒鎻忚堪</th>
-                            <th style="width: 400px">寮傚父</th>
-                        </tr>
-                        </thead>
-                        <tbody>
-
-                        </tbody>
-                    </table>
-                </div>
-            </div>
-
             <!-- 绔欑偣鐘舵�佹暟鎹洃鎺х増 -->
-            <div id="site-monitor" class="main-board">
+            <section id="site-monitor" class="main-board">
                 <!-- 琛ㄦ牸 -->
-                <!--鍥哄畾琛ㄥご table 鍔爐able-layout: fixed;  th 鍔� position:sticky;top: 0;-->
-                <table id="site-table" style="table-layout: fixed;">
+                <!-- 鍥哄畾琛ㄥご锛歵able鍔爐able-layout: fixed; th鍔爌osition:sticky;top: 0; -->
+                <table id="site-table" class="status-table" style="table-layout: fixed;">
                     <!-- 琛ㄥご -->
-                    <thead style="position:sticky;top: 0;">
+                    <thead class="table-header" style="position:sticky;top: 0;">
                     <tr>
                         <th>绔欏彿</th>
                         <th>宸ヤ綔鍙�</th>
@@ -119,336 +73,350 @@
                     </tr>
                     </thead>
                     <!-- 琛ㄦ牸鍐呭 -->
-                    <tbody></tbody>
+                    <tbody class="table-body"></tbody>
                 </table>
-            </div>
+            </section>
         </main>
+
+        <!-- 椤佃剼鍖哄煙 -->
         <footer>
-            <textarea id="output"></textarea>
+            <textarea id="output" class="output-log"></textarea>
         </footer>
 
-        <div id="site-detl" style="display: none">
-            <form>
+        <!-- 绔欑偣璇︽儏寮圭獥 -->
+        <div id="site-detl" class="site-detail-form" style="display: none;">
+            <form class="detail-form">
                 <div class="form-item">
-                    <label class="form-label">绔欏彿:</label>
+                    <label class="form-label" for="siteId">绔欏彿:</label>
                     <div class="form-input">
-                        <input id="siteId" name="siteId" class="layui-input" lay-verify="required|number" autocomplete="off" disabled="disabled">
+                        <input id="siteId" name="siteId" class="layui-input" type="number" lay-verify="required|number"
+                               autocomplete="off" disabled="disabled">
                     </div>
                 </div>
                 <div class="form-item">
-                    <label class="form-label">宸ヤ綔鍙�:</label>
+                    <label class="form-label" for="workNo">宸ヤ綔鍙�:</label>
                     <div class="form-input">
-                        <input id="workNo" name="workNo" type="number" class="layui-input" lay-verify="number" autocomplete="off">
+                        <input id="workNo" name="workNo" type="number" class="layui-input" lay-verify="number"
+                               autocomplete="off">
                     </div>
                 </div>
                 <div class="form-item">
-                    <label class="form-label">鐩爣绔�:</label>
+                    <label class="form-label" for="staNo">鐩爣绔�:</label>
                     <div class="form-input">
-                        <input id="staNo" name="staNo" type="number" class="layui-input" lay-verify="number" autocomplete="off">
+                        <input id="staNo" name="staNo" type="number" class="layui-input" lay-verify="number"
+                               autocomplete="off">
                     </div>
                 </div>
                 <div class="form-item">
-                    <label class="form-label">鍏ュ簱鏍囪:</label>
+                    <label class="form-label" for="pakMk">鍏ュ簱鏍囪:</label>
                     <div class="form-input">
                         <input id="pakMk" name="pakMk" type="text" class="layui-input" autocomplete="off">
                     </div>
                 </div>
                 <div class="form-item form-button-container">
-                    <button class="form-button" id="save">淇濆瓨</button>
-                    <button class="form-button" id="cancel" style="background-color: #D0D0D0">鍙栨秷</button>
+                    <button type="button" class="form-button" id="save">淇濆瓨</button>
+                    <button type="button" class="form-button" id="cancel" style="background-color: #D0D0D0;">鍙栨秷
+                    </button>
                 </div>
             </form>
         </div>
     </div>
-
 </div>
 </body>
 <script>
-    // 鍒濆鍖�
-    // 绌虹櫧琛屾暟
-    var stop = false
-    var plcErrorTableBlankRows = 0;
-    var siteTableBlankRows = 0;
-    // 瀹為檯琛屾暟
-    var plcErrorTableFullRows = 0;
-    var siteTableFullRows = 0;
-    var outputDom = document.getElementById("output");
-    $(document).ready(function() {
-        getIoModeInfo();
-        initPlcErrorTable();
-        getPlcError();
-        initSiteTable();
-        getSite();
-    });
-    // 瀹炴椂璁块棶
-    setInterval(function () {
-        getPlcError();
-        starGetSite();
-        getIoModeInfo();
-    }, 1000);
-    setInterval(function () {
-        getSiteOutput();
-    },500);
-    function starGetSite() {
-        if (stop) {
-            return
-        } else {
+    // 鑷墽琛屽嚱鏁拌〃杈惧紡锛岄伩鍏嶅叏灞�鍙橀噺姹℃煋
+    (function () {
+        // 鍒濆鍖栧彉閲�
+        let isSiteUpdatePaused = false;
+        let plcErrorTableBlankRows = 0;
+        let siteTableBlankRows = 0;
+        let plcErrorTableFullRows = 0;
+        let siteTableFullRows = 0;
+        const outputDom = document.getElementById("output");
+        let ioModeData = [];
+        let layerDetl = null;
+        let timers = [];
+
+        // DOM鍔犺浇瀹屾垚鍚庡垵濮嬪寲
+        $(document).ready(function () {
+            // 鍒濆鍖栬〃鏍�
+            initPlcErrorTable();
+            initSiteTable();
+
+            // 鍔犺浇鍒濆鏁版嵁
+            getPlcError();
             getSite();
-        }
-    }
 
-    var ioModeData;
-    function getIoModeInfo() {
-        $.ajax({
-            url: baseUrl+ "/site/io/mode/info/site",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'GET',
-            success: function (res) {
-                if (res.code === 200){
-                    ioModeData = res.data;
-                    ioModeData.forEach(function (e) {
-                        $("#io-mode-"+e.floor).html(e.modeDesc);
-                    })
-                } else if (res.code === 403){
-                    window.location.href = baseUrl+"/login";
-                }  else {
-                    console.log(res.msg);
-                }
-            }
+            // 鍒濆鍖栧畾鏃跺櫒
+            initTimers();
         });
-    }
 
-    /**
-     * 寮哄埗鍒囨崲鍏ュ嚭搴撴ā寮�
-     */
-    function ioModeSwitch(el) {
-        var floor = el.split("-")[2];
-        if (ioModeData != null && ioModeData.length > 1) {
-            ioModeData.forEach(function(e) {
-                if (e.floor === Number(floor)) {
-                    if (e.modeVal === 3 || e.modeVal === 4) {
-                        layer.confirm('纭畾鍒囨崲涓哄叆搴撴ā寮忓悧锛�',function () {
-                            $.ajax({
-                                url: baseUrl+ "/site/io/mode/action/site",
-                                headers: {'token': localStorage.getItem('token')},
-                                data: {floor: e.floor},
-                                method: 'POST',
-                                success: function (res) {
-                                    if (res.code === 200){
-                                        layer.msg("鏆傛椂涓嶈兘鍒囨崲锛�", {icon: 1})
-                                    } else if (res.code === 403){
-                                        window.location.href = baseUrl+"/login";
-                                    }  else {
-                                        console.log(res.msg);
-                                    }
-                                }
-                            });
-                            layer.closeAll();
-                        })
+        // 鍒濆鍖栧畾鏃跺櫒
+        function initTimers() {
+            // 姣忕鏇存柊PLC閿欒銆佺珯鐐逛俊鎭拰IO妯″紡
+            timers.push(setInterval(() => {
+                getPlcError();
+                if (!isSiteUpdatePaused) {
+                    getSite();
+                }
+                getIoModeInfo();
+            }, 1000));
+
+            // 姣�500姣鏇存柊绔欑偣杈撳嚭鏃ュ織
+            timers.push(setInterval(() => {
+                getSiteOutput();
+            }, 500));
+        }
+
+
+        /**
+         * 寮哄埗鍒囨崲鍏ュ嚭搴撴ā寮�
+         * @param {string} el - 鍏冪礌ID
+         */
+        function ioModeSwitch(el) {
+            const floor = el.split("-")[2];
+            const targetFloor = ioModeData.find(e => e.floor === Number(floor));
+
+            if (targetFloor && (targetFloor.modeVal === 3 || targetFloor.modeVal === 4)) {
+                layer.confirm('纭畾鍒囨崲涓哄叆搴撴ā寮忓悧锛�', () => {
+                    ajaxRequest({
+                        url: `${baseUrl}/site/io/mode/action/site`,
+                        method: 'POST',
+                        data: {floor: targetFloor.floor},
+                        success: (res) => {
+                            layer.msg("鏆傛椂涓嶈兘鍒囨崲锛�", {icon: 1});
+                        }
+                    });
+                    layer.closeAll();
+                });
+            }
+        }
+
+        // 鑾峰彇PLC寮傚父淇℃伅琛�
+        function getPlcError() {
+            const tableEl = $('#plc-error-table');
+            tableEl.children("tr").children("td").html("");
+
+            ajaxRequest({
+                url: `${baseUrl}/site/table/plc/errors`,
+                method: 'POST',
+                success: (res) => {
+                    if (res.data) {
+                        const tableData = res.data;
+                        for (let i = 0; i < tableData.length; i++) {
+                            const tr = tableEl.find("tr").eq(i + 1);
+                            tr.children("td").eq(0).html(tableData[i].no);
+                            tr.children("td").eq(1).html(tableData[i].plcDesc);
+                            tr.children("td").eq(2).html(tableData[i].error);
+                        }
                     }
                 }
             });
         }
 
-    }
+        // 鑾峰彇绔欑偣淇℃伅琛�
+        function getSite() {
+            const tableEl = $('#site-table');
 
-    // plc寮傚父淇℃伅琛ㄨ幏鍙�
-    function getPlcError() {
-        var tableEl = $('#plc-error-table');
-        tableEl.children("tr").children("td").html("");
-        $.ajax({
-            url: baseUrl+ "/site/table/plc/errors",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                if (res.code === 200){
-                    var table = res.data;
-                    for (var i=1;i<=table.length;i++){
-                        var tr = tableEl.find("tr").eq(i);
-                        tr.children("td").eq(0).html(table[i-1].no);
-                        tr.children("td").eq(1).html(table[i-1].plcDesc);
-                        tr.children("td").eq(2).html(table[i-1].error);
+            ajaxRequest({
+                url: `${baseUrl}/site/table/site`,
+                method: 'POST',
+                success: (res) => {
+                    if (res.data) {
+                        const tableData = res.data;
+                        if (tableData.length > siteTableBlankRows && tableData.length !== siteTableFullRows) {
+                            initSiteTable(tableData.length - siteTableBlankRows);
+                            siteTableFullRows = tableData.length;
+                        }
+
+                        for (let i = 0; i < tableData.length; i++) {
+                            const tr = tableEl.find("tr").eq(i + 1);
+                            setVal(tr.children("td").eq(0), tableData[i].devNo);
+                            setVal(tr.children("td").eq(1), tableData[i].workNo);
+                            setVal(tr.children("td").eq(2), tableData[i].autoing);
+                            setVal(tr.children("td").eq(3), tableData[i].loading);
+                            setVal(tr.children("td").eq(4), tableData[i].inEnable);
+                            setVal(tr.children("td").eq(5), tableData[i].outEnable);
+                            setVal(tr.children("td").eq(6), tableData[i].pakMk);
+                            setVal(tr.children("td").eq(7), tableData[i].emptyMk);
+                            setVal(tr.children("td").eq(8), tableData[i].staNo);
+                            setVal(tr.children("td").eq(9), tableData[i].locType1);
+                        }
                     }
-                } else if (res.code === 403){
-                    window.location.href = baseUrl+"/login";
-                }  else {
-                    console.log(res.msg);
                 }
-            }
-        });
-    }
+            });
+        }
 
-    // 绔欑偣淇℃伅琛ㄨ幏鍙�
-    function getSite() {
-        var tableEl = $('#site-table');
-        $.ajax({
-            url: baseUrl+ "/site/table/site",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                if (res.code === 200){
-                    var table = res.data;
-                    if (table.length > siteTableBlankRows && table.length !== siteTableFullRows) {
-                        initSiteTable(table.length-siteTableBlankRows);
-                        siteTableFullRows = table.length;
+        // 鑾峰彇杈撻�佽澶囨棩蹇楄緭鍑�
+        function getSiteOutput() {
+            ajaxRequest({
+                url: `${baseUrl}/site/output/site`,
+                method: 'POST',
+                success: (res) => {
+                    if (res.data) {
+                        output(res.data);
                     }
-                    for (var i=1;i<=table.length;i++){
-                        var tr = tableEl.find("tr").eq(i);
-                        setVal(tr.children("td").eq(0), table[i-1].devNo);
-                        setVal(tr.children("td").eq(1), table[i-1].workNo);
-                        setVal(tr.children("td").eq(2), table[i-1].autoing);
-                        setVal(tr.children("td").eq(3), table[i-1].loading);
-                        setVal(tr.children("td").eq(4), table[i-1].inEnable);
-                        setVal(tr.children("td").eq(5), table[i-1].outEnable);
-                        setVal(tr.children("td").eq(6), table[i-1].pakMk);
-                        setVal(tr.children("td").eq(7), table[i-1].emptyMk);
-                        setVal(tr.children("td").eq(8), table[i-1].staNo);
-                        setVal(tr.children("td").eq(9), table[i-1].locType1);
-                    }
-                } else if (res.code === 403){
-                    window.location.href = baseUrl+"/login";
-                }  else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    // 杈撻�佽澶囨棩蹇楄緭鍑�
-    function getSiteOutput() {
-        $.ajax({
-            url: baseUrl + "/site/output/site",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                if (res.code === 200) {
-                    output(res.data);
-                } else if (res.code === 403) {
-                    window.location.href = baseUrl + "/login";
-                } else {
+                },
+                error: (res) => {
                     alert(res.msg);
                 }
+            });
+        }
+
+        // 鏃ュ織杈撳嚭妗�
+        function output(content) {
+            outputDom.value += content;
+            outputDom.scrollTop = outputDom.scrollHeight;
+        }
+
+        // PLC寮傚父绌虹櫧琛ㄦ牸娓叉煋
+        function initPlcErrorTable(row) {
+            let line;
+            if (row === undefined) {
+                const one = $('#plc-error-table thead').height();
+                const total = $('.plc-log-body').height();
+                const count = parseInt(total / one) - 1;
+                plcErrorTableBlankRows = count;
+                line = count;
+            } else {
+                line = row;
             }
-        })
-    }
 
-    // 鏃ュ織杈撳嚭妗�
-    function output(content){
-        outputDom.value += content;
-        outputDom.scrollTop = outputDom.scrollHeight;
-    }
-
-    // ------------------------------------------------------------------------------------------------
-
-    // plc寮傚父绌虹櫧琛ㄦ牸娓叉煋
-    function initPlcErrorTable(row) {
-        var line;
-        if (row === undefined){
-            var one = $('#plc-error-table thead').height();
-            var total = $('.plc-log-body').height();
-            var count = total / one;
-            count = parseInt(count) - 1;
-            plcErrorTableBlankRows = count;
-            line = count;
-        } else {
-            line = row;
-        }
-        var html = "";
-        for (var i = 0; i < line; i ++){
-            html += " <tr>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "     </tr>\n";
-        }
-        $('#plc-error-table tbody').after(html);
-    }
-
-    // 绔欑偣绌虹櫧琛ㄦ牸娓叉煋
-    function initSiteTable(row) {
-        var line;
-        if (row === undefined){
-            var one = $('#site-table thead').height();
-            var total = $('#site-monitor').height();
-            var count = total / one;
-            count = parseInt(count) - 1;
-            siteTableBlankRows = count;
-            line = count;
-        } else {
-            line = row;
-        }
-        var html = "";
-        for (var i = 0; i < line; i ++){
-            html += " <tr>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "     </tr>\n";
-        }
-        $('#site-table tbody').after(html);
-    }
-
-    // 璇︽儏鎿嶄綔 -------------------------------------------------------------------------
-    var layerDetl;
-    $(document).on('dblclick ','#site-table tr', function () {
-        stop = true
-        var siteId = $(this).children("td").eq(0).html();
-        if (siteId !== null && siteId !== "") {
-            layerDetl = layer.open({
-                type: 1,
-                title: false,
-                shadeClose: true,
-                offset: 'rt',
-                anim: 5,
-                shade: [0],
-                area: ['340px', '255px'],
-                closeBtn: 0,
-                content: $("#site-detl"),
-                success: function(layero, index){
-                    http.get(baseUrl+ "/site/detl/"+siteId, null, function (res) {
-                        $('#siteId').val(siteId);
-                        $('#workNo').val(res.data.workNo);
-                        $('#staNo').val(res.data.staNo);
-                        $('#pakMk').val(res.data.pakMk);
-                    })
-                },
-                end: function () {
-                    $('#siteId').val("");
-                    $('#workNo').val("");
-                    $('#staNo').val("");
-                    $('#pakMk').val("");
-                    stop = false
-                }
-            })
+            let html = "";
+            for (let i = 0; i < line; i++) {
+                html += ` <tr>
+                           <td></td>
+                           <td></td>
+                           <td></td>
+                         </tr>`;
+            }
+            $('#plc-error-table tbody').after(html);
         }
 
-    });
+        // 绔欑偣绌虹櫧琛ㄦ牸娓叉煋
+        function initSiteTable(row) {
+            let line;
+            if (row === undefined) {
+                const one = $('#site-table thead').height();
+                const total = $('#site-monitor').height();
+                const count = parseInt(total / one) - 1;
+                siteTableBlankRows = count;
+                line = count;
+            } else {
+                line = row;
+            }
 
-    $(document).on('click ','#save', function () {
-        http.post(baseUrl+ "/site/detl/update", {
-            siteId: $('#siteId').val(),
-            workNo: $('#workNo').val(),
-            staNo:  $('#staNo').val(),
-            pakMk: $('#pakMk').val()
-        }, function (res) {
-            layer.msg("淇敼鎴愬姛",{icon: 1,});
+            let html = "";
+            for (let i = 0; i < line; i++) {
+                html += ` <tr>
+                           <td></td>
+                           <td></td>
+                           <td></td>
+                           <td></td>
+                           <td></td>
+                           <td></td>
+                           <td></td>
+                           <td></td>
+                           <td></td>
+                           <td></td>
+                         </tr>`;
+            }
+            $('#site-table tbody').after(html);
+        }
+
+        // 璇︽儏鎿嶄綔
+        $(document).on('dblclick', '#site-table tr', function () {
+            isSiteUpdatePaused = true;
+            const siteId = $(this).children("td").eq(0).html();
+
+            if (siteId) {
+                layerDetl = layer.open({
+                    type: 1,
+                    title: false,
+                    shadeClose: true,
+                    offset: 'rt',
+                    anim: 5,
+                    shade: [0],
+                    area: ['340px', '255px'],
+                    closeBtn: 0,
+                    content: $("#site-detl"),
+                    success: (layero, index) => {
+                        http.get(`${baseUrl}/site/detl/${siteId}`, null, (res) => {
+                            if (res.data) {
+                                $('#siteId').val(siteId);
+                                $('#workNo').val(res.data.workNo);
+                                $('#staNo').val(res.data.staNo);
+                                $('#pakMk').val(res.data.pakMk);
+                            }
+                        });
+                    },
+                    end: () => {
+                        $('#siteId').val("");
+                        $('#workNo').val("");
+                        $('#staNo').val("");
+                        $('#pakMk').val("");
+                        isSiteUpdatePaused = false;
+                    }
+                });
+            }
+        });
+
+        // 淇濆瓨绔欑偣淇℃伅
+        $(document).on('click', '#save', function () {
+            http.post(`${baseUrl}/site/detl/update`, {
+                siteId: $('#siteId').val(),
+                workNo: $('#workNo').val(),
+                staNo: $('#staNo').val(),
+                pakMk: $('#pakMk').val()
+            }, (res) => {
+                layer.msg("淇敼鎴愬姛", {icon: 1});
+                layer.close(layerDetl);
+            });
+        });
+
+        // 鍙栨秷绔欑偣淇℃伅淇敼
+        $(document).on('click', '#cancel', function () {
+            $('#siteId').val("");
+            $('#workNo').val("");
+            $('#staNo').val("");
+            $('#pakMk').val("");
             layer.close(layerDetl);
-        })
-    })
-    $(document).on('click ','#cancel', function () {
-        $('#siteId').val("");
-        $('#workNo').val("");
-        $('#staNo').val("");
-        $('#pakMk').val("");
-        layer.close(layerDetl);
-    })
+        });
+
+        // 閫氱敤AJAX璇锋眰鍑芥暟
+        function ajaxRequest(options) {
+            const defaultOptions = {
+                headers: {'token': localStorage.getItem('token')},
+                success: () => {
+                },
+                error: () => {
+                }
+            };
+
+            const opts = {...defaultOptions, ...options};
+
+            $.ajax({
+                url: opts.url,
+                headers: opts.headers,
+                method: opts.method,
+                data: opts.data,
+                success: (res) => {
+                    if (res.code === 200) {
+                        opts.success(res);
+                    } else if (res.code === 403) {
+                        window.location.href = `${baseUrl}/login`;
+                    } else {
+                        console.log(res.msg);
+                        //opts.error(res);
+                    }
+                },
+                error: (jqXHR, textStatus, errorThrown) => {
+                    console.error('AJAX Error:', textStatus, errorThrown);
+                    //opts.error({ msg: '璇锋眰澶辫触锛岃绋嶅悗閲嶈瘯' });
+                }
+            });
+        }
+    })();
 
 </script>
 </html>
\ No newline at end of file
diff --git a/zy-acs-cv/src/main/webapp/views/render/asda.css b/zy-acs-cv/src/main/webapp/views/render/asda.css
deleted file mode 100644
index ff4b37e..0000000
--- a/zy-acs-cv/src/main/webapp/views/render/asda.css
+++ /dev/null
@@ -1,121 +0,0 @@
-* {
-    margin: 0;
-    overflow: hidden;
-}
-html,body {
-    height: 100%;
-}
-
-.sidebar {
-    width: 8%;
-    height: 40%;
-    line-height: 5.625em;
-    position: fixed;
-    top: 50%;
-    transform: translateY(-50%);
-}
-.nav ul {
-    font-size: 1.25em;
-    font-weight: 500;
-    padding-left: 5%;
-}
-.nav a {
-    position: relative;
-    text-decoration: none;
-    margin-left: 0.625em;
-    font-weight: 500;
-}
-.nav a:hover {
-    color:  #fff;
-}
-/* Effect 4: bottom border enlarge */
-.cl-effect-4 a {
-    padding: 0 0 0.625em;
-}
-
-.cl-effect-4 a::after {
-    position: absolute;
-    top: 100%;
-    left: 0;
-    width: 100%;
-    height: 0.0625em;
-    background: #fff;
-    content: '';
-    opacity: 0;
-    -webkit-transition: height 0.3s, opacity 0.3s, -webkit-transform 0.3s;
-    -moz-transition: height 0.3s, opacity 0.3s, -moz-transform 0.3s;
-    transition: height 0.3s, opacity 0.3s, transform 0.3s;
-    -webkit-transform: translateY(-0.625em);
-    -moz-transform: translateY(-0.625em);
-    transform: translateY(-0.625em);
-}
-
-.cl-effect-4 a:hover::after,
-.cl-effect-4 a:focus::after {
-    height: 0.3125em;
-    opacity: 1;
-    -webkit-transform: translateY(0px);
-    -moz-transform: translateY(0px);
-    transform: translateY(0px);
-}
-/* Effect 4: bottom border enlarge */
-/* .sidebar ul {
-    font-size: 20px;
-    font-weight: 500;
-    padding-left: 5%;
-
-}
-.sidebar a {
-    text-decoration: none;
-}
-
-.sidebar a:hover {
-    color: rgb(255, 148, 111);
-} */
-
-
-
-.nav-unselect {
-    color: #FFFFFF;
-}
-.nav-select {
-    font-weight: 900;
-    color:  #fff;
-}
-
-
-
-
-/* 娑撹缍� */
-iframe {
-    width: 100%;
-    height: 100%;
-    border-width: 0;
-}
-/* 鎼存洟鍎� */
-footer {
-    /* border-top: 1px solid #e3e3e3; */
-    position: fixed;
-    bottom: 0;
-    right: 0;
-    left: 0;
-    text-align: center;
-    font: 14px Helvetica Neue,Helvetica,PingFang SC,\5FAE\8F6F\96C5\9ED1,Tahoma,Arial,sans-serif;
-    box-shadow: 0 -1px 2px 0 rgba(0,0,0,.0);
-    box-sizing: border-box;
-    background-color: rgb(108,167,168);
-    z-index: 999;
-    height: 20px;
-    font-size: 13px;
-    line-height: 20px;
-    background-color: #f1f1f1;
-}
-footer a {
-    color: #3573ab;
-    font-weight: bold;
-    text-decoration: none;
-    cursor: pointer;
-}
-
-
-
diff --git a/zy-acs-cv/src/main/webapp/views/rgv.html b/zy-acs-cv/src/main/webapp/views/rgv.html
deleted file mode 100644
index 4d8d9d8..0000000
--- a/zy-acs-cv/src/main/webapp/views/rgv.html
+++ /dev/null
@@ -1,591 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <meta charset="UTF-8">
-    <title>RGV鐩戞帶绠$悊</title>
-    <meta name="renderer" content="webkit">
-    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
-    <link rel="stylesheet" type="text/css" href="../static/css/normalize.css">
-    <link rel="stylesheet" type="text/css" href="../static/css/common.css">
-    <link rel="stylesheet" type="text/css" href="../static/css/rgv.css">
-    <script type="text/javascript" src="../static/js/jquery/jquery-3.3.1.min.js"></script>
-    <script type="text/javascript" src="../static/js/common.js"></script>
-    <script type="text/javascript" src="../static/js/layer/layer.js"></script>
-    <style>
-        .demoBtn {
-            vertical-align: middle;
-            width: 20%;
-            height: 25px;
-            left: 0;
-            top: 0;
-            text-shadow: inherit;
-            font-size: 15px;
-            margin-left: 5px;
-            margin-right: 5px;
-            display: inline-block;
-            background-color: #FF5722;
-            border: none;
-            color: #FFF;
-            box-shadow: 1px 1px 5px #B6B6B6;
-            border-radius: 3px;
-            cursor: pointer;
-        }
-
-        .demoBtn:hover {
-            opacity: 0.8
-        }
-        .demoBtn:focus {
-            outline: 0;
-        }
-    </style>
-</head>
-<body>
-<div style="padding: 10px;height: 100%;float: left;width: 6%">
-    <div class="button-window"></div>
-</div>
-<div style="height: 100%;padding-left: 6%">
-    <div style="padding: 10px;height: 100%">
-        <!-- 鏃ュ織鐩戞帶鏉� -->
-        <div class="log-board">
-            <!-- 鎵ц鍛戒护 -->
-
-            <!-- 鎵ц鍛戒护 -->
-            <!--<div class="command-log">-->
-<!--                <h3>鎵ц涓殑鍛戒护</h3>-->
-<!--                <div class="crn-command-item">-->
-<!--                    <label>1#</label>-->
-<!--                    <button id="demoBtn-1" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>-->
-<!--                    &lt;!&ndash;            <span>&nbsp;</span>&ndash;&gt;-->
-<!--                    <input id="crn1" disabled="disabled">-->
-<!--                </div>-->
-<!--                <div class="crn-command-item">-->
-<!--                    <label>2#</label>-->
-<!--                    <button id="demoBtn-2" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>-->
-<!--                    &lt;!&ndash;            <span>&nbsp;</span>&ndash;&gt;-->
-<!--                    <input id="crn2" disabled="disabled">-->
-<!--                </div>-->
-<!--                <div class="crn-command-item">-->
-<!--                    <label>3#</label>-->
-<!--                    <button id="demoBtn-3" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>-->
-<!--                    &lt;!&ndash;            <span>&nbsp;</span>&ndash;&gt;-->
-<!--                    <input id="crn3" disabled="disabled">-->
-<!--                </div>-->
-<!--                <div class="crn-command-item">-->
-<!--                    <label>4#</label>-->
-<!--                    <button id="demoBtn-4" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>-->
-<!--                    &lt;!&ndash;            <span>&nbsp;</span>&ndash;&gt;-->
-<!--                    <input id="crn4" disabled="disabled">-->
-<!--                </div>-->
-<!--                <div class="crn-command-item">-->
-<!--                    <label>5#</label>-->
-<!--                    <button id="demoBtn-5" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>-->
-<!--                    &lt;!&ndash;            <span>&nbsp;</span>&ndash;&gt;-->
-<!--                    <input id="crn5" disabled="disabled">-->
-<!--                </div>-->
-<!--            </div>-->
-            <!-- RGV鐘舵�佷綅淇℃伅 -->
-            <div class="rgv-state">
-                <table id="rgv-state-table">
-                    <thead>
-                    <tr>
-                        <th>RGV</th>
-                        <th>褰撳墠妯″紡</th>
-                        <th>褰撳墠鐘舵��</th>
-                        <th>浠诲姟鍙�</th>
-                        <th>宸ヤ綔鐘舵��</th>
-                        <th>鏈夌墿</th>
-                        <th>RGV浣嶇疆</th>
-                        <th>璧拌瀹氫綅</th>
-<!--                        <th>浠诲姟鍙�2</th>-->
-<!--                        <th>鐘舵��2</th>-->
-<!--                        <th>鏈夌墿2</th>-->
-                        <th>鏁呴殰浠g爜</th>
-                        <th>鏁呴殰鎻忚堪</th>
-                        <th>閿佸畾鐘舵��</th>
-                    </tr>
-                    </thead>
-                    <tbody>
-                    </tbody>
-                </table>
-            </div>
-        </div>
-        <!-- RGV鐘舵�� -->
-        <div class="rgv-msg">
-            <table id="rgv-msg-table">
-                <thead>
-                <tr>
-                    <th>RGV</th>
-                    <th>宸ヤ綔鍙�</th>
-                    <th>鐘舵��</th>
-                    <th>婧愮珯</th>
-                    <th>鐩爣绔�</th>
-                    <th>婧愬簱浣�</th>
-                    <th>鐩爣搴撲綅</th>
-<!--                    <th>璧拌閫熷害锛坢/min)</th>-->
-<!--                    <th>鍗囬檷閫熷害锛坢/min)</th>-->
-<!--                    <th>鍙夌墮閫熷害锛坢/min)</th>-->
-<!--                    <th>璧拌璺濈(Km)</th>-->
-<!--                    <th>鍗囬檷璺濈(Km)</th>-->
-<!--                    <th>璧拌鏃堕暱(H)</th>-->
-<!--                    <th>鍗囬檷鏃堕暱(H)</th>-->
-                </tr>
-                </thead>
-                <tbody>
-                </tbody>
-            </table>
-        </div>
-        <!-- 鎵嬪姩鎿嶄綔 -->
-        <div class="rgv-operation">
-
-            <!-- 閬僵灞� -->
-            <div class="rgv-operation-shade">
-        <span class="rgv-operation-shade-span">
-            WCS 绯荤粺杩愯涓紝璇峰仠姝㈠悗鎿嶄綔
-        </span>
-            </div>
-
-            <!-- 璁惧浠诲姟閫夋嫨 -->
-            <div class="task-select">
-                <!-- 鍫嗗灈鏈洪�夋嫨 -->
-                <div id="rgv-select" class="operator-item" style="width: 55%">
-                    <span class="select-title">RGV鍙�</span>
-                    <div class="select-container" style="padding: 20px 0;">
-                        <label><input type="radio" name="rgvSelect" value="1" checked>&nbsp;1鍙稲GV</label>
-                        <label><input type="radio" name="rgvSelect" value="2">&nbsp;2鍙稲GV</label>
-                        <label><input type="radio" name="rgvSelect" value="3">&nbsp;3鍙稲GV</label>
-                    </div>
-                </div>
-                <!-- 婧愮珯/婧愬簱浣� 閫夋嫨 -->
-                <div id="source-select" class="operator-item">
-                    <span class="select-title">婧愮珯</span>
-                    <div class="select-container">
-                        <div class="select-container-item">
-                            <span>宸ヤ綅1婧愮珯</span>
-                            <label><input id="sourceStaNo" type="number" name="points" min="0" /></label>
-                        </div>
-<!--                        <div class="select-container-item">-->
-<!--                            <span>鎺�</span>-->
-<!--                            <label><input id="sourceRow" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label>-->
-<!--                        </div>-->
-<!--                        <div class="select-container-item">-->
-<!--                            <span>宸ヤ綅2婧愮珯</span>-->
-<!--                            <label><input id="sourceBay" type="number" name="points" min="0" style="background-color: #a9eeff" value="0" /></label>-->
-<!--                        </div>-->
-<!--                        <div class="select-container-item">-->
-<!--                            <span>灞�</span>-->
-<!--                            <label><input id="sourceLev" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label>-->
-<!--                        </div>-->
-                    </div>
-                </div>
-                <!-- 鐩爣绔�/鐩爣搴撲綅 閫夋嫨 -->
-                <div id="target-select" class="operator-item">
-                    <span class="select-title">鐩爣绔�</span>
-                    <div class="select-container">
-                        <div class="select-container-item">
-                            <span>宸ヤ綅1鐩爣绔�</span>
-                            <label><input id="staNo" type="number" name="points" min="0" /></label>
-                        </div>
-<!--                        <div class="select-container-item">-->
-<!--                            <span>鎺�</span>-->
-<!--                            <label><input id="row" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label>-->
-<!--                        </div>-->
-<!--                        <div class="select-container-item">-->
-<!--                            <span>宸ヤ綅2鐩爣绔�</span>-->
-<!--                            <label><input id="bay" type="number" name="points" min="0" style="background-color: #a9eeff" value="0" /></label>-->
-<!--                        </div>-->
-<!--                        <div class="select-container-item">-->
-<!--                            <span>灞�</span>-->
-<!--                            <label><input id="lev" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label>-->
-<!--                        </div>-->
-                    </div>
-                </div>
-            </div>
-
-            <!-- 璁惧浠诲姟鎿嶄綔 -->
-            <div class="task-operator">
-                <fieldset>
-                    <legend>鎵嬪姩鎿嶄綔</legend>
-                    <div class="button-group">
-                        <button class="item" onclick="put()">鍙栨斁璐�</button>
-<!--                        <button class="item" onclick="take()">鍙栬揣</button>-->
-<!--                        <button class="item" onclick="stockMove()">鏀捐揣</button>-->
-<!--                        <button class="item" onclick="siteMove()">绔欏埌绔�</button>-->
-                        <!--                <button class="item" onclick="bacOrigin()">鍥炲師鐐�</button>-->
-                        <!--                <button class="item" onclick="reverseOrigin()">鍙嶅師鐐�</button>-->
-                        <!--                <button class="item" onclick="coorMove()">鍧愭爣绉昏</button>-->
-                        <button class="item" onclick="taskComplete()">浠诲姟瀹屾垚</button>
-                        <button class="item" onclick="lock()">瑙i攣</button>
-                        <!--                <button class="item" onclick="pause()">鏆傚仠</button>-->
-                        <!--                <button class="item" onclick="boot()">鍚姩</button>-->
-<!--                        <button class="item" onclick="clearCommand()">娓呴櫎鍛戒护</button>-->
-<!--                        <button class="item" onclick="handleReset()">澶嶄綅</button>-->
-                    </div>
-                </fieldset>
-            </div>
-
-        </div>
-        <!-- 鍫嗗灈鏈烘棩蹇楄緭鍑� -->
-        <div class="rgv-output-board">
-            <textarea id="rgv-output"></textarea>
-        </div>
-    </div>
-</div>
-</body>
-<script>
-    // 绌虹櫧琛屾暟
-    var rgvStateTableBlankRows = 0;
-    var rgvMsgTableBlankRows = 0;
-    // 瀹為檯琛屾暟
-    var rgvStateTableFullRows = 0;
-    var rgvMsgTableFullRows = 0;
-    // 鍒濆鍖�
-    var rgvOutputDom = document.getElementById("rgv-output");
-    $(document).ready(function() {
-        // getCommandLog();
-        initRgvStateTable();
-        getRgvStateInfo();
-        initRgvMsgTable();
-        getRgvMsgInfo();
-        operatorBlockShow();
-    });
-    // 鏁版嵁鏇存柊
-    setInterval(function () {
-        getRgvStateInfo();
-        getRgvMsgInfo();
-        // getCommandLog();
-    },1000);
-    setInterval(function () {
-        getRgvOutput();
-        operatorBlockShow();
-        // initDemo();
-    },500);
-
-    // 鍒ゆ柇鎵嬪姩鎿嶄綔妯″潡鏄惁鍙敤
-    function operatorBlockShow() {
-        if (parent.systemRunning) {
-            $('.rgv-operation').css("opacity", "0.5");
-            $('.rgv-operation-shade').show();
-            $('.rgv-operation-shade-span').show();
-        }  else {
-            $('.rgv-operation').css("opacity", "1");
-            $('.rgv-operation-shade').hide();
-            $('.rgv-operation-shade-span').hide();
-        }
-    }
-
-    // 鑾峰彇RGV鎵ц涓殑鍛戒护
-    function getCommandLog() {
-        $.ajax({
-            url: baseUrl + "/rgv/command/ongoing",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                if (res.code === 200) {
-                    var commands = res.data;
-                    for (var i=0; i<commands.length;i++){
-                        $("#rgv"+commands[i].rgvNo).val(commands[i].command);
-                    }
-                } else if (res.code === 403) {
-                    window.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-                }
-            }
-        })
-    }
-
-    // 鍫嗗灈鏈轰俊鎭〃鑾峰彇 ---- 琛ㄤ竴
-    function getRgvStateInfo() {
-        var tableEl = $('#rgv-state-table');
-        $.ajax({
-            url: baseUrl+ "/rgv/table/rgv/state",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                console.log(res)
-                if (res.code === 200){
-                    var table = res.data;
-                    if (table.length > rgvStateTableBlankRows && table.length !== rgvStateTableFullRows) {
-                        initRgvStateTable(table.length-rgvStateTableBlankRows);
-                        rgvStateTableFullRows = table.length;
-                    }
-                    for (var i=1;i<=table.length;i++){
-                        var tr = tableEl.find("tr").eq(i);
-                        setVal(tr.children("td").eq(0), table[i-1].rgvNo);
-                        setVal(tr.children("td").eq(1), table[i-1].statusType);
-                        setVal(tr.children("td").eq(2), table[i-1].status);
-                        setVal(tr.children("td").eq(3), table[i-1].workNo1);
-                        setVal(tr.children("td").eq(4), table[i-1].status1);
-                        setVal(tr.children("td").eq(5), table[i-1].loading1);
-                        setVal(tr.children("td").eq(6), table[i-1].rgvPos1);
-                        setVal(tr.children("td").eq(7), table[i-1].walkPos);
-                        // setVal(tr.children("td").eq(8), table[i-1].workNo2);
-                        // setVal(tr.children("td").eq(9), table[i-1].status2);
-                        // setVal(tr.children("td").eq(10), table[i-1].loading2);
-                        setVal(tr.children("td").eq(8), table[i-1].warnCode);
-                        setVal(tr.children("td").eq(9), table[i-1].alarm);
-                        setVal(tr.children("td").eq(10), table[i-1].pakMk);
-                    }
-                } else if (res.code === 403){
-                    window.location.href = baseUrl+"/login";
-                }  else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    // 鍫嗗灈鏈烘暟鎹〃鑾峰彇 ---- 琛ㄤ簩
-    function getRgvMsgInfo() {
-        var tableEl = $('#rgv-msg-table');
-        $.ajax({
-            url: baseUrl+ "/rgv/table/rgv/msg",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                if (res.code === 200){
-                    var table = res.data;
-                    if (table.length > rgvStateTableBlankRows && table.length !== rgvMsgTableFullRows) {
-                        initRgvStateTable(table.length-rgvStateTableBlankRows);
-                        rgvMsgTableFullRows = table.length;
-                    }
-                    for (var i=1;i<=table.length;i++){
-                        var tr = tableEl.find("tr").eq(i);
-                        setVal(tr.children("td").eq(0), table[i-1].rgvNo);
-                        setVal(tr.children("td").eq(1), table[i-1].workNo);
-                        setVal(tr.children("td").eq(2), table[i-1].status);
-                        setVal(tr.children("td").eq(3), table[i-1].sourceStaNo);
-                        setVal(tr.children("td").eq(4), table[i-1].staNo);
-                        setVal(tr.children("td").eq(5), table[i-1].sourceLocNo);
-                        setVal(tr.children("td").eq(6), table[i-1].locNo);
-                        // setVal(tr.children("td").eq(7), table[i-1].xspeed);
-                        // setVal(tr.children("td").eq(8), table[i-1].yspeed);
-                        // setVal(tr.children("td").eq(9), table[i-1].zspeed);
-                        // setVal(tr.children("td").eq(10), table[i-1].xdistance);
-                        // setVal(tr.children("td").eq(11), table[i-1].ydistance);
-                        // setVal(tr.children("td").eq(12), table[i-1].xduration);
-                        // setVal(tr.children("td").eq(13), table[i-1].yduration);
-                    }
-                } else if (res.code === 403){
-                    window.location.href = baseUrl+"/login";
-                }  else {
-                    console.log(res.msg);
-                }
-            }
-        });
-    }
-
-    // 鍫嗗灈鏈烘墜鍔ㄦ搷浣滃尯 -----------------------------------------------------------------------
-
-    function getReqParam() {
-        var rgvNo = $('input[name="rgvSelect"]:checked').val();
-        var sourceStaNo = $('#sourceStaNo').val();
-        var sourceRow = $('#sourceRow').val();
-        var sourceBay = $('#sourceBay').val();
-        var sourceLev = $('#sourceLev').val();
-        var staNo = $('#staNo').val();
-        var row = $('#row').val();
-        var bay = $('#bay').val();
-        var lev = $('#lev').val();
-        return {
-            rgvNo: rgvNo,
-            sourceStaNo: sourceStaNo,
-            sourceRow: sourceRow,
-            sourceBay: sourceBay,
-            sourceLev: sourceLev,
-            staNo: staNo,
-            row: row,
-            bay: bay,
-            lev: lev
-        };
-    }
-
-    // 鍏ュ簱
-    function put() {
-        http.post(baseUrl+"/rgv/operator/put", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 鍑哄簱
-    function take() {
-        http.post(baseUrl+"/rgv/operator/take", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 搴撲綅杞Щ
-    function stockMove() {
-        http.post(baseUrl+"/rgv/operator/stockMove", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 绔欏埌绔�
-    function siteMove() {
-        http.post(baseUrl+"/rgv/operator/siteMove", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 鍧愭爣绉诲姩
-    function coorMove() {
-        http.post(baseUrl+"/rgv/operator/coorMove", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 鍥炲師鐐�
-    function bacOrigin() {
-        http.post(baseUrl+"/rgv/operator/bacOrigin", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 鍥炲師鐐�
-    function reverseOrigin() {
-        http.post(baseUrl+"/rgv/operator/reverseOrigin", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 浠诲姟瀹屾垚
-    function taskComplete() {
-        http.post(baseUrl+"/rgv/operator/taskComplete", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    function lock() {
-        http.post(baseUrl+"/rgv/lock", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 鏆傚仠
-    function pause() {
-        http.post(baseUrl+"/rgv/operator/pause", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 鍚姩
-    function boot() {
-        http.post(baseUrl+"/rgv/operator/boot", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 娓呴櫎鍛戒护
-    function clearCommand() {
-        http.post(baseUrl+"/rgv/operator/clearCommand", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 鎵嬪姩澶嶄綅
-    function handleReset() {
-        http.post(baseUrl+"/rgv/operator/handleReset", getReqParam(), function (res) {
-            layer.msg(res.msg);
-        });
-    }
-
-    // 杈撻�佽澶囨棩蹇楄緭鍑� -----------------------------------------------------------------------
-    function getRgvOutput() {
-        $.ajax({
-            url: baseUrl + "/rgv/output/site",
-            headers: {'token': localStorage.getItem('token')},
-            method: 'POST',
-            success: function (res) {
-                console.log(res)
-                if (res.code === 200) {
-                    rgvOutput(res.data);
-                } else if (res.code === 403) {
-                    window.location.href = baseUrl + "/login";
-                } else {
-                    console.log(res.msg);
-                }
-            }
-        })
-    }
-
-    // ------------------------------------------------------------------------------------------------
-
-    // 鍫嗗灈鏈轰俊鎭〃鑾峰彇  ----- 琛ㄤ竴
-    function initRgvStateTable(row) {
-        var line;
-        if (row === undefined){
-            var one = $('#rgv-state-table thead').height();
-            var total = $('.rgv-state').height();
-            var count = total / one;
-            count = parseInt(count) - 1;
-            rgvStateTableBlankRows = count;
-            line = count;
-        } else {
-            line = row;
-        }
-        var html = "";
-        for (var i = 0; i < line; i ++){
-            html += " <tr>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "     </tr>\n";
-        }
-        $('#rgv-state-table tbody').after(html);
-    }
-
-    // 鍫嗗灈鏈烘暟鎹〃鑾峰彇  ----- 琛ㄤ簩
-    function initRgvMsgTable(row) {
-        var line;
-        if (row === undefined){
-            var one = $('#rgv-msg-table thead').height();
-            var total = $('.rgv-msg').height();
-            var count = total / one;
-            count = parseInt(count) - 1;
-            rgvMsgTableBlankRows = count;
-            line = count;
-        } else {
-            line = row;
-        }
-        var html = "";
-        for (var i = 0; i < line; i ++){
-            html += " <tr>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "       <td></td>\n" +
-                "     </tr>\n";
-        }
-        $('#rgv-msg-table tbody').after(html);
-    }
-
-    // 鏃ュ織杈撳嚭妗�
-    function rgvOutput(content){
-        rgvOutputDom.value += content;
-        rgvOutputDom.scrollTop = rgvOutputDom.scrollHeight;
-    }
-
-</script>
-</html>

--
Gitblit v1.9.1